[AT&T LG G2] epapsiou:
If you have KK or LP there are two ways to get back root and custom recovery:

1)

THIS IS THE EASIEST WAY

.

Use stumproot app from playstore or their thread to root and then cloudyfa's Autorec app to flash twrp. You can also get autorecd800[/URL from play store (easier)

OR the harder way

2) Go back to JB d80010d (see section 4) and then follow the guide for rooting and recovery (section 2 and 3)

If you are on JB and need to upgrade to ATT kitkat use garyd9's [URL="http://xdaforums.com/showthread.php?p=50882393"]method

or AndroidUser00110001's method.

These methods are almost as easy as flashing ROM and keep root and recovery intact

While the information on rooting, flashing recovery, going to stock exists in LG G2 forum, I found them scattered all over and overwhelming. The different models and different ATT firmware makes it even more confusing for newbies and so I thought we should have a ATT G2 guide. This guide is a combination of various threads in G2 forums and my rooting experience.

I will try to keep this guide up to date. Please let me know if you find something wrong or missing

THANKS: autoprime, hyelton,djrbliss, WACOMalt, PhilZ, TWRP team( DeesTroy et al), Koush, CWM, thecubed,vincom, Judge Joseph Dredd, SuperSport,bigfau. If I missed someone please let me know

Content:

1) Introduction

2) How to root

3) How to flash recovery

4) How to go back to stock (ATT Firmware)

- How to flash Official ATT KitKat

5) FAQs (ADB, Loki, Download Mode, Go to Recovery etc.)

6) Troubleshooting (unbricking)

1) Introduction:

There are many variants of LG G2. The ATT version is called LG D800. This guide is specifically for LG D800.

LG D800 ships with a custom Android Firmware that has been “enhanced” by LG and ATT.

The firmware is unrooted and has its bootloader locked meaning they designed it so that you cannot flash custom ROMS.

Fortunately, XDA’ers are very smart people and ways have been found to circumvent these “security” locks.

Before we begin we need to take care of few things.

Make sure you have drivers for your phone (http://www.lg.com/us/support-mobile/lg-D800)

Enable Developer option (General Settings -> About Phone -> Software Information and tap “Build Number” repeatedly(7-10 times) till you see a toast notification )

Enable USB debugging in developer option

2) ROOTING:

You need root privileges in your phone to run various useful apps like Titanium Backup, AdAway and install custom ROMs. Fortunately, rooting is very easy. Head over to autoprime’s thread) to download the IOroot .I have tested it (on KK). It works perfectly (LP not so sure).

thecubed also has an excellent guide on rooting with a video that you should check out.

Extract the zip into a folder. (I prefer C:\LG\ioroot). Remember this location.

Turn on USB debugging on LG D800 and connect it to your computer

Windows user double click root.bat and you will see a command screen pop up. Linux and Mac user should run the shell script ./root.sh(make sure they have proper permissions- chmod 777 should do it)

Follow the instructions on that screen. They are pretty simple.

It may ask you to disconnect the phone and turn off and then on the usb debug option and then reconnect the phone. Do so if prompted

Also keep an eye on your phone. It may prompt you with a warning. Go ahead and hit continue.

Once your phone is rooted it will give you an option of backing up EFS partition. PLEASE DO SO AND KEEP IT SOMEWHERE SAFE(dropbox etc.)

The screenshots in the "Click to Show Content" below show how ioroot process will progress

Another advantage of ioroot is that it has adb.exe in it. So if you need to do anything adb you can do that by going to ioroot folder through your command prompt.

***THIS METHOD WILL TRIP THE LG ROOT CHECK AND VOID WARRANTY. YOU HAVE BEEN WARNED*****.

If you encounter any problem head over to FAQs and Troubleshooting section

3) RECOVERY:

To install ROM’s and Kernels you need a custom recovery. Installing custom recovery is discouraged by ATT and hence the bootloader is locked. Fortunately djrbliss has released a tool called lokithat circumvents this lock and lets us flash recoveries, ROMs etc.

WACOMalt’s guide on installing TWRP is a must read for Newbies.

Before we go ahead please make sure that your firmware version is D80010d. If you have D80010o I would recommend going back to D80010d (see “How to go back to Stock” section). While you can flash recovery on D80010o, it does not behave well and you will not be able to flash some ROMs properly.

Things needed before flashing:

Proper drivers (see section 1)

ADB. There are various ways to get it but if you used ioroot you already have it

Go to windows command prompt (cmd) and go to your ioroot folder. which in my case was C:\LG\ioroot. From there you can type adb commands

For more info on ADD and how to get it see FAQs below

To flash recovery:

Get recovery of your choice. TWRP or PhilZ CWM . As of this writing TWRP by Blastagatoris preferable.

Copy the recovery image(.img file) to your adb folder (C:\LG\ioroot in my case). The twrp file is openrecovery-twrp-2.7.6.1-g2att.img. I would rename it to recovery.img just so that it is easier to type later on.NOTE: If you have a terp zip file extract the img file from the archive to use with loki

Download loki from github(https://github.com/djrbliss/loki). Select download zip on the right side on github page.The only file you need from the zip is loki_flash from bin folder.

Copy loki_flash to your adb location (C:\LG\ioroot in my case)

Run the following commands one at a time

adb push loki_tool /data/local/tmp/loki_tool
adb push recovery.img /data/local/tmp/recovery.img
adb shell
su
cd /data/local/tmp
chmod 777 loki_tool
./loki_tool flash recovery /data/local/tmp/recovery.img
exit
adb reboot recovery

**NOTE: loki_flash HAS BEEN REPLACED WITH loki_tool. JUST A NAME CHANGE. IF YOU HAVE OLDER VERSION OF ZIP REPLACE loki_tool with loki_flash**

The final command will reboot your phone and take you to your recovery

The screenshots in the "Click to Show Content" below show how the process will look like and what would happen if you try to flash non-loki image

4) How to go back to stock (ATT Firmware)

