I’ve got myself a Samsung Galaxy S II, possibly the best Android phone out there on the market today. But it’s not perfect. The stock firmware comes with a number of apps that aren’t of all that much use, and some of them use memory and CPU (and therefore battery) that is better used by other things. That’s where custom firmware (ROMs) come in. Someone has done the hard work of removing the crap and making tweaks to make everything better.
I’m currently using Cognition S2 v1.31, along with the SpeedMod T1-K17 kernel. This is giving me good battery life for my phone – 2 days of battery life with medium usage is pretty good for something that’s effectively a pocket-sized computer.
It took a bit of work to get these bits installed, while still keeping things how I like them.
In order to install Cognition S2, you need to have a kernel with Clockwork Mod in it. However, if you flash a non-stock kernel to the phone using Odin, you get a nasty yellow triangle on the boot screen. You can get rid of this triangle by using a jig (available on eBay), but if you don’t have one you can use a sneaky trick:
- Download an appropriate CF-Root kernel for your firmware version, and flash it using Odin. This will root your phone, and will install SuperUser and CWM Manager. The yellow triangle will be showing on boot :o(
- Download an appropriate stock kernel (kernel only, not full firmware) for your firmware, and flash it using Odin. Your phone will still be rooted, and SuperUser and CWM Manager will still be installed. The yellow triangle should now be gone.
- Open up the CF-Root TAR file and extract the zImage file that’s inside it. Copy this file to your phone.
- Open the CWM Manager app on your phone and hit Flash image. Browse to where you put the zImage file and select it. The phone should reboot itself.
- Let the phone boot as normal. You should now be running the CF-Root kernel, but the yellow triangle should still be absent.
Now you’ve got CWM (and no nasty triangle), it’s time to flash Cognition S2.
- Download the installation ZIP file via XDA and copy it to the root of your phone’s built-in memory.
- Reboot your phone into CWM recovery. The easiest way to do this is from within the CWM Manager app.
- When the phone reboots, you’ll be at the CWM Recovery screen. You use the volume up/down buttons to change selection, Home to select an option, and Power to go back a level.
- Choose the option install zip from sdcard, then choose zip from sdcard. Locate the Cognition ZIP file and select it.
- You should see a long list of nos and one yes. Select the yes option to install Cognition S2.
- If the phone doesn’t automatically reboot, keep hitting Power to get back to the main CWM Recovery screen and choose reboot system now.
The phone will take a while to boot up as it has to re-optimise all of the apps, but when it does you’ll be running Cognition S2. Most people are happy at this point and go on using the phone. But not me. It’s time for some more changes.
My first change adds back the CWM Manager app that was removed during the Cognition install process. If you’ve got a jig, this is easy. But I don’t have a jig, so the process is a little more convoluted…
- The only way to flash a kernel outside of Odin or CWM Manager is with CWM Recovery, and to do that you need a kernel packaged in a CWM update.zip file. CF-Root doesn’t come in an update.zip format, so you need to make your own.
- Download my update.zip template to use as a base.
- Open up the template using any standard ZIP file manager, and overwrite existing 0-byte zImage file with the one from the CF-Root TAR file.
- Copy your custom ZIP file to the phone, and reboot into recovery. Cognition has a customised power menu that includes a Recovery option, which makes this easy.
- Follow the same steps as for installing Cognition, but select your kernel ZIP file instead of the Cognition ZIP file.
- Reboot the phone from the main CWM Recovery screen.
- When the phone reboots, you should now have the CWM Manager app back.
My next change is to add back some of the Samsung stuff that designgears removed from Cognition. I use one of the digital clock widgets, the weather widget, and the full-screen agenda widget. I also use a Windows Live for Social Hub account to sync my Hotmail account with my phone.
- designgears has created update.zips for the removed Social Hub and widget files. You can find links to these just under the download link for the ROM on the Cognition S2 thread on XDA Developers.
- These ZIP files contain all of the removed items, and I only want a selection of them. It’s time to prune the unwanted bits.
- From the Social Hub ZIP file, I removed all 4 of the Social Hub??.apk files from inside the /system/app folder. These are used for connecting to Facebook, LinkedIn, MySpace and Twitter. (Facebook and Twitter have dedicated apps that do a better job, so they’re not needed. I don’t know about LinkedIn or MySpace.)
- The widget hub took even more pruning. Again, the files are removed from /system/app. I only kept 5 files in the end: AccuWeatherDaemonService.apk, AnalogClock.apk, DigitalClock.apk, SamsungWidget_WeatherClock.apk, and TwCalendarAppWidget.apk.
- Once the ZIP files are copied to your phone, you can reboot into CWM Recovery and install the ZIPs the same way as you installed Cognition. Or you can use the Flash update option inside CWM Manager, which takes care of the hard work for you.
Last but not least is the installation of the SpeedMod kernel. You can use pretty much any kernel you like here, but hardcore has been customising kernels for a while and does a damn good job.
- Download the latest stable SpeedMod kernel from XDA Developers. If you’re not sure if a kernel is stable or not, read through the comments and see if people are having major issues.
- If the kernel comes in a ZIP file, open it up to see if there’s a /META-INF folder present. If there is, it’s a update.zip package and you can flash it the same way that was used for the widgets/Social Hub.
- If the kernel comes in a TAR file, or there’s a TAR file inside the ZIP, you need to extract the zImage file from the TAR. Flash this using the Flash kernel option inside CWM Manager, or use the template method (above) to make your own update.zip.
Phew! That was a bit of work, but now your phone is running a good ROM (thanks designgears!) and kernel (thanks hardcore!), and you’ve got there NZgeek style. Have fun!