How to Flash Lineage OS on an LG V20 Phone

This method will, when completed, will provide you with root and an unlocked bootloader, with fastboot available. It is a somewhat involved process, but the majority of the process has been simplified as much as possible.

WARNING!!!!This replaces your current bootloader with a debug bootloader. If you attempt to lock this bootloader you may brick your device.
Currently AT&T(H910) and Sprint(LS997) cannot return to stock because no KDZ files are available.

Once your phone is unlocked, it will no longer be covered by LG warranty @me2151.
As we cannot guarantee the proper operation of our hardware with custom software, we are not able to maintain the full scope of warranty for your device after you have unlocked the bootloader.
Because of that we have a responsibility to let you know that defects which may result from, or were caused by custom device-software may not be covered by LG warranty @me2151.

LG @me2151 can no longer guarantee the full functionality of your device after you unlock the bootloader. Unlocking your device may cause unexpected side effects that may include but are not limited to the following:
***Your device may stop working.
***Certain features and functionalities may be disabled.*
***Your device may become unsafe to the point of causing you harm.
***Your device becomes physically damaged due to overheating.
***The behavior of your device may be altered.
***Some content on your device may no longer be accessible or playable due to invalid DRM keys.*
***All your user data, settings, and accounts may disappear. (Therefore, we recommend that*you*backup all your data).
** -*Software updates delivered via LG FOTA (Firmware Over the Air) or Web Download services may not work on your device anymore.
LG @me2151 will not be responsible for the damages caused by any*custom software being flashed to your phone.

Known Issues:
AM&FM Radio no longer works
Boot time higher
No way to revert to stock(LS997/H910)
Possible overdose of root awesomeness!
Maybe more. Let us know!

Terminal Emulator
Newest SuperSU(SuperSU v2.78 SR5 or greater is needed)
Stock LS997 rom. for Sprint users only. (Fix’s numerous problems)

Or download all of the required files in one ZIP here

– ADB and fastboot setup and Installed
Terminal Emulator installed onto the phone.
– The above links downloaded and SuperSU placed on the SD Card.

Working Devices:
– Verizon (VS995)
– Sprint (LS997)
– ATT (H910)
– Korean(F800L)
Note: International Variants (E.g.H990DS) May get supported in the future, but are currently being worked on at the moment. If you attempt to use this method on Unsupported Devices(any V20 not listed in working devices) then you are in uncharted territory. It will almost definitely brick your device. YOU HAVE BEEN WARNED!!!!

This will tutorial will be broken up into 2 sections, during the second section the instructions will differ depending on the variant of the phone you are using.

Unlocking the Bootloader:

1) Copy all the files from inside the “Required Files” (Inside the unzipped “v20-root” folder) and paste it into your active ADB directory. Then copy and paste twrp-3.0.2-1-us996.img to your active ADB directory.

2) If you currently don’t have Terminal Emulator then go and download and install now.

3) Plug your device into the computer and verify ADB is working. Then;

On Windows, double-click “RUNMEFIRST.bat, DO NOT CLOSE THE LOG WINDOW THAT OPENS, then double-click “Step1.bat”

On Linux/MacOS (“#” Signifies a comment below)

# OR
bash ./

Open a Separate Terminal next to the RUNMEFIRST terminal, then type:

# OR
bash ./

When you run The sh or Bat files there will be a Permission denied error on 2 files: Flatland and Flatland64. This is normal and nothing to worry about.
3.5) Wait for a shell prompt, then type (or copy):

run-as con
chmod 0777 /storage/emulated/0/*

If you receive a permissions error when running “run-as con” then try down grading your Stock Rom to the December 2016 version and then starting over.

4) Open Up Terminal Emulator


Check if context is “Untrusted_app”

If “Untrusted_app” is displayed, Continue:
Type into Terminal Emulator:

applypatch /system/bin/atd /storage/emulated/0/dirtysanta

If it doesn’t show up as “Untrusted_app”, repeat the above steps from Number 1

5) Watch the RUNMEFIRST dialog for when it tells you to run Step2. Then;

On Windows, double-click “Step2.bat”

On Linux/MacOS, type:

# OR
Bash ./

Once step 2 is completed, you’ll be in bootloader, procced to “Flashing TWRP” section to continue.

Note/Warning: Verizon Users Vibrator will be constantly going off, until the whole process is complete (Past Android Setup Wizard).

Flashing TWRP and Fixing Varient Issues:
1) Run Step3, so TWRP can be flashed and a working boot.img flashed (Fix’s screen problem) by;

On Windows, double-click “Step3.bat”

On Linux/MacOS, type:

# OR
Bash ./

If you get message saying <waiting for device> on Step3.bat then you do not have the fastboot drivers installed(you may have the program but not the drivers).
To fix: Go to your device manager while the device is connected in fasboot and right click the item that says Android and select update drivers. Then select from internet. and let it install the drivers then try step3.bat again.
2) After you’re rebooted, pull and reinsert the battery and the hold the volume down and power button together. Select “yes” twice and the device should display a red triangle and say corrupt, then it will boot into TWRP.

3)Once in TWRP, Press Cancel on the password prompt and then swipe to allow system modifications.
Note:If you wish to make a back up now, you MUST save it to your SD card, and you cannot backup the data partition.
After the backup is complete, return to the main menu and hit wipe then select ?Format Data?, and follow the instructions there.

4) Steps below will differ, depending on what model you have, choose the correct model and follow its method.

Verizon(VS995) and ATT(H910):
4.1) Go back to Main-menu > Wipe > [Format Data] > Type ?Yes?
4.2) Go back to Main menu > Install > then Flash
4.3) Flash MK2000 kernel to fix static screen issue.
4.4) Wipe Dalvik, Data and Cache.
4.5) Go back to Main-menu > Reboot > System- Sprint(LS997):
4.1) Go back to Main-menu > Wipe > [Format Data] > Type ?Yes?
4.2) Go back to Main menu > Install > LS997 Stock Rom then Flash
4.3) Flash MK2000 kernel to fix static screen issue.
4.4) Wipe Dalvik, Data and Cache.
4.5) Go back to Main-menu > Reboot > System
4.6) Sprint users are Done at this point. You do not need anything else. Everything will work except static on boot.

Note:Any following Instructions are for all devices again.

5) During reboot you will get a Red Triangle with a “!” inside, this is normal (First boot after flashing SuperSu will show the Red triangle twice.Wait for system to boot (this will take awhile). It may appear like the system has frozen but it has not. JUST WAIT!

*****ALL USERS*****
If you encounter a “Secure Boot” Password then booting the first time you did not Format data properly.
To reiterate: To properly decrypt the device you need to boot into TWRP and go to WIPE->FORMAT DATA and you will be prompted to type “yes” to format and decrypt.

You now should have a rooted LG v20, download your favorite root checker app and verify root.
Note:For a root app to work, it will have to support Systemless root.

Now you can boot back into TWRP and flash the Lineage Recovery image to the recovery partition of your phone. This will remove TWRP from your phone but is required for installing Lineage OS. Once the recovery image is flashed, go ahead and reboot to the Lineage Recovery.

  • Now tap Factory Reset, then Format data / factory reset and continue with the formatting process. This will remove encryption and delete all files stored in the internal storage, as well as format your cache partition (if you have one).
  • Return to the main menu.
  • Sideload the LineageOS .zip package:
    • On the device, select “Apply Update”, then “Apply from ADB” to begin sideload.
  • (Optionally): If you want to install any add-ons, repeat the sideload steps above for those packages in sequence.