[Galaxy S I9000 Android Development] Richthofen:
Few facts about this version:

INTERNAL release (not official, obviously)

Version: 2.1 Eclair

PDA version I9000XWJM9

PDA Build time: 2010.09.06 15:53:48 KST

PDA Changelog: Unknown

MODEM version I9000XXJM4

MODEM Build time: 2010.08.31 10:26:45 KST

MODEM Changelog: Unknown

The modem firmware has been updated from I9000XXJM3 used in my previous releases to I9000XXJM4 (final). This version should have some actual changes too (besides fixed typos in operator names).

All CSC versions are I9000???JM1 and

unbranded

, but CSC´s for specific operators (Vodafone for example) are included.

UI / Swype languages supported by XWJM9:

UI: Czech, Danish, Deutsch DACH , Dutch, English, Estonian, Finnish, French, Greek, Hungarian, Icelandic, Irish, Italian, Kazakh, Latvian, Lithuanian, Norwegian, Polish, Portuguese, Russian, Slovakian, Spanish, Swedish, Turkish, Ukrainian

Swype: Croatian, Czech, Danish, Deutsch DACH ,Dutch, English, Finnish, French, Greek, Italian, Norwegian, Polish, Portuguese, Romanian, Russian, Spanish, Swedish

I have not modified the code in any way, although I have repacked the release to make CSC selection possible.

Usually Odin3 images are provided in a single integrated .tar package which contain all of the necessary files. This way the CSC cannot be selected separately.

That is why I splitted the release in three different parts (CODE, MODEM, CSC).

Since Odin3 has flashfile checksum support I also added md5 hash tail to the .tar files. This way is more secure because Odin will not allow flashing corrupted images. Flashing takes a bit longer thou because the checksums are checked in the beginning of the update process.

You need to download two files.

GT-I9000_I9000XWJM9_I9000XXJM4_CODE-MODEM.7z

CSC_I9000?????? (CSC of your selection)

I know this is not nearly all of the excisting variants, but repacking the softwares is quite a slow process for certain reasons. I have access to pretty much any Samsung firmware, so if you find a variant missing you can send me pm. I can have a look.

Download links:

GT-I9000_I9000XWJM9_I9000XXJM4_CODE-MODEM.7z

CSC_I9000DBTJM1 - Generic Germany (Unbranded, PCODE

DBT

)

CSC_I9000OXAJM1 - Generic Europe Multi-CSC (Unbranded, PCODE(s)

CPW, DBT, ITV, KOR, XEF, XEO, XEU

)

CSC_I9000OXEJM1 - Baltic, Kazakhstan, Russia, Ukraine Multi-CSC (Unbranded, PCODE(s)

SEB, SEK, SER, SKZ

)

CSC_I9000OXXJM4 - Europe - Africa Multi-CSC (Unbranded, PCODE(s)

ATO, AUT, CNX, COA, COS, CRO, CYO, CYV, EUR, HAT, IRD, KOR, MET, MOT, MOZ, MSR, MTL, O2C, O2I, ONE, ORO, SEB, SIM, SMO, SUN, TMZ, TOP, TPH, TRA, TSR, TWO, VDH, VDI, VIM, VIP, VVT, XEH, XEO, XEZ, XFA, XFC, XFE, XFM

CSC_I9000BMCJH2 - Bell Canada (Branded, PCODE

BMC

)

CSC_I9000HUIHUI - Tre H3G Italy (Branded, PCODE

HUI

)

CSC_I9000OLBJG4 - Asian Multi-CSC (Unbranded, PCODE(s)

CCM, DGI, GLB, MIS, MM1, SIN, SMA, STH, THL, UMB, XEV, XME, XSE, XSO, XSP, XTC, XTE, XXV

)

CSC_I9000OPSJG1 - Optus Australia (Unbranded, PCODE

OPS

)

CSC_I9000XEEJM1 - Generic Nordic (Unbranded, PCODE

XEE

)

CSC_I9000TMNJM1 - TMN Portugal (Branded, PCODE

TMN

)

CSC_I9000TMNJM1-CLEAN-v2 - TMN Portugal (Custom, PCODE

TMN

)

CSC_I9000XECJM1 - Generic Spain (Unbranded, PCODE

XEC

)

CSC_I9000PANJM1 - Telenor Hungary (Branded, PCODE

PAN

)

CSC_I9000PRTJM2 - Play Poland (Branded, PCODE

PRT

)

CSC_I9000SWCJM1 - Swisscom Switzerland (Branded, PCODE

SWC

)

CSC_I9000TENJM2 - Telenor Norway (Unbranded, PCODE

TEN

)

CSC_I9000TIMJM2 - TIM Italy (Branded, PCODE

TIM

)

CSC_I9000TMHJM2 - T-Mobile Hungary (Unbranded, PCODE

TMH

)

CSC_I9000GVD2JM3 - Vodafone Deutschland (Branded, PCODE

VD2

)

CSC_I9000XEFJM2 - Country Specific France (Unbranded, PCODE

XEF

)

CSC_I9000XENJM1 - Country Specific Netherlands (Unbranded, PCODE

XEN

) ;)

