, and

We’ve been playing with the LG Optimus G for a little while now, and while we loved it in our review, we’re liking it a whole lot more now.

Yesterday, we received a tip that the specific variant of the Optimus G on sale in Australia had been rooted and unlocked. Having had some failed attempts at this in the past, I was keen to give this a try to see what could be achieved. Well, it seems, it’s not all that difficult.

For those needing a quick introduction, this: rooting and unlock your phone are two different yet related concepts. Rooting allows you access to all facets of your phone; what you don’t like, you can change. It’s like having the keys to the castle. Unlocking, which can (on the Optimus G at least, be achieved after rooting) allows you to install full custom firmwares on your phone.

I’ll call rooting the Optimus G a fairly safe and reversible procedure. Unlocking probably is too, but it’s a little more risky. Do it wrong and you could really break things. With this warning, we’ll continue.

I’m going to walk you through it, but only really the first two steps in detail. I figure, if you know enough to be confident to root your phone, you can figure out how to install CyanogenMod yourself; we’ve covered it enough times in the past as well.

As always, the risk you undertake when modifying your phone is entirely yours. While we provide these guides, and have tested them ourselves, we don’t speak to your technical knowledge, skill, or luck. Follow these instructions precisely and everything should be okay — it was for us — but it doesn’t mean it will be. If you’re at all worried about destroying your phone or the planet, you probably don’t want to proceed.

First, rooting the device

The easy part. First, download these tools and extract the archive. We did this on a Mac, but the same process applies on Windows or Linux. We assume you have ADB installed, and know how to use it.

  1. Run the ‘adb devices’ command, to make sure your phone shows up.
  2. Run ‘adb shell’, and when the shell prompt comes up, type this in:
    echo -en \x0d > /sdcard/G_security
  3. Unplug your phone from the computer, go into Settings and disable USB debugging mode, and sit back for 30 seconds and relax.
  4. After the time’s up, re-enable USB debugging, and re-connect your Optimus G to the computer.
  5. Again, run ‘adb devices’ to make sure your phone is visible.
  6. If it is, run ‘adb root’ — you should get a message indicating ‘adbd already running as root’ or similar. If you DON’T see this, repeat these first few steps again. If it doesn’t work a second time, chances are it isn’t going to.
  7. Run ‘adb shell id’, and make sure it indicates you’re running as root. Again, if you don’t see it, run the first few steps again and see how you go.
  8. If everything has worked up until this point, it’s time to run a few shell commands to get things happening:
  9. First, push busybox:
    adb push busybox /data/local/tmp/busybox
  10. Run ‘adb shell’ then execute these commands in the shell:
    chmod 755 /data/local/tmp/busybox
    /data/local/tmp/busybox mount -o remount,rw /system
    /data/local/tmp/busybox cp /data/local/tmp/busybox /system/xbin/busybox
  11. Now, run these commands to install superuser and return to the shell:
    adb push su /system/xbin/su
    adb push Superuser.apk /system/app/Superuser.apk
    adb shell 
  12. Now, in the shell, run these commands to move everything in to place:
    chown 0.0 /system/xbin/su
    chmod 06755 /system/xbin/su
    chmod 655 /system/app/Superuser.apk
    chmod 755 /system/xbin/busybox
    /data/local/tmp/busybox rm /sdcard/G_security
  13. With this done, your phone SHOULD now be rooted. Reboot your phone with ‘adb reboot’, and when it comes back up, you should have a Superuser app in your drawer, and everything should be working. Install something like Titanium Backup to check that you have root permissions working properly.

Second, installing FreeGee

This part is easy, but risky. What is FreeGee I hear you asking? Well, it’s like this. If you wanted to stop following this guide right here, you can. Your phone is rooted, you can use root apps like Titanium Backup, Root Explorer and the like.

However, if you want custom ROMs, then you’ll need to install a custom recovery and modify the Optimus G in a few ways such that you can actually install such a ROM.

FreeGee is available for free on the Play Store. What it does is modify the bootloader on the phone so that custom ROMs will actually work. It does this (in simple terms) by backing up the existing bootloader images, then installing modified ones that will allow custom software to run. This is not without risk — if it stuffs up somehow, then you may be left with a brick. So, proceed with extreme caution.

From the Play Store description:

Freegee is now completely rewitten. It is a much cleaner and nicer codebase. All current variants are supported. Some software version are not supported yet because I’m missing boot.img’s. Please upload it if prompted!

Dropbox support is under menu -> settings.

