HTC Desire: Downgrading HBOOT And Installing Custom Froyo ROM August 28th, 2010
** Last Updated 30/08/2010 23:45 – I have updated the post to reflect the release of OpenDesire v4.0 (the original post was built around v3.6). For future releases, I will not revise the post as all you need to do is substitute the ROM file for the newer release if available; the rest of the guide remains the same. To check the latest file, head over to this thread **
It’s been a while now since the official Froyo OTA was released and installed by most people who will be reading this post. For most of you, using the official Froyo will be more than enough to satisfy your soul but for some, you’ll be wishing you had waited a few days; certainly enough time to allow the developers to root the official OTA and thereby giving you what we all – apparently – want, value added extras!
Initially, for those who followed the official upgrade path to Froyo, and I include myself here, there was not much we could do once the initial Froyo honeymoon period was over. The Froyo update also included a new HBOOT driver which meant that we could not perform root, or play with the recovery very easily. As with all things though, a little time and this has all changed. So, if your happy with Froyo (and please, I am not saying that there is anything wrong with it, the official Froyo is great and for the average user, will be more than enough to bring a big smile to your face) then you can stop reading this post; but if you crave the ability to root and delve further into your Desire’s abilities then read on, I’ll show you how to downgrade your HBOOT and install an already rooted, custom Froyo ROM image and install a custom recovery along the way meaning you can easily change ROMs at will in the future.
I decided to install the excellent OpenDesire ROM from AdamG which is as close to stock as possible but with performance enhancements and a very small footprint. It’s also a vanilla ROM so does not contain the Sense UI overlay (which I prefer as it runs much quicker and smoother than the HTC ROM). Of course, you can choose any ROM you wish; see here for options and more information on each ROM. Once you have a custom recovery and root, you can of course swap and change between these ROMs at will, daily if you wish. To use a different ROM, simply change the download in the first step of the guide below.
Caveat: A word of warning, HTC and your network provider will frown at anyone trying to install custom software onto one of their devices and will quite rightly use this as an excuse for not honouring any warranties. The method shown in this post has been tested by myself and works, however if you do not understand any of the steps or do not follow the guide, you risk damaging your phone and owning a very expensive ‘brick’; please ensure you read the entire post before attempting this yourselves and ask any questions before you need to ask them. I will not be held accountable for any bricked phones; you follow this guide at your own risk.
This guide is based on an unbranded Desire handset running the latest HTC official Froyo ROM (although my Desire once upon a time used to be a branded Virgin Mobile handset, you can find a guide here for a step by step guide for debranding and upgrading to the official Froyo ROM) meaning a firmware version of 2.09.405.8, HBOOT version of 0.92.0001 and radio version of 5.09.00.20, importantly it is also based on an AMOLED Desire and not one of the newer sLCD versions. It’s very important that you check to make sure what specifics you have before following this guide; if unsure ask a question. This guide will also work on other combinations but you may need to follow additional steps depending on your individual device.
Before proceeding with this guide, ensure that you backup any important data on your Device, by following this guide your Desire will be restored to a state which does not have any of your applications or user data. You’ve been warned.
Ok, now that’s all of the boring stuff out of the way, let’s get on with the guide:
- Download the following files to your local machine, for simplicity I usually save them to the desktop as you’ll be needing them again shortly: [PB99IMG] [Official 2.1 WWE OTA] [misc_update] [OpenDesire ROM] [Froyo Radio]
- Remove your SIM care from your Desire. You shouldn’t need to do this but some devices has been SIM locked during ROM flashing so best be safe
- Ensure your Desire is sufficiently charged, I usually make sure it is at least 50% charged; you don’t want the battery running out during the flashing process
- As above, triple check everything is backed up that you want to keep
Now we can start the actual downgrade process.
Important: This guide assumes that you still have your original gold card from previously upgrading your Desire’s ROM. You will need a gold card in your Desire to successfully complete this guide so if you do not have one or have formatted your microSD since you last used it, create one with the aid of this guide. If you’re unsure, create a new one anyway.
- Copy the 5 files that you have just downloaded onto the root of your microSD card and then depending on how you did this, either put the microSD card back into your Desire or unplug your Desire from your PC
- Turn off your Desire
- Turn your Desire back on whilst holding down the Volume Down key, this will take you to the HBOOT menu. Wait until PB99IMG.zip is automatically found and verified
- Press the Volume Up key to begin the downgrade process. Once the downgrade has started wait until all of the steps have completed, your Desire will automatically reboot during this process. It’s important that you do not interrupt the power or turn your phone off whilst the downgrade is talking place
- Once the downgrade process has finished, press the Volume Up key to reboot
At this stage, you will have a downgraded Desire running an official 2.1 Éclair ROM. You can check this by skipping through the initial installation steps and going to Menu>Settings>About Phone>Software where you should now find your firmware is version 1.21.405.2, if you were watching while your Desire rebooted in the above step you’ll also have noted that the HBOOT is now 0.80
You now need to remove PB99IMG.zip (there is no need to remove the other files, unless you want to) from the root of your microSD before continuing with this guide, also download the following files, again to your desktop for ease: [Unrevoked3] [Unrevoked USB driver]
Next continue with the guide:
- Uninstall any versions of HTC Sync that you currently have installed on your PC
- Enable USB Debugging on your Desire, this can be found by navigating through Menu>Settings>Development>USB Debugging, you’ll be asked to confirm this with a security dialogue box, click OK
- Ensure that the correct adb drivers are installed on your PC, to test this restart your phone in HBOOT mode (reboot with the Volume Down key held in) and go to Device Manager on your PC. You’ll probably find that the adb device – your Desire – will have an exclamation mark next to it meaning the driver is not installed correctly. Right click this and choose to update the driver, pointing the wizard to the USB driver you downloaded on your desktop earlier (you may need to extract the archive first)
- Start the Unrevoked process by running the reflash_package executable on your desktop and follow the onscreen instructions
The Unrevoked package will now root your Desire and install a custom recovery image, meaning you’ll have far greater control over your Desire in the future and allow you to now continue and install the custom Froyo ROM.
- Once the Unrevoked process finished, you should be in your new custom recovery
- Select install zip from sdcard by using the Volume Up and Volume Down keys to navigate, using the optical trackball to select the correct option
- Select choose zip from sdcard
- Select misc_update from the SD and confirm it by navigating to Yes. This will repair your /misc partition
- Go back to the front screen on the recovery menu by using the Back key
- Select both the wipe data/factory reset option and wipe cache partition option before continuing
- Select install zip from sdcard then choose zip from sdcard
- Choose radio-5.09.05.03 2.zip from the list and wait for the upgrade to take place then update-od-4.0-signed.zip and wait for the upgrade to take place (remembering that if you downloaded a different ROM at the beginning, you’ll need to select that option instead)
- Once the upgrade has taken place, choose reboot from the menu
The initial reboot will take longer than normal, once your Desire has started turn it off again and replace your SIM card, then turn it back on and enjoy your new, even faster Froyo!
Notes: I’ve followed this procedure a few times now to test it all works, on one occasion during the initial reboot after the upgrade process my Desire seemed to sit way too long on the initial boot at the splash screen. If this happens to you (I mean more than 5-10 minutes, it will take longer than normal this is OK) then don’t panic, just pull the battery and restart in HBOOT mode, then reflash the ROM again by following the final 4 steps above, very occasionally it doesn’t seem to take first time, this used to be the same when I was flashing my old G1! Before reflashing, use the wipe data/factory reset option and wipe cache partition option.
For those like me who miss the HTC clock widget, there is an alternative available (although it has long since been pulled from the market) called fancywidget which can be downloaded from here. It’s almost undistinguishable from the original HTC version.
I hope you’ve found this useful, please remember to sign up to my FeedBurner service to receive email updates of further posts. Please leave any comments of questions below and either I or one of the other frequent flyers will get back to you soon.
Remove Amazon From Cyanogen ROM December 18th, 2009
Does anyone actually use the Amazon MP3 app that comes bundled with the Cyanogen ROMs? I’ve always found it annoying that it is not able to be removed from the Manage Applications applet, but of course, there is another way to cleanly uninstall it.
Simply open your Terminal Emulator app and type the following:
mount -o rw,remount -t yaffs2 /dev/block/mtdblock03 /system
That’s it, no more Amazon!
Of course you can also use this method to remove other apps by changing the appropriate file in the code. Enjoy!
Cyanogen v4.2.5 ROM November 16th, 2009
Typical, the day after I flash my ROM to Cyanogen v4.2.4 a new ROM, v4.2.5 is released!
To upgrade to v4.2.5 you can follow the same instructions as per my previous post but substitute the file in step 2 for this one. If you already have v4.2.5 installed, you can also use CM Updater – available from Android Market – to automatically download and upgrade to the latest ROM. I have tried both methods this morning to see if one is better than the other and they both produce the same results.
The change log from v4.2.4 to v4.2.5 shows the following:
- Eclair/Blur animations
- Eclair Dalvik
- WiFi update from Eclair
- Kernel tweaks
- Tiny video player is back
- Update phone mod from Cytown
- Contact list photos patch from Geesun
- Browser settings fix
- USB tether works thru WiFi connection
- Apps that automatically change the wallpaper work once again
- Other bug fixes and tweaks
I have only been running the new ROM for a few hours now but first impressions are that it is much faster.
Kudos goes once again to Cyanogen.
T-Mobile G1/HTC Dream: Upgrading To Cyanogen v4.2.4 ROM November 15th, 2009
It’s been a while now since I changed the ROM on my G1; I’ve been more than happy with Cyanogens v4.0.4 ROM which has proven to be very stable and pretty quick. I still find it amazing that he and other developers are able to push out these ROMs to a higher standard – and much quicker – than the service operators themselves. T-Mobile have a team of developers working on this and yet they just don’t seem to be able to get it right, they still think the way forward is to fill our devices with crapware and customisations which frankly either don’t work, or slow things down to a crawl – when will they learn.
Now that the things have settled down after Cyanogen received his C&D notice from Google, I thought it was about time to switch up to his latest stable ROM release; v4.2.4 comes with numerous enhancements and bug fixes and promises to be speedier than ever. Time to find out!
Notes: For the purpose of this guide, I am assuming that you already have an older Cyanogen ROM installed (v4.1.99 or older) and you are using Cyanogen Recovery v1.4. Of course following these instructions may work with other combinations but I have not tested them so if that applies to you, by all means use this as a guide but you do so at your own risk.
Before starting, assuming that you don’t want to sit with your G1 plugged into the power socket, it’s a good idea to give it a charge and ensure your battery is at least 75% charged, then when you are ready:
- On your computer, download the Android 1.6 Recovery Image from HTC’s website. This isn’t like one of the normal recovery images you’ll be used to running, but you’ll need it in order to ensure the Google Apps are working. For ease, download this to your desktop so we know where to find it in later steps
- Next, download Cyanogens’ latest v4.2.4 ROM, again saving it to your desktop
- We now need to copy both of these images onto your G1 so connect it to your computer using a USB cable, making sure that it is still turned on. Now, drag down the status window on the G1 and mount your phone so that it is accessible on your computer. Navigate to the root on your G1’s SD card and copy the two ROMs from above onto the SD. Once this has done, you can disconnect the USB cable and turn the G1 off
- Hold down the home button on the G1 and power on, this will allow you to boot into the Recovery Mode
- Once the Recovery Mode had loaded up, perform a Nandroid Backup [Alt+B] just in case you run into any problems in the later steps
- Next we need to wipe the ext3 partition on the SD card so that once we have flashed the ROM, we have a nice clean system without any of the remnants of the previous ROM, enter the console [Alt+X] and type:
mount –o rw /dev/block/mmcblk0p2 /system/sd
rm –r *
- Perform a data/factory reset [Alt+W]
- Next, we install the first ROM which will allow you to continue to use the Google Apps once Cyanogen v4.2.4 has been flashed in the next stage. Choose to apply any zip from the SD [Alt+A] and choose signed-dream_devphone_us but DO NOT reboot your G1 once this has been applied, instead go straight onto the next step
- Install Cyanogen v4.2.4 ROM by again choosing to apply any zip from SD [Alt+A] and choosing update-cm-4.2.4-signed.zip
- Now restart your G1 [Home+Back]; you may find that during the restart, you’ll be returned to the Recovery Menu as the cache is formatted. This is not a problem so just restart using [Home+Back] once again
- All that remains now is to go through the initial configuration of your G1 and mate it with your Google Account details however, on the initial screen check your APN details as I have found that whilst the APN lists have been updated since v4.0.4 some of them are no longer accurate (specifically the password), as in my case, the o2 payandgo APN is now slightly wrong and needs to be edited otherwise data will not work. The following steps are o2 payandgo specific so adjust this based on your SIM provider and data plan; other APN details are discussed in a previous post
- Click Menu and select the correct APN – o2 UK payandgo – then edit the APN details ensuring the following are entered:
NAME: o2 uk payandgo
PROXY: Not Set
Port: Not Set
MMS PROXY: 220.127.116.11
MMS PORT: 8080
APN TYPE: Not Set
Notes: I have shown you the steps to perform a clean install of the v4.2.4 ROM which is the way I choose to update, I tend not to keep much in the way of data on my device and any photos or documents etc can be copied back onto your SD card once the upgrade has been done using a USB cable. However, you can upgrade your existing ROM instead by missing out stage 6 above; this should leave your already installed applications and data intact. You may need to open Market afterwards though to rebuild your application database so that you continue to receive application update notifications.
Caveat: All modifications which attempt to bypass the base system settings allowing you to install custom ROMs *could* brick your phone (and if you’re not sure what is meant by that, please don’t read any further!). I am not responsible, this guide gives you the information you’ll need, what you choose to do with it is down to you.
As always, I make a few base customisations to the nice clean ROM once it has been installed, obviously at this stage you may choose to do the same or do something different but this is what I do:
- Cyanogens ROMs are designed for speed and efficiency so do not have all of the audio files that come with an original ROM, however this is easy to fix to ensure that you have all of the ringtones and alerts, simply download the audio zip and extract it to the root of your SD. Restart the phone and you should now have access to them all
- I’m not a fan of desktop wallpaper, perhaps it heralds from the days when it would have an impact on system performance; perhaps it’s just because I don’t like clutter. So, I prefer to have a simple black background which I think looks much smarter. To do this take a picture with the camera but keep your finger firmly pressed over the lens whilst you do, then choose this ‘image’ for your desktop. Easy.
- The first app that I always install is a battery status app which gives a much better representation of the amount of charge available than the one which comes as standard, so head to the market and install Battery Status – Free
- Finally, I upgrade to the latest version of Google Maps – v3.2 – which is far better than the version which comes with the ROM, to do this download the update file and using the same method as above, put this file onto the root of your SD card and reboot into the Recovery Mode menu and apply the update. Once your G1 has rebooted after doing this, you should see the updates Maps icon on the home screen and have access to the latest version of maps which has layers (showing you traffic hold ups etc) amongst other things and is much faster. Worth noting also that if and when the voice navigation feature is enabled outside of the US (currently it is not available in the UK owing to licensing restrictions on the map data), you will already have the core map application ready to go!
I hope you find this useful, enjoy.