[Nexus One Android Development] Paul22000:
[Edit] 2/05/2011: Use this new guide instead: http://xdaforums.com/showthread.php?p=11087674#post11087674

[Edit] 1/13/2011: If you are on stock 2.2.1 FRG83D, click here to for SuperOneClick Root !

*

So I recently decided to take my 100% stock Nexus One to Sense UI and I've documented every single step of the way. I've written this guide for two reasons. First, this entire process is scattered around in dozens of threads, written by equally as many people. Not only that, but most people in these threads assume that you know by heart exactly what adb, fastboot, recovery, and others are all about. Second, to put it bluntly, most people are pretty terrible at writing documentation. Writing down what you did so other people can follow seems extremely difficult for many people. Luckily, this is a skill I am good at. :) So here is a full consolidation of all the information, re-writtern for clarity as I went along step-by-step, from my many hours of attempting to bring my Nexus One from 100% stock to Desire's Sense UI. (Edit: Some people have said they'd run through this guide in 20 minutes!! It might look like a lot, but a lot of steps take a few seconds.)

Disclaimer:

You agree that by doing this process, I'm not responsible for any bricked devices.

Unlocking the bootloader will void your warranty.

This process will erase all of your phone's data.​

Please don't copy/paste this elsewhere (to prevent having outdated info); just link back.

If you need immediate help, these guys might be able to help -> http://webchat.freenode.net -> Channel "modaco".

And this guide is written as if you are using Windows XP.​

