Recover a Bricked Android Phone with Fastboot and ADB

14 min read Step‑by‑step guide to revive a soft‑bricked Android device using Fastboot and ADB, covering preparation, unlocking, flashing stock images, and troubleshooting. September 28, 2026 16:00 How to Recover a Bricked Android Phone with Fastboot and ADB

If your Android phone powers on but never reaches the home screen, keeps looping on the boot logo, or shows only a black screen, it’s likely soft‑bricked. Unlike a hard brick, the device still communicates with a computer, which means you can often revive it using the fastboot and adb command‑line tools. This tutorial walks you through the entire recovery process, from preparing your workstation to flashing a clean stock image and verifying that the phone boots normally again.

What you’ll need
  • A Windows, macOS, or Linux PC with an internet connection.
  • A USB‑C or micro‑USB cable that can transfer data (charging‑only cables won’t work).
  • The correct stock firmware for your exact device model (model number, carrier, and Android version must match).
  • Fastboot and ADB binaries – we’ll show how to install them on each OS.
  • At least 30 % battery charge on the phone (or keep it plugged into a charger).

Before you start – safety checklist

  1. Backup data if possible. If the device still boots into recovery, use adb backup or copy files via adb pull. Once you flash a new system image, all user data will be erased.
  2. Identify the exact device model. Look at the back of the phone, the original box, or the fastboot getvar product output (you’ll see it later). Using the wrong firmware can brick the device permanently.
  3. Unlock the bootloader. Most manufacturers require an unlocked bootloader to flash images via fastboot. Unlocking will wipe the device, so consider this step part of the reset.
  4. Charge the phone. A sudden power loss during flashing can corrupt the bootloader.

Step 1 – Install ADB and Fastboot on your PC

The official Android SDK Platform‑Tools package contains both adb and fastboot. Follow the OS‑specific instructions below.

Windows

  1. Download the Platform‑Tools ZIP from the Android developer site.
  2. Extract the ZIP to a folder, e.g., C:\platform-tools.
  3. Add the folder to your PATH:
    setx PATH "%PATH%;C:\platform-tools"
    You may need to open a new Command Prompt to see the change.

macOS

  1. Open Terminal.
  2. Install via Homebrew (if you have it): brew install --cask android-platform-tools. This places the binaries in /usr/local/bin.
  3. If you prefer manual install, download the ZIP, unzip, and move the folder to /usr/local/opt/platform-tools, then add it to PATH.

Linux

  1. Most distributions ship adb and fastboot in their repositories. For Ubuntu/Debian: sudo apt update && sudo apt install android-tools-adb android-tools-fastboot.
  2. If you want the latest version, download the ZIP, extract, and add the platform-tools directory to PATH.
Verify installation – Open a terminal (or Command Prompt) and run adb version and fastboot version. Both should print version numbers.

Step 2 – Put the phone into Fastboot mode

Fastboot mode is a low‑level interface that works even when Android cannot start. The exact key combination varies by manufacturer, but the most common patterns are:

  • Pixel / Nexus: Power off → hold Volume Down + Power until the Fastboot screen appears.
  • Samsung (ex‑One UI): Power off → hold Volume Up + Bixby (or Power) + Volume Down → release when the warning appears and press Volume Up to enter Download mode, then use Odin instead of fastboot (outside the scope of this guide).
  • OnePlus / Xiaomi / Oppo: Power off → hold Volume Up + Power.

Once the device shows a text‑only screen with the word “Fastboot” and a list of commands, connect it to the PC via USB.

Confirm the connection

fastboot devices

The command should output a serial number, e.g., 0123456789ABCDEF fastboot. If nothing appears, try a different USB cable, a different port, or enable USB debugging (if the device still boots to recovery, you can enable it from the “Advanced” menu).

Do not disconnect the phone while fastboot is active. A sudden disconnection can corrupt the bootloader and make the device unrepairable without specialized hardware.

Step 3 – Unlock the bootloader (if not already unlocked)

Most OEMs require an unlocked bootloader to flash a new system image. Unlocking will perform a factory reset, erasing all user data.

Check lock status

fastboot getvar unlocked

If the response is unlocked: yes, you can skip the unlocking step. If it says no or the command fails, continue.

Unlock procedure

  1. Enable OEM unlocking in the device’s Developer Options (if you can reach the OS). If you’re stuck in a bootloop, you can still access the “Fastboot” menu on many devices and select “OEM unlock”.
  2. Run the unlock command (replace YOUR_DEVICE with the serial shown by fastboot devices):
    fastboot -s YOUR_DEVICE flashing unlock
    On some devices (e.g., Pixel), you’ll see a confirmation screen on the phone. Use the volume keys to select “Yes” and confirm with the power button.
  3. After the unlock finishes, the device will reboot automatically into fastboot. You may need to repeat the key‑combination to re‑enter fastboot mode.
Manufacturer‑specific quirks
  • Huawei / Honor: Newer devices no longer allow bootloader unlocking.
  • Samsung: Uses Odin/Download mode, not fastboot. This tutorial does not cover Samsung flashing.
  • Motorola: Requires a free unlock key from motorola.com/unlock. The key is tied to the device’s serial number.

Step 4 – Obtain the correct stock firmware