There are many reasons to go back to stock. Restoring warranty, reverting to 80100d firmware, soft bricks or plain old nostalgia. Fortunately, LG has a tool similar to odin called LGFlashTools for D800. Unfortunately, it is not as simple as odin and you have to jump through some hoops.

SuperSport has made restoring to Stock much easier with an installer.

Go to SuperSport thread and get the installer. Install the exe file and you are good to go.

An important thing to keep in mind: There is another better tool called LG Mobile Support Tool but it is for other G2 variants and not for ATT (or Sprint)

hyelton has written an excellent guide on reverting to stock. The tools in this section are from hyelton’s guide. Please read it for more information.

Before we start:

Make sure you have the drivers (section 1)

Download the LG Flash Tool

Download the firmware LGD800AT-01-V10d-310-410-AUG-14-2013.zip and LGD800_20130904_LGFLASHv160.dll files

Extract .tot file from V10d zip

To go back to stock:

Put your phone to download mode (power off. Then press the up volume button and connect it to computer without releasing the vol up button )

Once in download mode it may install stuff. Let it do so

Then change the COM port of your phone to 41 by going to devices and selecting LG G2 (see images below). Then unplug the phone and power it off

Find a key for LG Flash Tool (google search for it) and keep it with you

Now change date of your computer to 2012 January and disconnect internet

Install LG flash tool. It will ask for key. Enter it

You will see a place for loading dll file and tot file. Go ahead load files and click OK.

DO NOT CHANGE ANY OTHER SETTING

Then click on Yellow arrow

Then put you phone on download mode again (vol up and connect to computer)

You will see activity in LG Flash Tool. Let it run. It will automatically boot your phone.

Once your phone is booted and you see your all apps etc. disconnect the phone from comp.

The screenshots in the "Click to Show Content" below show how to change port to 41 and how LG FlashTool will look like when things are going OK.

Congratulations: You are all done

5) FAQs:

Tomsgt has a thread with videos on how to root, flash roms etc. that you should check out.

a) Boot to recovery:

If you have installed recovery you will need to go to it to flash stuff. Most custom ROMs have option in power menu to go to recovery. ATT Stock does not and so there are two ways to do so.

From adb type adb reboot recovery

Power off the phone. Then press volume down+power key. Do not release till you see LG logo. Then release and again press Vol down and power button. You will see a “Factory hard reset” screen that will say press power key to confirm. Do so. It will ask again. Go ahead and press power button again. Then you will boot into recovery.

b) Boot to download Mode:

If you are on custom ROM you should see this option under Power menu.

The other way to do it is Power off phone. Then while pressing volume up button plug the phone into computer. That should bring up the download mode in the phone

c) ADB (Android Debug Bridge):

ADB lets you communicate with your phone through a command line from your computer. You can upload file, flash zips, get logs etc. through adb. For the complete guide go to http://developer.android.com/tools/help/adb.html.

To get ADB you should get the Android SDK (http://developer.android.com/sdk/index.html). It is available for Windows, Linux and Mac. Once you have installed this get the Android SDK Platform Tools (ADB is in this Tools).

Windows users can just use the adb.exe in the ioroot folder (see Introduction Section). Just go to ioroot folder location from your DOS command prompt and type adb commands.

ADB drivers should have installed once you installed the drivers I had suggested in Introduction section.

Koush has a iniversal ADB driver for windows(http://download.clockworkmod.com/test/UniversalAdbDriverSetup6.msi, https://github.com/koush/UniversalAdbDriver). You can try that if you experience driver issues.

d) LOKI:

Loki is a tool/hack made by Dan Rosenberg(djrbliss) to work around the Galaxy S4 bootloader. The tool does not unlock the bootloader but tricks it into running custom kernel. There is an excellent article explaining the hack and I encourage you to read it once. Loki was ported over to G2 and gives us the ability to flash recoveries and ROMs.

As end users you really do not need to worry too much about loki. It is the ROM developers job :).

Note than any OTA by ATT may well contain fix for Loki. So DO NOT TAKE OTA.

e) Flash ROM:

PhilZ CWM: Go to “Wipe Data/ Factory Reset” and select “Clean to Install a new Rom”. Once done go back to “Install Zip” and then “choose zip from sd card”

TWRP: Similar but after factory reset you will have to do a “format system” under “mounts and storage”. I have not used twrp in a while so if this is old info please let me know

6) Troubleshooting

a)Unbricking

If you are reading this you have a problem. Your phone has become a brick. But do not despair yet as there are a few ways to unbrick your phone. Let us first determine whether it is a soft brick or a hard one.

Soft Brick: Basically it means your phone is bootlooping or showing a blank screen but you can still go to recovery/download mode. The easiest way to fix this (and determine if you have a soft vs hard brick) is turn off the phone and then press the volume up button and connect to the computer (keeping vol up pressed). If you see your phone enter download mode you are fine. Just restore to stock (see section 4 of this guide). Make sure you flash 80100d firmware.

Hard Brick: If you cannot enter download or recovery mode then you may have a hard-brick. This is not a fun situation to be in but there is a fix that may work. It involves lots of linux commands and is not for newbies but then if you are hard-bricked what have you got to lose. Head over to Partager.info's thread where he explains how @Shelnutt2 helped him unbrick his phone.