Samsung Galaxy S – Why Download and Recovery Modes Are Missing

I’ve had some time on my hands the last couple of days due to the flu so I thought I would put some of that time toward working out why the download and recovery modes are seemingly disabled in some Samsung Galaxy S units around the globe.

It’s been established that the download and recovery modes (AKA three button mode) are not entirely disabled and I have proven this for myself. You can force an affected Samsung Galaxy S into either mode by using the Android SDK along with the USB drivers for your phone and entering the following commands from the SDK tools folder in a command prompt (without quotations):

  • “adb reboot download” (for download mode),
    • Entering this mode should show an android with a shovel.
  • “adb reboot recovery” (for recovery mode).
    • Entering this mode should show something resembling a text mode interface.

So the modes are there but are ultimately useless if a firmware flash is unsuccessful for whatever reason (i.e. flash interrupted, corrupted firmware image, incorrect firmware, etc) as you need the phone to boot up to respond to requests via the SDK. Not ideal unless you want to keep returning your device to your carrier or Samsung to reflash or you are lucky enough to own a compatible JTAG flash tool to write directly to memory without a functioning operating system.

Android phones have a standard boot sequence which is well documented here. In a nutshell, after the Boot ROM finds and loads the first stage boot loader (AKA Primary Boot Loader or PBL or boot.bin) the second stage boot loader (AKA Secondary Boot Loader or SBL or sbl.bin) is loaded. After that, the operating system is loaded (in this case it is the Linux kernel) and parameters can be passed to alter the start up mode (recovery mode is “bootmode=2”).

Theoretically, something in the SBL (or something with which SBL is interacting such as NVRAM) is doing one of the following:

  1. unable to receive key presses during boot (something upstream is blocking communication),
  2. ignoring key presses during boot (key presses received but discarded with no further action),
  3. expecting a different set of key presses, either:
    1. alphanumeric combination impossible to execute given the lack of physical keyboard,
    2. an unknown combination of existing buttons (less likely as most have already tried all the possible combinations).
  4. key presses received but the code to trigger download or recovery modes as a result of the key presses has been disabled or removed.

The folks over at XDA Developers have been trying to figure out which of the partitions contains the error causing the download and recovery modes to be inaccessible via key press combination on boot. The hunt is still in progress but I am definitely keeping my eyes peeled just in case they come up with a solution before Samsung.

17 comments

1 ping

Skip to comment form

    • Arda Kutlu on September 16, 2010 at 16:15
    • Reply

    Is there a guide for samsung galaxy s which discribes how to run adb command?

    1. There isn’t a guide specific to the Samsung Galaxy S but there are generic guides for all Android devices.

      You can find a guide @ http://androidcommunity.com/forums/f4/how-to-install-android-sdk-v1-0-step-by-step-5749/index3.html – you might be able to get away by using generic Android drivers but let me know if you run into problems and I can probably Samsung Galaxy S USB specific drivers for you.

    • caro on February 1, 2012 at 09:18
    • Reply

    i think i bricked my samsung galaxy YP-G1 player 4.0 …. i bought a jig but it does nothing.. ive noticed that when i charge it, it heats up?? My mp3 player won’t turn on can you please help??

    1. Are you able to get into download mode at all (holding the home and down volume buttons while pressing and releasing the power button)?

      I am guessing that you bought a jig because you couldn’t get the device into download mode.

        • caro on February 1, 2012 at 10:28
        • Reply

        No I am not able to get to download mode at all

        1. Are you able to tell me what happens when you try and do it?

          Does your device have a capacitive home button instead of a physical push button?

            • caro on February 1, 2012 at 11:17

            It does nothing! The home button is touch

          1. Do you know if you have any charge left in the device? Have you tried pulling the battery leaving it for thirty seconds and putting it back in (just in case it is stuck in a boot loop)?

    • caro on February 1, 2012 at 11:26
    • Reply

    I just finished charging it for about an hour.. and I just took out the battery right now

    1. At the very least you should have seen a charging battery animation on the screen even if the device was not switched on.

    • caro on February 1, 2012 at 11:32
    • Reply

    Nothing happens at all. No matter what I do.

    1. Okay, I think you are in one of the following situations:

      • your battery has died (so try/buy another battery),
      • the bootloader is corrupted (so you’d need to return it to a service centre to be fixed,
      • the device is physically damaged (return to service centre).

      Try getting a new battery and see if it fixes it but if it doesn’t I’d be returning it to get fixed/replaced. Doesn’t seem like a software issue if attempting to power on with a jig does absolutely nothing.

        • caro on February 1, 2012 at 11:40
        • Reply

        Ok. Thanks!

    • caro on February 1, 2012 at 11:47
    • Reply

    Even if it might be bricked?

    1. Yeah, even if it is bricked. A truly bricked device would still show something on the screen but since nothing is showing up at all (even the battery charging animation) I’m not convinced that it is bricked yet.

      It’s very rare to completely brick these devices as you can revive them using the download mode and the Odin tool which is why I am leaning toward battery failure as a first scenario until we can rule that out.

      If it is actually bricked though the service centre will have JTAG tools to push the firmware straight onto the device.

    • caro on February 1, 2012 at 11:53
    • Reply

    Ok. Thank you! You are very helpful!

    1. No worries at all, let me know how you go!

  1. […] For some high level information on why the three button modes are missing, click here. […]

Leave a Reply

Your email address will not be published.