Christmas 2010, I Wear My Nerd Cap/Rooting the LG Optimus One

Unlike most people, I have work this time of the year. My shift is on the afternoons this month, too, so that cancels out noche buena.

Hence, the mornings of Christmas eve and Christmas day, I wear my nerd cap, and played with my weeks-old Android phone.

Skip the rest of this entry if this sort of mumbo-jumbo doesn’t interest you.

Credits to the following TipidCP users: warfab, soulmenj, asuma, bluviper, and the rest of the LG Optimus One users on this thread.

###

First off, why root a mint LG Optimus One? Why apply a custom ROM?

The benchmarking below (generated by the Quadrant Standard app), which compares its speed and performance vs. other more expensive Android phones, did it for me. I initially hesitated, since the phone did come already with Android 2.2, with a 2.2.1 version that just came out.

These are amazing stats from a 12k+ pesos phone!

###

Second, if anyone wants to root and apply a custom ROM, bear in mind that this will take time. The total size (including JSE) of the files listed below is around 400 MB. I would advise to download these files first, before diving in.

NOTE: This tutorial also assumes that you’ve already downloaded v10e/Android 2.2.1, recently released as the official update for this LG phone. If you haven’t done anything to the stock setup, proceed to step 3, Rooting v10b. You don’t have to download KDZ Firmware Updater and the v10b ROM, either.

SOFTWARE:

Android SDK installer (and if you do not have Java Standard Edition/JSE [78MB], you need that, too [download]; the Java Runtime Environment/JRE is not enough) = 31MB [download]

*NOTE: You will be prompted to download all the required packages (file size: >100MB. I skipped on the documentation and sample files). Custom install to C:/

To be installed on the phone:

KDZ Firmware Updater = 2.5MB [download] [link source]

z4root = 955KB [download; requires forum registration]

NOTE: Only install z4root after the downgrade to v10b


ROM:

v10b (Philippine Version from official LG repository) = 121MB [download]

Prime v2 = 91MB [download] [link source]

NOTE: Video playback will be bad on the Prime v2 ROM, so follow Noenjn’s notes (on specified link source) on how to resolve that. You’d notice he didn’t go into detail re that process, since Root Explorer is a paid app. There are no other free apps that can remedy this issue, so get a hint 🙂


Additional files:

recovery-RA-GNM-thunderg-1.1.0.img.zip
flash_image.zip

[download; requires forum registration]

After finishing these downloads, move the following files to the root directory of the sd-card:

recovery-RA-GNM-thunderg-1.1.0.img.zip (extracted/uncompressed)
flash_image.zip (extracted/uncompressed)
Prime v2 (as-is; compressed)

###

 

Lastly, here’s the entire process of rooting and installing a custom ROM (Prime v2 [Android 2.2.1, stability-oriented]) on your phone. This is a rewrite of warfab’s post. I added more details to make this procedure as user-friendly as possible.

1. Ensure connectivity with the LG PC Suite; backup files on the SD card, phone

Good connectivity with the LG PC Suite (ability to read and transfer messages, view contacts, etc.) indicates your setup should not have issues rooting and applying a custom ROM, and that you have the right drivers. If you have difficulties, its best you resolve connectivity issues first. Also, the the Google USB  Driver Package is available for you to install on the Android SDK (Available Packages -> Third Party Add-ons). If you have successfully upgraded to v10e from stock, you should be fine. Lastly, all your previous settings and files on the phone and SD card will be erased, so do create a backup.

2. If you have upgraded to v10e, downgrade to v10b

Since there’s no effective method of rooting stock v10e, we have to downgrade to the last firmware which could be rooted, which is v10b. To downgrade to v10b,  KDZ Firmware Updater and the v10b ROM (Philippine version) is required.

[source]

  1. Extract the contents of KDZ updater. Install msxml.msi from the uncompressed directory.
  2. Conect your device (DO NOT RUN ON USB STORAGE) and run KDZ_FW_UPD.exe (as Administrator).
  3. Select Type: 3GQCT
  4. Select PhoneMode: DIAG
  5. In KDZ file: select the v10b ROM file.
  6. Press Launch software update, and wait. The phone will be in “Emergency mode“, and will eventually reboot.

3. Root v10b

The easiest way to root v10b is by using z4root. After installing z4root to your phone, select “Permanent Root“. After this task, your phone will be rooted.

4. Install “Custom recovery Optimus One P500/Thunderg”

This step facilitates the process of applying a custom ROM on the phone.

[source]

  1. Check if you have root access. Browse through your installed apps and check if you have the Superuser icon.
  2. Enable USB Debugging (Settings -> Application ->Development), connect your phone to the PC, and mount the SD card. Launch the Superuser app.
  3. Run CMD.
  4. Your custom install for the SDK should be under C:/ (as noted earlier in this post), so type this on terminal: cd c:/android-sdk-windows/platform-tools, then Enter.
  5. Type adb shell, then Enter.
  6. Type su then enter. Check your phone, since you will be prompted by Superuser to allow su. Allow su, and proceed.
  7. Type/copy-paste to terminal: mount -o remount,rw -t yaffs2 /dev/block/mtdblock1 /system, then Enter.
  8. Type/copy-paste to terminal: cat /sdcard/flash_image > /system/bin/flash_image, then Enter.
  9. Type/copy-paste to terminal: chmod 755 /system/bin/flash_image, then Enter.
  10. Type/copy-paste to terminal: mount -o remount,ro -t yaffs2 /dev/block/mtdblock1 /system, then Enter.
  11. Type/copy-paste to terminal: flash_image recovery /sdcard/recovery-RA-GNM-thunderg-1.1.0.img, then Enter.
  12. Type/copy-paste to terminal: reboot recovery, then Enter. You should now have the shell display on the phone.

5. Install Noenjn’s Prime v2 ROM

On the phone’s shell display, navigation is done with the tactile keys, with the volume keys to toggle, and the menu key to select and confirm. Reboot is done by pressing the  down volume key, power button, and home button at the same time, the release when LG splash screen appears. The following steps are selected items on the shell menu:

[source]

  1. Partition SDcard (swap: 0, ext: 512)
  2. Wipe data (data, cache, dalvik-cache, ext).
  3. Flash with “Flash zip from sdcard“, select Prime V2.
  4. Reboot.

More important details/background/notes on the ROM are found here.

Once you get to the LG splash screen, a different Android splash screen from the stock, and your home screen, you are done!

###

Two things to remember:

This procedure will void your warranty.

And this is based on my own rooting and custom ROM experience (on a Windows 7 Ultimate machine), and if you do decide to follow the steps here, and you end up with a bricked phone, don’t blame me, nor my sources. FOLLOW AT YOUR OWN RISK.

###

I’m not an expert with these things, but I am the eager and persistent type. A halo of achievement now sits on top of my head this Christmas day, and now, after making a small contribution in writing down this article, I retire.

Merry Christmas y’all!

Tagged , ,

Leave a Reply

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