Fastboot Commands: All Hidden Commands List

Rooting an Android device allows you to unleash the actual potential of the Android OS. Fastboot, alongside ADB (Android Debugging Bridge), is a very useful command-line tool that Android users utilize to tweak their devices. You have to use it by running Fastboot Commands. Every command is there for a particular function.

Sometimes it gets tough to find the right command for the operation you are performing. It gets a lot easier when you can find all the commands in a single list. That’s why I’m going to share all the Fastboot Commands in this post. You can save this list for any future references.

What is Fastboot?

When it comes to rooting an Android device, ADB and Fastboot are the first names that will pop up in your mind. We have already covered the use of ADB and its commands. Here, we will cover only Fastboot commands, but we will also need ADB in order to execute them. Basically, Fastboot is a command-line tool and an Android OS protocol used to perform various command-line operations.

It is a part of the SDK Platform-tools, just like ADB, and helps in debugging and modifying an Android device using a computer. It acts as a communication bridge between the computer and the Android device. You need to boot the device into the Fastboot or Bootloader mode in order to use these commands. That’s why ADB is essential.

What are Fastboot Commands?

Fastboot Commands are function-specific commands that run into Fastboot or Bootloader Mode. Using them, you can perform various operations on an Android device like enabling/disabling OEM unlock, flashing factory images, modifying partitions, or even rebooting the bootloader. There are many other things you can do as well.

These commands make flashing a custom recovery or stock firmware image on an Android device very simple. You just need to manually execute specific commands and the rest will take place automatically. Earlier, tweaking Android was a task of developers but now anyone can do that.

When to use Fastboot Commands?

You have to use Fastboot CMDs when you are working on Bootloader mode. ADB commands will not work here as the device is not booted into the Android operating system. If you wish to do any operation in this mode, then using the Fastboot commands is the most viable option.

The Android debugging tools need to communicate with the device in order to work. However, Fastboot CMDs can work even if the OS is not booted. You need to boot the device into Bootloader or Fastboot though.

Fastboot Commands List 2021

Here are all the Fastboot commands that you can use to perform a specific task on an Android device. Before using these, you need to make sure of these things:

  • ABD and Fastboot are installed on the system as both will be needed.
  • You have enabled USB Debugging on your Android device from Developer options.
  • Your Android device should be booted into Fastboot mode/Bootloader mode.

After that, you can pick any command from the list and execute it easily.

Basic CMDs

Show the given bootloader variable:

Queue devices in bootloader (-l: with device paths):

  • fastboot devices [-l]

Reboot Android:

  • fastboot reboot [bootloader]

Flashing CMDs

Flash every partition from $ANDROID_PRODUCT_OUT. On A/B devices, the flashed slot is set as active, while the secondary images may be flashed to an inactive slot:

  • fastboot flashall

Flash any given partition, using the image from $ANDROID_PRODUCT_OUT if/when no filename is given:

  • fastboot flash PARTITION [FILENAME]

Flash every partition using an update.zip package:

  • fastboot update ZIP

Commands for Options

Sweep user data:

  • fastboot -w

Select a USB device:

  • fastboot -s SERIAL

Select a network device:

  • fastboot -s tcp|udp:HOST[:PORT]

Distribute into sparse files no larger than SIZE:

  • fastboot -S SIZE[K|M|G]

Perform a flash operation forcefully that may be unsafe:

  • fastboot –force

Activate SLOT; ‘all’ for both slots, ‘other’ for non-current slot (default is the current active slot):

  • fastboot –slot SLOT

Selects the active slot before rebooting:

  • fastboot –set-active[=SLOT]

Prevent flashing secondary slots in flashall/update:

  • fastboot –skip-secondary

Prevent rebooting the device after flashing:

  • fastboot –skip-reboot

Select disabled-verity when flashing vbmeta:

  • fastboot –disable-verity

Select disable-verification when flashing vbmeta:

  • fastboot –disable-verification

Activate file-based encryption, sweeping user data:

  • fastboot –wipe-and-use-fbe

Stop buffering of input or output:

  • fastboot –unbuffered

Verbose an output:

  • fastboot –verbose, -v

Show version:

  • fastboot –version

Display this message:

  • fastboot –help, -h

Boot Image Commands

Complete the Downloading and booting of kernel from RAM:

  • fastboot boot KERNEL [RAMDISK [SECOND]]

Make a boot image and flash it:

  • fastboot flash:raw PARTITION KERNEL [RAMDISK [SECOND]]

Choose path to DTB for boot image header version 2:

  • fastboot –dtb DTB

Reject kernel command line:

  • fastboot –cmdline CMDLINE

Choose kernel base address (default: 0x10000000).

  • fastboot –base ADDRESS

Choose kernel offset (default: 0x00008000):

  • fastboot –kernel-offset

Select ramdisk offset (default: 0x01000000):

  • fastboot –ramdisk-offset

Select tags offset (default: 0x00000100):

  • fastboot –tags-offset

Choose dtb offset (default: 0x01100000):

  • fastboot –dtb-offset

Choose flash page size (default: 2048):

  • fastboot –page-size BYTES

Select boot image header version:

  • fastboot –header-version VERSION

Select boot image OS version (default: 0.0.0):

  • fastboot –os-version MAJOR[.MINOR[.PATCH]]

Choose boot image OS security patch level:

  • fastboot –os-patch-level YYYY-MM-DD

Commands For Locking/Unlocking

Lock or unlock partitions to flash them:

  • fastboot flashing lock|unlock

Lock or unlock the significant bootloader partitions:

  • fastboot flashing lock_critical|unlock_critical

Detect if unlocking is allowed (1) or not(0):

  • fastboot flashing get_unlock_ability

Manul Commands For Android Things

Move the given file to the stage for the next command:

  • fastboot stage IN_FILE

Script data staged by the last command to a file:

  • fastboot get_staged OUT_FILE

Advanced CMDs

Clean a flash partition:

  • fastboot erase PARTITION

Reset a flash partition:

  • fastboot format[:FS_TYPE[:SIZE]] PARTITION

Select the active slot:

  • fastboot set_active SLOT

Run OEM-specific command:

Clear or deactivate a GSI installation (fastbootd only):

  • fastboot gsi wipe|disable

Clean or Wipe the super partition. Doing this will reset it to having an empty set of default dynamic partitions:

  • fastboot wipe-super [SUPER_EMPTY]

Cancel an in-progress update (For devices that feature snapshot-based updates):

  • fastboot snapshot-update cancel

Finish an in-progress update if it is in the “merging” phase (For devices that feature snapshot-based updates):

  • fastboot snapshot-update merge

Final Take

Fastboot commands allow you to tweak the Android device even when the OS isn’t booted. You have to boot into Fastboot or Bootloader mode in order to run them. Once you are in, you can perform any operation using its specific command. You just need to finalize an operation and execute its command in the Command Prompt.

These are all the Fastboot commands available functioning of now. You can freely put a bookmark on this list and keep using it while customizing your Android device.