Posts Tagged ‘cyanogenmod’
My first Android phone was the classic HTC Dream (or G1 as it is known in some countries). It was ugly as heck but it was the spark that started my adventures in Android-land and I still feel pretty attached to it, even if I’m not using it as a primary phone anymore. I passed the Dream to my brother as his first Android phone and he’s been pretty happy with it. Hopefully he’ll move on to better and faster Android phones one day.
The Dream’s shelf life has been extended time and again, thanks to the efforts of Steve Kondik and his cohort. Their CyanogenMod releases have time and again ensured that the Dream is kept relevant, despite the dozens of new Android models we see announced every week. As of July 11th, the Dream has been given yet another new lease on life with the release candidate announcement of CyanogenMod 6, the CyanogenMod community’s port of Android 2.2 (Froyo).
I was so eager to get my Dream updated to CM6 RC1 that I rushed over yesterday evening to his office and squatted outside the building doing the upgrade. At this time, my Dream was running CyanogenMod 5.0.7. I didn’t have a chance to upgrade it to 5.0.8 as I’d been too busy to meet my brother for a while. Turned out that this caused a fair amount of drama during my upgrading efforts.
I’ve been using ROM Manager for the past month or so and it really has been a time-saver for me. Naturally, the moment I laid hands on the Dream, I downloaded ROM Manager from Market and installed it. Using ROM Manager, I installed the ClockWorkMod recovery image, overwriting the AmonRA recovery image that was previously installed. I then proceeded to download CM6 RC1 and the bundled Google apps FRF91 using ROM Manager.
At this point of time, I was smugly smiling to myself at how cool this process was. There I was, literally squatting at the sidewalk, doing an OS upgrade on my phone over 3G with no need to hook it up to a laptop or PC. That’s why I’ve said before that one of the reasons I love Android is that it’s a full-fledged peer to a PC and not just a slave to it.
After downloading the necessary files, I was prompted to select whether a backup and/or wipe should be done or not. ROM Manager then rebooted the Dream into recovery mode to complete the upgrade. Or at least that was what it was supposed to do. 3 minutes after rebooting, I was staring in alarm at the Dream stuck at the bootloader splash image. It just would not go into recovery anymore. I rebooted the phone normally and found that it still could boot into CyanogenMod 5.0.7 with no apparent issues.
After some panicky checks on the Internet, I found that CyanogenMod 5.0.7 has problems writing a recovery image, as was warned in AmonRA’s release page. Suffice to say, if you’re running 5.0.7, you cannot use it to flash your recovery image. Meh to me for not reading up adequately before doing the upgrade.
I resolved the problem by re-flashing AmonRA using fastboot as documented here. Just boot the phone into fastboot mode by holding the camera and power button simultaneously, hook it up to a laptop (yes, this is where a PC or laptop is required) and run the command “fastboot flash recovery <path to recovery image>“. Huge sighs of relief all around when I saw the familiar recovery menu items upon rebooting.
So, I proceeded to manually flash CM6 RC1 and FRF91. At first, I did not do a wipe, hoping that the upgrade from CM5 to CM6 would no necessitate this. No dice. When I rebooted the phone, I found that the whole Google account sync module was not working and I could not even add a Google account! Oh well, didn’t really have high hopes for this anyway. So I wiped the phone and then everything worked fine. It’s definitely a pain to get the phone back into an operating condition you’re used to after a wipe so I really hope that something can be done about it in the final release. I have no idea whether it’s technically possible or not so I won’t complain, I’ll just hope.
My impressions on the Dream running CM6 / Froyo: it’s noticeably faster than Eclair, but really, don’t get your hopes up too high. The Dream’s problem is with its lack of RAM. It has only 96MB of available RAM compared to 386MB on my Nexus One. The moment you switch applications, the odds of it having to be loaded from internal memory or SD card is very high and that imposes an overhead on performance. This will happen no matter what kind of swap to SD card hacks are done and it’s really pointless to hope for more. I’m just glad that my Dream is able to run the latest and greatest software when the manufacturer has long lost any interest in keeping it updated.
Kudos to the CyanogenMod team for their great work. Given that Gingerbread seems to be designed for higher CPU speeds than ever, I’m not sure whether we’ll see a CM7 for the Dream but one can always dream, no?
This is just my record of how I migrated from a stock rooted installation of FRF85B on my Nexus One to CyanogenMod 6 Alpha 1 which was just released to the wild a couple of hours ago. CyanogenMod is an independent 3rd party effort by a group of volunteers to produce an enhanced Android ROM that mirrors the Android Open Source Project (AOSP) relatively faithfully.
NOTE: As the “alpha” tag indicates, this is not production quality stuff yet. I don’t even know how well my phone is working now after I installed CM6, so I’m hesitating to even use the work “upgrade” and instead I just say “migrate”. Read the release notes in CyanogenMod’s forums carefully and use your discretion.
What I started out with:
- A Nexus One phone.
- A working stock rooted Froyo installation.
- A bunch of user level applications, both from Market and self-installed APKs.
- Donate version of Titanium Backup.
- ClockWorkMod Recovery Image (but I’m pretty sure AmonRa would work just as well)
- ADW Launcher installed from Market.
- SMS Backup & Restore installed from Market.
My steps:
- Downloaded the CM6 binary and Google Apps zip distro from the CyanogenMod release page.
- Made use of the opportunity to remove some unused apps to reduce complexity and risk.
- Moved all apps installed on SD card back to the phone. I just didn’t want to risk having problems recovering those applications after the migration. To do this, just go to Settings -> Applications -> Manage Applications -> On SD Card and go into each application listed there and move them back to the phone.
- Went into ADWSettings and backup launcher configurations to SD card. After that, I uninstalled ADW Launcher. This is because CM6 comes with its own mix of ADW Launcher and I did not want Froyo’s automatic restoration of apps to clash with ADW Launcher.
- Ran Titanium Backup and backed up all user apps and data.
- Backed up all SMS using SMS Backup & Restore.
- Selectively backed up certain system apps, namely “Android Keyboard” for me, for my custom dictionary. You really have to use your discretion here. You can try to backup all system apps, but I don’t know how well that’ll work.
- Rebooted into ClockWorkMod Recovery Image.
- Did a full nandroid backup.
- Installed CM6 and Google Apps zip distro.
- Did a full wipe.
- Rebooted the phone.
- Did Google account sign-in.
- Waited for all apps that I previously downloaded from Market to be restored automatically. There will be a notification at the end of this process.
- Fired up Titanium Backup and restored all user data (not app) for applications that are downloaded from Market.
- Restored app and data for applications not downloaded from Market (self installed APKs).
- Went to Settings -> ADWLauncher and restored ADWLauncher settings from SD card. This didn’t work for widgets; I had to re-add widgets after this but my app icons on the home screen and other settings were generally restored properly.
- Restored all SMS using SMS Backup & Restore.
Done. As of right now, my Nexus One seems to be in working condition. Not sure what bugs will turn up but digging up bugs is the main purpose of this exercise, isn’t it?











