Remember that if you use this guide, you do so entirely at your own risk!!
Welcome to my guide on how to root the HTC Desire!
This guide will allow you to root your HTC Desire, provided it has a bootloader version of 0.80 or below and ROM version 1.21.xxx.x or below (2 different downloads are available depending on your ROM version). To check this, turn off your device, then turn it back on with the 'back' key held. On the second line in green text you will see HBOOT- and then a number. Provided this is 0.80 or below, this guide should work for you.
If you have a bootloader / OS newer than this, please visit this topic for details on how to downgrade.
Desire rooting protection
Back in the early days of Android, rooting was easy. You had several options - you could flash stuff via the bootloader, you could flash an engineering bootloader, you could use kernel exploits - there were many ways of getting the low level access to your device that - in fairness - I think we as paying customers are entitled to. As time has progressed however, the manufacturers have made things harder and harder. The Desire is not a straightforward phone to root, for many reasons, including...
- a 'perfected bootloader' that doesn't allow flashing or booting of any images (even HTC signed ones)
- a RUU flash process that does not allow downgrading of the bootloader to earlier versions
- a kernel (that as yet does not have publicly available source) that as yet has no known exploits
- a new protection method previously seen on the HTC Tattoo that protects key partitions from having write access. Even with SU access, it is not possible to write to the boot, recovery or system partitions.
And so the root process becomes a process of methodically probing every possible point of exposure on the device, looking for the slightest chink in the armour. I found one and we're putting it to good use! The downside is that it's not as easy or as pretty as rooting a device that is actually DESIGNED to be accessible at the lowest level, such as the Nexus One.
Shame on you HTC for going to such unnecessary lengths (but that's another story for another day).
What this root process provides and does not provide
The root process will...
- flash your device with a new, generic 1.15.405.4 based ROM that has Superuser access
- enable you to flash your device with a custom recovery image
- enable you to have write access to the /system partition in normal use of the device
In order to complete this guide, you need the following...
- a HTC Desire
- a computer running Windows (32 bit recommended, some users have reported issues with x64), OSX or Linux
- a microUSB cable
- a microSD card (to be made into a 'goldcard' - only necessary if your device is an operator supplied device)
- the downloads below
- balls of steel (actually, I just made that up)
To be ready for the guide, download one of the following items...
- If you have a bootloader version 0.75.xxxx or below AND a current ROM of 1.15.xxx.x or below - DOWNLOAD (MediaFire Pro)
- ONLY if the above download is not suitable - if you have a bootloader version 0.80.xxxx or below AND a current ROM of 1.21.xxx.x or below - DOWNLOAD (MediaFire Pro)
Once you have this on your machine, you're ready to start!
Follow through these steps, one by one and at the end of it you'll have a rooted Desire with the latest ROM.
Note: This process will wipe your device and there is currently no option to backup your device ROM before you start.
- Make your microSD card into a goldcard by following these instructions (it's a good idea to back up the contents of your card first!).
- Unzip the file you downloaded to a directory, then open a command prompt / terminal window at that directory.
- Copy the 'update.zip' file to your microSD. Do NOT rename it.
- Turn off your HTC Desire, then turn it back on with the 'back' button held down. You'll see 'FASTBOOT' written on the screen in a red box. Connect the phone to the computer.
- In the terminal window, enter either 'step1-windows.bat', './step1-mac.sh' or './step1-linux.sh' as appropriate.
- Navigate to the 'BOOTLOADER' and then 'RECOVERY' option on the menu, using the volume buttons to move and the power button to select.
- When a black screen appears with a red triangle, press and hold 'Volume Up' then tap 'Power'.
- Your device should now be at the 'recovery' screen. Select the 'wipe data/factory reset' option, then select the option to 'Apply sdcard:update.zip'. This will take a little while, so go make a nice cup of tea. When the flash has finished, reboot, and you are DONE!
If you have any issues with the root process, post below, and we'll do our best to help!
Using a custom recovery image
You can access a custom recovery image by using fake-flash developed by myself and Koush.
If you wish to do so, you can express your appreciation by signing up to a MoDaCo Ad Free or MoDaCo Plus Account using PayPal or Google Checkout, as detailed in this post on MoDaCo. As well as donating to support the work that goes into all the various MoDaCo activites, you get cool stuff like free software (there's some great Android stuff coming too!), an ad free MoDaCo site and of course access to the MoDaCo Online Kitchen. All signups are very much appreciated.
Thanks to nilezon for his patched windows ADB binary and ChainsDD for his excellent new Superuser Permissions update.