yashsingh1/xdaforums huggingface dataset:
[Galaxy S I9000 Android Development] phoenixdigital:
Well you can get the phone into download mode by running

adb reboot download

so that isn't a problem... however I still am unsure how to flash it...

I suppose this would possibly work (in su)

dd if=/sdcard/bm5.bak of=/dev/block/bm5

but I am not game to run that until someone here with a bit more knowledge knows if it will work.
[Galaxy S I9000 Android Development] tids2k:
I see that you are going in a very good hackable way ...

Contact @ Cotulla
[Galaxy S I9000 Android Development] jodue:
i would definitely recommend odin for that! did you try to flash a international firmware version like XWJM2 as it contains a bootloader that allows the 3 button goto download/recovery mode? you can use odin to just flash boot.bin and Spl.bin to just replace the 1st and 2nd bootloader...

what is your exact hardware version of the device? i think you have to be very careful when you want to replace the bootloader(s) to not brick your phone!!
[Galaxy S I9000 Android Development] phoenixdigital:
how would I package up the backup via dd into something that odin would be able to use?

My device is

My phone specs

Model: GT-I9000

Firmware: 2.1-update1

Baseband: I9000DTJG3

Kernel: 2.6.29 root@SE-S604 #2

Build Number: ECLAIR.DTJG4

Would that be suitable for the XWJM2?

Thanks for the response too.
[Galaxy S I9000 Android Development] phoenixdigital:
Ok I have backed BML4 and BML5 for the following

1) My 'neutered' phone on DTJG4 - I will call this NEUT1

2) A 3 click working phone on DTJG3 - I will call this 3Click1

3) A 3 click working phone on DTJG4 - I will call this 3Click2

the BML5 backup from all of the phones just contains FFFFFFFFFF data and nothing else

BML4 is definitely different between NEUT1 and 3Click2

BML4 is the same for 3Click1 and 3Click2 so the JG4 update doesn't touch the bootloader...

Soooooooo.... How do I write this working BML4 to my NEUT1 device :)

Anyone? Bueller?
[Galaxy S I9000 Android Development] jodue:
i think so but i am curious why your device doesn't allow the 3 button combo in the first place? is it provider bound? if yes, which one? i'm not sure if you can flash a open firmware onto a branded sgs but i think so! does anybody else has experience with that? btw. you can find boot.bin & Spl.bin in the pda archive of the firmwares but i wouldn't flash them before you can be sure it won't brick your sgs...
[Galaxy S I9000 Android Development] phoenixdigital:
It is OPTUS Australia... in recent weeks there have been a few phones being released by Optus which have the 3 button click disabled. So it appears either Samsung or Optus are disabling it.

If someone else in Australia who has rooted their phone and knows a bit of unix can run this command from a terminal on their phone

su

dd if=/dev/block/bml4 of=/sdcard/bml4.bak

then post the bml4.bak file up somewhere I can compare it to the ones I have.

It doesn't even have to be australia anyone's would be good to compare.. just let me know what firmware you are running too.. and if the 3 click mode works for you.

I have heard of people in Australia using these Eurpoean firmwares so I should be safe there.

I wont be flashing anything until we get some advice from some senior members of this forum. I am still thinking

dd if=/sdcard/bml4.bak of=/dev/block/bml4

should do the trick but I am too scared to run it :)
[Galaxy S I9000 Android Development] phoenixdigital:
Ok I grew a pair and flashed JM5... It flashed successfully but the 3 button mode still doesn't work...

Hmmmmmm... so the 3 button mode isn't in boot.bin or Spl.bin???

I extracted bml4 and it has not changed at all?
[Galaxy S I9000 Android Development] jodue:
strange because it should be in the 1st bootloader ...

sorry for the stupid question but i haveto ask the obvious. are you sure pressing the 3 buttons doesn't work at all? it can be tricky and often it doesn't work so maybe you are just doing something wrong? have you tried holding home+voldown and then just press power once? this is all very strange! why forbid the key combination and still allow adb boot download? makes no sense to me!
[Galaxy S I9000 Android Development] phoenixdigital:
Yep definitely pressing them right. I performed it perfectly on the non neutered phone just an hour ago and it worked perfectly.
[Galaxy S I9000 Android Development] wang1chung:
have you tried re-extracting the bml4 from your neut1 phone and see if it is identical to the bml4 you extracted from the 3click phones? maybe it didn't flash correctly if at all?
[Galaxy S I9000 Android Development] M AzeeM K:
Here's a Quote from another thread:

