android-fastboot

Original🇺🇸 English
Translated

Use for fastboot operations, flashing partitions, bootloader unlocking, recovery mode, or partition management. Triggers on "fastboot", "flash boot.img", "unlock bootloader", "recovery mode", "TWRP", "Magisk", "partition", "sideload", "A/B slots". WARNING - These operations can brick devices if done incorrectly.

2installs
Added on

NPX Install

npx skill4agent add hyperb1iss/hyperdroid-skill android-fastboot

Tags

Translated version includes tags in frontmatter

Android Fastboot Operations

⚠️ DANGER ZONE - Fastboot operations write directly to device partitions. Wrong images or interrupted operations can brick devices. Always verify:
  1. Correct device (check
    fastboot getvar product
    )
  2. Correct images for exact device model
  3. Bootloader is unlocked (for flashing)
  4. Battery > 50%

Entering Fastboot Mode

bash
# From ADB (device running)
adb reboot bootloader

# Hardware buttons (most devices)
# Power + Volume Down (hold until fastboot screen)

Basic Commands

bash
fastboot devices                    # List connected devices
fastboot getvar all                 # All device variables
fastboot reboot                     # Reboot to system
fastboot reboot bootloader          # Stay in bootloader
fastboot reboot recovery            # Boot to recovery
fastboot reboot fastboot            # Boot to fastbootd (Android 10+)

Check Before Flashing

bash
# ALWAYS run these first
fastboot devices                    # Verify connection
fastboot getvar product             # Verify device model
fastboot getvar unlocked            # Must be "yes" for flashing
fastboot getvar current-slot        # Know current A/B slot
fastboot getvar battery-level       # Should be > 50

Bootloader Unlocking

Google Pixel

bash
# 1. Enable OEM unlocking in Developer Options
# 2. Boot to fastboot
adb reboot bootloader

# 3. Unlock
fastboot flashing unlock

# 4. Confirm on device with volume keys + power
# WARNING: This wipes all data!

Other Manufacturers

BrandProcess
OnePlus
fastboot oem unlock
XiaomiMi Unlock Tool (waiting period)
SamsungUses Odin, not fastboot
MotorolaRequest code from website,
fastboot oem unlock <code>
SonyRequest code from website

Check Unlock Status

bash
fastboot getvar unlocked            # yes/no
fastboot getvar device-state        # locked/unlocked
fastboot getvar unlock_ability      # Can be unlocked?

Flashing Partitions

Individual Partitions

bash
fastboot flash boot boot.img
fastboot flash recovery recovery.img      # Non-A/B only
fastboot flash dtbo dtbo.img
fastboot flash vbmeta vbmeta.img

# Disable verification (for custom ROMs)
fastboot flash --disable-verity --disable-verification vbmeta vbmeta.img

Bootloader & Radio (Extra Careful!)

bash
# These can hard-brick if wrong!
fastboot flash bootloader bootloader.img
fastboot reboot bootloader    # REQUIRED after bootloader flash

fastboot flash radio radio.img
fastboot reboot bootloader    # Recommended after radio flash

Temporary Boot (No Flash)

bash
# Test before committing - reboots to normal after restart
fastboot boot recovery.img
fastboot boot patched_boot.img

A/B Slot Devices

Modern devices have two copies of each partition (A and B).
bash
# Check current slot
fastboot getvar current-slot        # Returns: a or b

# Set active slot
fastboot set_active a
fastboot set_active b

# Flash to specific slot
fastboot flash boot_a boot.img
fastboot flash boot_b boot.img

# Flash to both slots
fastboot --slot=all flash boot boot.img

Dynamic Partitions (Android 10+)

Large partitions (system, vendor, product) live inside a "super" partition.

Fastbootd Mode

bash
# Enter userspace fastboot
fastboot reboot fastboot

# Check if in fastbootd
fastboot getvar is-userspace        # Should return: yes

Flash Dynamic Partitions

bash
# Must be in fastbootd mode!
fastboot reboot fastboot

fastboot flash system system.img
fastboot flash vendor vendor.img
fastboot flash product product.img

Virtual A/B Snapshots

bash
# Check snapshot status
fastboot getvar snapshot-update-status

# Cancel stuck update (CAREFUL!)
fastboot snapshot-update cancel

Recovery Operations

Enter Recovery

bash
adb reboot recovery
# Or: Power + Volume Up (varies by device)

ADB Sideload

bash
# 1. In recovery, select "Apply update from ADB"
# 2. Run:
adb sideload update.zip

Flash Custom Recovery (TWRP)

bash
# Test first (temporary boot)
fastboot boot twrp.img

# If it works, flash permanently
# Non-A/B devices:
fastboot flash recovery twrp.img

# A/B devices (recovery in boot):
fastboot flash boot twrp.img

Magisk (Root)

Installation

bash
# 1. Extract boot.img from your firmware
# 2. Transfer to device, patch with Magisk app
# 3. Pull patched image
adb pull /sdcard/Download/magisk_patched_*.img

# 4. Flash patched boot
fastboot flash boot magisk_patched_*.img

# 5. Reboot
fastboot reboot

Useful Magisk Commands (after rooted)

bash
adb shell su -c "magisk --version"
adb shell su -c "resetprop ro.debuggable 1"

Factory Reset / Wipe

bash
fastboot erase userdata             # Wipe user data
fastboot erase cache                # Wipe cache (if exists)
fastboot -w                         # Format data + cache

# Full flash with wipe
fastboot -w flashall
fastboot -w update image.zip

Danger Levels

LevelOperations
✅ SAFE
devices
,
getvar
,
reboot
,
boot
(temp)
⚠️ MEDIUM
flash boot/recovery/dtbo
,
set_active
🔴 HIGH
flash system/vendor
,
erase
,
-w
☠️ CRITICAL
flash bootloader
,
flash radio
,
flashing lock
with custom OS

Brick Prevention

Never:
  • Flash images from different device models
  • Interrupt a flash operation
  • Lock bootloader with custom ROM installed
  • Flash bootloader/radio without matching versions
Always:
  • Verify device with
    fastboot getvar product
  • Keep stock images available for recovery
  • Use
    fastboot boot
    to test before
    fastboot flash
  • Maintain battery > 50%

Recovery from Soft Brick

bash
# 1. Enter fastboot (Power + Vol Down)
fastboot devices

# 2. Flash stock boot
fastboot flash boot boot.img

# 3. For dynamic partitions
fastboot reboot fastboot
fastboot flash system system.img
fastboot flash vendor vendor.img

# 4. Wipe if needed
fastboot -w

# 5. Reboot
fastboot reboot
For hard bricks (no fastboot access), you need EDL mode (Qualcomm) or manufacturer service tools.

Quick Reference

TaskCommand
Check connection
fastboot devices
Device info
fastboot getvar all
Unlock bootloader
fastboot flashing unlock
Flash boot
fastboot flash boot boot.img
Test recovery
fastboot boot twrp.img
Current slot
fastboot getvar current-slot
Switch slot
fastboot set_active a
Wipe data
fastboot -w
Reboot
fastboot reboot