Android A to Z

What is fastboot? In Android, fastboot is a special diagnostic and engineering protocol that you can boot your Android device into.  While in fastboot, you can modify the file system images from a computer over a USB connection.  It's a powerful, nerdy tool that deserves to be broken down into terms we all can understand -- let's try and do that.

Not all phones have a fastboot mode that the user can access.  It's turned on with Nexus devices by default (as well as a few other phones and tablets) and has been enabled by independent Android developers and enthusiasts on some other phones.  It also requires more than what ships with the Android SDK, and different USB drivers for Windows computers.  Fastboot runs on Windows, Mac, and Linux and all the information about setting it up can be found in the forums if you're interested.  Once set up, you boot your phone to fastboot and you can flash image files to your phone's internal memory.  Flashing a custom recovery like ClockworkMod is a popular use case, as is resetting it all back using factory images after we're done breaking things.  The images you flash don't need to be signed with a particular key, so just about anything will try to flash -- even if it shouldn't be used, so use care.  There are other commands you can use with fastboot, and they're a bit more advanced.  Things like erasing partitions and overriding kernel command line options can be done, and this makes the tool very useful for developing hardware and software solutions that may need customized booting procedures.  With a little bit of knowledge, and the right Android hardware, fastboot can be a great tool.

Previously on Android A to Z: What's an ETF?; Find more in the Android Dictionary

More from the Android Dictionary



Reader comments

Android A to Z: What is fastboot?



Jerry, thank you. It's frustrating when I read articles with tech language I don't understand. These articles you folks post are a great learning reference tool for people like me.

"fastboot is a [...] protocol that you can boot your Android device into" You cannot "boot into" a protocol, that's not what protocol means.
"Fastboot runs on Windows, Mac, and Linux" Wait, what now?

I know what fastboot is used for, but I'm not sure what it IS. And reading this article only confuses me.

Yeah, I don't like how they're playing fast and loose with the terms for the fastboot mode in the bootloader, the protocol, and the client tool. If this is truly for the "layman", then we're really doing them a disservice here when they actually go out to install custom ROMs

It's a little nit-picking, but I agree.

AFAICT, fastboot is either an extension of the bootloader, or low-level program that gets called from the bootloader (i assume extension because the interface is identical).

From here you can use an external client to interract with it from either windows, linux or mac to push images or change parameters of the bootloader (i.e. why you can change kernel command line options). Which makes me again think it's an extension of the bootloader.

Also, as far as HTC devices are concerned, you can somewhat interact with fastboot by putting a properly named zip file on the root of your sdcard to do automated flashes. Personally I can't stand this method because you have to completely reboot and remove that zip file if you ever want to get back into fastboot/recovery again.

Just my 2 cents.

The 'problem' is that the same term 'fastboot' is used for different things.
1. First it is correct that fastboot is a protocol.
2. But there exists also a host application on most Android devices with the same name, which provide this protocol via the USB port.
3. And there is a client application 'fastboot' which can be install (normally with Android-SDK) under Windows, Mac or Linux. This client communicate with the host via the 'fastboot' protocol.

As far as I can tell, FB is a bootloader that can interact with a computer. I've only interacted with it once, but it seems to the be key enabler to loading custom firmware.

As for the A-to-Z articles... genius. Pure genius.