*(Yes, the above image of Google's campus is totally unrelated, but totally cool!)

Note: the notifications tray is personally modified

-------------------------

Backup

[Optional]

On PC: www.gmail.com -> Contacts -> Export, choose Google CSV

On N1: Market -> AppMonster (or any other Backup application you prefer) -> Backup all apps

(If you want/need to backup sms etc, I don't know what non-root app does this)

Remove any authenticators etc

Downloads

Download nexus-addon-0.1-signed.zip, (From thread: CyanogenMod-5)

Download Desire Sense UI OR CyanogenMod:

Sense UI:

Download the latest version here: MoDaCo Custom ROM Desire Port (Choose with MoDaCo Additions, without A2SD)

Alternate download location (mirror) for r21: alpha-r21-update-modacocustomrom-nexusone-desire-withadditions-sig.zip

Cyanogen Mod:

CyanogenMod

Download the "Google Addon" as well

Don't download any "radio" updates unless you know what you're doing! (I would highly advise against it!)

Place both zip files (3 for Cyanogen) on N1's sdcard (don't unzip)

Setup SDK

Download android-sdk_r06-windows.zip

Unzip to C:\ drive so it looks like C:\android-sdk-windows\

Run SDK Setup.exe

Double click everything so it has a red X except for green check mark next to "USB Driver Package"

(Click for larger image)

Install

On N1: Settings -> Application -> Development -> enable USB debugging

Connect phone to PC, do not mount

New Hardware Found -> Point the install location to C:\android-sdk-windows\usb_driver\

(Click for larger image)

PC: Start -> Run -> cmd -> press Enter. A black window should appear.

Type: cd C:\android-sdk-windows\tools

Press Enter

Type: adb devices

Press Enter

(Click for larger image)

- It should say something similar to "HT123P123456 device" (this is your phone's serial number).

- If it says "cannot find" or "invalid path" etc, make sure you're typing *

exactly

* what the green text above says.

- If it says something else, try to reinstall the USB Driver package and restart your PC.

- If it still doesn't work, reply to this thread and say "adb devices does not work. When I type 'adb devices', it says _______________. My PC is running _______________." [Choose one: Windows XP | Windows Vista | Windows 7 | Mac | Linux]

If it works, your PC is correctly recognzing the phone. Continue on to the next step!

Unlock Bootloader

Turn phone off -> Hold Trackball, then hold Power until white bootloader screen shows up:

(Click for larger image)

FASTBOOT should be highlighted. Press the Power Button to go into Fastboot.

PC: Start -> Run -> cmd -> press Enter. A black window should appear.

Type: cd C:\android-sdk-windows\tools

Type: fastboot devices

- Note: Mac users need "fastboot-mac", available here: http://developer.htc.com/adp.html

(Click for larger image)

- It should say something similar to "HT123P123456 fastboot" (this is your phone's serial number). If it doesn't say this, something is wrong. Make sure you pressed the Power Button to go into FASTBOOT.

- If you are typing fastboot devices and it just returns a blank line or ???????? (ie Windows 7 64-bit users), try using USB drivers in the PdaNet install: http://www.junefabrics.com/android/download.php

- If that doesn't work, try not pressing the Power button to enter Fastboot. A few people have had it work that way. (Or may have been holding the Power button for too long.)

- If you can't get this step to work, reply to this thread and say "When my phone is in the bootloader and I type 'fastboot devices', it says __________ instead."

Type: fastboot oem unlock

Read what the screen says. (Decision time!) (All data will be wiped here)

(Click for larger image)

Your phone should reboot with a picture of an open padlock under the Google logo. If so, everything is good so far!

(Click for larger image)

Flash Recovery

- (Update 09/01/2010: this may not work on SLCD Nexus Ones. Need an SLCD-supported recovery and then a ROM with SLCD support)

Turn phone off -> Hold Trackball, then hold Power until white bootloader screen shows up

FASTBOOT should be highlighted. Press the Power Button to go into Fastboot.

PC: Download latest .img file - Amon_RA's Recovery Image

Place img file into C:\android-sdk-windows\tools\

PC: Start -> Run -> cmd -> press Enter. A black window should appear.

Type: cd C:\android-sdk-windows\tools

Type: fastboot devices

It should say something similar to "HT123P123456 fastboot" (this is your phone's serial number). If it doesn't say this, something is wrong. Make sure you pressed the Power Button to go into FASTBOOT. If you can't get this step to work, reply to this thread and say "I'm trying to flash the recovery image. I unlocked my bootloader but fastboot devices doesn't work anymore. When I type 'fastboot devices', it says __________ instead."

Type: fastboot flash recovery

recovery-RA-nexus-v1.7.0

.img (Note: the

underlined

part may be different depending on what you downloaded.) (Tip: On Windows XP, you can press tab to auto-complete the filename.)

It should say: sending 'recovery' (3962 KB)... OKAY . . . . . writing 'recovery'... OKAY This should take a few seconds.

(Click for larger image)

If it doesn't work, try using

Superboot

(ignore this unless you're having issues flashing the Recovery):

Modaco's Superboot -> "Before download, check your device 'about' screen to determine whether you need a superboot for 'ERD79' (the original shipping ROM, 'ERE27' (the official update) or ERE36B (the new leaked update)."

Turn phone off -> Hold Trackball, then hold Power until white bootloader screen shows up

Don't touch anything

Open superboot file on PC

Try to Flash Amon_RA's Recovery again

If it still doesn't work, reply to this thread and say "When I tried to flash the recovery file, it said ________________ instead."

If flashing the recovery was successful, use the menu options to boot directly into recovery, or turn the phone off and continue on with next step!

Root

Turn phone off -> Hold Volume Down, hold Power button

Press Volume Down to highlight Recovery -> press Power to select Recovery. Your screen should look like this:

(Click for larger image)

Do this step only if you

didn't

use Superboot: Use trackball -> "Flash zip from from sdcard" -> nexus-addon-0.1-signed.zip

- If you get a Triangle with a ! in the middle alongside an Android for 5+ minutes, you MAY have to remove battery and re-flash recovery (I had to do this once.) (Make absolutely sure that nothing is happening on your phone, as removing the battery when it's doing something can cause a brick.)

- Alternatively, try the optional Superboot method, and then re-flash Amon_RA's recovery image.

Select Reboot.

Install ROM

(Sense UI, Cyanogen, etc)

Turn phone off -> Hold Volume Down, hold Power button

Press Volume Down to highlight Recovery -> press Power to select Recovery

Backup/Restore -> Nand backup

Wipe -> Wipe data/factory reset

Wipe -> Dalvik Cache

Flash zip from sdcard -> alpha-r##-update-modacocustomrom-nexusone-desire-withadditions-signed.zip (Or whatever other ROM you're using.)

- If you get an error such as "E:\Can't open /sdcard/[blah].zip (bad)", the file is probably corrupt. (Modaco has had some issues with this recently; I don't know why.)

- If you want to make sure, use http://portableapps.com/node/19346 and drag the zip file onto it to verify the MD5 sum. For r21 with MoDaCo Additions, the MD5 should be: e5eb15ea971b220ffdfcac8f56037013

If you're using Cyanogen, flash the Google Addon.

Reboot

- If a picture of an Android falling out of a box shows up, something went wrong. Just wait for it to reboot into recovery. (Good you made a backup! Just in case.)

- Go back into recovery, Wipe all data again, Wipe Dalvik/cache again, and reflash the Sense ROM.

- If it still doesn't work, reply to this thread and say "I keep getting the Android falling out of the box when flashing the Sense ROM, even after repeated wiping."

If successful, a white HTC splash screen appears. It should take about 2-3 minutes to load into Sense.

If it gets past that, congratulations! You made it!

Post in this thread that it worked! And if you're feeling generous, feel free to send me a beer! :)

And finally, enjoy and have fun! :) :D

-->

--------------------------------------------------

Install a Different ROM

If you want to install a new version of a ROM, switch to a different ROM like Cyanogen, etc, only repeat the "Install ROM" section. The only difference is you'll be downloading / flashing a different zip file of course.

Make sure you backup (and wipe!) first before flashing any new roms!

To go back to the original Android ROM, either Restore your backup, or download the zip file from the following thread and repeat the Install ROM section: http://xdaforums.com/showthread.php?t=614850

Known Issues

:

Bluetooth is known to be buggy / will most likely not work. (Can't be fixed until HTC releases the Desire source code.)

USB mount notification does not appear - use 'USB Mount' application from menu.

To set live wallpapers, go into Settings -> Personalize.

--------------------------------------------------

What's the status on Bluetooth?

Update:

http://twitter.com/buxit/status/13119161481

http://twitter.com/PaulOBrien/statuses/13119278256

​