How To Guide Vivo x70 Pro+ Bootloader Unlock - HOW TO GUIDE

Search This thread

Pervokur

Senior Member
Feb 15, 2022
100
23
I know this revision of the bootloader is for the models mentioned above, but I also want to test this. I don't have a custom vendor.img for the S1 Pro (PD1945F_EX), and I was wondering if maybe @Pervokur (you are a legend, seriously) could help me get that? At least in a Google Drive folder and not 4pda, since XDA takes them down. Thank you so so much, I was waiting for YEARS to get access to the bootloader on vivo devices.
any img should work, it's just a taran

you can use this https://disk.yandex.ru/d/pFFinyM5Sl2BDQ
 

yxsef.7i

Member
May 20, 2022
14
0
WARNING! THIS IS EXPERIMENTAL, I HAVE NO IDEA WHERE WE CAN GO FROM HERE.
THIS MIGHT BREAK YOUR DEVICE!!!

UNLOCKING THE BOOTLOADER REQUIRES A WIPE AFTERWARDS!
UNLOCKING THE BOOTLOADER WILL DISABLE YOUR FINGERPRINT READER! (FIXED BY RELOCKING)


This is a breakthrough! Thanks to our crazy russian friend in this thread I succeeded in opening the bootloader. (Origin OS)

--------------------------------------------------------------------

Long Tutorial:
Download 1: https://forum.xda-developers.com/t/guide-how-to-reboot-to-edl-from-fastboot.3394292/
Download 2 vivo fastboot_v2: https://forum.xda-developers.com/t/how-to-unlock-bootloader-of-vivo-phones.3686690/
Download 3 vendor.img: https://forum.xda-developers.com/t/...hers-new-vivo-oppo-models-check-list.4440801/

NEEDED: Vivo USB Driver
NEEDED: ADB and Fastboot (Added to PATH)

1. Enable OEM Unlock in Developer Options
2. Connect your device via ADB
3. Use "adb reboot fastboot"
4. Use "fastboot reboot bootloader" -> This fastboot now looks different
5. Copy the vendor.img into the folder of Download 2
6. Open two cmd's in Download 2
7. Type in "fastboot vivo_bsp unlock_vivo" into the first one, hit enter
8. Type in "fastboot flash vendor vendor.img" into the second one, hit enter
9. Immediately switch back to the first one, press up and enter many times
10. If you time this right your bootloader is unlocked
11. Press the power button to restart the phone and see your bootloader warning
12. Let the phone restart a few times until it asks you to wipe
13. Select the first option, then select the one on the right to proceed

I unlocked, relocked and unlocked again to be sure, this seems to be a safe method!

