Fastboot is a protocol and a tool of the same name. It is included with the Android SDK package used primarily to modify the flash filesystem via a USB connection from a host computer. It requires that the device be started in Fastboot mode. If the mode is enabled, it will accept a specific set of commands sent to it via USB using a command line. Fastboot allows to boot from a custom recovery image. Fastboot does not require USB debugging to be enabled on the device. Not all Android devices have fastboot enabled. To use fastboot, a specific combination of keys must be held during boot. Android device manufacturers are allowed to choose if they want to implement fastboot or some other protocol. Keys pressed The keys that have to be pressed for fastboot differ for various vendors. HTC, Xiaomi, and Google Pixel: Power and volume down Sony: Power and volume up Google Nexus: Power, volume up and volume down On Samsung devices, (excluding the Nexus S and Galaxy Nexus devices), power, volume down and home has to be pressed for entering ODIN mode. This is a proprietary protocol, and tool, as an alternative to fastboot. The tool has a partial alternative. Commands Some of the most commonly used fastboot commands include: flash rewrites a partition with a binary image stored on the host computer. flashing unlock/oem unlock *** unlocks an OEM locked bootloader for flashing custom/unsigned ROMs. The *** is a device specific unlock key. flashing lock/oem lock *** locks an OEM unlocked bootloader. erase erases a specific partition. reboot reboots the device into either the main operating system, the system recovery partition or back into its boot loader. devices displays a list of all devices (with the serial number) connected to the host computer. format formats a specific partition; the file system of the partition must be recognized by the device. oem device-info checks the bootloader state. getvar all displays all information about device (IMEI, bootloader version, battery state etc.). Implementations The fastboot protocol has been implemented in the Little Kernel fork of Qualcomm and in TianoCore EDK II. Fastboot is a mode of the Android bootloader called ABOOT. See also Bootloader unlocking Android recovery mode References External links Flashing Devices - Android.com Fastboot protocol specification Reverse Engineering Android's Aboot Android (operating system) Communications protocols Android (operating system) development software