FORUMS
Remove All Ads from XDA

[GUIDE] Fastboot Mode

1,873 posts
Thanks Meter: 3,461
 
By kinfauns, Retired DC Lead / Senior Moderator - The Quiet One on 22nd May 2012, 11:28 PM
Post Reply Email Thread
As mentioned in the guide, Kindle Fire For Beginners (KFFB), fastboot is the key to fixing all software related problems on the Kindle Fire. Regardless of the actual bricking circumstances, the Kindle Fire can be unbricked if the device can be put into fastboot mode. Even in the worst situation, the unbricking steps boil down to...
  • Get to fastboot mode
  • Use fastboot flash to install a recovery
  • Use recovery to flash a bootloader and ROM
Although these points are covered in KFFB, it can be difficult to discern the actual procedures for putting the device into fastboot mode and recognize when it has been enabled. This guide is a more concise presentation, but it assumes at least some basic knowledge discussed in KFFB. If you are unfamiliar with that guide, please read that one first.

WARNING: Multiple users have reported problems with fastboot when using a USB 3.0 port. This is probably a bug in the fastboot program. Move the cable to a USB 2.0 port before using fastboot.

Identifying The Bootloader

Because the bootloader is responsible for enabling fastboot mode, one must be loaded and working properly to issue fastboot commands to the Kindle Fire. To determine which bootloader is booting the device, take note of the bootlogo on the display when it first powers up.

Stock Bootloader - white and orange "kindle fire" logo
FireFireFire (versions 0.9 to 1.2) - yellow triangle with flames
FireFireFire (version 1.3) - white and orange "kindle fire" logo with green android
FireFireFire (version 1.4) - white and blue "kindle fire" logo

Recognizing fastboot mode

The Display - As the bootloader loads up on the device, one of the previously mentioned bootlogos will appear on the display. With fastboot mode enabled, that bootlogo will be persistent and remain bright on the display. If the display blacks out and redisplays the bootlogo with the backlight slightly dimmed, the bootloader has bypassed fastboot mode and moved on in the boot process.

The bootlogo on the display is the easiest way to see whether or not the device is putting itself into fastboot mode. Again, when the device is in fastboot mode, the bootlogo will appear on the display upon start up, never black out, and remain bright on the screen.

The Device Manager - In the Windows Device Manager, "Android Phone -> Android ADB Interface" will appear in the list when the device drivers have loaded properly. If "Other devices -> kindle" (with 'k' in lower case) appears in the list instead, the proper device drivers have not been loaded and the device drivers must be reinstalled.

Hardware IDs - Also in the Windows Device Manager, right-click on whatever interface name appears for the connected device and select "Properties" from the contextual menu. In the window that appears, select "Hardware IDs" from the drop-down menu. When the device is in fastboot mode, one of the following sets of IDs will appear in that window.

Stock Bootloader
USB\VID_1949&PID_0006&REV_0100
USB\VID_1949&PID_0006
FireFireFire Bootloader
USB\VID_18D1&PID_0100&REV_0100
USB\VID_18D1&PID_0100
Windows identifies each USB device by these three numbers, the VID, PID and REV. Only these two sets of hardware identification numbers will appear when the Kindle Fire's bootloader is running. If the numbers differ at all, the bootloader no longer controls the device and therefore not in fastboot mode.

Linux users can use "lsusb -v" to get a list of all connected USB devices. The corresponding IDs are idVendor, idProduct and bcdDevice. Mac OS X users can use "system_profiler SPUSBDataType" and those IDs will be listed as Vendor ID, Product ID and Version in the list. The numbers are formatted slightly different than their Windows counterparts, but it's straightforward to determine what they are.

Methods for Enabling Fastboot Mode

Realistically, there are 3 potential methods of enabling fastboot mode on a working bootloader. There is a 4th method, but it should only be considered as a last ditch effort because the case must be opened for access to the motherboard. Let's cover the first 3 methods...

Factory cable - Using a factory cable is the most straightforward method of enabling fastboot mode on the Kindle Fire and it will work with any bootloader. With the device off, plug the cable into the Kindle Fire, then the computer and the device will boot up directly into fastboot mode. No other user intervention is required.

Temporary fastboot mode - The FireFirefire custom bootloader temporarily enables fastboot mode for a short amount of time. Issuing a fastboot command like...
Code:
fastboot getvar product
to the device during this time will stop the fastboot countdown and enable fastboot mode indefinitely. If the device displays a plain white and orange "kindle fire" logo, the stock bootloader is installed. The stock bootloader does not enable fastboot temporarily, so another method must be used.

Bootmode setting - The Kindle Fire has a bootmode setting that indicates to the bootloader how to proceed in its booting process. One of these bootmodes (4002) will tell the bootloader to enable fastboot mode. The bootmode setting is recognized by all bootloaders, so even the stock bootloader will go into fastboot mode when the bootmode is set to 4002. The only place this feature is likely to be used is from the system software, but there's a catch. The system must be able to provide access to a shell prompt.

