A sample text widget

Etiam pulvinar consectetur dolor sed malesuada. Ut convallis euismod dolor nec pretium. Nunc ut tristique massa.

Nam sodales mi vitae dolor ullamcorper et vulputate enim accumsan. Morbi orci magna, tincidunt vitae molestie nec, molestie at mi. Nulla nulla lorem, suscipit in posuere in, interdum non magna.

Pre-Android 2.2 Nexus One Updates

There is a growing compendium of Nexus One knowledge out there, to the point where it was a bit confusing as to which instructions were the latest and greatest when it comes to upgrading the Nexus One phone. I call this an upgrade, although not one supported directly by Google, but obviously fully supported by the community. During my upgrade process I made some draft notes; This post represents finally cleaning them up for public consumption.

Doing anything here will void your warranty, and will prevent OTA (Over-The-Air) upgrade directly from Google to Android version 2.2. This upgrade is a significant modification.

In addition to giving you a bunch of new and pre-2.2 features, the upgrade process provides root access which is required to properly backup your phones applications and data. Without root access you so not retain some aspects of the system configuration and data, as well as “Market Links”. This last point, Market Links, describes your phone’s ability to determine if an application has an update in the market. Restoring applications backed-up on a non-rooted device will have no ability to self-update until they are manually downloaded from the Android Market.

I will re-iterate… root your phone before you go installing applications. If you don’t, restoring them onto your upgraded phone sucks, as noted above. aTrackDog solves some of this problem.. but most people will prefer to just “do it right”.

Locked Bootloader, Locked Phone and Locked SIM

When we talk about unlocking the Nexus One, we mean unlocking the bootloader. This is just like a “BIOS Setting” that allows you to load and boot other images onto your Nexus One. It is a fully supported capability of the phone, not some hack or magic set of unpublished keystrokes.

SIM-Locked means something different that does not apply to the Nexus One. This is when your phone is locked, via the SIM card and device settings, to a specific carrier. Phones that are SIM locked generally require a separate process that “unlocks” them from a carrier after which they can operate with “unlocked” SIM cards. Notably to use an HSPDA modem like the Rogers Rocket Stick you need an unlocked SIM card. I have always used Rogers and never had a SIM-locked phone, or a locked SIM card.. so I am no expert in this area. The bottom line here is that none of this applies to the Nexus One, which is shipped unlocked from a carrier perspective.

Nexus One Upgrade Primer

This was my first Android phone, so I had *NO* idea how the device was laid out internally. A little blurb that summed it all up seemed hard to find.. but I was able to string together the pieces after some time on the net. Understanding the basic device landscape was all I needed to have confidence in my upgrade process. I recommend reading this article.

The Nexus One comes shipped with two images (system and recovery) loaded into partitions on the onboard flash, and a bootloader (separate boot partition) that can boot up either of these images. The bootloader is like the BIOS in a computer and allows you to control some features, and optionally enable a manual selection of which image to load (system or recovery).

The system image is the one that boots by default when you power up your phone normally, and the basic google applications (messaging, browser, contacts, home page launcher, maps, mail client, gallery, etc.) are loaded into partitions alongside the system image in the onboard flash. More on this here.

The recovery image can be accessed by manually telling the bootloader to load it, and basically allows you to do some system tasks, such as execute a complete backup (aka Nandroid Backup), or wipe the device, in addition to a number of other advanced things.

ADB (Android Developer Bridge) and Fastboot are two tools that let you do things to your phone. Fastboot is used for moving images (system and recovery) to/from the phone as well as some basic configuration setting (unlocking the bootloader). ADB allows for more advanced commands and phone interaction with the development SDK.

Fastboot is enabled from the bootloader, and ADB is enabled in the phones settings. Both these tools/commands/modes have client software that runs on a computer connected by USB cable. You can launch an “adb shell” from most third party recovery ROMS.

Fastboot is used to *unlock* the bootloader as show below. ADB can be used to remove stock Google applications; I have used it remove my stock Navigation application so that the BRUT Navigation is default for voice commands. As of this writing, the BRUT mod is the only way I know of to get working navigation in Canada.

The Bootloader/Fastboot and Bootloader/Recovery modes are two alternate ways to start your phone, and can be accessed using the following buttons from a powered-off state:

  • Fastboot: Hold down the trackball while pressing the power button.
  • Recovery: Hold the volume-down button while pressing the power button.

In each case the volume buttons navigate the menus, and the power button acts as the selection key.

The Steps in the Upgrade Process (You will VOID your WARRANTY)

  1. Unlock the Bootloader
  2. Root the phone
  3. Upgrade the Recovery Image
  4. Perform a Nandroid Backup of the Stock System
  5. Backup apps in userspace that you want to keep after the upgrade (MyBackup)
  6. Wipe the phone using the Recovery Image
  7. Upgrade the System Image
  8. Repartition the Flash Card for Apps2SD (Optionally move data to a Class 6 chip)
  9. Tweak settings, enjoy the extra RAM, USB tethering, improved performance
  10. Install applications to your heart is content

