Installing Android 2.3 Gingerbread on the HTC Desire

As a follow up to my Android 2.2 guide from July here is how to install Android 2.3 Gingerbread on the GSM HTC Desire using AdamG’s Oxygen V2.0 Gingerbread ROM.

This is a clean ROM built from the Android Open Source Project aka AOSP so doesn’t have HTC Sense. If you like the Sense UI you might want to check out LauncherPro in the Android Market which offers a lot of similar features. Note that video recording doesn’t work at the moment but this will be resolved once the Nexus One gets its OTA update which should be in the next few weeks.

I’ll assume your phone is already rooted, if not follow step 1 from the 2.2 Froyo guide here first.

As always you do this at your own risk and note that technically you will void any warranty you may have.

Download the following files (don’t unzip them):

Updated Radio ROM from here (11.3 MB)
Oxygen Gingerbread ROM from here (59 MB)

Installing Gingerbread:

STEP 1: Backup existing apps & settings

Disconnect the Desire from your PC.
Install Titanium Backup from the Android Market if you don’t already have it
Run Titanium Backup and back all your apps up with Menu -> Batch -> Backup all user apps

STEP 2: Install new Gingerbread ROM

Copy the updated radio ROM and Oxygen Gingerbread ROM to the root of your MicroSD card. Do NOT unzip these files, just copy them to the card.

Turn the Desire off.
Turn it back on by holding the power button and the volume down button.
Scroll to Recovery using the volume buttons and select it with the power button.
Scroll using the volume buttons and press the trackpad to select Nandroid and then backup. <- IMPORTANT! This gives you something to fall back on should it all go wrong.
After the backup process has finished select install zip from sdcard then choose zip from sdcard and select the radio ROM (
Let this complete and then select install zip from sdcard again followed by choose zip from sdcard and select the Oxygen Gingerbread ROM (
When this has completed use the back button to go back to the first recovery screen and select wipe data/factory reset.

When the wipe/factory reset has completed has completed select wipe cache partition

Reboot when the wipe cache partition has completed.

Your Desire should now reboot into Android 2.3 Gingerbread

STEP 3: Restore your old apps & settings

Download Titanium Backup from the Android Market again
Run it and click “Problems?” at the top and then “Yes, do it”.
Restore your old apps and settings with Menu > Batch > Restore missing apps

That’s it.

Check the Android website for a highlight of some of the new features and improvements offered by Gingerbread.

22/1/11 – Updated links above to reflect Oxygen V2.0 RC7 (Android 2.3.1)
27/2/11 – Updated links above to reflect Oxygen V2.0 final (Android 2.3.1)
02/3/11 – Updated links above to reflect Oxygen V2.0.1 (Android 2.3.2)
29/3/11 – Updated links above to reflect Oxygen V2.0.2 (Android 2.3.3)
30/3/11 – Updated links above to reflect Oxygen V2.0.3 (Android 2.3.3)
29/4/11 –  Updated links above to reflect Oxygen V2.1 (Andoid 2.3.4)
2/5/11 –  Updated links above to reflect Oxygen V2.1.1 (Andoid 2.3.4)
7/5/11 – Updated links above to reflect Oxygen V2.1.2 (Android 2.3.4)
5/6/11 – Updated links above to reflect Oxygen V2.1.3 (Android 2.3.4)
18/6/11 – Updated links above to reflect Oxygen V2.1.4 (Android 2.3.4)
04/7/11 – Updated links above to reflect Oxygen V2.1.5 (Android 2.3.4)
05/7/11 – Updated links above to reflect Oxygen V2.1.6 (Android 2.3.4)
02/8/11 – Updated links above to reflect Oxygen V2.2 (Android 2.3.5)

48 thoughts on “Installing Android 2.3 Gingerbread on the HTC Desire

  1. Adamg has released Oxygen 2.0-RC7 this morning, I’ve updated the links above to point to this.

    If you have RC6 or earlier you can update entirely on your phone with a couple of clicks (presses?) using the Oxygen Updater app that is pre-installed with the ROM.

    The changelog for RC7 is as follows:

    Added all Google Apps back by popular demand (ROM still fits into Oxygen HBOOT)
    Added battery percentage toggle (now you can turn it on and off)
    Added colour change option for status bar power widget
    Added OxygenSettings app to controll UI aspects of the ROM
    Fixed SMS/MMS bug (kudos to Google)
    Fixed trackpad wake
    Market downloads moved to SD card
    Replaced Zeam with stripped Launcher2 (Zeam can still be obtained from the Market)
    Updated battery percentage (Thanks to jazzk)
    Updated kernel to 2.6.37
    Updated to Android 2.3.2 (GRH78C)

  2. I ‘follow’ ur posts since your writing on how to root HTC Desire using Ubuntu. It’s not an easy task for me since I’m just a newbie, but I managed to succeed. Now, you ‘enlighten’ me again with this post, and now I have the Gingerbread also. Thank you. You are so cool. Cheers!

  3. Hi,
    I just downloaded Oxygen Gingerbread ROM from given link and I unzip it. I looked at the files in it and I saw that all files are build at 29-02-2008. don’t you think that files are old?

  4. Thank you for your answer, I looked at that files because one of my friends has installed Oxygen Gingerbread ROM (update-oxygen-2.0-RC7-signed) on HTC Desire (GSM) and he said me that everything works fine but the video camera doesn’t work. is this a known bug or not?
    if yes do you know the next release or update date?

  5. Yes it is a known issue, AdamG said he is waiting for the Nexus One OTA update to Gingerbread so he can lift the necessary files from there (as Nexus One is almost the same as the Desire hardware wise). One of the other ROMs (can’t remember which, might be CyanogenMOD) has got it working with a dirty hack but AdamG has said he would rather wait than apply dirty hacks to Oxygen. Unfortunately the Nexus One update has been a lot longer coming than anyone anticipated.

  6. Gingerbread is Google’s code name for version 2.3 of Android, to install it on a particular phone requires a ROM built specifically for that phone. In the case of the Desire an official ROM would come from HTC first of all (for SIM free handsets) and from the carrier (eg. O2) via HTC for carrier branded handsets and would include modifications by HTC and the carrier. This takes time as HTC need to build and test their version with their custom mods and the the carrier has to do the same. It will also include customisations that you might not want.

    Unofficial ROMs such as Oxygen (the ROM this post is about) or CyanogenMod are developed independently of Google, the phone manufacturer and the carrier and are built from the open source version of Gingerbread here. They have many benefits such as faster updates to a new version, additional customisation options or cleaner, faster builds.

    Oxygen 2 is AdamG’s version of Gingerbread for the Desire. The intention with the Oxygen ROM is to build a clean, fast ROM without any hacks or mods which might slow it down or cause problems.

    CyanogenMod 7 is another ROM built from the same source by a different team and includes a lot of modifications and extras not included in standard Gingerbread (or Oxygen). CyanogenMod is also available for lots of other phones whereas Oxygen is currently only available on the Desire.

    Neither of these ROMs include the HTC Sense overlay which is standard on the Desire but there are apps available to provide most if not all of the things Sense includes and personally having moved away from Sense I wouldn’t want to go back.

  7. Oxygen 2.0 final is out now. Download here or if you are running one of the Oxygen RC releases you can do it all on the phone by running the Oxygen updater app, go to settings and change it to show all releases and then do an update.

    I can confirm that the video recording now works.

    I’ve updated the links in the post to point to V2.0 final.

  8. v2.0.1 is out, download here or go to Oxygen settings -> Oxygen updater on your phone.


    Added FM Radio
    Enabled custom light levels by default *
    Reverted audio firmware
    Updated kernel to **

    * Automatic brightness should function correctly if you have wiped now
    ** Changelog available here.

  9. I intend to install 2.0.1 ROMN on my Desire. I wonder if there is a problem syncing contacts stored in MS Outlook through HTC Sync? If so which software sould I use?

  10. Hi Nathan.
    Thanks for this. It’s all great and I am running 2.0.3 without an issue. I do have a couple of questions for you though.
    When I upgraded to gingerbread I noticed that the A2SD doesn’t seem to work anymore. I still have the partition but it only seems to contain 24mb now and whenever I add more apps that size doesnt grow and my phone space goes down. I can move just about everything to sd using the native app mgr but that doesnt do the same job as a2sd, documents to go is a prime example where it leaves over 5mb still on the phone. Should it still work and is there a GUI or installer for it or do I need to recreate the partition? I also cant find a file manager that lets me see the contents of the 500mb ext, can you recommend one? I am now desperate for space and have had to remove some apps, can you help please mate? Cheers, Russ.

  11. Hi Russ, I’m not aware of any Android apps that will let you browse the ext partition but A2SD probably is working (it certainly is for me) but by default Oxygen doesn’t move the Dalvik cache to the ext partition on the SD card (for performance reasons they say) and it is probably that which is that taking up the extra room compared the AdamG Froyo ROM.

    You can move the Dalvik cache to the SD card by downloading the dalvik2SD update here and flash it from recovery as you would a ROM.

    This freed up approximately 90MB more for me and I can’t say I’ve noticed any slow down.


  12. Hi Nathan. That’s worked brilliant thanks. 90mb free on a Desire is pretty impressive and better than I’ve ever had before. Cheers Russ

  13. Hi Nathan. I have a mate who is running a standard htc rom on a Desire. He just needs more space but wants to stick with the standard rom. Could I just root it then create a partition on the SD and use the above method to move the dalvik cache? I just wanted to check because that part happened initially for me as part of my 2.2 rom, so I needed to check I could use this method standalone. Cheers, Russ.

  14. Hi Russ, Not sure if that file will work on a stock ROM but check Link2SD out on the market. It will allow moving apps and/or dalik cache to SD.

    Oxygen 2.1 (Andoid 2.3.4) is out BTW. The new Google Talk is Force Closing for me but I haven’t done a wipe, just flashed on top of 2.0.3 for now.

  15. Hi,

    I did this last night and all was fine, but now I am repeatedly getting the following messages:

    The process has stopped unexpectedly. Please try again
    and has stopped unexpectedly. Please try again

    this happens every 10 seconds and stops me actually being able to use my phone.

    Any suggestions?

  16. Hi Jordan, Not heard of that before. Have you wiped your data? if you have come from any ROM other than Oxygen it will be necessary and might also be necessary when moving between certain Oxygen versions. Looks as if that is the only way I am going to cure my problem with the new Talk app Force Closing. If you have wiped data and have backed up and restored with Titanium Backup make sure you only restore user apps & data and not system data.

  17. Cannot download the Updated Radio ROM and Oxygen Gingerbread ROM from here. Please help!

  18. Natahn, If I have a standard cell provider ROM and want to install your Oxygen ROM do I need to anything special besides your above mentioned steps or is everything the same? Thanks for helping out a newb on this!

  19. Hi Nathan,

    I am having some issues. I followed your instructions to the letter, but every time I try this I boot into 2.2. What am I doing wrong? Is it possable that I have not rooted my phone properly?

    Please help!!!
    Thanks AJL

  20. I have the same problem as Jordan. When I tried downloading something or even tried using some apps like gallery, “ stopped unexpectedly”. I downloaded Android 2.3.3 from cyanogenmod7. Any help please.

  21. @ajl The zip must not be installing correctly if you are still booting to 2.2. After it has completed the “select install zip from sdcard” process and goes back to green menu are there any errors in the white text underneath? It should finish with “Install from sdcard complete”

    @ooisiang Have you done a wipe? If you have changed ROM then you will probably have to, that’s the usual cause of force closing. You might be better asking in a cyanogenmod forum if that’s what you are using, I have no experience with that.

    Oxygen 2.1.4 has been released, a few nice additions and bug fixes included, changelog here and links above updated.

  22. Halo Nathan,

    I have checked the cyanogenmod forum. There are some people with the same problem but nobody replied the thread. That’s why I came here. By the way, after i tried wiping the cache partition through recovery, the problem has been solved. It’s just another problem like “ has stopped unexpectedly” came out. I wiped again, this problem solved but then i couldn’t open my camera. After that i just reset the phone and flash the system again. No more problems. It’s just i couldn’t use market and DB navigator. Don’t know why. Does Oxygen 2.1.4 has the same problem. If not I think it’s worth for a try for me to install it.

  23. Hi Nathan, finally got Gingerbread up and running on my Desire last night, however all my apps are not accessable on the SD card including my contacts, I can see they are there using Gingerbreads file manager but am unable to make them function, without being able to access Titanium backup I cant see how I reinstall all of my apps. Also I have lost the market app. Would really appreciate your advice.

  24. @ooisiang Wiping the cache isn’t always sufficient, if it’s a settings conflict between different ROMs you will need to wipe all data. You can backup and restore your apps and app settings with something like Titanium just make sure you don’t restore system settings. The only force close problem I’ve ever had with Oxygen has been with Google Talk when it changed from Talk 1 to Talk 2 and a wipe will fix that.

    @Kev That is very odd, the market should definitely be there. I think I’d be tempted to try reinstalling the ROM first and if that doesn’t work try asking on the thread on XDA or the Oxygen Forum.

  25. Hi!
    I`ve tried to backup my Desire before instaling new ROM but get error:
    E:Can`t find MISC:
    E:Can`t mount CACHE:recovery/command
    E:Can`t find MISC:
    E:Can`t mount CACHE:recovery/log
    E:Can`t find MISC:
    SD Card space free: 2377MB
    Backing up boot…
    Error while dumping boot image!
    What is going wrong? Wher did I made mistake?

  26. @Bojan I hadn’t come across this before but seems to be an issue with later Desires that have PVT4 and an erase size of 40000. The workaround for that is to reconfigure Unrevoked to install the Amon RA recovery instead of ClockworkMod as it does by default.

    This guide here tells you how to determine if your phone has an erase size of 40000 and how to get Unrevoked to install the Amon RA recovery.

  27. Hi evrybody , can i ask u something? I install the Ggingerbread on Htc Desire Hd.The installation was perfect.When i startup the phone , the Android Market was missing ,and my Camara don’t work ? It say’s :Camera error , Cannot connect to camera.Does anybody know how to fix the camera , I will realy priciate it..thank you !!!

  28. Hi Januz, this ROM is only for the original Desire not the HD so you must be using a different one, it’s possible the one you are using doesn’t have the market or the drivers for the Desire HD camera in it but you would need to check with whoever made the ROM really.

  29. Here is my question. I have installed android gingerbread on my hTC Desire … And its all right…works fine.. but there is only 1 problem, when i start camera and i take the second shot, something goes wrong and the phone is whats the problem?

Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.