Do you want to bootloader and unlock and root your V35? Do you want to do this yourself? Are you feeling the need for some adventure? If you answered yes to these questions, then you are at the right place. The goal with these instructions is to make the process as smooth and pain-free as possible. These instructions are based upon what I know works through firsthand experience and what I have gathered reading. My experience is with an AT&T branded V350AWM. Others also report success. That said, there can still be problems leading to bricked phone so don’t continue if you are not comfortable with the risk. An unavoidable side-effect of bootloader unlocking is that all data on your phone will be erased. Make a back up if you don’t want to lose it permanently.
This is what you will be doing in a nutshell.
Upon successful completion, you will have a fresh, bootloader unlocked and rooted phone that is otherwise stock.
Preparation and requirements:
On the hardware side, you will need a PC with MS Windows installed either directly or as a virtual machine and a high quality USB cable designed for data transfer. Older USB 2.0 hardware is preferred when working with LG phones. There is a long list of software to install.
Download and install each of these programs on your PC in the listed order.
You are also going to need some super important supporting files that make all of this magic possible.
Troubleshooting:
These instructions assume that your phone boots normally. Even with that there can still be issues due to software drivers and pc-hardware. They can be broadly summarized as a difficulty getting the computer to recognize and communicate with the phone and vice-versa. They arise frequently. If you encounter difficulties, review these troubleshooting tips compiled and written by @ChazzMatt and taken from his V30 WTF instructions.
Step 1: Setting an Oreo baseline:
The engineering files for bootloader unlock of the V35 phone are designed to work with Oreo. If you are an Pie or Q, it is highly recommended that you flash back to Oreo. For those of you with the common AT&T V350AWM model that is not on Oreo, there are a couple of points to consider
To set the baseline:
Step 2: Partition Extraction, Modification and Bootloader Unlock
Step 3: Restore download mode and flash to desired rom:
Step 4: Install Magisk for Root:
Step 5: Remove Root Checker: (Added 20200409)
I say with sarcasm that another way that LG has made our lives better was to implement a root-check and monitoring system. Many here are familiar with the root check daemon from the V30. There is a root-check disable twrp package to fix this problem. Installation and use of TWRP for the V35 is tricky. Don't worry, there is another way.
Happy Rooting!
This is what you will be doing in a nutshell.
- Setting the phone into a baseline Oreo conditions
- Extraction of abl, laf, and boot partititions
- Installation of the engineering abl and erasing the laf's using QFIL
- Unlocking the phone
- Flashing to Pie and maybe Q in the future if you want to update from Oreo
- Generation and installation of a magisk-patched boot image for root
Upon successful completion, you will have a fresh, bootloader unlocked and rooted phone that is otherwise stock.
Preparation and requirements:
On the hardware side, you will need a PC with MS Windows installed either directly or as a virtual machine and a high quality USB cable designed for data transfer. Older USB 2.0 hardware is preferred when working with LG phones. There is a long list of software to install.
- Minimal adb and fastboot
- The LG mobile drivers, http://tool.lime.gdms.lge.com/dn/downloader.dev?fileKey=UW00120120425
- Dev-Patched LGUP
- Instructions and warnings in post #6 with thanks to @ChazzMatt: https://forum.xda-developers.com/lg-v35/help/att-v35-unlocked-wont-verizon-t3958765
- Download with thanks to @tecknight for the software: https://androidfilehost.com/?fid=11410963190603845019
- 9008 Port Driver:
- QPST with QFIIL
- Some basic instructions: https://androidmtk.com/use-qpst-flash-tool
- Download: https://qpsttool.com/qpst-tool-v2-7-480
Download and install each of these programs on your PC in the listed order.
You are also going to need some super important supporting files that make all of this magic possible.
- The V35 engineering abl that will give you fastboot with thanks to @vlad48 for making it available: https://www.androidfilehost.com/?fid=1395089523397895796. Yes,it says V20, ignore it, it is fine. Extract abl_a and abl_b, and append a “.img” extension to each. Note the locations on your PC for future use.
- The recently available emergency download (EDL) firehose that makes direct partition flashing possible released by Biao on Telegram. It is available here:
- or as an attachment in @Xsavi’s similar and earlier instructions for the V40: https://forum.xda-developers.com/lg-v40/development/unlock-lg-v40-via-9008-root-t-mobile-t4042207
Troubleshooting:
These instructions assume that your phone boots normally. Even with that there can still be issues due to software drivers and pc-hardware. They can be broadly summarized as a difficulty getting the computer to recognize and communicate with the phone and vice-versa. They arise frequently. If you encounter difficulties, review these troubleshooting tips compiled and written by @ChazzMatt and taken from his V30 WTF instructions.
- Look in your ADB folder on your PC and confirm all known Windows file extensions enabled, https://goo.gl/YxLRG5.
- Confirm all Windows hidden files and folders are visible, https://goo.gl/1jBKne.
- Confirm USB debugging is on in Developer Options, and your PC has authorization for your phone, https://goo.gl/DgojL9.
- Install another version of ADB. Install as close to the root of your hard drive as possible. X:\ADB where X is your hard drive.
- Re-install LG mobile drivers, https://is.gd/Jbrvx1.
- Try another USB cable.
- Installing this Windows driver found attached to this post, (Thanks @gazzacbr and @FZZF) https://goo.gl/CqqNZT.
- Install Google USB driver, (Thanks @s0lidsneak) https://goo.gl/z2Tahw.
- Try another USB port on your computer or try cheap USB 2.0 hub, https://is.gd/gM1mM0.
- Reboot the computer.
- Try another computer. (THIS usually solves the problem, https://goo.gl/x637H1. Kudos if you find an an old Win7 PC, https://goo.gl/EaGMhs.)
- Master Reset (full reset of phone using hardware buttons), https://goo.gl/N4LcLD. Phone will be reset anyway after bootloader unlock. Doing it prior may fix something preventing the command from working.
Step 1: Setting an Oreo baseline:
The engineering files for bootloader unlock of the V35 phone are designed to work with Oreo. If you are an Pie or Q, it is highly recommended that you flash back to Oreo. For those of you with the common AT&T V350AWM model that is not on Oreo, there are a couple of points to consider
- AT&T does not release flashable roms. If you are on AT&T Pie or eventually Q, there is no going back unless of course you take the time to make a backup of the rom itself. That is not covered in this guide nor am I aware of a guide on how to do this.
- AT&T sim-locks its branded V35’s and the menu to unlock is specific to the AT&T rom. You should strongly consider purchasing of a sim-unlock code and applying it before flashing another rom!
To set the baseline:
- If you are already on Oreo perform a master reset. To do this, start by turning the phone off. Then press and hold the power and volume - buttons at the same time until you see the LG logo appear. When the LG log appears, release the power button and then press and hold it again while continuing to press the volume – button. Follow the menus to perform the reset.
- If you are on Pie or Q, you are going to flash or cross-flash back to Oreo. The kdz's are available for downloaded from https://lg-firmwares.com/lg-lmv350ulm-firmwares/#tab=firmwares. Reports are that roms can be cross-flashed across V35 models with the exception of the Korean V350N. If you are not familiar with the roms, the favored ones are the Google Fi / North American versions for the V350ULM. Down load the latest Oreo version
https://lg-firmwares.com/downloads-file/18971/V350ULM10i_00_NAO_US_OP_0221, md5sum: 64554877b692601d5906d2bdc9691712To flash the rom, turn the phone off, press and hold the volume – button while connecting it to the computer’s USB. The phone screen should show “Download Mode”. Start-up LGUP on your PC, select the rom kdz, and flash it using “Refurbish”. Do not use any other modes or you will have serious trouble!
Step 2: Partition Extraction, Modification and Bootloader Unlock
- Enable “OEM Unlock”: Turn on the phone and go through a minimal set-up process. Next go to Settings→ System→ About Phone→ Software info. Repeatedly tap on “Build Number” until you receive a message that you are now a “Developer”. Next go to Next go to Settings→ System→Developer options. Look for “OEM unlock” and flip the switch to on. Exit the “Settings” menus.
- Boot the phone in EDL 9008 mode: The “button dance” to put the phone into EDL mode requires quick hands. To increase the likelihood of success, take the phone out of any case to expose the volume buttons. With the phone fully booted and turned on, connect it to your computer by USB. Press and hold the power and volume – keys at the same time. The phone will likely take a screenshoot, keep holding the buttons, afterwards it will bring up a reboot countdown message. With one second left, start pressing the volume + button while still keeping the power and volume – buttons pressed. The phone will show a black screen and windows with make its connection sound if you succeeded in reaching ECL mode. Release the button immediately. Look at your computer, you should also see an entry in the Windows Device Manager under “Ports” that reads:
“Qualcomm HS-USB QDLoader 9008 (COMXX)”
where XX is the port. The phone will just reboot if you didn’t click the volume + button sufficiently fast. Keep trying, you will eventually succeed. If the screen on the phone does go black and you don't see the phone listed in the Windows Device Manager, then you should check installation of 9008 port driver.
- Start and configure QFIL: Go to the Start Menu or whatever passes for it on your Windows computer and fire up QFIL. Survey the screen:
- You should see “Qualcomm HS-USB QDLoader 9008 XX” next to “Select Port…”.
- There should be small text in the lower right corner that reads “Storage Type:”; Select “ufs”.
- There is a subheading near the upper left that reads “Select Build Type”. Tick “Flat Build”.
- Now using the “Browse…” button under the “Select Programmer", navigate to the folder that contains the firehose file, “prog_ufs_firehose_Sdm845_lgev40.elf” and select it.
- Extract partitions: Click on “Tools” in the menu bar of QFIL. Select “Partition Manager”. You will be asked if you selected the correct firehose. If you did then click OK. A screen will now appear that lists partitions on your phone. Scroll down the list and look for “abl_a”, “laf_a”, “abl_b”, and “laf_b”.
- Right click on “abl_a”
- Select “Manage Partition Data”
- Select “Read Data…”
- Open a folder and navigate to location where the extracted file is located. The QFIL “Status” output shows the location and filename. On my PC, it reads:
- “C:\Users\whoiam\AppData\Roaming\Qualcomm\QFIIL\COMPORT_XX\ReadData_ufs_xxxxx.bin” where XX is the port number and the “xxxxx” are details about the partition name. Copy the file to a dedicated folder and rename it “abl_a.img”.
- Repeat the this process for “laf_a”, “boot_a”, “abl_b”, “laf_b”, and “boot_b” partitions. Note the locations of these files as back-ups and also for the following section on rooting.
- Use QFIL to get fastboot:
- Write the engineering abl’s: In QFIL, do the following:
- Right click on abl_a.
- Select “Manage Partition Data”
- Select “Load Image”
- In the dialog, Navigate to the location of the engineering abl_a.img file you downloaded in the preparation section, select it, and click “Open”.
- Erase laf’s: In QFIL, do the following:
- Right click on “laf_a”
- Select “Manage Partition Data”
- Select “Erase”
- Confirm that you want to erase
- Unplug the phone from USB
- Press and hold the power and volume - buttons until the LG V35 boot logo appears. Allow the phone to reboot.
- Turn the phone off.
- Unlock the bootloader:
- Enter fastboot mode: Hold the volume + button and plug in the USB cable. The phone will boot to a series of menus that include “Start” and “Power off”.
- Run a command prompt as Administrator. If necessary navigate to the directory where you installed adb.exe and fastboot.exe.
- Check that the phone communicates with fastboot: Type “fastboot devices” and press enter. It should return details about your device. It reads “LMV350AWMxxxxxxx fastboot” with my phone.
- Bootloader unlock: Type “fastboot oem unlock”. Congratulations if it reports OK, your phone is now unlocked. If it reports failed then try another USB port on your PC, a better/different cable, and potentially even another PC.
- Reboot the phone
Step 3: Restore download mode and flash to desired rom:
- If the current version of Oreo is where you want to be then skip to Step 4.
- If you want to upgrade to Pie or eventually Q, then you need to restore the laf_a, laf_b, abl_a, and abl_b partitions to recover download mode. It should be clear from what you have done above with QFIL how to do this.
- Download the kdz of your desired rom. The Google/NAO version of Pie is recommended and available at this link, https://lg-firmwares.com/downloads-file/22230/V350ULM20f_00_NAO_US_OP_0218.
- To flash the rom, turn the phone off, press and hold the volume – button while connecting it to the computer’s USB. The phone screen should show “Download Mode”. Start-up LGUP on your PC, select the rom kdz, and flash it using “Refurbish”. Do not use any other modes or you will have serious trouble!
Step 4: Install Magisk for Root:
- Re-enter EDL mode with the above button dance procedure
- Extract boot_a and boot_b partitions: Click on “Tools” in the menu bar of QFIL. Select “Partition Manager”. You will be asked if you selected the correct firehose. If you did then click OK. A screen will now appear that lists partitions on your phone. Scroll down the list and look "boot_a” and “boot_b”.
- Generate a Magisk-patched booted image working directly with the phone:
- Download a stable version of Magisk Manager from the official website: https://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445. It should be saved in the “Download” folder.
- In Settings, navigate to Apps & Notifications→ Special access → Install unknown apps. Click on File Manager and set it to allowed.
- Open the “File Manager” app and navigate to the Download folder.
- Select and install the “MagiskManager-v7.5.1.apk” file keeping in mind that the version numbers may be different.
- Connect the phone to USB and place it in file transfer mode.
- Copy boot_a.img and boot_b.img to the phone Download folder
- Start “MagiskManager” and select “Install”. When presented with the option, tap “Select and Patch a File”.
- Navigate to the “Downloads” folder where and select boot_a.img.
There will now be a file named “magisk_patched.img” in the “Downloads” folder. Change its name to magisk_patched_a.img.
Repeat this process with boot_b.img. - Install the Magisk-patched boot images using the PC:
- Copy the magisk_patched_a.img and magisk_patched_b to the windows computer.
- Put the phone into 9008 EDL mode with the button dance described above.
- Start QFIL, configure it as described above, and then click on “Tools” in the menu bar of QFIL and Select “Partition Manager”.
- Scroll through the list of partitions and locate boot_a. Right click on it and select “Load Image”. Point it to the magisk_patched_a.img file.
- Repeat the previous step for boot_b and load the magisk_patched_b.img file
- Reboot your rooted phone.
Step 5: Remove Root Checker: (Added 20200409)
I say with sarcasm that another way that LG has made our lives better was to implement a root-check and monitoring system. Many here are familiar with the root check daemon from the V30. There is a root-check disable twrp package to fix this problem. Installation and use of TWRP for the V35 is tricky. Don't worry, there is another way.
- Put the phone in USB debug mode
- Connect to your computer
- With adb from a command prompt on the computer do the following
adb devices <-- If your devices is properly connect and recognized, adb will respond
List of devices attached
LMV350XXXXXXXXX device
adb shell <-- If you have a shell into the phone you will now see
judyp:/ $
pm uninstall -k --user 0 com.lge.srtc <-- This command removes the root checker, if it succeeds you will get the response:
Success
pm uninstall -k --user 0 com.lge.mlt <-- This command removes the LG monitor, if it succeeds you will get the response:
Success
Happy Rooting!
Last edited: