SEARCH

How-To Geek

How to Upgrade Your Nexus Device Without Waiting for the Rollout

android-fastboot

Google’s Nexus devices are supposed to receive timely updates, but the staggered rollout means it can take weeks for devices to receive over-the-air (OTA) updates. Luckily, there’s a geekier way to install the latest version of Android.

Google provides official system images for their Nexus devices, which anyone can download and flash on their own. This is an easy way to skip the wait when a new version of Android is released for Nexus devices.

Note that this process is more complicated than simply waiting for an over-the-air update. If you’re a normal person and not a geek with an itchy trigger finger, you’ll probably just want to wait.

Step One: Unlock Your Device’s Bootloader

RELATED ARTICLE
How to Unlock Your Android Phone’s Bootloader, the Official Way
Unlocking your Android phone’s bootloader is the first step to rooting and flashing custom ROMs. And, contrary to popular belief,... [Read Article]

To flash a system image, your device will need to be unlocked. Nexus devices allow you to unlock their bootloader with a single command. If you’ve already unlocked your device to root it or install a custom ROM, you can skip this part. If you haven’t yet, you should be warned the unlocking your device will wipe its data, as if you had performed a factory reset.

You can unlock your boot loader in several different ways. The official method is through a simple teriminal command, but for an even easier method, you can use the Nexus Root Toolkit, which will walk you through the process.

Step Two: Install ADB and Fastboot

RELATED ARTICLE
How to Install and Use ADB, the Android Debug Bridge Utility
ADB, Android Debug Bridge, is a command-line utility included with Google’s Android SDK. ADB can control your device over USB... [Read Article]

You’ll need two other things for this process: the Android Debug Bridge, which is a command line tool for your computer that lets you interface with your phone, and your phone’s USB drivers. Even if you’ve installed these before, you should get the latest versions now.

We’ve detailed how to install both before, but here’s the brief version:

  1. Head to the Android SDK download page and scroll down to “SDK Tools Only”. Download the ZIP file for your platform and unzip it wherever you want to store the ADB files.
  2. Start the SDK Manager and deselect everything except “Android SDK Platform-tools”. If you are using a Nexus phone, you can also select “Google USB Driver” to download Google’s drivers.
  3. After it’s finished installing, you can close the SDK manager.
  4. Install the USB drivers for your phone. You can find these on your phone manufacturer’s website (e.g. Motorola or HTC). If you have a Nexus, you can install the Google drivers you downloaded in step 2 using these instructions.
  5. Reboot your computer if prompted.

2016-03-24_09h57_20

Step Three: Download the System Image

Visit Google’s Factory Images for Nexus Devices page and download the appropriate image for your device. Note that you’ll need the image for your specific hardware. For example, there are separate images for the Nexus 7 (2013) with Wi-Fi only and for the Nexus 7 (2013) with cellular data. Make sure you download the right one.

Download the file to your computer and use a file-extraction program, like the free 7-Zip, to extract its contents to your ADB folder.

2016-03-24_10h33_13

Step Four: Decide Whether to Wipe Your Data

Flashing the system image in the normal way will wipe your device, essentially performing a factory reset. You can try to update without wiping your device, although you may encounter problems. However, this process should work fine when going from one Android version to the next version.

To prevent your device from being wiped, open the flash-all.bat file in a text editor like Notepad++. Edit the line containing “fastboot -w update” and remove the -w switch before saving the file.

2016-03-24_10h07_31

Step Five: Flash the System Image

Copy the system image files into the same folder as ADB. Then hold the Shift key, right-click in that folder, and select “Open command window here” to open a Command Prompt window in that folder.

2016-03-24_10h08_10

Enable USB debugging on your Nexus device by accessing the hidden Developer Options menu and turning on the USB debugging option.

Connect your Nexus device to your computer with its included USB cable, and then run the following command to reboot the device into the boot loader:

adb reboot bootloader

If there’s a problem, you may need to fix your device’s drivers. Read this guide for more information on setting up ADB and ensuring it’s working properly. Bear in mind that you’ll have to accept the authentication prompt on the device before the adb command can do anything.

2016-03-24_10h09_17

Once the device displays the boot loader on its screen–you’ll see an Android with its front panel open–double-click the flash-all.bat file. The script should flash your device with the new system image.

2016-03-24_10h15_16

When the process is complete, your device will reboot automatically. If you didn’t remove the -w option, you’ll have to go through the first-time setup process again.

What to Do If the Script Doesn’t Work

Sometimes, however, flash-all.bat will generate an error about missing resources or lack of space. In that situation, it’s generally better to just manually flash everything piece by piece.

The first thing you’ll need to do before inputting the manual commands is unzip the image file, which typically uses the “image-device-build.zip” naming format. It’s easier to unzip the contents of the file directly into the folder you’re already working in so all the required files are in the same location. Once unzipped, there should be five or six additional files in your working folder (depending on the device): android-info.txt, boot.img, cache.img, recovery.img, system.img, radio.img (for devices with mobile connections only), and vendor.img (Nexus 9 only).

2016-03-24_10h06_13

Once everything is unpacked, reboot back into the bootloader–using the adb reboot bootloader command from earlier–and run the following commands, pressing Enter after each one, to manually flash each item to your device.

fastboot erase boot
fastboot erase cache
fastboot erase recovery
fastboot erase system
fastboot flash bootloader "name-of-bootloader.img"
fastboot reboot-bootloader
fastboot flash radio "name-of-radio.img" (if present)
fastboot reboot-bootloader
fastboot flash system system.img
fastboot flash boot boot.img
fastboot flash recovery recovery.img
fastboot flash cache cache.img
fastboot flash vendor vendor.img (Nexus 9 only)

If you’re doing a clean install of Android and want to wipe everything, use the following commands next:

fastboot erase userdata
fastboot flash userdata userdata.img
fastboot reboot

Keep in mind that some of these commands can take time some to flash—namely system.img and userdata.img—so don’t worry if the command prompt seems to be unresponsive. Once it’s ready for the next command, the cursor will re-appear.


This process is also useful if you’ve flashed a custom ROM and need to get back to the standard Android system image that comes with your device. This option is largely intended for developers and Android geeks, so it’s more complicated than simply waiting for a normal OTA (over-the-air) update.

Chris Hoffman is a technology writer and all-around computer geek. He's as at home using the Linux terminal as he is digging into the Windows registry. Connect with him on Google+.


Cameron Summerson is a self-made geek, Android enthusiast, horror movie fanatic, metalhead, and cyclist. When he's not pounding keys on the 'net, you can find him spending time with his wife and kids, chugging away on the 6-string, spinning on the streets, or watching The Texas Chainsaw Massacre.

  • Published 03/28/16

Enter Your Email Here to Get Access for Free:

Go check your email!