[LG G7 ThinQ  Guides, News, & Discussion] abaynp:
I'm sorry I got no time to formatting the thread. And about the 'file:', it's just my local directory, you can focus on the last section, which is the filename of those link afterwards.

Inspirations

[Tutorial] Full Flash Backup And Restore

This tutorial shows how to make a full backup of the phone flash and how to restore it. Codes fit LG G8 which with some minor modifications they can be used for any other Qualcomm based devices. If you provide me the "PartitionsList.xml" of other...

xdaforums.com

LM-G710V going back to stock possible?

Hi! I have this G7 with the model LM-G710V with an unlocked bootloader and managed to successfully flash Phh-Treble by following this thread: https://xdaforums.com/lg-g7-thinq/development/rom-phh-aosp-8-1-t3808649 :cool::victory: but then i...

xdaforums.com

===How to Backup===​

0. Charge your device to the fullest, because in EDL or Download Mode the device wont be charged​

​

1.1. Install QPST​

file: tools\QPST QFIL\qpsttool.com androidmtk.com\QPST_2.7.496.zip

link: https://qpsttool.com

1.2. Donwload firehose SDM845 for LG Phone​

file: tools\QPST QFIL\qpsttool.com androidmtk.com

link: https://xdaforums.com/attachments/prog_ufs_firehose_sdm845_lge-zip.4937665/

https://drive.google.com/drive/folders/1vfdDG6GjUQg5w9zqpaek7hKA1oyW5_Vm

https://mega.nz/file/8Zk0AAJQ#-WBO38OBXo6TnykCoOaoXeV2zBxHaUyoq3sR6lmFTtQ

2. Install QDLoader 9008 Driver​

file: tools\QPST QFIL\qpsttool.com androidmtk.com\Qualcomm_USB_Driver_v1.0.10061.1.zip

link: https://qcomdriver.com/ [v1.00.61]

https://gsmusbdriver.com/install-qualcomm-usb-driver [v1.00.57]

NOTE:

DO NOT use the 32/64bit only installer [QDLoader HS-USB Driver_32/64bit_Setup.exe] because the driver are not signed, therefore you need to turn off Driver Signature Enforcement everytime you want use it

DO NOT use the qcer.inf (manually install) driver, I can go to Partition Manager with this driver, but it always failed to read/backup nor restore using this driver.

3. Reboot device to EDL​

Open device manager

Connect device to computer

Hold power button & volume down, as soon as it reboots spam the volume up button (keep hold the power and volume down buttons)

If you've successfully booted into EDL, your device screen will be completely blank and the device manager will show (Under Ports dropdown): Qualcomm HS-USB QDLoader 9008 (COM#) or QUSB_BULK (QUSB_BULK means no QDLoader 9008 Driver found)

Then release those 3 button