For an unrooted stock device, use pokey9000's fbmode.

For a rooted stock device...
Code:
adb shell su -c 'idme bootmode 4002'
For a ROM with built-in root privileges...
Code:
adb shell idme bootmode 4002
If an error message similar to...
exec '/system/bin/sh' failed: No such file or directory (2)
appears when attempting to any of the above methods, the system cannot provide shell access. Consequently, the system will not be able to change the bootmode in this manner.

Making the decision

Then the choice of which method to use in order to enable fastboot is simple:

Do you have a factory cable available?
Does the device have a bootloader with temporary fastboot?
Can the device be booted into a system that can grant shell access?

With a working bootloader, the first question to which you can answer in the affirmative is your best choice. If the device does not have a working bootloader or you've answered "no" to all of the above, there's only one option remaining to you. Remove the back cover of the Kindle Fire to get access to the motherboard, short an exposed connection to the metal frame and employ pokey9000's Firekit. This procedure will set the device into USB bootmode and Livekit can upload a fastboot mode enabled bootloader through USB.

Getting out of fastboot mode

To get out of fastboot mode, make sure the bootmode is set to something other than 4002 and reboot the device. The examples below will set the bootmode to normal and reboot the device.

With the stock bootloader...
Code:
fastboot -i 0x1949 oem idme bootmode 4000
fastboot -i 0x1949 reboot
With the FFF bootloader...
Code:
fastboot oem idme bootmode 4000
fastboot reboot
If a factory cable was used to enable fastboot mode, it must be disconnected before the bootloader loads again or it will go back into fastboot mode. You can quickly yank the cable after the reboot command has been issued, but it's probably safer to press and hold the power button for around 20 seconds to turn off the device, disconnect the cable, and turn it back on.

Using Fastboot commands and other information

There are many guides related to fastboot. Here are just a handful of starting points...

Installing Windows device drivers for fastboot
A list of fastboot commands
Using fastboot to install TWRP (See "Installing a recovery and custom bootloader")
The Following 21 Users Say Thank You to kinfauns For This Useful Post: [ View ] Gift kinfauns Ad-Free
 
 
23rd May 2012, 06:51 AM |#2  
Senior Member
Thanks Meter: 21
 
More
@kinfauns, can a broken bootloader boot into fastboot with a factory cable?

Gửi từ Kindle Lửa của tôi qua Tapatalk 2
23rd May 2012, 07:01 AM |#3  
kinfauns's Avatar
OP Retired DC Lead / Senior Moderator - The Quiet One
Thanks Meter: 3,461
 
More
Quote:
Originally Posted by linktohack

@kinfauns, can a broken bootloader boot into fastboot with a factory cable?

Gửi từ Kindle Lửa của tôi qua Tapatalk 2

No. The bootloader is what enables fastboot mode. The factory cable does not help the situation if the device does not have a working bootloader. Under these circumstances, you must open the case, use the "shorting trick" and upload a bootloader into memory using usbboot.
The Following User Says Thank You to kinfauns For This Useful Post: [ View ] Gift kinfauns Ad-Free
24th May 2012, 07:52 AM |#4  
Senior Member
Thanks Meter: 21
 
More
Quote:
Originally Posted by kinfauns

No. The bootloader is what enables fastboot mode. The factory cable does not help the situation if the device does not have a working bootloader. Under these circumstances, you must open the case, use the "shorting trick" and upload a bootloader into memory using usbboot.

Thanks, so an advice for normal user is not to mess around with bootloader and double check md5 before flash it.

Gửi từ Kindle Lửa của tôi qua Tapatalk 2
22nd June 2012, 07:18 PM |#5  
kinfauns's Avatar
OP Retired DC Lead / Senior Moderator - The Quiet One
Thanks Meter: 3,461
 
More
I've rearranged the sections in this guide in a more logical order, clarified a few points and cleaned it up. I've also added a list of hardware IDs that should be fairly foolproof to see whether or not the KF is actually in fastboot mode. A section on how to get out of fastboot mode has also been added.
The Following 2 Users Say Thank You to kinfauns For This Useful Post: [ View ] Gift kinfauns Ad-Free
23rd June 2012, 05:10 PM |#6  
forest1971's Avatar
Senior Member
Thanks Meter: 2,156
 
More
Excellent guide! Thanks.

Sent from my GT-P1000 using XDA
23rd June 2012, 09:05 PM |#7  
Junior Member
Thanks Meter: 1
 
More
Thank you so much for this. I have been reading up on fast boot recently and it is a huge help to have it spelled out in one place.

Sent from my Amazon Kindle Fire using Tapatalk 2
15th October 2012, 07:23 PM |#8  
Senior Member
Thanks Meter: 300
 