Seems like some firmwares out there don't contain the bootloader. Therefore, when you flash such a firmware, the bootloader section will remain unchanged even after flashing. Maybe you should check JM5 if it even contains the bootloader section in it or not.
[Galaxy S I9000 Android Development] phoenixdigital:
I think that was the issue actually. When I flashed JM5 in odin I selected the

PIT

PDA

PHONE

CSA

I also ticked Re-Partition (Is this really needed if you are remaining on 512-PIT?)

When it rebooted the phone went through some terminal screens and appeared to give an error. Something to do with there being two CSC config files... can't remember the exact error. So it's possible it never got to the section where it replaced the bootloader...

It did however manage to update the firmware for PDA as the JM5 European firmware was definitely installed.

So a few questions about ODIN

Is it flashing the phone directly or just uploading the .bin and .rfs files to the phone?

If it's just uploading the .bin and .rfs files when the phone reboots after a flash does the phone then install/flash these .bin and.rfs files to the final location when it reboots after ODIN?

So in short is ODIN flashing or is the phone actually flashing after ODIN has uploaded the update files?

Do you really need to tick re-partition if you are staying on 512-PIT?
[Galaxy S I9000 Android Development] AllGamer:
just a FYI

according to a post in the General forums, Samsung is aware of the problem, and might release the fix with their next official ROM
[Galaxy S I9000 Android Development] phoenixdigital:
(Latest Status)

Which brings me to my current situation in my testing. I am now on JM5 with perfectly but it appears that the bootloader was not modified. Possibly due to there being two conflicting CSC files to be updated???

I thought that since looking at the firmware update packages

DTJG4 contains

----

cache.rfs

dbdata.rfs

factoryfs.rfs

modem.bin

param.lfs

zImage

----

JM2 contains

----

boot.bin

cache.rfs

dbdata.rfs

factoryfs.rfs

param.lfs

Sbl.bin

zImage

----

I thought I could just package boot.bin and Spl.bin into DTJG4 firmware update and re-tar it all up with 7-zip.

I opened up ODIN selected

Re-Partition

512-pit

PDA - my custom tar file with DTJG4 and the boot.bin and Spl.bin inside.

I clicked start and it did the pit512 then just sat on the next part (can't remember the text) for AGES..... I think odin couldn't extract my custom .tar files??????

So it looks like it re-partitioned but then couldn't do anything further... I think I have a brick. I will be taking it back to the store to see if I can get a replacement today.

The support guys will have some JTAG method to write directly to the NAND and restore the phone to it's original state. I will be interested if they give me the same phone back or just a new one from stock.

Moral of the story for people trying to get 3 button mode back again.

I am pretty confident changing your firmware over to JM3 is still the way to go. However just choose the PDA in odin as CODE_I9000XWJM5.tar

DO NOT select a PHONE and CSC (as I think that is what stopped the bootloader getting updated)

Also depending on what people respond regarding the re-parition... I probably wouldn't tick that either.

Well I sacrificed my phone to the testing gods.... Who has the balls to give the above a try?

I will not be doing this again when my phone gets returned even if it doesn't have the 3 button click bootloader as I can't take it back twice. ;)

Please someone else step up to the plate.

Edit: I just noticed the flaw in my custom .tar file.... it had a directory in it and all the update files were stored inside that... DOH!!!
[Galaxy S I9000 Android Development] bub181:
JM5 actually has the PDA, PHONE and CSC all in that one package file. Just extract them before flashing and specify each one in ODIN. Also, it's recommended to use the .pit file and to check re-partition.
[Galaxy S I9000 Android Development] phoenixdigital:
You must have misread my post as that is what I did to get to JM5??? (The fail was using my 'custom' tar file)

The JM5 update contains the following files....

PDA - CODE_I9000XWJM5.tar

PHONE - MODEM_I9000XXJM3.tar

CSC - CSC-I9000SERJM1.tar

And if you look inside each of those there appear to be double ups.

CODE_I9000XWJM5.tar contains

----

boot.bin

cache.rfs

dbdata.rfs

factoryfs.rfs

param.lfs

Sbl.bin

zImage

----

MODEM_I9000XXJM3.tar contains

----

modem.bin

----

CSC-I9000SERJM1.tar contains

----

cache.rfs

dbdata.rfs

----

As you can see CSC contains the same files as CODE which is where I think the phone got confused on reboot.. it had two CSC update files????

Which is why I think you should just flash the CODE_I9000XWJM5.tar and none of the others. At a minimum skip the CSC when updating....
[Galaxy S I9000 Android Development] bub181:
Ah...I see. I actually flashed the CSC from JM2 because I didn't want all those russian apps. That must be why mine worked okay.
[Galaxy S I9000 Android Development] phoenixdigital:
You do make a good point though... the dbdata.rfs file in the CODE is only 7.4Mb and the dbdata.rfs in the CSC is 77Mb for both JM2 and JM5...

So it's probably important to included the CSC if you want all the apps....hmmmmmmmmm

Ok so back to my main question. When I updated to JM5 with ODIN on reboot I got some error as it was updating about the CSC (something about there being two of them) this error appears to have halted the remainder of the update stopping the bootloader being replaced. Note the phone worked fine and updated to JM5 it just appears to have never gotten the chance to update the bootloader.

Has anyone seen this issue before?

Does ODIN flash the NAND when it's running or is the NAND flashed when the phone reboots AFTER ODIN?

Can I recover my phone myself which is showing this screen due to my fail at making a custom update pagkage .tar?

http://xdaforums.com/showpost.php?p=7294449&postcount=338

Someone with the 3 button issue should flash to JM5 and see if it replaces the bootloader.
[Galaxy S I9000 Android Development] tiprya:
I read somewhere that method 4 from this thread works from that screen:

http://xdaforums.com/showthread.php?t=731989

I guess it can't hurt to try.
[Galaxy S I9000 Android Development] phoenixdigital:
Thanks for the link. Tried it a few different ways but unfortunately it didn't work :(
[Galaxy S I9000 Android Development] Bhonka:
Who recommends checking re-partition and why?
[Galaxy S I9000 Android Development] wang1chung:
is there any way to update the bml via recovery mode and an update.zip? i think adding a rom and modem and csc to the mix is upping the risk of bricking, especially without a 3button recovery.

i'm tempted to do it, but not through odin. i'm not familiar enough with it.
[Galaxy S I9000 Android Development] phoenixdigital:
I am pretty confident JM5 will do it as the boot.bin is in the PDA .tar file. Without CSC and MODEM you should be ok...

The only other way I can think of updating the bml is

su

dd if=/sdcard/bml4.bak of=/dev/block/bml4

Where bml4.bak is a backup of a 3 click working phone. However noone has said it will or will not work.

Not sure how the update.zip stuff works so can't really answer your main question though.

I have organised a replacement handset but will be leaving this one alone... I might wait till Froyo is officially released and have a play then.. cause I can blame any stuffup as a bad Keis flash if something goes wrong. Which will fall under warranty ;)

It's a shame we don't have access to the tools that the techs have. Cause they will be able to take this handset plug it into a PC and restore the NAND in a few minutes and it will be good as new. Would save all of us from having to send our handsets back.

Edit: If you look back at my previous posts using ODIN to update to JM5 worked and I still had access to my handset... what broke it was me trying to flash my 'custom' DTJG4 with the boot.bin and Spl.bin inside. Where I went wrong was my custom.tar file was made incorrectly.
[Galaxy S I9000 Android Development] wang1chung:
i'm on the jh2 firmware now, and i don't know if your jm5 firmware is compatible (mine is a Canadian phone).

don't you also need the spl.bin file in the tar file?

is there a difference between the bml4 you read in as bml4.bak and spl.bin? would you be able to just rename bml4.bak to spl.bin, and place it in the update directory? is that what you did just the directory problem?
[Galaxy S I9000 Android Development] phoenixdigital:
jm5 is a european firmware and worked fine on my Australian handset.

Also I did add both boot.bin and Spl.bin to my Australian firmware .tar file. Where I stuffed up was my tar file was this format

custom/boot.bin

custom/cache.rfs

custom/dbdata.rfs

custom/factoryfs.rfs

custom/param.lfs

custom/Sbl.bin

custom/zImage

instead of

boot.bin

cache.rfs

dbdata.rfs

factoryfs.rfs

param.lfs

Sbl.bin

zImage

So I think ODIN re-partitioned... then looked for the rfs and .bin files in my tar file.... they were in a subdirectory so ODIN couldn't find them... so it just stopped... ODIN should do a sanity check for all the files first BEFORE it re-partitions. I think that if I had either

a) not ticked re-partition

b) had my tar file setup correctly with a sub directory

ODIN would have flashed successfully.

noone has really answered my ODIN questions yet so. We don't really know for certain where it went wrong.
[Galaxy S I9000 Android Development] Senorclean:
Hi phoenixdigital,

See attached the dump of my bootloader.

Mine's an Optus SGS from fairly early stock (maybe a week after launch? before they ran out of stock the first time anyway). 3 button works.

Currently running	DTJG4 - rooted with lag fix RyanZA 2-3

