I've switched from my Lumia 928 to LG V20 (US996 unlocked) for 6 motnhs, and i loved it untill some **** happened. After the previous OTA update, my phone encounted radio off or no service issue. I find out this happened after reflashed the stock rom or OTA update, if you have this issue please follow these steps:
What you need:
US996 stock rom: http://lg-firmwares.com/category/lg-series/lg-v20/ (US99610f for unlocked ver.)
Patched LGUP for V20: https://forum.xda-developers.com/v20/how-to/guide-patch-lgup-to-unlock-features-t3652222
The lastest Super SU or Magisk (in case you need to pass the Safety Net for using Banking app, Android pay, etc.)
Modem file.
ADB, LG lastest driver.
I uploaded the nesscesary in here: https://drive.google.com/drive/folders/1pKKp78EqFwoCs5PuXi_2P-4_hsEx6u5_?usp=sharing
This tutorial will have 3 section: first you need to downgrade your phone to US99610f or this won't work. Next unlock your boot loader via dirtysanta n flasing TWRP. Then you flash the modem file and root your deviece with superSU or Magisk (optional).
I recommend you read this though out and pateintly following these step. You should backup your data before starting this. Do this at your own risk.
Downgrade to US99610f
If you are on the US99610n then you need to downgrade to US99610f cause you can't use dirtysanta on the US99610f (you can start from step 4 in case your phone is not soft bricked)
1. Completely Power off the v20 ( or to remove and put the battery back )
2. Plug the USB end of sync cable to your PC
3. Press and hold "Volume Up"
4. Plug in the USB-C end of sync cable to the v20. The phone will enter download mode (or Firmware Update). Now you can release the "Volume Up".
5. Run LGUP. The program will regconise the v20.
8. At the file path, click "..." and chose the .kdz file
9.Choose "UPGRADE"
10.Click "Start" and wait until the process is complete wait untill your phone boot up and there you are US99610f and still no service :silly:
Unlock Bootloader n' flashing TWRP
Turn on developer options in Settings -> About device -> Software info -> Build number. (tap 7 times or spamming it until it's enabled):laugh:
Now navigate to Settings -> Developer options -> OEM unlock. (turn it on)
Don't ever turn OEM unlock or Developer options off when using a custom ROM or recovery. This could lose to loss of all your data.
For your computer to see ADB, you will need to put the phone in Files transfer mode.
To unlock your bootloader, follow the unlock instructions on LG's site (I can't really help you there):
"This may void your warranty"
https://developer.lge.com/resource/mobile/RetrieveBootloader.dev?categoryTypeCode=ANRS
After your phone boot up:
1. copy twrp.img to your internal storage or SD card.
2. Start ADB and following these steps (just copy and paste):
https://github.com/jcadduono/android_external_dirtycow#running
3. Wait for it to complete and type:
If you don't want to void your warranty please use the dirty santa by following this threat:
https://forum.xda-developers.com/v20/development/ls997vs995h910-dirtysanta-bootloader-t3519410
In this threat you will unlock you boot loader n flashing recovery. Right after you've done step 3 and your phone boot up you can wait (I dont recommend you to wait for you phone boot up, mine have screen static after that so just following these step to enter TWRP we will fix it later):
1. unplug the cable right after the logo boot up
2. remove the battery.
3. boot your phone up while holding BOTH vol down and power key.
4. Briefly release the power key right after you saw the LG logo and press it back again.
5. untill your phone boot up use vol key and power key to select yes on both screen.
6. wait for you phone reboot and now you in TWRP.
7. Select cancel if the phone ask you for password and swipe to right to allow modifications.
Flashing modem, fix screen static and other.
Now put these files in your SD card or your internal storage with mount option in TWRP (Mount=> enable MTP): Modem.img, SuperSU or Magisk, kernel and boot2.img (in adb folder).
In TWRP:
1. Tap on "wipe" => format data => type "yes"
2. Go back to home menu then select “Reboot” then “Recovery”.
3. Once rebooted, swipe to right again.
4. Tap on “Install”.
5. Choose your microSD card or internal storage depend on where you copy those files.
6. Tap on "Install Image" and select "modem.img"
7. Select "modem" and Swipe to flash.
If you use dirtysanta method you need to flash "boot2.img" to fix the screen static. Similar to flashing "modem.img" but you select "boot" before swipe to flash.
8. Go back to home menu then select “Reboot” then “System”.
Wait for your phone boot up and the issue should be fixed.
Additional things
For more advance you can flash SuperSU or Magisk if you want to root you phone for more benefit.
Flashing kernel to fix your screen retention, screen static and more ( this won't cause SafetyNet failure that mean you can use android pay and banking app).
mk2000 kernel features:
Linux 3.18.85
KCAL - Screen panel control.
ElementalX and Zzmoove CPU governors.
Modules signed and secure, as in stock rom.
Disable software CRC checking of SD Card - More performance.
Fix by emdroidle for eng-bootloader (US996Santa, H990 & H910).
CRC32 and CHACHA20 HW ACC, CRNG based on CHACHA20.
Static screen fixed (US996Santa, H990 & H910).
Many patches that improves or fixes things.
Maple I/O scheduler.
LZ4 compression.
RCTD removed.
You need to flash kernel right after SuperSU/Magisk or before you reboot to system.
Update:
in case you want to upgrade to the lastest OTA you can follow this threat:
https://forum.xda-developers.com/v20/development/rom-us99610k-stock-rom-twrp-flashable-t3691784
And you need to reflash the "modem.img".
My thanks to:
@askermk2000 for his kernel.
@jcadduono, @me2151 for rooting guide.
What you need:
US996 stock rom: http://lg-firmwares.com/category/lg-series/lg-v20/ (US99610f for unlocked ver.)
Patched LGUP for V20: https://forum.xda-developers.com/v20/how-to/guide-patch-lgup-to-unlock-features-t3652222
The lastest Super SU or Magisk (in case you need to pass the Safety Net for using Banking app, Android pay, etc.)
Modem file.
ADB, LG lastest driver.
I uploaded the nesscesary in here: https://drive.google.com/drive/folders/1pKKp78EqFwoCs5PuXi_2P-4_hsEx6u5_?usp=sharing
This tutorial will have 3 section: first you need to downgrade your phone to US99610f or this won't work. Next unlock your boot loader via dirtysanta n flasing TWRP. Then you flash the modem file and root your deviece with superSU or Magisk (optional).
I recommend you read this though out and pateintly following these step. You should backup your data before starting this. Do this at your own risk.
Downgrade to US99610f
If you are on the US99610n then you need to downgrade to US99610f cause you can't use dirtysanta on the US99610f (you can start from step 4 in case your phone is not soft bricked)
1. Completely Power off the v20 ( or to remove and put the battery back )
2. Plug the USB end of sync cable to your PC
3. Press and hold "Volume Up"
4. Plug in the USB-C end of sync cable to the v20. The phone will enter download mode (or Firmware Update). Now you can release the "Volume Up".
5. Run LGUP. The program will regconise the v20.
8. At the file path, click "..." and chose the .kdz file
9.Choose "UPGRADE"
10.Click "Start" and wait until the process is complete wait untill your phone boot up and there you are US99610f and still no service :silly:
Unlock Bootloader n' flashing TWRP
Turn on developer options in Settings -> About device -> Software info -> Build number. (tap 7 times or spamming it until it's enabled):laugh:
Now navigate to Settings -> Developer options -> OEM unlock. (turn it on)
Don't ever turn OEM unlock or Developer options off when using a custom ROM or recovery. This could lose to loss of all your data.
For your computer to see ADB, you will need to put the phone in Files transfer mode.
To unlock your bootloader, follow the unlock instructions on LG's site (I can't really help you there):
"This may void your warranty"
https://developer.lge.com/resource/mobile/RetrieveBootloader.dev?categoryTypeCode=ANRS
After your phone boot up:
1. copy twrp.img to your internal storage or SD card.
2. Start ADB and following these steps (just copy and paste):
https://github.com/jcadduono/android_external_dirtycow#running
3. Wait for it to complete and type:
Code:
reboot recovery
https://forum.xda-developers.com/v20/development/ls997vs995h910-dirtysanta-bootloader-t3519410
In this threat you will unlock you boot loader n flashing recovery. Right after you've done step 3 and your phone boot up you can wait (I dont recommend you to wait for you phone boot up, mine have screen static after that so just following these step to enter TWRP we will fix it later):
1. unplug the cable right after the logo boot up
2. remove the battery.
3. boot your phone up while holding BOTH vol down and power key.
4. Briefly release the power key right after you saw the LG logo and press it back again.
5. untill your phone boot up use vol key and power key to select yes on both screen.
6. wait for you phone reboot and now you in TWRP.
7. Select cancel if the phone ask you for password and swipe to right to allow modifications.
Flashing modem, fix screen static and other.
Now put these files in your SD card or your internal storage with mount option in TWRP (Mount=> enable MTP): Modem.img, SuperSU or Magisk, kernel and boot2.img (in adb folder).
In TWRP:
1. Tap on "wipe" => format data => type "yes"
2. Go back to home menu then select “Reboot” then “Recovery”.
3. Once rebooted, swipe to right again.
4. Tap on “Install”.
5. Choose your microSD card or internal storage depend on where you copy those files.
6. Tap on "Install Image" and select "modem.img"
7. Select "modem" and Swipe to flash.
If you use dirtysanta method you need to flash "boot2.img" to fix the screen static. Similar to flashing "modem.img" but you select "boot" before swipe to flash.
8. Go back to home menu then select “Reboot” then “System”.
Wait for your phone boot up and the issue should be fixed.
Additional things
For more advance you can flash SuperSU or Magisk if you want to root you phone for more benefit.
Flashing kernel to fix your screen retention, screen static and more ( this won't cause SafetyNet failure that mean you can use android pay and banking app).
mk2000 kernel features:
Linux 3.18.85
KCAL - Screen panel control.
ElementalX and Zzmoove CPU governors.
Modules signed and secure, as in stock rom.
Disable software CRC checking of SD Card - More performance.
Fix by emdroidle for eng-bootloader (US996Santa, H990 & H910).
CRC32 and CHACHA20 HW ACC, CRNG based on CHACHA20.
Static screen fixed (US996Santa, H990 & H910).
Many patches that improves or fixes things.
Maple I/O scheduler.
LZ4 compression.
RCTD removed.
You need to flash kernel right after SuperSU/Magisk or before you reboot to system.
Update:
in case you want to upgrade to the lastest OTA you can follow this threat:
https://forum.xda-developers.com/v20/development/rom-us99610k-stock-rom-twrp-flashable-t3691784
And you need to reflash the "modem.img".
My thanks to:
@askermk2000 for his kernel.
@jcadduono, @me2151 for rooting guide.
Last edited: