As regular listeners of Linux Outlaws will know, a few months ago I got myself a shiny new HTC Desire smartphone. It runs Google’s Android operating system which was the main selling point for me because it’s Open Source and Linux-based. I got the phone on contract from O2 UK and it came with their stock Android 2.1 ROM installed. This has all of the customised HTC Sense UI stuff. Essentially it’s just little interface changes and additions which HTC obviously feel are needed. I never really had any issues with Sense but many people tell me they find it problematic and slow. I was very happy with the OS and the hardware. That was until I realised O2 were going to take forever to release Android 2.2, months after HTC had already released a new official 2.2 update. The geek in me couldn’t live with that, knowing there was a newer firmware available and worse, knowing that other people were already using it! I’d heard much talk about custom flashing ROMs and onto handsets but never done it myself up to that point. So a few months ago I installed CyanogenMod 6.0. I had wanted to write about it properly at the time but was just too busy, we discussed it in detail on Linux Outlaws 167 though.
Recently (Dec 6th) CyanogenMod 6.1 was released and I decided to upgrade my phone. It’s still based on Android 2.2 and not the freshly released 2.3 but you can’t blame them really. Android 2.3 (codenamed Gingerbread) is literally a couple of weeks old at this point, and the source code was only released mere days ago. It’ll take time for Cyanogen and the gang to start building on the code. I’ll tell you a bit about the upgrade process in a minute but for now I should fill in the gaps by discussing the install process I took with version 6.0. The upgrade was almost exactly the same.
One of the most frequent questions I get asked is “will this void my warranty?”, the simple answer is I don’t know. While you are flashing new software onto your phone you’re not changing the hardware in any way, breaking a SIM-lock or doing anything else. I took many backups of the stock firmware before making any changes, as far as I can see if I just restore one of those backups before sending it to HTC there shouldn’t be a problem. How would they know anything was different? As I say, this is not a definitive answer so you modify your handset at your own risk. Now we’ve gotten the scary bit out of the way let’s get on with it.
Step 1. – You have to root your phone and I did this with a tool called Unrevoked. It roots the device and also replaces your recovery boot with the Clockwork Recovery Mod. Unrevoked is aimed at HTC devices. I just downloaded the Linux binary and ran it on an Ubuntu system. It fires up and then waits for you to connect the phone via USB. You do have to make sure you’ve enabled USB debugging mode for this to work as well.
Step 3. - To continue the process I rebooted the phone into the new recovery mod. Holding down the power button on my Desire brings up a menu with “reboot” and then “recovery mode”. I backed up the current image to the SD card with the options on the Clockwork menu, it’s pretty simple and definitely recommended before making changes.
Step 4. - Next I installed the new ROM using the “install zip from sdcard” option and immediately also installed the Google Apps zip on top, you just repeat the process a second time. If you don’t do this you won’t have Gmail, Android Market to find apps and many other things. A lot of people fall foul of this but it’s really easy to get the Google App, just be sure to download the appropriate version listed in the wiki. Cyanogen was prevented from distributing these apps by Google for licensing reasons.
That’s it you’re installed! You should now be able to boot into CyanogenMod.
The process for upgrading from 6.0 to 6.1 was the same as described above, I just skipped step one because my phone was already rooted.
Brief Thoughts On CyanogenMod 6.0:
I ran CyanogenMod 6.0 for about 4 months before upgrading and found it very good. I liked the many features Android 2.2 brought, all complemented by the added custom tweaks. I have to admit though stability was a slight issue for me with 6.0. I found the phone would freeze occasionally and removing the battery was the only way to reboot it. I’ve talked to other Android users who tell me they’ve had the same problem with their official ROM. So it may not be fair to lay the blame with Cyanogen. Let’s get on to talking about the real new release though, CyanogenMod 6.1.
Running CyanogenMod 6.1:
I upgraded to 6.1 almost immediately after it’s release and I’m really glad I did. Since then I haven’t had a single crash (touch wood), the speed and stability have really taken a leap forward I’m pleased to report. As mentioned earlier I upgraded using the same process I had to initially install CyanogenMod and I’d expected it to wipe my current settings. When I rebooted the device though I was pleasantly surprised to see all my preferences survived and I didn’t have to do anything to make it feel like home again. Checking the firmware version revealed I was definitely on 6.1. Everything looked the same at first glance, that was until I pulled down the notification widget and noticed the new wi-fi, bluetooth etc toggle switches. I wasn’t sure about these at first but actually I’ve started to use them a lot. They’re handy. I particularly like using the “silent mode” button to quickly enable or disable sound.
People have asked me what new features I’ve noticed but beyond the ones I’ve discussed I can’t really say. The custom media player has seen some enhancements which I like. Other than that the biggest improvement for me is the stability and performance, worth the upgrade alone. The ability to send mail from multiple accounts in Gmail was a nice update, I was really missing that on the phone. This was a Google app update though rather than a CyanogenMod thing. There’s a dizzying list of changes listed in 6.1 here, so if you want to find out more please have a look. It is also based on Android 2.2.1 which adds a few changes.
I’ve been asked whether I’m happy I moved to CyanogenMod and the answer is easy, yes! I’m very happy and now that the few stability issues from 6.0 have been addressed there’s really nothing bad to say about it. The main reason I changed was to get Android 2.2 and I’m not sure I would have been motivated enough to jump otherwise, I’m glad I did or I would have missed out. I expect there’ll be a new CyanogenMod based on Android 2.3 long before O2 UK or indeed even HTC get their arses in gear and roll it out. I’m really impressed with the work Cyanogen and all the other contributors do in making this software, hats off to all concerned.
There are many many custom ROMs based on Android and now that I’ve realised how easy it is to change I may well install some others. I would encourage people to experiment and try something new, it’s really not that hard. If I can do it so can you. Flashing a ROM only takes a matter of minutes so what have you got to lose? Just be sure you have plenty of backups before you go exploring and there’s nothing to lose. Restoring a backup in Clockwork Recovery is simple and quick, I tested this.
If you do use other custom Android ROMs leave a comment and let me know what they are, what’s good about them, and why should I try them. Just in case people are wondering I don’t have a backup phone, this really is my day-to-day phone. I like living on the edge and it’s really not that daunting.
If you try out CyanogenMod 6.1 let me know what you think of it.