Much thanks to @Naveen Singh and @Pervokur[/USER
[/QUOTE]

any img should work, it's just a taran

you can use this https://disk.yandex.ru/d/pFFinyM5Sl2BDQ
thank you. can you also send a link to the device drivers you used? mine's not working properly, the vivo_bsp command doesn't work so most likely a driver issue
 

Pervokur

Senior Member
Feb 15, 2022
100
23
thank you. can you also send a link to the device drivers you used? mine's not working properly, the vivo_bsp command doesn't work so most likely a driver issue
I'm using rooted Samsung J120F, no drivers!

If standart fastboot works, then just replace standart fastboot.exe with custom fastboot.exe
 

Killuminati91

Senior Member
Dec 12, 2012
279
98
I have successfully returned to OriginOS 1.5.20. Magisk is working as well.
I will now update the system (backup all OTA's on the way), check signal and then extract all partitions again.

We may be able to change to FunTouch with a few simple build.prop tweaks by using the read/write root technique that you found. No more flashing a thousand partitions, just edit a few files and then flash the ota.

Will test all of that.

Edit: OTA Updates are NOT possible when you have a modified boot.img (Magisk) of course. Always keep a backup.

Edit2: Okay I am totally screwed. No signal on OriginOS and OceanOS either. No dm-verity message, the firmware seems to be reset completely. But I still dont have signal.
 
Last edited:

Killuminati91

Senior Member
Dec 12, 2012
279
98
Guide To Back up your partitions BEFORE you change to Funtouch.

--------------------------------------------------------------------------------------------

Unlock your Bootloader according to post 1


I. Origin / OceanOS

1. Download and Install DSU Sideloader
2. Download "lineage-19.1-20220510-UNOFFICIAL-arm64_bvS.img.xz" and move it to your internal memory
3. Run DSU Sideloader, select the downloaded img.xz, set the User Data Size to 25gb and click on "Install GSI via DSU"
4. Once it has been processed (5-10min) you will get a message prompting you to use ADB for the final step
5. Open a cmd on your pc (adb must be set up and authorized) and enter the displayed command
6. You will get a new notification on your phone with a progress bar
7. Once this is finished pull down the notification and click on restart

II: Lineage

Your device now is booted into LineageOS

1. Copy "me.phh.superuser.apk" to your internal storage
2. Open Files on the phone and install the apk
3. Open SuperUser and authorize it

4. Go to Settings -> About emulated device -> Press on Build Number a few times to enable Debugging
5. Go to Settings -> System -> Developer Options -> Enable Rooted debugging

6. Open a cmd on your pc, type in "adb devices" -> Your phone should be recognized
7. Type in "adb shell" -> enter and then "su" -> enter(and grand root rights on your phone)
8. Now you can copy and paste all of the below commands to make a complete backup of the partitions.

Code:
dd if=/dev/block/sdd1 of=/sdcard/ALIGN_TO_128K_1.img
 dd if=/dev/block/sdf1 of=/sdcard/ALIGN_TO_128K_2.img
 dd if=/dev/block/sde8 of=/sdcard/abl.img
 dd if=/dev/block/sde1 of=/sdcard/aop.img
 dd if=/dev/block/sda9 of=/sdcard/apanic.img
 dd if=/dev/block/sde28 of=/sdcard/apdp.img
 dd if=/dev/block/sda10 of=/sdcard/backup.img
 dd if=/dev/block/sde5 of=/sdcard/bluetooth.img
 dd if=/dev/block/sde11 of=/sdcard/boot.img
 dd if=/dev/block/sda19 of=/sdcard/cache.img
 dd if=/dev/block/sdd2 of=/sdcard/cdt.img
 dd if=/dev/block/sde39 of=/sdcard/connsec.img
 dd if=/dev/block/sde21 of=/sdcard/cpucp.img
 dd if=/dev/block/sdd3 of=/sdcard/ddr.img
 dd if=/dev/block/sde12 of=/sdcard/devcfg.img
 dd if=/dev/block/sde26 of=/sdcard/devinfo.img
 dd if=/dev/block/sde27 of=/sdcard/dip.img
 dd if=/dev/block/sde9 of=/sdcard/dsp.img
 dd if=/dev/block/sde15 of=/sdcard/dtbo.img
 dd if=/dev/block/sda17 of=/sdcard/factory.img
 dd if=/dev/block/sde22 of=/sdcard/featenabler.img
 dd if=/dev/block/sda5 of=/sdcard/frp.img
 dd if=/dev/block/sdf5 of=/sdcard/fsc.img
 dd if=/dev/block/sdf4 of=/sdcard/fsg.img
 dd if=/dev/block/sde3 of=/sdcard/hyp.img
 dd if=/dev/block/sde17 of=/sdcard/imagefv.img
 dd if=/dev/block/sde10 of=/sdcard/keymaster.img
 dd if=/dev/block/sda4 of=/sdcard/keystore.img
 dd if=/dev/block/sde30 of=/sdcard/limits.img
 dd if=/dev/block/sde31 of=/sdcard/limits-cdsp.img
 dd if=/dev/block/sde33 of=/sdcard/logdump.img
 dd if=/dev/block/sde32 of=/sdcard/logfs.img
 dd if=/dev/block/sde38 of=/sdcard/mdcompress.img
 dd if=/dev/block/sde7 of=/sdcard/mdtp.img
 dd if=/dev/block/sde6 of=/sdcard/mdtpsecapp.img
 dd if=/dev/block/sda7 of=/sdcard/metadata.img
 dd if=/dev/block/sda3 of=/sdcard/misc.img
 dd if=/dev/block/sde4 of=/sdcard/modem.img
 dd if=/dev/block/sdf2 of=/sdcard/modemst1.img
 dd if=/dev/block/sdf3 of=/sdcard/modemst2.img
 dd if=/dev/block/sde20 of=/sdcard/multiimgoem.img
 dd if=/dev/block/sda2 of=/sdcard/persist.img
 dd if=/dev/block/sde24 of=/sdcard/qmcs.img
 dd if=/dev/block/sde13 of=/sdcard/qupfw.img
 dd if=/dev/block/sde25 of=/sdcard/qweslicstore.img
 dd if=/dev/block/sda8 of=/sdcard/rawdump.img
 dd if=/dev/block/sda16 of=/sdcard/recovery.img
 dd if=/dev/block/sda11 of=/sdcard/reserved.img
 dd if=/dev/block/sde42 of=/sdcard/rtice.img
 *dd if=/dev/block/sda of=/sdcard/sda.img
 dd if=/dev/block/sdb of=/sdcard/sdb.img
 dd if=/dev/block/sdc of=/sdcard/sdc.img
 dd if=/dev/block/sdd of=/sdcard/sdd.img
 dd if=/dev/block/sde of=/sdcard/sde.img
 dd if=/dev/block/sdf of=/sdcard/sdf.img
 dd if=/dev/block/sde36 of=/sdcard/secdata.img
 dd if=/dev/block/sda12 of=/sdcard/seed.img
 dd if=/dev/block/sde18 of=/sdcard/shrm.img
 dd if=/dev/block/sde29 of=/sdcard/splash.img
 dd if=/dev/block/sde41 of=/sdcard/spunvm.img
 dd if=/dev/block/sda1 of=/sdcard/ssd.img
 dd if=/dev/block/sda13 of=/sdcard/storage.img
 dd if=/dev/block/sde34 of=/sdcard/storsec.img
 dd if=/dev/block/sda18 of=/sdcard/super.img
 dd if=/dev/block/sde2 of=/sdcard/tz.img
 dd if=/dev/block/sde40 of=/sdcard/tzsc.img
 dd if=/dev/block/sde16 of=/sdcard/uefisecapp.img
 dd if=/dev/block/sde35 of=/sdcard/uefivarstore.img
 *dd if=/dev/block/sda20 of=/sdcard/userdata.img
 dd if=/dev/block/sde14 of=/sdcard/vbmeta.img
 dd if=/dev/block/sda15 of=/sdcard/vbmeta_oem.img
 dd if=/dev/block/sda6 of=/sdcard/vbmeta_system.img
 dd if=/dev/block/sda14 of=/sdcard/vbmeta_vgc.img
 dd if=/dev/block/sde23 of=/sdcard/vendor_boot.img
 dd if=/dev/block/sde19 of=/sdcard/vm-bootsys.img
 dd if=/dev/block/sde37 of=/sdcard/vm-data.img
 dd if=/dev/block/sdb1 of=/sdcard/xbl.img
 dd if=/dev/block/sdb2 of=/sdcard/xbl_config.img
 dd if=/dev/block/sdc2 of=/sdcard/xbl_configbak.img
 dd if=/dev/block/sdc1 of=/sdcard/xblbak.img

9. You will find all of your backups on the internal memory of your phone - simply copy them to a folder on your pc

I have tried this process on OceanOS latest version, there are no problems to get LineageOS running with SuperSU. Dont worry, this is not permanent. You can simply restart into OriginOS.

Guide based on @Pervokur's work.

Edit: Alternatively HERE is a patched magisk bootimage and the vanilla boot image for 5.13.25.
Flash that one in fastboot, install the magisk app and you can go straight to step II 6 if you got adb enabled. No GSI necessary.
If you want to update just flash back the original boot image.

When you erase modemst1 and modemst2 from fastboot they get rewritten by the backup from the fsg partition. This causes a reboot shortly after the first boot. I get signal until I reboot the phone, probably due to damaged data.
 
Last edited:

Waylan2022

Member
May 6, 2022
8
1
可以告诉我为什么
Vendors cannot be implanted,My model is iqoo Z3,Is it because I use other bloggers' tools?
-46910302b6b1e5c5.png
 

Killuminati91

Senior Member
Dec 12, 2012
279
98
Any updates on this? Is it possible to safely flash Funtouch to china version?

I am on Funtouch now with working signal. I also have a method to return to Origin OS.
OTA Updates CAN disable signal again until you fix it after updating but that shouldnt be that big of a problem.

IN THEORY there should be a better way than flashing huge partitions:
1. Unlock Bootloader
2. Install magisk and make all partitions read-writeable
3. Edit ALL build.props to replace system identifiers with the indian version (system, vendor, odm, oem, vgc, recovery)
4. Flash adb enabled recovery
5. Push ota to /data
6. Use modified misc.img to install from /data

I am writing a guide for the manual, heavier version right now. But it involves a lot of flashing and I cant garantuee that it will work on every phone.

@Waylan2022 : Seems like your bootloader is locked?! What are you trying to achieve there?
 

xiaoleGun

Member
May 23, 2022
21
7
Beijing, P.R.China
I am on Funtouch now with working signal. I also have a method to return to Origin OS.
OTA Updates CAN disable signal again until you fix it after updating but that shouldnt be that big of a problem.

IN THEORY there should be a better way than flashing huge partitions:
1. Unlock Bootloader
2. Install magisk and make all partitions read-writeable
3. Edit ALL build.props to replace system identifiers with the indian version (system, vendor, odm, oem, vgc, recovery)
4. Flash adb enabled recovery
5. Push ota to /data
6. Use modified misc.img to install from /data

I am writing a guide for the manual, heavier version right now. But it involves a lot of flashing and I cant garantuee that it will work on every phone.

@Waylan2022 : Seems like your bootloader is locked?! What are you trying to achieve there?
He's iqoo z3. He wants to unlock the bootloader.
 

Waylan2022

Member
May 6, 2022
8
1
Someone integrated the one click unlocking tool. I followed the tutorial and found that the command ran successfully and prompted that the unlocking was successful. After restarting, I didn't receive a warning and won't clear the data
 

Waylan2022

Member
May 6, 2022
8
1
The model is iqoo Z3 and the system is ocean. This vendor doesn't need to be brushed in, does it? After I swipe in and run the unlock command, I will find that the volume key and power key are out of order on the FastBoot interface, which may be stuck
 

Waylan2022

Member
May 6, 2022
8
1
If you use the above method, execute the unlock command when brushing the vendor. If you execute it again after success, you will find that the command has been stuck in the running state and will be stuck in the FastBoot interface
 

Paradise.

Member
May 24, 2022
7
0
0M1`HO%VA_J)3QANY`Y(RZ2.png

I have a very confusing problem, here it shows that the unlock is successful, but after restarting it does not succeed
 

Peter Trex

Member
Jan 15, 2022
7
0
Wow this is incredible, some people reported works ok X fold. Have anyone succeeded with X80Pro? I bought it with Origin Ocean so I want convert it to Funtouch OS, that way I get better support for non-Chinese apps.
 

Waylan2022

Member
May 6, 2022
8
1
Wow this is incredible, some people reported works ok X fold. Have anyone succeeded with X80Pro? I bought it with Origin Ocean so I want convert it to Funtouch OS, that way I get better support for non-Chinese apps.
The partners in China unlocked the following models of iqoo9 Pro according to XDA's methodIQOO9IQOO8 PROIQOO8IQOO7Iqoo 1 (only unlocked temporarily, root needs to change Su)Iqoo Z5 (only unlocked temporarily, under root test)IQOO Z1IQOO NEO6Iqoo Neo 855 (only unlocked temporarily, root not tested)VIVO X FOLDVIVO X60TPRO+VIVO X60PRO+
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    it dosen't work :(

    no such file or directory

    C:\Program Files (x86)\Minimal ADB and Fastboot>adb reboot fastboot

    C:\Program Files (x86)\Minimal ADB and Fastboot>fastboot flash recovery C:\Users\crane\Desktop\rec_root.img
    target reported max download size of 268435456 bytes
    sending 'recovery' (98304 KB)...
    OKAY [ 2.474s]
    writing 'recovery'...
    OKAY [ 0.089s]
    finished. total time: 2.569s

    C:\Program Files (x86)\Minimal ADB and Fastboot>adb shell dd if=/dev/block/by-name/boot of=/data/media/0/Download/boot.img
    dd: /data/media/0/Download/boot.img: No such file or directory
    0+0 records in
    0+0 records out
    0 bytes (0 B) copied, 0.001442 s, 0 B/s

    C:\Program Files (x86)\Minimal ADB and Fastboot>
    I'm too lazy to think.. use adb pull

    adb pull /dev/block/by-name/boot

    this should copy to adb folder

    Check if you're root

    adb root



    You should learn some simple things, so you would be able to solve such small problems. Did you remove pin code? Otherwise you wouldn't get access to download folder from recovery. Or maybe it's not proper path
    1
    I'm too lazy to think.. use adb pull

    adb pull /dev/block/by-name/boot

    this should copy to adb folder

    Check if you're root

    adb root



    You should learn some simple things, so you would be able to solve such small problems. Did you remove pin code? Otherwise you wouldn't get access to download folder from recovery. Or maybe it's not proper path
    It worked!!!!!!!!!!

    thanks a lot

    because of cable I think

    after change cable it worked :)

    really really really thanks to you x100 !!!!!!!!!!!!!!!!!!!!!!
  • 4
    WARNING! THIS IS EXPERIMENTAL, I HAVE NO IDEA WHERE WE CAN GO FROM HERE.
    THIS MIGHT BREAK YOUR DEVICE!!!

    UNLOCKING THE BOOTLOADER REQUIRES A WIPE AFTERWARDS!
    UNLOCKING THE BOOTLOADER WILL DISABLE YOUR FINGERPRINT READER! (FIXED BY RELOCKING)
    UNLOCKING THE BOOTLOADER MIGHT REMOVE BOKEH MODES FROM PORTRAIT. (NOT SURE)


    This is a breakthrough! Thanks to our crazy russian friend in this thread I succeeded in opening the bootloader. (Origin OS)

    --------------------------------------------------------------------

    Long Tutorial:
    Download 1: https://forum.xda-developers.com/t/guide-how-to-reboot-to-edl-from-fastboot.3394292/
    Download 2 vivo fastboot_v2: https://forum.xda-developers.com/t/how-to-unlock-bootloader-of-vivo-phones.3686690/
    Download 3 vendor.img: https://forum.xda-developers.com/t/...hers-new-vivo-oppo-models-check-list.4440801/

    NEEDED: Vivo USB Driver
    NEEDED: ADB and Fastboot (Added to PATH)

    1. Enable OEM Unlock in Developer Options
    2. Connect your device via ADB
    3. Use "adb reboot fastboot"
    4. Use "fastboot reboot bootloader" -> This fastboot now looks different
    5. Copy the vendor.img into the folder of Download 2
    6. Open two cmd's in Download 2
    7. Type in "fastboot vivo_bsp unlock_vivo" into the first one, hit enter
    8. Type in "fastboot flash vendor vendor.img" into the second one, hit enter
    9. Immediately switch back to the first one, press up and enter many times
    10. If you time this right your bootloader is unlocked
    11. Press the power button to restart the phone and see your bootloader warning
    12. Let the phone restart a few times until it asks you to wipe
    13. Select the first option, then select the one on the right to proceed

    I unlocked, relocked and unlocked again to be sure, this seems to be a safe method!

    Much thanks to @Naveen Singh and @Pervokur
    4
    I will write a full guide and share my files once I get developer access on android file host. Generally it should be possible to switch OriginOS -> Funtouch (and the other way around) on every vivo phone that has the same hardware for both versions. You just need a qfil / split rom and a newer ota update of the target firmware.

    General Guide can be found here.
    2
    Any updates on this? Is it possible to safely flash Funtouch to china version?

    I am on Funtouch now with working signal. I also have a method to return to Origin OS.
    OTA Updates CAN disable signal again until you fix it after updating but that shouldnt be that big of a problem.

    IN THEORY there should be a better way than flashing huge partitions:
    1. Unlock Bootloader
    2. Install magisk and make all partitions read-writeable
    3. Edit ALL build.props to replace system identifiers with the indian version (system, vendor, odm, oem, vgc, recovery)
    4. Flash adb enabled recovery
    5. Push ota to /data
    6. Use modified misc.img to install from /data

    I am writing a guide for the manual, heavier version right now. But it involves a lot of flashing and I cant garantuee that it will work on every phone.

    @Waylan2022 : Seems like your bootloader is locked?! What are you trying to achieve there?
    2
    you can try to flash gsi with integrated root like LOS, then backup partitions with dd if=/dev/block/... of=/....
    As a safer alternative, don't flash, temporarily boot it with DSU Sideloader. That keeps the entire stock OS intact, both for complete dumping and for using after you're done with it.
    (Saw this post in the sidebar, felt interested, plus I've used this method on a few devices already)
    1
    Im not a developer either so this is as far as I can go sadly. I tried flashing all img's from the FunTouch update to their corresponding partitions but the phone boots into a blackscreen and then bootlop.
    The recovery is english though. It lets me install CN Firmware update in recovery but not the FunTouch update. So the check is deeper than that.

    Easily flashed back my chinese firmware and it is working - there has to be a way somehow.

    Also NOTE: The bootloader unlock will probably get fixed in a future update so I would NOT update unless we dont figure anything out in the next few months.
    How about if we root the phone first by magisk and editing the buildprop and change it value with vivo x70+ india version? Then we try to flash the funtouchOS. But first need someone with the files.