My advice, if this is your first Android phone, is to wake up Saturday morning with a free 4-8 hours. it only takes an hour or so to *upgrade* .. but you will spend the rest of the day playing. A the end of this article I also give you a list of applications to experiment with.. YMMV.

The Actual Process

1. Unlock the Bootloader

I learned what I know for this step following instructions here.

  • Download and extract the fastboot tool. As far as I know this has never changed versions. It is a very basic tool and there are windows, linux and mac versions in the .zip file.
  • Jump into fastboot mode using the procedure described above (power on holding the trackball down)
  • Execute the command ‘fastboot-windows oem unlock’ or ‘./fastboot-mac oem unlock’ or ‘./fastboot-linux oem unlock’. As root user (need USB superuser) on my Ubuntu system I executed the linux version: #./fastboot-linux oem unlock

2. Root the Device

This method for root access is called “Superboot” because it requires no modification to the running applications and configuration. You can actually safely enable the “himem” version of this modification which is a major improvement as noted in my last post. I learned this process reading this post. Get the radio version/build right, or you may end up bricking your phone.

  • Download the Superboot zip file above and extract to a directory. Make sure you have the correct one that matches your shipped image. Go to “Settings->About Phone” and scroll down to the “Build Number” to figure out what version you have. I downloaded and installed the EPE54B version with himem for my phone.
  • Put your device in bootloader mode – Turn off the phone then press and hold the trackball to enter the bootloader
  • Open a terminal window to the directory containing the files, and type ‘chmod +x install-superboot-linux.sh’ followed by ‘./install-superboot-linux.sh’

As an aside, here is some info on the different radio builds.

3. Upgrade the Recovery Image

Originally I used fastboot to load my first recovery image. This is simply because I did not know about the Clockwork ROM Manager tool. Now I use that to load images.. its stupid-simple and impossible to mess up, so I will describe this process here.

  • Download the Clockwork ROM Manager tool from the Android Market
  • Install the Clockwork or RA Recovery Image

The original process I followed is here. Its just a few more steps with the same end goal in mind.

4. Perform a Nandroid Backup of the Stock System

  • Boot into recovery: Power-on holding the volume-down button.
  • Select Recovery from the menu. (Volume moves the highlighted item, and power button selects).
  • Select Nandroid to make a copy of your phone and all images and data on your SD card

5. Backup apps in userspace that you want to keep after the system firmware upgrade

  • Download MyBackup from the Market
  • Execute a backup of applications you want to keep. No harm in doing them all as you can selectively restore any of them and/or their data

6. Wipe the phone and Upgrade the System Image

Originally I used the RA recovery image to wipe my phone, and loaded the new system image via fastboot off of the SD card. Clockwork ROM Manager does this all for you now.. pay a few bucks to these guys and you are off to the races.

  • Install the Cyanogen 5.0.6 of newer via the ClockWork app

The original process I followed is here and used a Recovery Image installed from here.

The official Cyanogen Nexus upgrade docs are here.

Here is the cyanogen mod wiki.

7. Repartition the Flash Card for Apps2SD

I actually copied my SDcard image to a larger new 8GB class 6 chip at this step.. you can skip these optional steps. There is no loss of data if the process executes without error.

If you don’t need to upgrade your flash, you can do this now through the upgraded system tools provided by Cyanogen.

  • Pop your flash card into your laptop
  • Boot up a GParted live CD
  • (Optionally) Copy your FAT32 SD partition to empty space on another disk
  • (Optionally) Copy your FAT32 SD partition back onto a nice new Class 6 chip
  • Resize your partitions, creating a 1GB ext4 primary partition at the end of the disk. I noted there are always a few empty megs before the FAT32 partition on all chips I have seen, and I always leave these intact
  • Pop your flash back in the phone and reboot

Reboot your phone and enjoy. Tweak settings, enjoy the extra RAM, USB tethering, improved performance… Nothing else out there compares to Nexus-One + Cyanogen.. TODAY.

8. Install Applications until your heart is Content

  • Brut Navigation
  • Advanced Task Killer
  • Live Scores
  • OpenVPN Settings
  • OI File Manager
  • Scan2PDF
  • SetCPU
  • CamCard
  • Barcode Scanner
  • ConnectBot
  • Locale + Plugins
  • Fring
  • K-9 Mail
  • Google Sky Map
  • miTorTV
  • Transdriod
  • SpeedTest
  • Shazam
  • PicSay
  • Remote RDP and VNC
  • Klaxon
  • Astrid
  • dPod
  • Astro
  • Documents To Go
  • QuickOffice
  • AndroRadio
  • Soo many more…
Share

Leave a Reply