MAKE SURE there is no yellow exaclamation mark in the icon of Qualcomm HS-USB QDLoader 9008 (COM#) in Device Manager

​

4. Open Patition Manager in QFIL and Save Partition Map (PartitionsList)​

Open QFIL

Change "Storage Type" to UFS (in the bottom right corner)

Select Build Type > Flat Build

Select Programer > Browse.. to tools\xda\4213851\prog_ufs_firehose_Sdm845_lge.elf

Select Port.. to Qualcomm HS-USB QDLoader 9008 (COM#)

Select Tools > Partition Manager > OK > Partition Manager window will show up

IN PARTITION MANAGER, !NEVER NEVER NEVER NEVER NEVER! RIGHT CLICK A PARTITION AND CHOOSE ERASE ENTIRE FLASH

Save the partition map, select Save Partition File

Partition map will be saved here:

%appdata%\Qualcomm\QFIL\COM#_PartitionsList.xml

If fail sahara, restart PC, and reboot device to EDL (hold power button & volume down to exit EDL first, then reboot back again to EDL (guide #3)

If still error, change usb port, change usb cable

If still error, reinstall QPST, reinstall Qualcomm USB Driver (use Qualcomm USB Driver only, NOT QDLoader HS-USB Driver_32/64bit_Setup.exe nor qcer.inf)

5. Understanding the partition map​

In Partition Manager window there is column called LUN

In COM#_PartitionsList.xml it will be called physical_partition_number

LUN and physical partition number IS THE SAME THING

There is 7 physical partitions in this phone, numbered from 0 to 6

LUN 5 contains modemst1, modemst2, fsg, fsc. Modemst# I think contains device identity, such as IMEI, mac address, etc. fsg contains backup for moodemst1/2

In other phone there are maybe other partitions in LUN 5 like mdm1m9kefs3, mdm1m9kefs1, mdm1m9kefs2, that may also important.

And I think LUN 5 is what people called EFS Partition, but I'm not sure

FTM in LUN 0 also contains IMEI, SN and NT code (Especially SN). Contains IMEI SN doesn't mean it's the only partition that has IMEI SN information. It's probably working/bridge together with other partition(s) to give the phone an identity.

Getting access to recovery combination(FTM mod)

* I'm not responsible for bricked devices, dead SD cards, thermonuclear war, or you getting fired because the alarm app failed (like it did for me...). * YOU are choosing to make these modifications, and if you point the finger at me for messing...

xdaforums.com

but FTM is temporary file, because it will be overwitten when flashing a firmware (it's inside kdz file). Change IMEI in FTM wont changes IMEI of phone!

Dont be confused

LUN 3 and LUN 6 are completely hidden

LUN 3 contains partition DDR and CDT

LUN 6 contains FRP data

Sometimes there is also hidden partition, like devinfo and limits (in LUN 4) that also not shown in partition manager (but not my case G710VM21b, only devinfo and that showed up in partition manager)

We dont need to worry about this hidden partition (not hidden LUN), as long as every physical partitions sector (in COM#_PartitionsList.xml) started in sector 6, and end up with partition labeled as "last_parti" it means we cover all the partition sector of the LUN

EXCEPT for LUN 0 thats end up with partition "userdata", because userdata needs space for user to fill their data, so it takes the full space of that LUN with having no "last_parti" partition. ("last_parti" partition type is also "00000000-0000-0000-0000-000000000000", means it's nothing, just to fill the remaining space.

Fyi: in order a device to boot (boot DOESN'T MEANS NOT BOOTLOOP) you actually don't need those hidden LUN, and LUN 5 (device identity (IMEI, network, etc). you only needs LUN 0, 1 (and or 2) and 4

Every physical partition start from sector 0

If we learn from COM#_PartitionsList.xml, every LUN started in sector 6, so THERE IS 6 OFFSET SECTORs IN FRONT OF EVERY LUN, which is sector 0 to 5

And if we look closely, take an example of LUN 1, the "last_parti" start with sector 934 and taken 1109 numbers of sector. So it will take placed between sector 934 to sector (934-1+1109) = 2042 (minus 1 because sector 934 is counted as the 1st sector of partition, so "zero point" start from 933). 2042 is 6 sectors short of 2048, it means THERE IS also 6 OFFSET SECTORs IN THE BACK OF EVERY LUN

These 6 offset sectors in front and back of LUN is actually place for partition table (gpt) and the backup of it (gpt_backup), so it's not actually a blank sectors.

Every sector is hardcoded, means if its zero fill it still takes up a sector

If we want to backup the full sector of every LUN, I believe it will takes up about 64GB, just like phone storage stated, even if there is no data in userdata partition.

So I don't want to backup that (probably unimportant, unnecessary, or private) user partition. It will be very large file, too large that can easily goes wrong in the middle of backup or restore.

6. Take a note for what are we going to backup.​

6.1. LUN full flash backup​

Here I will take a note of how many sector I want to backup from every LUN

LUN 3 and 6 are hidden, so there is no way we get number of sectors of these LUN only from COM#_PartitionsList.xml.

BUT we can know these info from kdz file for the particular device, utilizing a software called LG Firmware Extract Tool

file: tools\LG Firmware Extract Tool\WindowsLGFirmwareExtract-1.2.6.1-Release.zip

link: https://xdaforums.com/t/tool-kdz-and-tot-extractor.2600575/

https://xdaforums.com/attachments/windowslgfirmwareextract-1-2-6-1-release-zip.3975633/

download KDZ Firmware here

link: https://lg-firmwares.com/

http://lg-roms.com/

https://lgrom.com/

Use LG Firmware Extract Tool to extract kdz file into dz file, then load up dz file into LG Firmware Extract Tool

We don't need to extract this dz file, since LG Firmware Extract Tool has a window to see what inside this dz file

Here, we look for gpt_backup3 and gpt_backup6, because these img reside there in the very back sector of LUN 3 and 6

The good thing is, inside kdz file, lg named every partition img followed by starting sector of those partitions.

So let's take a note of that: gpt_backup3.bin_2043 and gpt_backup6.bin_2043, done!

note: These numbers 'indicating starting sector of partition' in the file name CAN BE WRONG. It's just a name. Dev may name it anything but the imgs still go to correct sector and kdz stills working fine.

As I find in G710VM21b_04_0812, every gpt_backup#.bin has the same postfix of 7340027 which is STUPID to take it as a start_sector of gpt_backup of different LUN.

But I confident enough since others img has a match posfix to start_sector that I got from COM#_PartitionsList.xml.

So get these numbers from another kdz G710EM30h_00_OPEN_EU_OP_0927, which seems to correctly write the start_sector as a postfix in every imgs.

LUN 0's last partition is userdata. I don't want that large userdata, so system_b will be my last partition in LUN 0 backup. system_b start at sector 1705734 and has 1048576 number of sectors, so it means the last sector of system_b's occupying is sector (1705734-1+1048576) = 2754309, or 1 sector before userdata's start_sector, which is sector 2754310.

[Based on guide] we should write this last sector of system_b (2754309) as number of sectors we want to backup.

BUT I dont agree with that. If we want to backup LUN 0 without userdata, so the sectors we're going to cover is sector 0 to sector 2754309, which totally 2754310 (including sector 0). So the num_sectors should be 2754310 not 2754309.

LUN 1's last sector is last_parti, that start at sector 934 and has 1109 number of sectors. So the last sector of last_parti occupied is (934-1+1109) = 2042. Adding 6 offset sectors made it total 2048 num_sectors.

LUN 2's last sector is last_parti, that start at sector 934 and has 1109 number of sectors. So the last sector of last_parti occupied is (934-1+1109) = 2042. Adding 6 offset sectors made it total 2048 num_sectors.

LUN 3, this hidden LUN has a gpt_backup3.bin_2043 inside kdz as the last img for LUN 3 to be flashed. As we know these kind of gpt_backup#.bin will reside in offset sectors at the back of LUN which is 6 sectors, So the very last sectors of gpt_backup is (2043-1+6) = 2048. So num_sectors for this LUN is 2048

LUN 4's last sector is last_parti, that start at sector 218983 and has 2196 number of sectors. So the last sector of last_parti occupied is (218983-1+2196) = 221178. Adding 6 offset sectors made it total 221184 num_sectors.

LUN 5's last sector is last_parti, that start at sector 1696 and has 347 number of sectors. So the last sector of last_parti occupied is (1696-1+347) = 2042. Adding 6 offset sectors made it total 2048 num_sectors.

LUN 6, this hidden LUN has a gpt_backup6.bin_2043 inside kdz as the last img for LUN 3 to be flashed. As we know these kind of gpt_backup#.bin will reside in offset sectors at the back of LUN which is 6 sectors, So the very last sectors of gpt_backup is (2043-1+6) = 2048. So num_sectors for this LUN is 2048

6.2. Device Identity Partitions​

Next, I want to backup VITAL PARTITIONs that hold DEVICE IDENTITY in it

So they are every partitions from LUN 5, and FTM from LUN 0.

You may want to NOT restore your own FTM backup to other phone, if it gives you a bootloop.

[Tutorial] Full Flash Backup And Restore

This tutorial shows how to make a full backup of the phone flash and how to restore it. Codes fit LG G8 which with some minor modifications they can be used for any other Qualcomm based devices. If you provide me the "PartitionsList.xml" of other...

xdaforums.com

but you may want to restore your own FTM backup if it gives you bootloop 😂

[Tutorial] Crossflash, Bypass OPID Mismatched Error

Hi there ;) Thanks to all other guys here who have made helpful development to tame this beautiful =) To crossflash models other than LG G8 please read post 3. Before asking any question please read the troubleshooting section at the bottom of...

xdaforums.com

AND you need to restore your own FTM if you somehow lost your SN, or can't boot to recovery.

[Tutorial] Crossflash, Bypass OPID Mismatched Error

Hi there ;) Thanks to all other guys here who have made helpful development to tame this beautiful =) To crossflash models other than LG G8 please read post 3. Before asking any question please read the troubleshooting section at the bottom of...

xdaforums.com

Very confusing, it is. In one hand you need to restore FTM to restore your SN, but in other hand restoring FTM may cause a bootloop.

Actually, if you erase FTM and SID partitions, it may regenerate if you reboot/restart your phone.

[Tutorial] Crossflash, Bypass OPID Mismatched Error

Hi there ;) Thanks to all other guys here who have made helpful development to tame this beautiful =) To crossflash models other than LG G8 please read post 3. Before asking any question please read the troubleshooting section at the bottom of...

xdaforums.com

BUT I'm not sure if the generated FTM would holding the same information (device identity) as before, I believe it just generic one. So make a backup of FTM!

I suspect [but I'm not sure], PROBABLY CORRECT way is to restore our own FTM in QFIL > then overwrite (partition DL) it with the same kdz version as installed on the phone (but choose only ftm) in LGUP.

So the Device Identity Partitions sector I need to backup are,

"ftm" physical_partition_number="0" start_sector="21894" num_partition_sectors="8192"

"modemst1" physical_partition_number="5" start_sector="32" num_partition_sectors="512"

"modemst2" physical_partition_number="5" start_sector="544" num_partition_sectors="512"

"fsg" physical_partition_number="5" start_sector="1056" num_partition_sectors="512"

"fsc" physical_partition_number="5" start_sector="1568" num_partition_sectors="128"

You also need to backup mdm1m9kefs3, mdm1m9kefs1, and mdm1m9kefs2 partitions if they exist.

6.3. DOWNLOAD MODE REQUIRED PARTITIONs​

Other than those, you probably want to back up these partitions below. These are REQUIRED PARTITIONs for phone to boot to DOWNLOAD MODE.

abl_a akmu_a aop_a cmnlib_a cmnlib64_a devcfg_a dsp_a dtbo_a hyp_a keymaster_a laf_a tz_a uefisecapp_a vbmeta_a, from LUN 4

xbl_a xbl_config_a from LUN 1

power from LUN 0

Fyi, LG Phone is a device with A-B method, instead of recovery method. What I mean is, if it can boot from partitions A, it will boot from A, if partitions A corrupt, it will boot from partitions B. So, as long as partitions A is in good condition, it actually can work fine without partition B at all. Other phone with recovery method, will restore the main partitions with backup partitions.

Afaik, in LG original firmware (kdz) A and B partitions have the same data, but reside in different sector.

Unlike Device Identity Partitions (Vital Partitions), some of these REQUIRED PARTITIONs (for download mode) are also shipped with kdz firmware file.

EXCEPT for power and uefiscapp.

power partition, you wont find it in kdz file, YOU MUST backup it from your phone!

uefisecapp partition, I can't find it in either COM#_PartitionsList.xml nor inside kdz-dz file. If you have another model, you may have this uefisecapp_a in partition manager or uefi_sec.mbn in kdz

BUT I find mdtpsecapp and mdtp, sounds similar to uefisecapp, let's backup these partitions, just in case.

If you want to look at what partition available in kdz file, you can use LG Firmware Extract Tool

Make sure you download the same kdz version with the one you want to backup or restore

Sometimes there are a different name between partitions and img inside kdz.

And there are some double img, as it for partitions A and partitions B, you can differentiate with the number of start_sector that comes after the filename. aop.mbn_6 for aop_a, aop.mbn_98550 for aop_b. Afaik those are the same file, but reside in different sector. You can flash aop.mbn_6 for aop_a and aop_b wfil QFIL>Partition Manager or fh_loader, but you need booth aop.mbn_6 and aop.mbn_98550 if you gonna use LGUP.

power BACKUP IT FROM YOUR PHONE!

xbl_a xbl.elf

xlf_config_a xbl_config.elf

aop_a aop.mbn

tz_a tz.mbn

hyp_a hyp.mbn

abl_a abl.elf

dsp_a dspso.bin

keymaster_a keymaster64.mbn

akmu_a akmu.mbn

cmnlib_a cmnlib.mbn

cmnlib64_a cmnlib64.mbn

devcfg_a devcfg.mbn

laf_a laf.img

vbmeta vbmeta.img

dtbo_a dtbo.img

uefisecapp_a uefi_sec.mbn

But I'm gonna back it up anyway. I'm gonna backup from partitions A only, and use those files for restore partitions A and B, as the only different are the start_sectors.

But you may back it up from partitions B instead, if you think your partitions A are corrupted.

Find it yourself, which partition your phone currently booted. Execute this code

Boot to normal mode > adb shell getprop ro.boot.slot.suffix

Or bootloader (NOT FASTBOOT) mode > adb reboot bootloader > fastboot getvar all

I know this is not entirely correct, since we test it in normal mode and bootloader mode only, NOT in download mode, but at least we know which partition the device booted and works. This is not ideal, since BOOT TO DOWNLOAD MODE MEANS BOOT TO LAF PARTITION, whether laf_a or laf_b, that's what we want to know.

Fyi, download mode is in laf partition. Fastboot/bootloader is in abl partition.

These are the detail of REQUIRED PARTITIONs for download mode I want to backup

"power" physical_partition_number="0" start_sector="30086" num_partition_sectors="11264"

"xbl_a" physical_partition_number="1" start_sector="6" num_partition_sectors="896"

"xbl_config_a" physical_partition_number="1" start_sector="902" num_partition_sectors="32"

"aop_a" physical_partition_number="4" start_sector="6" num_partition_sectors="128"

"tz_a" physical_partition_number="4" start_sector="134" num_partition_sectors="512"

"hyp_a" physical_partition_number="4" start_sector="646" num_partition_sectors="128"

"abl_a" physical_partition_number="4" start_sector="56582" num_partition_sectors="256"

"dsp_a" physical_partition_number="4" start_sector="56838" num_partition_sectors="8192"

"keymaster_a" physical_partition_number="4" start_sector="65030" num_partition_sectors="128"

"akmu_a" physical_partition_number="4" start_sector="65158" num_partition_sectors="128"

"cmnlib_a" physical_partition_number="4" start_sector="81670" num_partition_sectors="128"

"cmnlib64_a" physical_partition_number="4" start_sector="81798" num_partition_sectors="128"

"devcfg_a" physical_partition_number="4" start_sector="81926" num_partition_sectors="32"

"laf_a" physical_partition_number="4" start_sector="81990" num_partition_sectors="12288"

"vbmeta_a" physical_partition_number="4" start_sector="94278" num_partition_sectors="16"

"dtbo_a" physical_partition_number="4" start_sector="94294" num_partition_sectors="2048"

"mdtpsecapp_a" physical_partition_number="4" start_sector="47366" num_partition_sectors="1024"

"mdtp_a" physical_partition_number="4" start_sector="48390" num_partition_sectors="8192"

6.4. Another partition we may want to backup is these PROBABLY-NEEDED PARTITIONs​

sid, modem, and op partition.

SID and OP, we probably want to backup these partitions, because in newer models like G8, we need to erase these partition for us to successfully crossflash kdz firmware, without getting "OPID Missmatch Error".

[Tutorial] Crossflash, Bypass OPID Mismatched Error

Hi there ;) Thanks to all other guys here who have made helpful development to tame this beautiful =) To crossflash models other than LG G8 please read post 3. Before asking any question please read the troubleshooting section at the bottom of...

xdaforums.com

Modem, we probably want to backup this partition, because if somehow we lost IMEI after altering the firmware, we need to delete IMEIPROT inside this modem partition for us to be able to re-write IMEI.

sid and modem we also can find it inside kdz file (but I'm not sure about OP partition, since I've no OP partition in my G710). Like required partitions for download mode, these partitions named different in kdz file

sid_a imeiprotection.mbn_98422

sid_b imeiprotection.mbn_196966

modem_a NON-HLOS.bin_774

modem_b NON-HLOS.bin_99318

Your start sector (the number after img/bin file) may be different, depent on your kdz file.

Edit: I can't find OP Partition in G710VM21b firmware, but I find it in G710EM30h, it's in between system_b and userdata

OP_a OP_OPEN_EU.img_2916102

OP_b OP_OPEN_EU.img_2981638 [but from partition list, it's actually start from sector 3004166]

because these OP partitions reside in LUN 0, I'm sure that the start sector will be different to all other firmware versions.

We gonna back it up anyway. As before backup from partitions A or B only, as it just basically the same except for start_sector

"sid_a" physical_partition_number="4" start_sector="98422" num_partition_sectors="128"

"modem_a" physical_partition_number="4" start_sector="774" num_partition_sectors="46592"

Edit: if your firmware has OP partition (like G710EM30h), back it up too, for example

OP_a physical_partition_number="0" start_sector="2916102" num_partition_sectors="88064"

6.5. PROBABLY UN-NECESSARY PARTITIONs​

This step probably unnecessary, but I found it quite interesting.

As I compare COM#_PartitionsList.xml to extracted kdz I found some partitions that are inside the phone (COM#_PartitionsList.xml) but not in in kdz file.

Edit: Probably not explicitly separated in kdz, but merged with other partitions.

"mpt" physical_partition_number="0" start_sector="6" num_partition_sectors="8192"

"drm" physical_partition_number="0" start_sector="8198" num_partition_sectors="3584"

"sns" physical_partition_number="0" start_sector="11782" num_partition_sectors="1536"

"ssd" physical_partition_number="0" start_sector="13318" num_partition_sectors="128"

"misc" physical_partition_number="0" start_sector="21638" num_partition_sectors="256"

"power" physical_partition_number="0" start_sector="30086" num_partition_sectors="11264"

"encrypt" physical_partition_number="0" start_sector="41350" num_partition_sectors="128"

"eksst" physical_partition_number="0" start_sector="41478" num_partition_sectors="128"

"rct" physical_partition_number="0" start_sector="41606" num_partition_sectors="128"

"fota" physical_partition_number="0" start_sector="41734" num_partition_sectors="2560"

"srtc" physical_partition_number="0" start_sector="44294" num_partition_sectors="2048"

"pstore" physical_partition_number="0" start_sector="46342" num_partition_sectors="512"

"els" physical_partition_number="0" start_sector="46854" num_partition_sectors="4096"

"operatorlogging" physical_partition_number="0" start_sector="50950" num_partition_sectors="4096"

"eri" physical_partition_number="0" start_sector="55046" num_partition_sectors="2048"

"carrier" physical_partition_number="0" start_sector="57094" num_partition_sectors="10240"

"mdtpsecapp_a" physical_partition_number="4" start_sector="47366" num_partition_sectors="1024"

"mdtp_a" physical_partition_number="4" start_sector="48390" num_partition_sectors="8192"

"mdtpsecapp_b" physical_partition_number="4" start_sector="145910" num_partition_sectors="1024"

"mdtp_b" physical_partition_number="4" start_sector="146934" num_partition_sectors="8192"

"devinfo" physical_partition_number="4" start_sector="197158" num_partition_sectors="64"

"dip" physical_partition_number="4" start_sector="197222" num_partition_sectors="256"

"spunvm" physical_partition_number="4" start_sector="197734" num_partition_sectors="2048"

"toolsfv" physical_partition_number="4" start_sector="199783" num_partition_sectors="256"

"sti" physical_partition_number="4" start_sector="202087" num_partition_sectors="512"

"logdump" physical_partition_number="4" start_sector="202599" num_partition_sectors="16384"

I guess and I hope these missing partition will be recreated after booting for the first time after we reflash the device.

If not, then let's backup these partitions as well.

I found out that vendor_b not really contains anything, since vendor_##.img in kdz file that has start_sector the same as vendor_b's doesn't really has large number of length.

I also found out that system_b probably doesn't has the same data as system_a, since in kdz system_#.img doesn't really mirroring system_other_#.img. I suspect system_b is for safe mode?

Another thing I found out is, in G710EM30h_00_OPEN_EU_OP_0927 kdz there is oem_#.img(s) in between ftm.img and vendor_1.img, but there isn't any such as oem.img in G710VM21b_04_0812. Probably it's related to EM model (global) vs VM (verizon), or 30x version (android 10 Q) vs 20x version (android 9 Pie)

Edit:

Here is the other (probably) unnecessary partitions from G710EM30h that doesn't include in G710VM21b

persdata type="6A42E2D9-494F-4A09-99F0-6FC1125FED0F"

oem_a type="E9F471E6-6A39-45A8-A650-28C517B30E9D"

oem_b type="66AE456F-86C8-4C04-8B69-6B881D83FB8F"

OP_a type="3F8205F3-FE93-48B9-94B6-3A8D0D819725"

OP_b type="77036CD4-03D5-42BB-8ED1-37E5A88BAA34"

You may also want to backup those partitions, just in case.

7. Create & execute commands for backup​

Take a note what COM Port your phone connected to. Eg. if in Device Manager (Under Ports dropdown) it show as "Qualcomm HS-USB QDLoader 9008 (COM4)", then it means you connect it in port com4.

You need to edit this argument --port=\\.\com# to your own connected port, in this example --port=\\.\com4

Then we take the start sector and number of sectors of all partitions and physical partitions from the note we've made in step 8 into these below command, accordingly.

FOR THESE BELOW COMMANDs TO WORK, WE NEED TO KEEP THE DEVICE (BOOTED TO EDL) CONNECTED TO QFIL, AND KEEP PARTITION MANAGER WINDOW OPEN (step 3-4)

7.0 Copy Partition Map (COM#_PartitionsList.xml) to backup folder​

> md "%userprofile%\desktop\G710VM21b-Backup"
> copy "%appdata%\Roaming\Qualcomm\QFIL\COM#_PartitionsList.xml" %userprofile%\desktop\G710VM21b-Backup\COM#_PartitionsList.xml"

​

7.a. Full flash (without userdata) physical partitions​

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> md "%userprofile%\desktop\G710VM21b-Backup\full_flash"
> cd "%userprofile%\desktop\G710VM21b-Backup\full_flash"
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN0_Complete.bin --lun=0 --start_sector=0 --num_sectors=2754310 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN1_Complete.bin --lun=1 --start_sector=0 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN2_Complete.bin --lun=2 --start_sector=0 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN3_Complete.bin --lun=3 --start_sector=0 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN4_Complete.bin --lun=4 --start_sector=0 --num_sectors=221184 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN5_Complete.bin --lun=5 --start_sector=0 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=LUN6_Complete.bin --lun=6 --start_sector=0 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

7.b. Device Identity / Vital Partitions​

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> md "%userprofile%\desktop\G710VM21b-Backup\Device_ID_Partitions"
> cd "%userprofile%\desktop\G710VM21b-Backup\Device_ID_Partitions"
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=ftm.bin --lun=0 --start_sector=21894 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=modemst1.bin --lun=5 --start_sector=32 --num_sectors=512 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=modemst2.bin --lun=5 --start_sector=544 --num_sectors=512 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=fsg.bin --lun=5 --start_sector=1056 --num_sectors=512 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=fsc.bin --lun=5 --start_sector=1568 --num_sectors=32 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

mdm1m9kefs3, mdm1m9kefs1, and mdm1m9kefs2 are not found in my partition list/kdz file.

​

7.c. Download Mode Required Partitions​

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> md "%userprofile%\desktop\G710VM21b-Backup\Download_Mode_Partitions"
> cd "%userprofile%\desktop\G710VM21b-Backup\Download_Mode_Partitions"
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=power.bin --lun=0 --start_sector=30086 --num_sectors=11264 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=xbl.bin --lun=1 --start_sector=6 --num_sectors=896 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=xbl_config.bin --lun=1 --start_sector=902 --num_sectors=32 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=aop.bin --lun=4 --start_sector=6 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=tz.bin --lun=4 --start_sector=134 --num_sectors=512 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=hyp.bin --lun=4 --start_sector=646 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=abl.bin --lun=4 --start_sector=56582 --num_sectors=256 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=dsp.bin --lun=4 --start_sector=56838 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=keymaster.bin --lun=4 --start_sector=65030 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=akmu.bin --lun=4 --start_sector=65158 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=cmnlib.bin --lun=4 --start_sector=81670 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=cmnlib64.bin --lun=4 --start_sector=81798 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=devcfg.bin --lun=4 --start_sector=81926 --num_sectors=32 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=laf.bin --lun=4 --start_sector=81990 --num_sectors=12288 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=vbmeta.bin --lun=4 --start_sector=94278 --num_sectors=16 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=dtbo.bin --lun=4 --start_sector=94294 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtpsecapp.bin --lun=4 --start_sector=47366 --num_sectors=1024 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtp.bin --lun=4 --start_sector=48390 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

uefisecapp_a and uefisecapp_b are not found in my partition list/kdz file.

​

7.d. PROBABLY-NEEDED PARTITIONs​

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> md "%userprofile%\desktop\G710VM21b-Backup\Probably-needed_Partitions"
> cd "%userprofile%\desktop\G710VM21b-Backup\Probably-needed_Partitions"
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=sid.bin --lun=4 --start_sector=98422 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=modem.bin --lun=4 --start_sector=774 --num_sectors=46592 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

OP_a is not found in my partition list/kdz file.

Edit: If OP partitions found in your firmware, like G710EM30h, you should also back it up

> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op.bin --lun=0 --start_sector=####### --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

7.e. PROBABLY UNNECESSARY PARTITIONs​

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> md "%userprofile%\desktop\G710VM21b-Backup\Probably_unnecessary_Partitions"
> cd "%userprofile%\desktop\G710VM21b-Backup\Probably_unnecessary_Partitions"
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mpt.bin --lun=0 --start_sector=6 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=drm.bin --lun=0 --start_sector=8198 --num_sectors=3584 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=sns.bin --lun=0 --start_sector=11782 --num_sectors=1536 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=ssd.bin --lun=0 --start_sector=13318 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=misc.bin --lun=0 --start_sector=21638 --num_sectors=256 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!already backed up in "Download Mode Partitions" section > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=power.bin --lun=0 --start_sector=30086 --num_sectors=11264 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=encrypt.bin --lun=0 --start_sector=41350 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=eksst.bin --lun=0 --start_sector=41478 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=rct.bin --lun=0 --start_sector=41606 --num_sectors=128 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=fota.bin --lun=0 --start_sector=41734 --num_sectors=2560 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=srtc.bin --lun=0 --start_sector=44294 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=pstore.bin --lun=0 --start_sector=46342 --num_sectors=512 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=els.bin --lun=0 --start_sector=46854 --num_sectors=4096 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=operatorlogging.bin --lun=0 --start_sector=50950 --num_sectors=4096 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=eri.bin --lun=0 --start_sector=55046 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=carrier.bin --lun=0 --start_sector=57094 --num_sectors=10240 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!already backed up in "Download Mode Partitions" section > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtpsecapp.bin --lun=4 --start_sector=47366 --num_sectors=1024 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!already backed up in "Download Mode Partitions" section > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtp.bin --lun=4 --start_sector=48390 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!identical to mdtpsecapp_a > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtpsecapp_b.bin --lun=4 --start_sector=145910 --num_sectors=1024 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!identical to mdtp_a > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtp_b.bin --lun=4 --start_sector=146934 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=devinfo.bin --lun=4 --start_sector=197158 --num_sectors=64 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=dip.bin --lun=4 --start_sector=197222 --num_sectors=256 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=spunvm.bin --lun=4 --start_sector=197734 --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=toolsfv.bin --lun=4 --start_sector=199783 --num_sectors=256 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=sti.bin --lun=4 --start_sector=202087 --num_sectors=512 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=logdump.bin --lun=4 --start_sector=202599 --num_sectors=16384 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

Edit: If these partitions found in your firmware, like G710EM30h you may also back these up

persdata type="6A42E2D9-494F-4A09-99F0-6FC1125FED0F"

oem_a type="E9F471E6-6A39-45A8-A650-28C517B30E9D"

oem_b type="66AE456F-86C8-4C04-8B69-6B881D83FB8F"

OP_a type="3F8205F3-FE93-48B9-94B6-3A8D0D819725"

OP_b type="77036CD4-03D5-42BB-8ED1-37E5A88BAA34"

> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=persdata.bin --lun=0 --start_sector=####### --num_sectors=16384 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=oem.bin --lun=0 --start_sector=####### --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!identical to oem_a > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=oem_b.bin --lun=0 --start_sector=####### --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op.bin --lun=0 --start_sector=####### --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
!identical to op_a > %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op_b.bin --lun=0 --start_sector=####### --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

7.f. Extract Partition Table (GPT.bin) & Download Mode Partitions from kdz firmware​

file: tools\LG Firmware Extract Tool\WindowsLGFirmwareExtract-1.2.6.1-Release.zip

link: https://xdaforums.com/t/tool-kdz-and-tot-extractor.2600575/

https://xdaforums.com/attachments/windowslgfirmwareextract-1-2-6-1-release-zip.3975633/

download KDZ Firmware here

link: https://lg-firmwares.com/

http://lg-roms.com/

https://lgrom.com/

Make sure you download the same kdz version with the one you want to backup or restore

​

7.f.a. Using LG Firmware Extract Tool, load kdz then extract dz file from kdz file.​

Then load extracted dz file and extract these gpt.bin:

gpt_main0.bin_0 gpt_main1.bin_0 gpt_main2.bin_0 gpt_main3.bin_0 gpt_main4.binv gpt_main5.bin_0 gpt_main6.bin_0

Move all extracted gpt_main#.bin to "%userprofile%\desktop\G710VM21b-Backup\gpt_main"

open cmd in LG Firmware Extract Tool directory, with hold shift and right click > Open in Terminal (doesn't matter if its a powershell, it'll working just fine)

> md "%userprofile%\desktop\G710VM21b-Backup\gpt_main"
> move gpt_main* "%userprofile%\desktop\G710VM21b-Backup\gpt_main\"

[optional] You may also extract the gpt_backup.bin

As I told in step 8, sadly for this firmware example (G710VM21b_04_0812), the naming system (postfix) of gpt_backup.bin is really ****ED-UP! so the name won't describe where its starting sector.

gpt_backup0.bin_7340027 gpt_backup1.bin_7340027 gpt_backup2.bin_7340027 gpt_backup3.bin_7340027 gpt_backup4.bin_7340027 gpt_backup5.bin_7340027 gpt_backup6.bin_7340027

Move all extracted gpt_backup#.bin to "%userprofile%\desktop\G710VM21b-Backup\gpt_backup"

open cmd in LG Firmware Extract Tool directory, with hold shift and right click > Open in Terminal (doesn't matter if its a powershell, it'll working just fine)

> md "%userprofile%\desktop\G710VM21b-Backup\gpt_backup"
> move gpt_backup* "%userprofile%\desktop\G710VM21b-Backup\gpt_backup\"

But for restoring, I will take the starting sector from another kdz (G710EM30h_00_OPEN_EU_OP_0927), since it has correct naming system

I will just take a note of the postfix numbers, not extract 'em!

gpt_backup0.bin_7340027 gpt_backup1.bin_2043 gpt_backup2.bin_2043 gpt_backup3.bin_2043 gpt_backup4.bin_221179 gpt_backup5.bin_2043 gpt_backup6.bin_2043

7.f.b. You may also extract some of 'Download Mode Partitions' instead of back it up (7.c).​

xbl.elf_6 xbl_config.elf_902 aop.mbn_6 tz.mbn_134 hyp.mbn abl.elf dspso.bin keymaster64.mbn akmu.mbn cmnlib.mbn cmnlib64.mbn devcfg.mbn laf.img vbmeta.img dtbo.img uefi_sec.mbn(can't_find_it_in_g710_kdz)

Move all extracted 'Download Mode Partitions' to "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions"

open cmd in LG Firmware Extract Tool directory, with hold shift and right click > Open in Terminal (doesn't matter if its a powershell, it'll working just fine)

> md "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions"
> move *.elf* "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions\"
> move *.mbn* "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions\"
> move *.bin* "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions\"
> move *.img* "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions\"

BUT YOU still HAVE TO backup power and (probably) mdtpsecapp & mdtp partitions from your phone

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> md "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions"
> cd "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions"
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=power.bin --lun=0 --start_sector=30086 --num_sectors=11264 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtpsecapp.bin --lun=4 --start_sector=47366 --num_sectors=1024 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=mdtp.bin --lun=4 --start_sector=48390 --num_sectors=8192 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

8. Backup done!​

You may close Partition Manager window and QFIL, then reboot your device by holding power & volume down buttons

===/How to Backup===

​

===How to Restore====​

1. You have done step 0-2 of backup guide​

2. Do step 3-4 of backup guide​

3. Make sure the backup directory (eg. G710VM21b-Backup) that've created is in desktop​

4. Create & execute commands for restore​

IF you restoring to another phone(B) (not the same phone as the phone you've backup with), you need to have/make 'Device Identity Partitions' backup from that phone(B)!! (step 6.2 and 7.b of backup guide)

-If you have full flash backup and restoring to the same phone

Do the full flash restore (4.a)

-If you have full flash backup and restoring to another phone

Do the full flash restore (4.a)

Do restore the 'Device Identity Partitions' of phone(b) (4.b)

Skip restore FTM partition, if it gives you bootloop (do restore all over again, but this time without restoring FTM)

-If you accidentally 'erase entire flash' and you have no full flash backup

Extract Paritioon Map (GPT.bin) from kdz (step 7.f of backup guide)

Do restore Partition Table (4.f.a)

Do restore Download Mode Requireds Partition (4.c) or (4.f.b)

Do PartitionDL in LGUP, if error try ChipErase

Do restore the 'Device Identity Partitions' of that phone (4.b), if you don't have these backup your device wont have IMEI/network.

IF YOU GET A BOOTLOOP FROM RESTORING ALL OF THOSE ABOVE

DO ERASE USERDATA PARTITION IN QFIL>PARTITION MANAGER.

OR FACTORY RESET FROM RECOVERY MODE (I'm not sure what combination button, but I've been there multiple times accidentally)

[CAUTION] Your personal data would be gone!

Take a note what COM Port your phone connected to. Eg. if in Device Manager (Under Ports dropdown) it show as "Qualcomm HS-USB QDLoader 9008 (COM4)", then it means you connect it in port com4.

You need to edit this argument --port=\\.\com# to your own connected port, in this example --port=\\.\com4

Then we take the start sector and number of sectors of all partitions and physical partitions from the note we've made in step 8 of backup guide into these below command, accordingly

FOR THESE BELOW COMMANDs TO WORK, WE NEED TO KEEP THE DEVICE (BOOTED TO EDL) CONNECTED TO QFIL, AND KEEP PARTITION MANAGER WINDOW OPEN (step 5-6 of backup guide)

​

4.a. Full flash (without userdata) physical partitions​

Require step 7.a of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\full_flash"
> %fh_loader% --port=\\.\COM# --sendimage=LUN0_Complete.bin --lun=0 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=LUN1_Complete.bin --lun=1 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=LUN2_Complete.bin --lun=2 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=LUN3_Complete.bin --lun=3 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=LUN4_Complete.bin --lun=4 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=LUN5_Complete.bin --lun=5 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=LUN6_Complete.bin --lun=6 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

​

4.b. Device Identity / Vital Partitions​

Require step 7.b of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\Device_ID_Partitions"
> %fh_loader% --port=\\.\COM# --sendimage=ftm.bin --lun=0 --start_sector=21894 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=modemst1.bin --lun=5 --start_sector=32 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=modemst2.bin --lun=5 --start_sector=544 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=fsg.bin --lun=5 --start_sector=1056 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=fsc.bin --lun=5 --start_sector=1568 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

mdm1m9kefs3, mdm1m9kefs1, and mdm1m9kefs2, you may also restore these partitions if you have them.

​

4.c. Download Mode Required Partitions​

Require step 7.c of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\Download_Mode_Partitions"
> %fh_loader% --port=\\.\COM# --sendimage=power.bin --lun=0 --start_sector=30086 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=xbl.bin --lun=1 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=xbl_config.bin --lun=1 --start_sector=902 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=aop.bin --lun=4 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=tz.bin --lun=4 --start_sector=134 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=hyp.bin --lun=4 --start_sector=646 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=abl.bin --lun=4 --start_sector=56582 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dsp.bin --lun=4 --start_sector=56838 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=keymaster.bin --lun=4 --start_sector=65030 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=akmu.bin --lun=4 --start_sector=65158 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib.bin --lun=4 --start_sector=81670 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib64.bin --lun=4 --start_sector=81798 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=devcfg.bin --lun=4 --start_sector=81926 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=laf.bin --lun=4 --start_sector=81990 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=vbmeta.bin --lun=4 --start_sector=94278 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dtbo.bin --lun=4 --start_sector=94294 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtpsecapp.bin --lun=4 --start_sector=47366 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtp.bin --lun=4 --start_sector=48390 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
uefisecapp_a, you also NEED to restore this partitions if you have it.

Restore to partitions B too, if you want (recomended)

> %fh_loader% --port=\\.\COM# --sendimage=xbl.bin --lun=2 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=xbl_config.bin --lun=2 --start_sector=902 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=aop.bin --lun=4 --start_sector=98550 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=tz.bin --lun=4 --start_sector=98678 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=hyp.bin --lun=4 --start_sector=99190 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=abl.bin --lun=4 --start_sector=155126 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dsp.bin --lun=4 --start_sector=155382 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=keymaster.bin --lun=4 --start_sector=163574 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=akmu.bin --lun=4 --start_sector=163702 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib.bin --lun=4 --start_sector=180214 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib64.bin --lun=4 --start_sector=180342 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=devcfg.bin --lun=4 --start_sector=180470 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=laf.bin --lun=4 --start_sector=180534 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=vbmeta.bin --lun=4 --start_sector=192822 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dtbo.bin --lun=4 --start_sector=192838 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtpsecapp.bin --lun=4 --start_sector=145910 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtp.bin --lun=4 --start_sector=146934 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

uefisecapp_b, you also NEED to restore this partitions if you have it.

​

4.d. PROBABLY-NEEDED PARTITIONs​

Require step 7.d of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\Probably-needed_Partitions"
> %fh_loader% --port=\\.\COM# --sendimage=sid.bin --lun=4 --start_sector=98422 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=modem.bin --lun=4 --start_sector=774 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

op_a, you may also restore this partitions if you have it.

Restore to partitions B too, if you want (recomended)

> %fh_loader% --port=\\.\COM# --sendimage=sid.bin --lun=4 --start_sector=196966 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=modem.bin --lun=4 --start_sector=99318 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

0p_b, you may also restore this partitions if you have it.

Edit: If OP partitions found in your firmware, like G710EM30h, you should also back it up

> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op.bin --lun=0 --start_sector=####### --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op.bin --lun=0 --start_sector=#partb# --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

4.e. PROBABLY UNNECESSARY PARTITIONs​

Require step 7.e of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\Probably_unnecessary_Partitions"
> %fh_loader% --port=\\.\COM# --sendimage=mpt.bin --lun=0 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=drm.bin --lun=0 --start_sector=8198 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=sns.bin --lun=0 --start_sector=11782 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=ssd.bin --lun=0 --start_sector=13318 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=misc.bin --lun=0 --start_sector=21638 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=power.bin --lun=0 --start_sector=30086 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=encrypt.bin --lun=0 --start_sector=41350 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=eksst.bin --lun=0 --start_sector=41478 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=rct.bin --lun=0 --start_sector=41606 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=fota.bin --lun=0 --start_sector=41734 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=srtc.bin --lun=0 --start_sector=44294 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=pstore.bin --lun=0 --start_sector=46342 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=els.bin --lun=0 --start_sector=46854 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=operatorlogging.bin --lun=0 --start_sector=50950 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=eri.bin --lun=0 --start_sector=55046 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=carrier.bin --lun=0 --start_sector=57094 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtpsecapp.bin --lun=4 --start_sector=4736 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtp.bin --lun=4 --start_sector=48390 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=devinfo.bin --lun=4 --start_sector=197158 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dip.bin --lun=4 --start_sector=197222 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=spunvm.bin --lun=4 --start_sector=197734 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=toolsfv.bin --lun=4 --start_sector=199783 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=sti.bin --lun=4 --start_sector=202087 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=logdump.bin --lun=4 --start_sector=202599 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

Restore to partitions B too, if you want (recomended)

> %fh_loader% --port=\\.\COM# --sendimage=mdtpsecapp.bin --lun=4 --start_sector=145910 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtp.bin --lun=4 --start_sector=146934 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

Edit: If these partitions found in your firmware, like G710EM30h you may also restore them

> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=persdata.bin --lun=0 --start_sector=####### --num_sectors=16384 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=oem.bin --lun=0 --start_sector=####### --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op.bin --lun=0 --start_sector=####### --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

Restore to partitions B too, if you want

> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=oem.bin --lun=0 --start_sector=#partb# --num_sectors=2048 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --convertprogram2read --sendimage=op.bin --lun=0 --start_sector=#partb# --num_sectors=88064 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

​

4.f.a. Partition Table (GPT.bin)​

Require step 7.f.a of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\gpt_main"
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main0.bin_0 --lun=0 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main1.bin_0 --lun=1 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main2.bin_0 --lun=2 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main3.bin_0 --lun=3 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main4.bin_0 --lun=4 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main5.bin_0 --lun=5 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_main6.bin_0 --lun=6 --start_sector=0 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

[optional] gpt_backup.bin

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\gpt_backup"
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup0.bin_7340027 --lun=0 --start_sector=7340027 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup1.bin_7340027 --lun=1 --start_sector=2043 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup2.bin_7340027 --lun=2 --start_sector=2043 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup3.bin_7340027 --lun=3 --start_sector=2043 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup4.bin_7340027 --lun=4 --start_sector=221179 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup5.bin_7340027 --lun=5 --start_sector=2043 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=gpt_backup6.bin_7340027 --lun=6 --start_sector=2043 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

4.f.b. Extracted 'Download Mode Partitions'​

Require step 7.f.b of backup guide

> if exist "%programfiles%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles%\Qualcomm\QPST\bin\fh_loader.exe"
> if exist "%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe" set fh_loader="%programfiles(x86)%\Qualcomm\QPST\bin\fh_loader.exe"
> cd "%userprofile%\desktop\G710VM21b-Backup\[extracted]Download_Mode_Partitions"
> %fh_loader% --port=\\.\COM# --sendimage=power.bin --lun=0 --start_sector=30086 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=xbl.elf_6 --lun=1 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=xbl_config.elf_902 --lun=1 --start_sector=902 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=aop.mbn_6 --lun=4 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=tz.mbn_134 --lun=4 --start_sector=134 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=hyp.mbn_646 --lun=4 --start_sector=646 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=abl.elf_56582 --lun=4 --start_sector=56582 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dspso.bin_56838 --lun=4 --start_sector=56838 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=keymaster64.mbn_65030 --lun=4 --start_sector=65030 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=akmu.mbn_65158 --lun=4 --start_sector=65158 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib.mbn_81670 --lun=4 --start_sector=81670 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib64.mbn_81798 --lun=4 --start_sector=81798 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=devcfg.mbn_81926 --lun=4 --start_sector=81926 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=laf.img_81990 --lun=4 --start_sector=81990 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=vbmeta.img_94278 --lun=4 --start_sector=94278 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dtbo.img_94294 --lun=4 --start_sector=94294 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtpsecapp.bin --lun=4 --start_sector=47366 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtp.bin --lun=4 --start_sector=48390 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

uefi_sec.mbn, you also NEED to restore this partitions if you have it.

Restore to partitions B too, if you want (recomended)

> %fh_loader% --port=\\.\COM# --sendimage=xbl.elf_6 --lun=2 --start_sector=6 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=xbl_config.elf_902 --lun=2 --start_sector=902 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=aop.mbn_6 --lun=4 --start_sector=98550 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=tz.mbn_134 --lun=4 --start_sector=98678 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=hyp.mbn_646 --lun=4 --start_sector=99190 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=abl.elf_56582 --lun=4 --start_sector=155126 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dspso.bin_56838 --lun=4 --start_sector=155382 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=keymaster64.mbn_65030 --lun=4 --start_sector=163574 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=akmu.mbn_65158 --lun=4 --start_sector=163702 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib.mbn_81670 --lun=4 --start_sector=180214 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=cmnlib64.mbn_81798 --lun=4 --start_sector=180342 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=devcfg.mbn_81926 --lun=4 --start_sector=180470 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=laf.img_81990 --lun=4 --start_sector=180534 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=vbmeta.img_94278 --lun=4 --start_sector=192822 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=dtbo.img_94294 --lun=4 --start_sector=192838 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtpsecapp.bin --lun=4 --start_sector=145910 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs
> %fh_loader% --port=\\.\COM# --sendimage=mdtp.bin --lun=4 --start_sector=146934 --noprompt --showpercentagecomplete --zlpawarehost=1 --memoryname=ufs

uefi_sec.mbn, you also NEED to restore this partitions if you have it.

5. Restore done!​

You may close Partition Manager window and QFIL, then reboot your device by holding power & volume down buttons​

===/How to Restore====

===LGUP===​

1. Install LG Mobile Driver​

File: tools\LGUP\lg.com\LGMobileDriver_WHQL_Ver_4.8.0.exe

link: https://lggdmstool.s.llnwi.net/dn/downloader.dev?fileKey=UW00120120425

http://tool.lime.gdms.lge.com/dn/downloader.dev?fileKey=UW00120120425

http://tool.lime.gdms.lge.com/dn/downloader.dev?fileKey=STsIwk98354055171201202

http://tool.lime.gdms.lge.com/dn/do...55171201202/LGMobileDriver_WHQL_Ver_4.8.0.exe

2. Install LGUP + UI Fixer (please follow readme instructions)​

file: tools\LGUP\hovatek\LGUP 1.16.03 + UI Fixer.zip

link: https://mega.nz/file/Ukp31AqZ#cVgMgTAPczWUG_Qwr9SVHGpLmikdCc1OXZDyPgokngU

or separate UI Fixer

file: tools\xda\3916444\LGUP_UI-fixer_[cxz].zip

link: https://disk.yandex.ru/d/Lw7dtokwfgjI9w

This UI Fixer+Addon will unlock some flashing options. It makes LGUP Lab version 1.16.3 as advance as LGUP Dev version 1.14.3

This UI Addon option is really depent on LGUP_common.dll, and LGUP_common.dll is actually shipped inside kdz firmware file

So, it might be gives you a lot of options, or just a few, depent on kdz you're going flash

Using a specific LGUP_common.dll might be gives a tons of options, but there is a risk that option you are choosing isn't compatible with the device or firmware.

3. Download and copy LGUP_common.dll file to LGUP\model\common directory​

file: tools\LGUP\hovatek\LGUP_Common.dll_2.1.0.52.7z

link: https://mega.nz/file/1wpUwIpY#Uc0EaRYnATWkqAGy0MeNuC2l1PuJqDHTm0IwrCPWY8o

Extract files and move it to %programfiles(x86)%\LG Electronics\LGUP\model\Common\

4. Execute LGUP_UI-fixer.bat then LGUP_UI-fixer-addon.bat​

---

OR you may want to install a ready to use, patched, repacked LGUP 1.16.03 by @MrLeronex (with @CXZa's patches)

file: tools\LGUP\TBL discord\LGUP 1.16.3 v. 1.3.4.exe

link: https://xdaforums.com/attachments/lgup-1-16-3-v-1-3-4-rar.5990221/

https://xdaforums.com/t/lgup-1-16-3...er-w-lgmobile-drivers-and-common_dll.4304181/

https://discord.com/channels/875925606389391410/907671077428285482

https://****station.eu/sharing/fnb2eABTz

https://fs2.****station.eu/sharing/b4MeWun1n

---

BUT somehow I always end-up with "error crossdl 0x6004" with both LGUP/common file above. The only LGUP 1.16.03 working for me is the one share by @shenlongforum

file: tools\xda\4317051 post 88774917\G7_LGUP1.16.zip [LGUP_Common.dll ver 1.0.36.10]

link: https://1drv.ms/u/s!AmyVK5JD-oHqbOzbxWgE_P_O2tI

1. Install LGUP​

2. move "LGUP_Common.dll" & "UI_Config.lgl" to %programfiles(x86)%\LG Electronics\LGUP\model\common​

3. Set attribute of "UI_Config.lgl" to read-only​

> attrib +R "%programfiles(x86)%\LG Electronics\LGUP\model\common\UI_Config.lgl"
or

right click "UI_Config.lgl" > Properties > check Read-only's checkbox > OK

4. none​

---

5. Boot device to Download Mode​

5.a. If device can boot normally​

Turn off device > press & hold volume up button > plug in to computer > release volume up button after it sucessfully boot to Download Mode

5.b. If in bootloop condition​

press & hold volume up button > plug in to computer > wait until the phone reboot to Download Mode by itself > release volume up button if it sucessfully boot to Download Mode

5.0. If you can not boot to Download Mode, you probably got laf partition corrupted​

Do restore Download Mode Required Partition (4.c) or (4.f.b)

6. Finally open LGUP app​

for restoration, choose the same kdz version as the backed up file (in this example G710VM21b)

!Rooted & Unlocked Bootloader device DO NOT ever use Upgrade or Refurbish option, use Partition DL only!

Upgrade option is for update the same firmware model, userdata not deleted

Refurbish option is for update/flash the same firmware mode, but userdata will be deleted

Partition DL option is for crossflash and unlocked bootloader & rooted device

Chiperase option is for erase entire flash then flash all the thing from the kdz

note:

IF you want to flash only a certain partition/img/bin, DO NOT choose sellect all

There is somesay, that there is a bug, that if you click 'select all' then anything you choose to uncheck/unselect after that (select all) wont affect anything, and you will get all partitions to be flashed instead.

===/LGUP===

===Credit===​

@netmsm

[Tutorial] Full Flash Backup And Restore

This tutorial shows how to make a full backup of the phone flash and how to restore it. Codes fit LG G8 which with some minor modifications they can be used for any other Qualcomm based devices. If you provide me the "PartitionsList.xml" of other...

xdaforums.com

[Tutorial] Full Flash Backup And Restore

This tutorial shows how to make a full backup of the phone flash and how to restore it. Codes fit LG G8 which with some minor modifications they can be used for any other Qualcomm based devices. If you provide me the "PartitionsList.xml" of other...

xdaforums.com

[Tutorial] Crossflash, Bypass OPID Mismatched Error

Hi there ;) Thanks to all other guys here who have made helpful development to tame this beautiful =) To crossflash models other than LG G8 please read post 3. Before asking any question please read the troubleshooting section at the bottom of...

xdaforums.com

@Surgemanxx

LM-G710V going back to stock possible?

Hi! I have this G7 with the model LM-G710V with an unlocked bootloader and managed to successfully flash Phh-Treble by following this thread: https://xdaforums.com/lg-g7-thinq/development/rom-phh-aosp-8-1-t3808649 :cool::victory: but then i...

xdaforums.com

@Xsavi

https://xdaforums.com/attachments/prog_ufs_firehose_sdm845_lge-zip.4937665/

[GUIDE] Unlock your LG V40 via 9008 mode (Every Variant except T-Mobile)

This Guide will explain how to unlock your LG V40 (Every variant except T-Mobile) Unlock Prerequisites: Make sure you have "Enable OEM Unlock" enabled in developer options, along with adb debugging. Very important. You'll be stuck with the red...

xdaforums.com

@CXZa

Яндекс

Найдётся всё

disk.yandex.ru

[LG TOOLS] LG-KDZ-dll-Tool/LGUP_UI-fixer/LG-Kdz-downloader

Please, do not share elsewhere as I want to be able to update if necessary ! LG-KDZ-dll-Tool/KDZ dll extractor (=old version) : this message actually, scroll down a bit... LGUP_UI-fixer LG-Kdz-downloader Share this thread or my blog instead...

xdaforums.com

LGUP UI-fixer batch file package

Adds some more Process options to the LGUP user interface. Usage: Install LGUP first... You can get the newest, v1.16, from XDA member m...

cxzstuff.blogspot.com

[SHARE] lgup tool

https://www.mylgphones.com/download-lg-up-software LG V40 DLL Ver. 1.9.39. Yes, we can run & open LGUP 1.14 with this DLL, and detect the LG V40, but we still can not upgrade/refurbish LG says LGUP 1.16 is needed.. when I patched the DLL, LGUP...

xdaforums.com

@MrLeronex

V35 SD845 - Google Drive

drive.google.com

Discord - Group Chat That’s All Fun & Games

Discord is great for playing games and chilling with friends, or even building a worldwide community. Customize your own space to talk, play, and hang out.

discord.com

https://****station.eu/sharing/fnb2eABTz

https://fs2.****station.eu/sharing/b4MeWun1n

Discord - Group Chat That’s All Fun & Games

Discord is great for playing games and chilling with friends, or even building a worldwide community. Customize your own space to talk, play, and hang out.

discord.com

LGUP 1.16.3 Patched Setup installer - w/ LGMobile drivers and Common_DLL

Hey guys, i always had issues with getting LGUP to work correctly, so therefore i just made an installer that installs everything in one package. LGUP_Common.dll should work for devices above the LG G6. For any problems with it, don't hesitate to...

xdaforums.com

X3non @Hovatek

14.48 MB file on MEGA

mega.nz

LGUP CMD / Dev / Lab / Store Tool Versions

Below is a collection of different versions of LGUP CMD / Dev / Lab / Store tools. They are Windows tools for flashing .kdz & .tot files / firmware to an LG Android device Download LGUP CMD / Dev / La

www.hovatek.com

1.52 MB file on MEGA

mega.nz

LGUP_common dll versions

Below is a collection of different versions of LGUP_common.dll. They are files necessary for getting LGUP to properly detect an LG phone in download mode. Download LGUP common dll LGUP common dllLGUP_

www.hovatek.com

@sourabh7625

651.1 KB file on MEGA

mega.nz

[Guide - HOW TO] Recover LG G7 (or other newer LG phones) from EDL or 9008 mode.

****** Unbrick all LG G7 models ****** ********** This guide has updated into two methods ********** (i). Recover from any boot problem to system or download mode.(which is defined below) This...

xdaforums.com

@bullghost

https://xdaforums.com/attachments/windowslgfirmwareextract-1-2-6-1-release-zip.3975633/

[TOOL] KDZ and TOT Extractor

hi guys, i start this since its support tot file where previously on Tool][python] LG Compressed KDZ Extractor The feature is : - Extract KDZ - Extract DZ - Merge System file from DZ - Add KDZ header by your self in Customize section -...

xdaforums.com

@shenlongforum

Microsoft OneDrive

1drv.ms

Can I cross flash lg g7 verizon unlocked ?

hey guys I recently bought lg g7 verizon unlocked it is on android 9 and I think Verizon never rolled out android 10 update, So I was thinking of upgrading to another rom, can I do it ?

xdaforums.com

QPST Tool - Qualcomm Product Support Tools (QPST)

Download the latest QPST Tool (QPST Flash Tool) to Flash or install the Stock firmware on Qualcomm smartphones, feature phones, and tablets.

qpsttool.com

Qualcomm Driver

The Qualcomm USB Driver for Windows v1.0.10061.1 allows communication between a Windows computer and Qualcomm devices that are connected via a USB connection.

qcomdriver.com

GSM USB Driver - Database of Mobile USB Drivers

Download the Latest Mobile USB Driver for almost all the Mobile Devices (smartphones, feature phones, tablets) in the world.

gsmusbdriver.com

Models - LG-Firmwares.com

Free archive of LG firmwares. Comparison of features and reviews of all mobile devices. Quick download of updates for your device.

lg-firmwares.com

Google

Search the world's information, including webpages, images, videos and more. Google has many special features to help you find exactly what you're looking for.

lg-roms.com

Download LG ROM KDZ Firmware free and best speed - LG ROM

LG ROM is a library ROM KDZ Firmware for all LG phone. You can download with best speed and free. You can check IMEI to information also

lgrom.com

https://lggdmstool.s.llnwi.net

http://tool.lime.gdms.lge.com

===/Credit===