Firmware history:

Stock - DTJG3

* Flashed XWJM1 (PDA, Modem)

* Used clockworkmod to retore DTJG3 (but newer modem remained, and caused bad battery life).

* Flashed XWJM2 (PDA, Modem)

* Flashed XXJP1 (PDA, Modem)

* Flashed XXJP2 (PDA, Modem)

* Flashed XXJP3 (PDA, Modem)

* Flashed DTJG4 (PDA only - but this includes modem)

iirc, I re-formatted at one stage, but only one... I can't remember which. I haven't 'bricked' the phone yet - ie, haven't seen the computer-phone sad link screen.

Hope this helps.
[Galaxy S I9000 Android Development] appelflap:
Also, use gtar if you are running windows. Archivers like 7zip doesn't create a appropriate tar file.

BTW anyone noticed that when you flash the froyo (JPx) firmware you get a 3e version of the recovery menu (in contrast to the 2e version you get when you flash 2.1 fw's). I tried to get that new recovery menu in combination with a 2.1 fw version by flashing sbl.bin and boot.bin but somehow the old recovery menu isn't touched. It makes me wonder if it is possible to flash a boot.bin and sbl.bin seperately afterwards.. I also have the feeling that flashing a modem.bin afterwards also doesn't have any effect.
[Galaxy S I9000 Android Development] phoenixdigital:
Thanks for that I checked it against the bootloaders I have collected so far

DTJG4 (no 3click)

DTJG3 (3click)

DTJG4 (3click)

It doesn't match any of them.

I suspect your bootloader got updated by either

XWJM2, XXJP1, XXJP2 or XXJP3 as all of these contain a boot.bin and Spl.bin

Your last flash of DTJG4 would have left the bootloader intact as it doesn't contain a boot.bin and Spl.bin.

So you either have a Euro bootloader or a 2.2 Frodo bootloader.

I got a response from do0fusz who posted the dead phone picture. Since his bootloader was a 3-click one he could recover using the normal method.

Which makes me even more annoyed at Samsung because I could have EASILY fixed my own phone without sending it back had they not removed the 3 click bootloader... grrrrrrr...

Thanks again for sending that up... It would be great to get a bml4 from others too... with short history of flashes like Senoclean sent... If we can find that these match then upgrading to JM5 (PDA and MODEM ONLY) will definitely bring back your 3click mode.
[Galaxy S I9000 Android Development] Senorclean:
Cool, let me know if I can do any more to help.

I noticed Paul's firmware over at modaco seems to overwrite the bootloader - I wonder if flashing this would help this problem.

http://android.modaco.com/content/s...insecure-boot-clockworkmod-recovery-for-odin/

That said, it sounds a bit risky!
[Galaxy S I9000 Android Development] phoenixdigital:
Come on somebody without 3 click and within 14 day return window give it a try... I grew a pair and I took one for the team on monday experimenting on getting the bootloader back ;)

Don't blame me if you brick it though... even though this does sounds pretty safe.... at a minimum try installing JM5 selecting only PDA and PHONE..
[Galaxy S I9000 Android Development] jodue:
hehe, i had that once then i flashed my custom zImage. the only thing that saved my phone from becoming a brick was that i didn't repartition! ;)

for you discussing about repartition: you only have to repartition when you come from an old firmware (pit.513) and not everytime! obviously it increases the chance of getting a brick in the case that an error occurs between partitioning and flashing the 1st&2nd bootloaders.
[Galaxy S I9000 Android Development] omrij:
Just a silly question

have you checked this box before flashing other roms with bootloader files?

Uploaded with ImageShack.us
[Galaxy S I9000 Android Development] phoenixdigital:
Thank jodue I had a feeling that was the case but people kept saying you had to re-partition everytime. Good to hear it is only when you change PITs (Partition Information Table????)

Not a silly question at all.. I never saw that feature of ODIN thanks for the heads up.

Is there a sticky/wiki describing what each button/checkbox does in ODIN in detail?

Like what is 'Phone EFS Clear' - Phone Extended Filesystem Clear?
[Galaxy S I9000 Android Development] omrij:
Regarding EFS you may want to read this

http://xdaforums.com/showthread.php?t=743183&highlight=efs
[Galaxy S I9000 Android Development] phoenixdigital:
Cool thanks for the link... and the warning ;)

I also found there are some posts here which explains a bit more about what each file is in the firmware updates

http://forum.samdroid.net/f38/understanding-spica-1338/#post19303

The Galaxy S has a different partition layout but the files are the same. The Galaxy S partition layout is