This is the next step in Project FreeGee. Have an LG Optimus G? If so this app will allow you to unlock your bootloader, remove LG Security and install cwm/twrp recovery. With removed lg security you can now uninstall any preloaded applications you want.

This version is exactly the same as the donate version.

Please contact Shelnutt2 or IOMonster on freenode irc #lg-optimus-g with any problem.

This application also supports restoring from your backups.

Ready to proceed? Install here, run, and follow the instructions to the letter.


Installing CyanogenMod

Made it this far? Awesome.

Installing CyanogenMod from here is pretty straight forward. Download the latest nightly image from here, and then the latest Google Apps package from here.

You then know what to do; reboot into recovery, run a backup, factory wipe/reset, then install away! (Note, if this seems too casual an instruction set for you, you probably shouldn’t be doing this)

Some notes from my experiments however:

  • TWRP won’t install CM10.1 properly; it doesn’t believe your device is an E975. I had to use CWM Touch to get it to install. Instructions to install this are readily available elsewhere; here’s the CWM Touch image for E975 that you’ll need to flash through fastboot.
  • The Optimus G doesn’t have a clear way to reboot into recovery/fastboot etc. Basically, it’s all done by holding the power button and volume up, which activates fastboot mode. From THERE, you can access recovery mode.. though it took me a while to work this out. Read this post on XDA about how this works, and you’ll have no problems. In case it disappears:

    Upon entering the bootloader, you will notice that there is no ‘menu’ to enter fastboot or recovery. Unfortunately, since the stars didn’t align properly, we were unable to tell the new bootloader where to load the images that contain the menu from.

    In light of that, you’ll have to navigate the menu blind. Use the volume keys to change selection, and the power key to select.

    The choices are (in order of pressing volume down):
    Start – boot the phone normally [already selected]
    Restart Bootloader – reboot into the bootloader
    Recovery Mode – enter recovery (CWM)
    Power Off – powers the phone off

    So, to get to Recovery, you would press volume down twice then power.

So, with all that out of the way, will you be modifying, rooting and/or unlocking your Optimus G? It’s a risky process, but not without its rewards. Let us know if you’re game.

Source: CyanogenMod NightliesXDA thread on FreeGee.
Thanks: Michael Faro-Tusino from UnleashThePhones.
Inline Feedbacks
View all comments
Simon LH

geez the description above would have to be the most optimistic guide I’ve ever seen. these things (E975K) are bug-laden annoying, hard to service pieces of crap. made mistake of trying to install cyanogenmod [5.1/whatever 12.1?]. it shuts down thru set-up wizard and is stuck on the phone. otg not working… stuck in CWM. other one is korean spec 975 with the weird aerial. LG firmware 4.1 – just awful first thing you’ll need is decent keyboard! Tetherings f***d ; wifi tethring seems to work … is detected by other devices and connects fine. but no data access. worked once… Read more ยป

Simon LH

also, with LG, build quality seems great, design is sorely lacking though. And yes, they slip off absolutely everything!!

Philip Healey

This didn’t work for my telstra LG Optimus G but this method did and is extremely easy.http://forum.xda-developers.com/showthread.php?t=2228613




there is probably no point in flashing cm10.1, what are you missing out on? lockscreen widgets, though when keylime pie drops it may be a good time ๐Ÿ˜€

Scott Plowman

You are actually missing quite a bit which would make this phone much more usable. It’s great hardware but the 4.1.2 lg have put on there is pretty bad. So many things I wanted to change and not just the way it looked. I would seriously consider this phone close to the equal of a nexus 4 (well nearly) once more custom roms run without issue on it. With a custom rom it essentially IS a nexus 4 with capacitive buttons.


how does it run? is it smoother than lg stock?


It’s probably about on par. It’s pretty damned quick, but LG stock is quite fast. I’m still not entirely sure whether I’ll stay with CM or not; as James has pointed out above, CM10.1 doesn’t add much that the stock Optimus G firmware doesn’t have, and it does break a few things that work normally otherwise, including bluetooth handsfree and the camera is a little off. Everything else seems to work just fine though. I’ll play with it over the weekend and see.

Scott Plowman

I think the difference between lg’s attempt at a skin over 4.1.2 and cm10.1 is massive, assuming everything works well. Hopefully aokp comes next as this will add even more options.

James Sagi


Cryogen mod. Please tell me you’re not affiliated with these clowns


Nope, looks like Logan referenced my article — which is perfectly fine. Just a typo on his behalf, it seems.