How to check which CSC (major) version you should use:

Open dialer and type: *2767*4387264636#

The second line will read: PCode:GT-I9000HK?xxx.

Make the last three characters match with the CSC product code.

Extract the downloaded .rar archives to the same folder.

The archives are contain .tar.md5 files. Do not open them with Winrar for example. They are compressed Odin images which do not need unpacking.

So how to proceed:

Put your phone to download mode (hold down: volume down, home key, power)

DO NOT plug in your phone yet, Odin / driver does not like it at this stage.

Start Odin3

Tick "Re-Partition", check that "Auto Reboot" and "F. Reset Time" have been ticked.

Click "PIT" button and select s1_odin_20100512.pit file.

Plug in the phone and wait until Odin finds it.

Click "Start" button... <Firmware update start...> <Get PIT for mapping...> appear. The phone will turn off and the screen indicates "Reset". Wait until Odin indicates "Pass".

Plug out your phone, remove the battery, put it back in and put phone to download mode again.

Click "Reset" button in Odin and untick "Re-Partition" box.

DO NOT select PIT file again.

Click "PDA" button and select "CODE_I9000XWJM9.tar.md5" file.

Click "MODEM" button and select "MODEM_I9000XXJM4.tar.md5" file.

Click "CSC" button and select the desired version "CSC_I9000???JM?.tar.md5".

Plug in the phone and wait until Odin finds it.

Click "Start" button and wait until phone reboots with the new software version.

When using *Multi CSC* you need to:

Turn on USB debugging and plug in the phone.

Open command prompt and type:

adb shell

am start -a android.intent.action.MAIN -n com.android.Preconfig/com.android.Preconfig.Preconfig

Then select the desired CSC version from the list and press "Install" (this happens on phone screen!).

The phone will reboot once the change is done.

**Read this if you are downgrading from I9000XXJPC rom**

Requirements: Rooted phone, "Root Explorer" (or similar), .nv_data.bak and .nv_data.bak.md5 files (PRIOR the date of I9000XXJPC release).

Because I9000XXJPC rom rewrites certain thing in the permanent memory area of the phone, certain things CAN occur when you downgrade the phone to <I9000XXJPC firmware. It is possible that there will not be any problems at all, but if there is read below.

Possible problems (I had them all due trying different thing to solve it):

IMEI "corruption".

nv_data.bin checksum does not pass the check and the phone / baseband generates a new blank one. Baseband test IMEI (000xxxxxxxxxxxx) will be displayed.

No service.

There is no service even a functional SIM card is inserted.

You cannot receive or make calls, receive or send sms, etc (obviously).

Freeze / lock-down.

The phone will not react to anything besides pressing power key.

You cannot unlock the display to enter PIN code.

Wrong PIN code.

The phone will not accept any PIN code on any SIM (even the correct one ;)).

Phone displays "wrong PIN code" message even the try counter (three strikes you know) does not change.

Product code changed to KOR.

= Blocked Kies updates (without a registry "hack")

Here is how to fix any or all of them:

Downgrade to I9000XWJM9 firmware with Odin (as usual).

Remove SIM card from the phone (to be able to boot in first place) and start the phone.

Gain root access and install "Root Explorer" (or similar), ADB works too.

Open Root Explorer and go to the "EFS" folder in the root.

Check the date on .nv_data.bak and .nv_data.bak.md5 files.

If it is earlier than 08/26/2010 you´re clear, if it is later then you may stop reading.

Once the date has been checked, select files nv_data.bin and nv_data.bin.md5 simultaneously and delete (yes, delete) them. Reboot the phone.

Now your phone is in the same condition (atleast permanent memory wise) as it was prior I9000XXJPC update.

There is a safety feature I would call "a dead mans switch".

If the current nv_data files are deleted, the phone will make new nv_data files from the .bak (backup) files (if they excist). The new nv_data files will be signed automatically so they pass the checks (none of the errors listed above will occur). However if they do not excist, the phone will just write an empty / test file (= IMEI corrupted, no service, etc). Also if you just rename .bak files they will have wrong signatures and the same problems will occur.

There is no bootloaders included, so it is safe to flash for everyone.

Regards.

- Nottingham