http://xdaforums.com/wiki/index.php?title=File:Samsung_Galaxy_S.jpg#Paritions
[Galaxy S I9000 Android Development] phoenixdigital:
Just as a follow up to this. I just compared your bml4 backup to the Spl.bin on the JP3 and it is IDENTICAL :)

So it looks like during your flashing endeavours you managed to modify your bootloader from the stock DTJG3 version I have a copy of here.

Which indicates that upgrading to JM5 or JP3 will definitely replace your bootloader (Might need to tick the 'Phone Bootloader Update' as mentioned in previous post by omrij and DONT flash CSC). This will return 3click functionality

Now we just need someone to try it out..As I said before I am not doing this to my new phone as I don't want to break handset number 2 :)
[Galaxy S I9000 Android Development] Senorclean:
Interesting (and encouraging) news. I didn't think that flashing would update my bootloader...

I thought download mode would always be there regardless - maybe the SGS is less robust than I thought.

That's interesting about the Phone Bootloader Update tickbox... my copy of Odin doesn't seem to have it. (Odin3_v1.0)
[Galaxy S I9000 Android Development] phoenixdigital:
You need to tick the debug box and you will see it. I thought mine was missing it too initially.
[Galaxy S I9000 Android Development] Senorclean:
You're right there - I certainly haven't ticked those before flashing mine and it seems my bl4 was updated.
[Galaxy S I9000 Android Development] phoenixdigital:
Ok I just rang the Samsung repair centre (Chermside Brisbane) and I was quoted $49.50 for a reflash of the phones firmware.

The guy I spoke to wasn't overly aware of the fact that the newer models cannot get into 3 button restore mode. But he said to me that they could definitely recover a bricked Samsung Galaxy S even if that mode was disabled.

I'm still not going to try it just yet though... it's up to someone else. I've already paid my dues by bricking my first handset and discovering all that we have so far ;)

We are close people...How about someone in Canada giving it a go?
[Galaxy S I9000 Android Development] benlui:
Ok, so I'm a bit of a nub when it comes to this, so please be patient with me if I say anything exceptionally stupid.

I have a sgs, I'm in Australia, but I purchased mine online, mine has the 3 button disabled, and I'd be really keen to get access to that because I want to use the handset to learn more and experiment with modding etc, but if I can't recover after I do something dumb it's a bit pointless.

I've searched all over here for hope regarding a fix to this, but I'm pretty dyslexic so I may have missed where I was meant to look. I'm not sure if my device is an appropriate test specimen for what ever went wrong with yours but maybe this will tell.

My phone is:

Model No. GT-I9000

Firmware 2.1-update1

Bsb I9000zsjg4

Kernel 2.6.29 jsoh.oh@SE-S506#2

Build No. ECLAIR.ZSJG4

IMEI starts with 35xxxxxxxxxx

may or may not be relevant, I think the phones an Asian model, or at least it has a couple of random Asian apps on it, has a chinese keyboard along with swype and an english one and may have been flashed at some stage before I got it to make it english possibly?

Would really appreciate any links to area's I should read
[Galaxy S I9000 Android Development] wang1chung:
i flashed it (jm5).................and my phone still boots!!!!!!!!!!!!!!!!!!!!!!!!

ok, i'm going to turn it off and see if download mode works. i know it flashed successfully cause i have all these new apps.

edit: man, all that stress for nothing! i even clicked "phone bootloader update." i pulled the battery, put it back in, and tried download mode (hold vol down+home+pwr) and nothing, just boots.

that's enough stress for me, i'm going away for the weekend........it's just going to be me and my big brass balls

edit2: damn gps doesn't work now. "address is unavailable" with both gps and wifi turned on. plus the phone just crashed. screen went black, unresponse, and bottom soft-keys were lit up. probably going to try flashing back to jh2 tonight via kies.

if it matters, here's the log:

<ID:0/006> Odin v.3 engine (ID:6)..

<ID:0/006> File analysis..

<ID:0/006> Enter CS for MD5..

<ID:0/006> Leave CS..

<ID:0/006> Get PIT for mapping..

<ID:0/006> Firmware update start..

<ID:0/006> factoryfs.rfs

<ID:0/006> cache.rfs

<ID:0/006> dbdata.rfs

<ID:0/006> boot.bin

<ID:0/006> Sbl.bin <------if that is there, i didn't mess up right?

<ID:0/006> param.lfs

<ID:0/006> zImage

<ID:0/006> Removed!!

<ID:0/003> Removed!!

<ID:0/006> Completed..

<OSM> All threads completed. (succeed 1 / failed 0)

<ID:0/003> Removed!!