[Captivate Android Development] l7777:
Since modems seem to be a hot topic around here and no one seems to find the information they need, lets see if we can consolidate the info here to help out with the clutter.

Note: This is a reference thread, not a Q & A thread

Some basic rules:

Run 2.1 modems with 2.1 ROMs

Run 2.2 modems with 2.2 ROMs

Run a modem that goes with your kernel. EX: i9000 modem with i9000 kernel or captivate modem with captivate kernel, mixing and matching is playing with fire. You've been warned.

Modem Versioning:

Modems increase in major release by incrementing the alpha, and minor release by incrementing the numeric.

So, JI6 is more recent (and presumably better) than JI2.

Using an i9000 modem and the WCDMA 850 band:

The UGJK3, UGJK4, and TLJL3 modems have rendered the below obsolete. Use one of them and you will have 850 WCDMA enabled by default.

If you're going to do this, you must start from a 2.1 based ROM and the UGJG8 modem. It does not have to be done using odin 1 click or even a stock ROM, but if you are in doubt, that is probably the best thing to do. I personally used Cog 2.1.7, then applied the UGJG8 modem, then went to a 2.2 ROM of my choice.

Once you have a 2.1 rom with the UGJG8 modem, use the service menu and verify that you are in an 850 area. *#0011#. If it does not say WCDMA 850, use the soft menu buttons and navigate to

[7] PHONE CONTROL

[7] NETWORK CONTROL

[2] BAND SELECTION

[2] WCDMA BAND

[5] WCDMA 850

This will force your phone to use the WCDMA 850 band only. If you have no service after this, you are either not in an 850 area, or 850 is too weak to be picked up. To return to all bands, simply back out one level and select [1] AUTOMATIC.

Once you've verified your WCDMA 850 band is working, you must go to an i9000 ROM that also has the UGJG8 modem. If the i9000 ROM you want to use does not offer this you will have to open the ROM's CWM zip file with winrar or your favorite zip program, find the modem.bin file and replace it with the UGJG8 modem.bin. Now use CWM to apply your modified zip and wait for it to complete its first boot. Before doing anything else, go back to CWM and apply a proper i9000 modem, current favorites are xxjpm and xxjpp. After applying the i9000 modem, return to the band selection menu and this time select

[3] GSM BAND

[1] GSM ALL

Back to BAND SELECTION

[4] COMBI BANDS

[8] WCDMA 850 (FDD V)

At this point your phone will be configured to use any GSM band available, and only the WCDMA 850 band. If you have WCDMA 850 in your area, you should be able to return to the basic settings menu and see it connected to WCDMA 850 Band 5 or something similar. If you also want to allow it to connect to WCDMA 1900 then return to the combi bands menu and select it as well. All modems seem to prefer WCDMA 1900 if it is available even if WCDMA 850 is also available.

HSUPA and you

Currently only i9000 modems will enable HS

U

PA which is uploading at > ~300 kbps. All modems have HS

D

PA enabled. As posted below, while HSUPA primarily affects upload speeds, it has a secondary effect of faster downloads and lower latency as well.

Current 2.2 Modems:

UCJJ4 - AT&T Captivate (Uses WCDMA 850 by default)

UCJI6 - AT&T Captivate (Uses WCDMA 850 by default)

XXJPP - European GT-i9000 (Does not use WCDMA 850 by default)

XXJPM - European GT-i9000 (Does not use WCDMA 850 by default)

UGJK3 - Bell Vibrant GT-i9000 (Uses WCDMA 850 by default)

UGJK4 - Bell Vibrant GT-i9000 (Uses WCDMA 850 by default) Thread

TLJL3 - Telus GT-i9000 (Uses WCDMA 850 by default) Thread

Useful 2.1 Modems:

UGJH2 - Bell Vibrant GT-i9000 (Uses WCDMA 850 by default)

UGJG8 - Bell Vibrant GT-i9000 (Uses WCDMA 850 by default)

UCJH7 - AT&T Captivate from OTA update

UCJH3 - AT&T Captivate

UCJH2 - AT&T Captivate

UCJF6 - AT&T Captivate from stock ROM

The above list is far from complete. Attached are update.zip files that can be applied with CWM or opened up to get the modem.bin file for insertion into a ROM's zip package.