More
Interesting guide. Problem is that it probably doesn't work on newer fires.
Let me explain: So I had my Kindle Fire replaced and following this guide got into fastboot mode (through factory cable in my case). Problem is that once I'm there neither Windows nor Linux recognizes my device. This must be an ailment of newer KFs because the old ones -I remember clearly- could well be recognized while in FB mode.

Any recommendations?

edit: I can't get out (FB mode) right now so I would *really* appreciate any help.
15th October 2012, 07:33 PM |#9  
Pkt_Lnt's Avatar
Recognized Contributor
Flag SLO
Thanks Meter: 3,670
 
More
Quote:
Originally Posted by Stevethegreat

Interesting guide. Problem is that it probably doesn't work on newer fires.
Let me explain: So I had my Kindle Fire replaced and following this guide got into fastboot mode (through factory cable in my case). Problem is that once I'm there neither Windows nor Linux recognizes my device. This must be an ailment of newer KFs because the old ones -I remember clearly- could well be recognized while in FB mode.

Any recommendations?

edit: I can't get out (FB mode) right now so I would *really* appreciate any help.

I have nothing to offer in your immediate situation, but do not use any technique from these forums if you have a KF2.
http://forum.xda-developers.com/show....php?t=1930681
15th October 2012, 07:45 PM |#10  
kinfauns's Avatar
OP Retired DC Lead / Senior Moderator - The Quiet One
Thanks Meter: 3,461
 
More
Quote:
Originally Posted by Stevethegreat

Interesting guide. Problem is that it probably doesn't work on newer fires.
Let me explain: So I had my Kindle Fire replaced and following this guide got into fastboot mode (through factory cable in my case). Problem is that once I'm there neither Windows nor Linux recognizes my device. This must be an ailment of newer KFs because the old ones -I remember clearly- could well be recognized while in FB mode.

Any recommendations?

edit: I can't get out (FB mode) right now so I would *really* appreciate any help.

- You are in the wrong forum if you have a 2nd generation KF, but fastboot mode is definitely accessible on them and commands can be issued.

- This guide was written for the original KF, so a great deal of the information here is does not apply to the 2nd generation KF. The custom bootloaders will not work, the hardware ID values are different, the bootmode values are different.

- If you can't get your computer to recognize the device in fastboot mode, it's a problem with the device drivers on Windows or incorrect permissions to access the device on Linux. Both of these are probably caused by the different hardware ID values. You'll need to alter the INF file to match them for Windows and redo your udev rules on Linux. This guide includes the procedure for finding the hardware ID values, you'll have to look at some other guides for applying them.

- If you used the factory cable to enter fastboot mode, all you need to do is force the device off, disconnect the factory cable and reboot. If you changed the bootmode on a 2nd generation device, you're on your own. The various bootmode values have changed and I don't know what the proper ones are to get it booting normally again.
15th October 2012, 07:52 PM |#11  
Senior Member
Thanks Meter: 300
 
More
Quote:
Originally Posted by kinfauns

- You are in the wrong forum if you have a 2nd generation KF, but fastboot mode is definitely accessible on them and commands can be issued.

- This guide was written for the original KF, so a great deal of the information here is does not apply to the 2nd generation KF. The custom bootloaders will not work, the hardware ID values are different, the bootmode values are different.

- If you can't get your computer to recognize the device in fastboot mode, it's a problem with the device drivers on Windows or incorrect permissions to access the device on Linux. Both of these are probably caused by the different hardware ID values. You'll need to alter the INF file to match them for Windows and redo your udev rules on Linux. This guide includes the procedure for finding the hardware ID values, you'll have to look at some other guides for applying them.

- If you used the factory cable to enter fastboot mode, all you need to do is force the device off, disconnect the factory cable and reboot. If you changed the bootmode on a 2nd generation device, you're on your own. The various bootmode values have changed and I don't know what the proper ones are to get it booting normally again.

I don't think I'm on 2nd Gen KF, I got mine pretty much by replacing my dying KF (1st gen), so I can't see how I could end up with 2nd gen.

But say I am as you correctly pointed out Fastboot should had worked, problem is that it never did.
The reason that I'm stuck (on FB) right now is that I had though that it was because of the cable why I was unable to get properly into Fastboot, so I used a dif. method.

edit: The hardware ID is:

USB\VID_1949&PID_0006&REV_0100
USB\VID_1949&PID_0006

So I'm definately on first gen, so back to my orginal question why the heck my KF is not recognized (in either Windows or Linux, I've tried both multiple times)?

edit2: Well, to make matters worse upon booting my Fire is recognized (so the drivers are correct) but when I'm trying to do anything, anything at all, the device does not respond. So I reconnect the usb cable and this time around I get "unknown device" in Windows and in Linux -well- I pretty much get nothing, as if the device was never there. I fear that my replacement is not exactly in working order, unless there's something major I'm missing. I literally did nothing else apart from trying to get into FB since I got the device out of its package...
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread