Zed Lopez

A Root-ing We Shall Go

I’ve noted before that I’m no early adopter when it comes to hardware, for reasons of frugality. The people on the bleeding edge can do the bleeding; I’ll generally stick to 3rd generation or later when it’s cheaper and more reliable. I didn’t have a cellphone at all until maybe 1999, and didn’t have a smartphone until early 2011 when Virgin Mobile was offering an unlimited data 3G plan for $25/month, locked in indefinitely (so long as you stick with the same phone and plan) with this LG Optimus V (a VM670).

But I never bothered becoming anything like an expert user of the phone. Calls, texting, occasional web-surfing, alarm clock… that’s about it. I knew there were hackers out there rooting their phones and making custom ROMs and doing other interesting things, but I never cared enough to look into it.

But in recent months my wife and I have both been having problems with our phones running out of storage, and we were struggling to flush enough data to keep them functional. And one of the biggest culprits was the crapware the phone came with, like Twidroyd, a Twitter app that hasn’t even worked for a long while. For your convenience, these couldn’t be uninstalled or shifted to the SD card. A few months ago, I consulted my AskMe peeps about what to do about it, and the clear consensus was that the first step was rooting it.

This weekend I finally bit the bullet and figured it out. It reminded me a lot of modchipping and installing an alternative OS on my Xbox, to no surprise… in general, it’s not difficult to do when you figure out what to do. But it’s a pain in the ass to be sure what that is, when every guide and piece of software involved is a moving target maintained by hobbyists and they get out of sync with each other more often than not.

Anyway, this is what I did, following this guide and a number of other things. My phone was old, so I didn’t have to worry about the exceptions noted for ZV9 ROMs.

Rooting itself was surprisingly easy. Install OI File Manager or anything else that lets you install packages from your SD card. Download GingerBreak APK 1.2. Put it on your SD card. Enable USB debugging under Settings > Applications > Development. Use the file manager to install GingerBreak and run it. After running, it’ll reboot your phone. And that’s it – your phone is now rooted and you’ll be able to permit applications to do things you couldn’t before.

I could have installed Link2SD at this point, which would have let me move the previously unmovable things to the SD card and solved my storage issues, but I decided to go ahead with replacing the ROM.

First I installed Titanium Backup, which requires a rooted phone. It lets you backup all your apps and data to the SD card, which I did.

Next I had to replace the recovery image, which is what your phone runs when booted into recovery mode. There’s more than one choice here, but I used ZenGarden Touch for VM670. I put the .img file on my phone’s SD card, along with the free version of Flash Image GUI and the files I’d need later, the zipfiles for the 2013-07-13 build of Mirage, a derivative of the CyanogenMod replacement ROM, and the 2011-08-28 build of Google Apps. There were other replacement ROMs I could have chosen, but cursory research suggested it was a good choice for my old phone and that going for Android versions more recent than 2.3.7 could be problematic.

Using OI File Manager again to install Flash Image GUI, I used it to write the ZenGarden recovery image to the phone. Then I powered off the phone and had to hold down the home key, the volume down key, and the power switch until the LG logo appeared and disappeared. Then it booted into ZenGarden.

First thing was to create a “nandroid backup” of my existing ROM, under “Backup & Restore > Nandroid Backup”. Between that and the Titanium Backup above, it ought to be the case that I could revert to where I was before attempting to install the ROM.

Then I picked “Wipe/Format > Prepare for New Install”, which cleans up where the ROM will be written. Finally, I did “Install Package > Install with Gapps” and chose the Mirage zipfile. And after a reboot, I was in something like a new phone.

I manually replaced some of the basic configuration, like turning off the GPS by default, and adding my home wifi password. I installed Titanium Backup again to restore my contacts, but I found there were a lot of problems with restoring things from the old phone to the new one, especially with directly re-installing the old applications from the backup. After trying to replace my old Swype and having it crash constantly, I ended up starting over from scratch (not that hard – I only had to boot back into the ZenGarden recovery image and repeat the steps of the previous paragraph). Easiest thing is to just sync all your data elsewhere, re-install the apps, and sync it back.

So now, with a few apps installed, I have 243M free. With the original ROM and crapware, I started with only 160M free. And I’ve got some neat new features like tethering my phone so I can connect my laptop to my phone by wifi and my phone to the net by 3G and have net access from my laptop wherever I have 3G. And with the custom ROM, it starts out rooted, so there are all the possibilities that offers.

I suspect I just got several years’ more life out of my phone.