RSS

How-To Geek

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 updates. Luckily, there’s a geekier way to upgrade to the latest version of Android.

Google provides official system images for their Nexus devices, which anyone can download and flash on their devices. This is a 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.

Unlock Your Device

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. For an easy method, you can use the Nexus Root Toolkit, which will walk you through the process.

If you want to do it the manual way, read our guide to Flashing your Nexus device with a new ROM and complete the process under “Unlocking the Bootloader with Android SDK.” You can stop after issuing the “fastboot oem unlock” command and verifying the device is unlocked by looking for the open lock icon during the boot process. There’s no need to install ClockworkMod Recovery — in fact, the below process will erase any custom recoveries you have installed. You can reinstall them later, if you like.

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.

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

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.

Get ADB and Fastboot

Download the Android SDK archive. We’ll only need a few files from the SDK.

Open the archive file and locate the sdk\platform-tools\ folder inside it.

Select the following files and extract them to the same folder containing your system image files:

adb.exe

AdbWinApi.dll

AdbWinUsbApi.dll

fastboot.exe

Flash the System Image

Hold the Shift key, right-click in your system image folder, and select Open command window here to open a Command Prompt window in the system image folder.

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.

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.

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.

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.