Flashing an incorrect image will either fail or brick the device. Follow these guidelines:

  • Identify the exact model number (e.g., Pixel 5 (GTT2), OnePlus 9 (LE2105)).
  • Download the official factory image from the manufacturer’s site or a trusted archive (e.g., Google Pixel factory images).
  • Make sure the image matches the region/carrier if the device is carrier‑locked.
  • Extract the ZIP; you should see files like boot.img, system.img, vendor.img, and a flash-all.sh (Linux/macOS) or flash-all.bat (Windows) script.

Why you should avoid third‑party ROMs for recovery

Custom ROMs (LineageOS, Pixel Experience, etc.) are great for daily use, but they often require a custom recovery (TWRP) and a different flashing procedure. For a pure recovery, a stock image guarantees that the bootloader, radio, and security patches match the original configuration.

Step 5 – Flash the stock firmware using fastboot

There are two common ways: run the supplied flash‑all script, or flash each partition manually. We’ll cover both.

Method A – Using the provided script (recommended)

  1. Open a terminal in the directory where you extracted the factory image.
  2. Make the script executable (Linux/macOS):
    chmod +x flash-all.sh
  3. Run the script:
    ./flash-all.sh
    On Windows, double‑click flash-all.bat or run it from Command Prompt.
  4. The script will sequentially flash bootloader, radio, system, vendor, etc. Watch the output – any line that says FAILED indicates a problem.
  5. When the script finishes, the phone will reboot automatically. If it boots to the Android setup screen, the recovery succeeded.

Method B – Manual flashing (useful if the script fails)

# Example for a generic device – adjust filenames as needed
fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash vendor vendor.img
# Some devices also need radio and bootloader images
fastboot flash radio radio.img
fastboot flash bootloader bootloader.img
# Finally, flash the recovery (optional)
fastboot flash recovery recovery.img
# Reboot
fastboot reboot

After each fastboot flash command, fastboot prints OKAY if the write succeeded. If you see FAIL, double‑check the filename and the device’s partition layout (use fastboot getvar all to list partitions).

Do not interrupt the flashing process. Power loss or a stray Ctrl+C will leave the device in an incomplete state, often requiring a full re‑flash of the bootloader.

Step 6 – Verify the flash and perform a first‑boot check

  1. When the phone restarts, you should see the manufacturer’s boot animation followed by the Android setup wizard.
  2. If the device gets stuck on the boot logo again, reboot into fastboot (repeat the key combo) and run:
    fastboot devices
    fastboot getvar all
    Check the slot-count and current-slot values; some devices use A/B partitions. In that case, you may need to flash the system image to the inactive slot and then set it active:
    fastboot set_active a   # or b
    fastboot reboot
  3. If the device boots but immediately reboots (bootloop), capture a log via ADB (if you can reach recovery):
    adb logcat -d > bootlog.txt
    Look for lines containing FATAL EXCEPTION or kernel panic. Often a mismatched vendor image causes this; re‑flash the correct vendor image.

Step 7 – Optional – Re‑lock the bootloader (for security)

If you plan to keep the device for everyday use and don’t need to flash custom images, re‑locking the bootloader restores the security guarantees enforced by Google’s Verified Boot.

fastboot flashing lock

After locking, the device will perform a factory reset again. Verify that the lock succeeded:

fastboot getvar unlocked
The output should be unlocked: no.

Troubleshooting common failures

SymptomPossible CauseFix
fastboot devices returns nothingUSB driver issue, bad cable, or phone not in fastboot mode.Install OEM USB drivers (Google USB Driver for Pixel, OEM driver for Samsung, etc.). Try a different cable/port. Re‑enter fastboot mode.
fastboot flash … FAILED (remote: protocol fault)Corrupted image file or mismatched partition size.Re‑download the factory image, verify the checksum (MD5/SHA‑256). Use the --no-reboot flag to retry the same partition.
Device boots to recovery loopWrong vendor or radio image, or A/B slot mismatch.Flash the correct vendor image. For A/B devices, ensure you flash to the inactive slot and then set it active.
Bootloader unlock command not recognizedDevice’s bootloader is already locked and OEM does not allow unlocking.Check manufacturer policy. Some Chinese brands (e.g., Huawei post‑2019) permanently lock the bootloader.
After flashing, the phone shows “Verification failed”Fastboot version too old for the device’s protocol.Download the latest Platform‑Tools (v33+). Older fastboot versions cannot communicate with newer bootloaders.

Step‑by‑step recap

  1. Install ADB/Fastboot on your computer.
  2. Power off the phone and enter Fastboot mode.
  3. Connect via USB and confirm with fastboot devices.
  4. Unlock the bootloader if needed (fastboot flashing unlock).
  5. Download the exact stock factory image for your model.
  6. Flash using the supplied flash-all script or manually flash each partition.
  7. Reboot and verify the device reaches the Android setup screen.
  8. Optional: re‑lock the bootloader for maximum security.

When to seek professional help

If none of the troubleshooting steps restore the device, the problem may be hardware‑related (e.g., a failed eMMC, damaged bootloader chip, or broken USB port). In that case, contact the manufacturer’s service center or a qualified repair shop. Attempting hardware flashing (e.g., using a JTAG adapter) is beyond the scope of this guide and can void warranties.

By following this tutorial you should be able to bring most soft‑bricked Android phones back to life without rooting or installing custom ROMs. The key is preparation: the right firmware, a reliable USB connection, and patience while the device re‑writes its partitions.

User Comments (0)

Add Comment
We'll never share your email with anyone else.