I would like to downgrade my Nexus One to 2.2.2, because I've had non-stop problems with Gingerbread. I have the 2.2.2 update from android central, and going off the comments from a previous question, I'm under the assumption that this is doable.

So I've gone through the Bootloader -> Recovery -> apply sdcard:update.zip steps, and it fails with the following message:

assert failed: file_getprop("/system/build.prop", "ro.build.fingerprint") == "google/passion/passion/mahimahi:2.2.1/FRG83D/75603:user/release-keys" || file_getprop("/system/build.prop", "ro.build.fingerprint") == "google/passion/passion/mahimahi:2.2.2/FRG83D/91102:user/release-keys"

E:Error in /tmp/sideload/package.zip
(Status 7)
Installation aborted.

I would guess the OS is checking if I'm on either 2.2.1 (updating from the previous version) or 2.2.2 (reinstalling the target version), is this assumption correct?

This begs the question, how do I go from 2.3.6 to 2.2.2? Do I need to factory reset, and apply updates sequentially?

  • 1
    Factory reset won't help, it keeps the current software version. Commented Sep 29, 2011 at 16:57
  • Ok, good to know. So what would you recommend I try? I haven't been able to find a good resource on how to downgrade, all I find is how to upgrade.
    – wsanville
    Commented Sep 29, 2011 at 17:33

1 Answer 1


Generally, phone manufacturers will not allow you to downgrade for various reasons. The stock recovery does indeed validate the update image, so that it's of a greater (or same) version than the installed system. With the Nexus One being a developer phone, you can unlock the bootloader and replace the recovery image with the one that doesn't perform this check, and will allow installation of any image. The caveat is that unlocking the bootloader voids your warranty with the carrier (and sometimes the manufacturer too,) and wipes all user data off the device.

Unlocking the N1 is dead easy. Just install Android SDK and the USB drivers (located in "google-usb_driver" directory.) Then restart the phone in bootloader mode by shutting it off and powering on while holding down the trackball, hook it up to the computer via USB, and in command prompt issue the following command: C:\<path to Android SDK>\platform-tools\fastboot oem unlock. You will be presented with a confirmation screen with further instructions. Upon successful unlock, you can flash a custom recovery that will allow you to install any custom ROM, including downgrade to 2.2.x stock version of Android OS.

To flash ClockworkMod recovery, download the latest version for Nexus One from here, reboot into bootloader mode (power on while holding the trackball down,) and in command prompt issue command C:\<path to ANdroid SDK>\platform-tools\fastboot flash recovery C:\<path to downloaded img>\recovery-clockwork-

Reboot to bootloader mode again, and then use the Volume keys to highlight the "Recovery" option and press Power button. You are now in ClockworkMod recovery, and can flash any custom ROMs via the "Install zip from sdcard" option.

Here is a "stock" 2.2.2 ROM (with root) off XDA-developers forum.

  • This is awesome info, thanks! I'm going to try this out when I get a chance.
    – wsanville
    Commented Sep 29, 2011 at 21:16
  • 1
    Just in case anyone else comes to this later, fastboot is now in "platform-tools" not "tools" in the newer SDK versions Commented Jan 9, 2012 at 19:29
  • @littleFluffyKitty: Thanks, edited to reflect the new path.
    – Chahk
    Commented Jan 9, 2012 at 20:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .