TWRP modded to work now with Unihertz Atom - Miscellaneous Android Development

Below you will find a download for my modification of a ported Team Hovatek TWRP file as their TWRP did not support OTG. Thanks to Team Hovatek for making a nice porting tool. Unfortunately it took some days and late nights of work to get the ported TWRP to actually be useful as this phone needs OTG support to use TWRP.
When I recently got the Unihertz Atom I didn't realize that it had no micro SD card slot for an external SD card like the Unihertz Jelly Pro had. However it does have OTG support unlike the Jelly Pro but I could not find any TWRP versions for the Atom. So I found a TWRP porting tool from Hovatek and I was able to create a TWRP version but USELESS unfortunately as that version of TWRP did not have OTG support for the Atom.
To make matters worse that TWRP can't deal with the encrypted internal storage of the Atom so there was no way to do a backup of your system. It was possible to format data in TWRP and do a backup to it but upon reboot all that data was gone and reset by the Atom as an essentially new phone being setup for the first time.
I needed a way to modify the ported TWRP so it would recognize an OTG flash drive or USB flash with an OTG cable. I used Image Kitchen to disassemble the original Atom Recovery image and also the modded TWRP recovery image so I could find what was missing from TWRP that was there in the original setup. After a whole lot of reassembling and reflashing various attempts to fix the OTG problem I finally got it. Had to add different lines of code to 3 different files within the unpacked TWRP recovery for it to finally recognize an OTG attached flash drive.
A couple notes on using your external flash drive with TWRP. First you want to insert the flash drive with an appropriate USB type C OTG adapter or cable. Or I see Sandisk (and possibly other brands) are now making a flash drive with USB and Type C dual setup for OTG use.
Bootup your regular phones Android system and look in the pull down notifications - it will ask if you want to use the flash drive as storage. Answer yes and it will then Format it to FAT32 0x0C type which is different than what it was fresh out of the package as most will be FAT32 0x0B type. Once formatted the way the Atom wants it you can use it. However if you put the drive back in your Windows computer it may not see the drive at all. The solution is to open Windows Disk Management and Assign it a drive letter. Once that is done you can read and write to it from both Android and Windows or Linux.
Once that is done you can turn off your phone (IMPORTANT). Do not use any apps that reboot into recovery after installing this TWRP or you will likely just get a black screen and it won't boot up until you reflash the preloader, boot and recovery.
To get into recovery hold down the Volume UP button and the Power button at the same time until you see Unihertz then release both. This is of course after you have flashed TWRP. More on that below. Once your are in TWRP you may have to remove your Flash drive if you had it plugged in during recovery boot up - then reinsert it for TWRP to see it. You can then see it when you mount storage or select storage and it should show the size of your flash drive.
You can then backup your Boot, Recovery, EMMC, System and cache. However the data on the Atom seems to be encrypted in a way that this TWRP does not see it so it will be best to use something like Titanium backup for your Apps and their data. The TWRP though will ensure a complete backup of your system and it's settings as well as the other items mentioned above. I am still looking into why it can't see the encrypted data part of the phone but for now it's nice to have an image of all the rest of the phone. If anyone can help with that I would appreciate it. So far I've tried several 'no encrypt scripts' and ones to turn off DM verity I found on XDA but none of them worked on this phone.
Here is the download of my modded TWRP and also a link for the SHA-256 of it:
TWRP mod: TWRP mod by droidzer1
SHA-256 for file above: SHA-256 for TWRP mod Love the Atom - fast Octacore 4GB Ram - 64GB Internal storage, rugged and tiny as an underfed mouse. :silly: Enjoy !

Notes on Installing this TWRP on your Atom
There are two ways I have used to install this TWRP onto the Atom. One way (and the best way IMO) is to use the SP Flash tool version 5.1828. The other is to use Fastboot. I believe for both methods you need to enable developer options on your phone and turn on OEM unlocking. But if you use Fastboot you also have run the line: "fastboot oem unlock" to install TWRP and that will wipe your phone to a new reset condition plus you will see the 5 second "Orange State" pause screen every time you turn on the phone. To eliminate the "Orange State you can run : "fastboot oem lock" but that will once again totally reset your phone wiping everything including apps and settings. So I prefer using SP Flash tool to avoid all that.
When installing with SP Flash tool I always flash the preloader, boot and recovery (the TWRP modded one) and of course the scatter file. It seems if you don't flash all of those it sometimes doesn't want to boot up.
Also this mod is for the official Unihertz 11-30-2018 ROM version which is the latest update I've seen as of a week ago. I don't know if it will work for other versions. You will want to download that ROM to get the scatter file that is needed by SP Flash tool and it's always good to have an original ROM just in case. Link for the new 11-30-2018 Atom ROM here: 11-30-2018 Atom ROM If you are not on that version you could backup your apps and data with Titanium backup and then install the new ROM while flashing my modded TWRP all at the same time. Just make sure the TWRP you download is named "recovery-verified.img" when you replace the stock one in the SP Flash tool list on the Download page. Also make sure on the tools 'Connections' setting that you check 'Battery installed'.
IMPORTANT!!! - Every version of SP Flash tool I've used shows up as having a virus or trojan and although it may probably be a False positive to be safe I always run Shadow Defender before starting the SP Flash tool. There may be other similar programs but I found this to be one of the best as it totally freezes your computer and hard drive(s) so nothing can be changed or written permanently to them while in Shadow mode. Once you reboot everything is back to a normal state and any changes that may have been made are gone. SP Flash tool available here: SP Flash tool v5.1828 I strongly suggest you use this latest version as previous ones had some issues in completing this project.
A couple quick notes on using the SP Flash tool: It is best to start the tool, have all your items in the check boxes loaded (select scatter file location first) check and locate preloader, boot and recovery - the preloader and boot are from the original ROM you downloaded from the above link. Unzip it and you'll see the needed files inside along with the scatter file.
Once that is ready turn OFF your phone and hook it up with the original USB-C cable to your computer. Wait for it to show the battery charging screen and wait till all that disappears and you have nothing but the black screen. (Or per user SepticFuddy you can hold the Volume Up key while inserting the USB cable and it will connect quickly - I have not tested it this way). Then click on the Flash tool download button. After that you need to push the Atom Power button once briefly - not long enough to turn it on - just a brief click. After that you should see the Flash process going on - it only takes a few seconds to load the preloader, boot and recovery and then you will see a "done" with a big check mark. Remove your phone then and boot into your regular Android OS or use Volume Up and the Power key to boot into your TWRP. :highfive:

Why TWRP doesn't work with Encryption - from TeamWin
I guess this may explain why it is unlikely to get TWRP to work with the encrypted data partition - straight from Teamwin's TWRP website:
"Why doesn't TWRP support encryption on my device?
TWRP encryption is supported in 2 phases. The first item is keeping up with the newest support from AOSP, which can require lot of changes and integration with the new AOSP release. This can take time especially if we have to wait for reference devices to test with. The second item is custom blob support and integration with device OEM firmware.
Even if your device supports AOSP encryption and decryption, it usually requires custom blob support. The process of figuring this out may take time and may never be done. Some vendors such as Samsung use their own encryption techniques. Without heavy deconstruction/decompiling of custom library blobs, and successful ports by an active maintainer, this may never be done. Encryption support is a nice thing to have in TWRP, and not a must have support option. We feel that the ability to backup system and install custom firmware can outweigh having no TWRP support at all."
From: TWRP Website FAQ on Encryption

How I fixed TWRP
For anyone who wants to try the mods their self if you don't trust using the recovery I uploaded I believe these are the changes I made to the ported TWRP. You need of course the porting tool from Hovatek and after you have ported your original recovery you will want to use Image Kitchen to make these mods to the ported image:
Use Image Kitchen to unpack the ported TWRP recovery. In the Ramdisk folder this line "ro.agui.otg_usbdisk=yes" orginally found in the prop.default of the original recovery needs to be put into the file "default.prop" which is a different file name than the original but I am sure is the same purpose and was referenced in the original by a small file with that name.
Then this line "/dev/mt_otg_test(/.*)? ubject_r:mt_otg_test_device0" from the original recovery image in the file "nonplat_file_contexts" I believe I copied into the file "file_contexts" in the TWRP image in the Ramdisk folder.
Note - the above code line that has a smiley in it is because there is the letter "o" followed by a colon. Replace the smiley with "o" and : no spaces between it and the letter 'u' before it or between 'o' and :
I think the third file I modified was found in the unpacked folder /ramdisk/etc in the file 'recovery.fstab' and I took this line "/devices/platform/mt_usb* auto vfat defaults voldmanaged=usbotg:auto " from it to add to the same file in the ported TWRP. Then just repack everything in Image Kitchen and you should have a TWRP recovery that works with OTG.
If you aren't familiar with how to use Image Kitchen it would be best to google how to use it. I have left out some of the basics such as needing to Copy the “recovery.img-kernel” and “recovery.img-kernel_offset” from the unpacked stock recovery and overwrite those two files in ported TWRP folder. Best to look for an instruction article on techora.net about porting TWRP on mediatek devices.

Thank you, it's awesome! But how did you manage to flash Magisk? I can't flash it as /data and /storage can't be mounted.

You should be able to flash it with Fastboot by using command:
fastboot flash boot /path/to/patched_boot.img OR simply put it in the fastboot folder and type:
fastboot flash boot boot.img (the patched boot image)
You may want to review info on the Magisk thread here:
https://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445
This method of course is done with you computer and USB cable attached to the Atom. Make sure you have correct drivers for it to fully recognize your phone.
A bit more info from topjohnwu's Magisk thread mentioned above:
Via Magisk Manager:
This method does not need root, and also does not require a custom recovery.
However, you MUST have a stock boot image dump beforehand, and you also have to be able to flash the patched boot image, either through fastboot/download mode or ODIN
Install the latest Magisk Manager
If you're planning to flash the patched boot image through ODIN, go to Settings > Update Settings > Patched Boot Output Format, and select .img.tar. For normal users leave it as the default .img
Press Install > Install > Patch Boot Image File, and select your stock boot image file
Magisk Manager will now patch your boot image, and store it in [Internal Storage]/Download/patched_boot.img[.tar]
Copy the patched boot image to your PC. If you can't find it via MTP, you can pull the file with ADB:
adb pull /sdcard/Download/patched_boot.img[.tar]
Flash the patched boot image to your device and reboot. Here is the command if using fastboot:
fastboot flash boot /path/to/patched_boot.img

If the above method fails for some reason you should also be able to flash to patched boot image with SP flash tools as long as you have the scatter file for the ROM you have installed on your phone. As I mentioned if you flash the patched boot image that way I found it best to also flash the preloader and recovery at the same time.

Cannot mount /data
What you did here was remarkable. I love the Atom so I never tried to tinker with recovery since I might end up with a bootloop. I hope we find a solution soon on how to mount /data.

post-root network failure
First off thank you for doing the research and posting in the thread to help us root this awesome little device.
I followed your steps to the "T" and I was able to successfully patch magisk and re-download it back onto my atom and it was rooted BUT, there seems to be some sort of network issue that I'm stuck on, I'm unable to turn on the wi-fi and bluetooth and every few seconds I keep getting an error message that says "bluetooth keeps stopping" consistently whenever I have the phone on.
I was wondering If you had any idea on what might be causing this, or if you had this problem.
thank you, and I look forward to hearing back from you

droidzer1, Finally got to post now and wanted to thank you for your work on the Atom. I got it rooted and got TWRP working too with only some frustrations because I got in a hurry and missed a detail the first try. I haven't found any problems and have had it running about 2 weeks now with root and TWRP. Nice to have root and of course great to be able to do a whole system backup now!
---------- Post added at 03:08 AM ---------- Previous post was at 03:02 AM ----------
hayestak said:
First off thank you for doing the research and posting in the thread to help us root this awesome little device.
I followed your steps to the "T" and I was able to successfully patch magisk and re-download it back onto my atom and it was rooted BUT, there seems to be some sort of network issue that I'm stuck on, I'm unable to turn on the wi-fi and bluetooth and every few seconds I keep getting an error message that says "bluetooth keeps stopping" consistently whenever I have the phone on.
I was wondering If you had any idea on what might be causing this, or if you had this problem.
thank you, and I look forward to hearing back from you
Click to expand...
Click to collapse
Were you able to get this fixed? Doesn't look like droizer1 has been on here recently. Mine didn't have either of those issues. Have you tried doing a factory reset and doing the whole process over? I think sometimes just a computer PC might glitch something on your phone so doing it over might skip the hiccup.
---------- Post added at 03:48 AM ---------- Previous post was at 03:08 AM ----------
Since droidzer1 first posted this in early January you might try using the version of Magisk that was available at that time as I think by later March when you posted there was a newer version out and I've found some versions of Magisk to not work a hundred percent and had to use an older version on some phones.

The latest Magisk (19100) + Xposed (v90 beta 3) work fine for me using the TWRP posted above, in case people were wondering about it.
R

Lost in reboot ...
Hi
I urgently need some help. I seem to be lost...
I have successfully installed TWRP on my Unihertz atom. And I can manage to go into either TWRP mode or into fastboot mode.
I can also successfully unlock the Unihertz atom with:
fastboot oem unlock-go
But what is next?
If I reboot, my phone constantly reboots. It cycles into reboot without Android coming up.
(perhaps I made something wrong).
What I actually want is: The phone should boot including Magisk.
Can anyone please help me what commands I have to issue (with the phone connected to my linux computer via USB) in order
to recover to a normal reboot? Which image-file should I use (please provide URL)?
Can anyone please help me what commands I have to issue to flash Magisk?
Which image-files I should use (please provide URL)?
If somebody has a custom rom or lineageOS rom I would be even happier ...
Thanks a lot.

Thank you

Confirmed working with the Android 9 Pie 2019082617 ROM, latest Magisk 19.3 (19300), latest Riru core v19.5, latest Riru- EdXposed v0.4.5.1b (4463) (SandHook). EdXposed seems hit or miss after a reboot though, getting it to stick may take a few installations.
To get SP Flashtool to work, I had to hold the Volume Up key while inserting the USB cable and it would instantly connect, rather than following the OP's instructions of just inserting the cable and waiting for a black screen.
I'd love to see a custom ROM like LineageOS or something, but this is will have to do for now.

SepticFuddy said:
Confirmed working with the Android 9 Pie 2019082617 ROM, latest Magisk 19.3 (19300), latest Riru core v19.5, latest Riru- EdXposed v0.4.5.1b (4463) (SandHook). EdXposed seems hit or miss after a reboot though, getting it to stick may take a few installations.
To get SP Flashtool to work, I had to hold the Volume Up key while inserting the USB cable and it would instantly connect, rather than following the OP's instructions of just inserting the cable and waiting for a black screen.
I'd love to see a custom ROM like LineageOS or something, but this is will have to do for now.
Click to expand...
Click to collapse
Thanks for the mention of a quicker method. I've updated my post to include your info.

LineageOS for Uniherz Atom?
SepticFuddy said:
I'd love to see a custom ROM like LineageOS or something, but this is will have to do for now.
Click to expand...
Click to collapse
Me too!! LineageOS for the Unihertz Atom would be great!
The hadrware of the Uniherz Atom is just great, is is small and it is dual-sim. This is unique in the market.
I would be even willing to contribute with 100,- EUR if somebody delivers a working LineageOS ROM.
Any body interested? :highfive:

SepticFuddy said:
I'd love to see a custom ROM like LineageOS or something, but this is will have to do for now.
Click to expand...
Click to collapse
The main problem is that unihertz never released their source code (despite being obliged to do so according to the android licensing contract).
There are some bits in the official mediatek kernel source tree (https://android.googlesource.com/kernel/mediatek/) but I doubt that this would be enough to build something stable out of it.

@droidzer1 Hey there, what is the difference between your modded TWRP and this test release by the TWRP Builder Project asside from the TWRP version?

J-Kos said:
@droidzer1 Hey there, what is the difference between your modded TWRP and this test release by the TWRP Builder Project asside from the TWRP version?
Click to expand...
Click to collapse
I'm not sure what the difference is except I came out with mine in January and theirs came out in March. Theirs is about 4 Megabytes bigger - maybe a newer version (mine is 3.2.1-0). I contacted 'bigbiff' at TWRP about mine when I had it working but they were not interested unless I had a device tree which I didn't so they didn't want to post it on their site.

Great, thanks for your reply. I am satisfied with you version, so I will just keep using it.

Related

[GUIDE]RCA Maven Pro (RCT6213W87DK), Bootloader, Custom Recoveries, Firmware and Root

SPECIAL KNO'DIS: This Guide has been changed to refelct proper installation for both types of Maven Pro tablets, be Sure to follow the appropriate guide.
For the purpose of this guide, I'll assume you already have working ADB and Fastboot on your PC, if not, you'll need to set that up first. This guide doesn't cover installation of ether of those. If you're looking for the guide to the Viking Pro (RCT6303W87DK), go here.
KNO'DIS: I, OR ANYONE ELSE AT XDA, WILL NOT BE HELD RESPONSIBLE FOR "BRICKING" YOUR TABLET!! IF YOU MANAGE TO MAKE A BRICK, DUE TO YOUR "FUN-DA-MENTAL" INABILITY TO READ, GO BUILD A BBQ PIT WITH IT!!​ (Or ask for help, there's a lot of friendly people around here)​
So, without further ado, lets get started. First, you'll need to know which version of firmware your device is running, this can be found in 2 different ways. From a running device go to: Settings/About tablet and look at the Build number. Or you can boot into stock recovery and the firmware version will be at the top left of the screen.
You should see something like the following, and note the 2nd number after the 2nd "V":
Code:
RCT6213W87DK-ANDROID5.0-V37-V1.9.30 <-- This is x.9.x version of firmware
or
RCT6213W87DK-ANDROID5.0-V68-V1.12.30-B <-- This is x.12.x version of firmware
Now that you know which firmware you have, follow the approriate guide below. I've broken this post into 2 different sections, as each tablet is just a little bit different.
About the Bootloader​
This applies to both versions of firmware and tablet users. Turns out, the booloader doesn't have to be unlocked in order to install a custom recovery or root the device. So there's really no reason to unlock it, and I have removed that portion of this guide.
Installing MTK Preloader Signed Drivers​
Drivers located Here
x.9.x Versions
Steps (Windows 8/8.1/10): For step 2 you will have less than five seconds. Preloader mode is only active for a few seconds. So read first!
1- Extract the drivers to the Desktop and open the Device Manager ("right click" on the Start button, select "Device Manager")
2- Plug your tablet in as such: turn off the tablet. Plug in the micro USB on the tablet, the other to the USB port on the PC, now very quickly in the device manager locate the new device and right click on it. For me, it showed up under "Other devices" and read MT65XX.
3- Select "update driver software" then select "browse my computer for driver software" (make sure "Include subfolders" is selected.
4- Click "Browse..." and navigate to where you extracted the driver zip. You "should" be at the following path: Desktop/MTK Preloader Signed Drivers
5- Click on "OK" then "Next". The driver should install at this point. Once that is done, unplug the usb cable from the pc (I find it easier to just keep the micro in the tablet).
x.12.x Versions (Requires Full size Male-to-Male USB Cable)
Steps (Windows 8/8.1/10): For step 2 you will have less than five seconds. Preloader mode is only active for a few seconds. So read first!
1- Extract the drivers to the Desktop and open the Device Manager ("right click" on the Start button, select "Device Manager")
2- Plug your tablet in as such: turn off the tablet. Plug in the full size USB cable to both the tablet and the PC.
3- Plug the micro USB into the tablet, the other to another USB port on the PC, now very quickly in the device manager locate the new device and right click on it. For me, it showed up under "Other devices" and read MT65XX.
4- Select "update driver software" then select "browse my computer for driver software" (make sure "Include subfolders" is selected.
5- Click "Browse..." and navigate to where you extracted the driver zip. You "should" be at the following path: Desktop/MTK Preloader Signed Drivers
6- Click on "OK" then "Next". The driver should install at this point. Once that is done, unplug both USB cables from the PC (I find it easier to just keep them in the tablet).
Installing TWRP​
Firmware/TWRP Downloads
Maven x.9.x (Currently Contains: V37-1.9.30 and TWRP)
Maven x.12.x (Currently Contains: V63-V1.12.0-20150802 and V66-1.12.20-B-20150831 Firmware and TWRP)
Special Thanks to: @ShadowCX11 for testing for me.
Be sure you are using the appropriate TWRP for your version of firmware, and do the following:
1- Extract the firmware and the SP Flash Tool to your desktop.
2- Start the SP Flash Tool, and where it says "scatter file loading" click and navigate to the folder where you have the firmware and load the scatter file (depending on device, it could be in the "Images" folder).
3- Once that is done, uncheck everything, and select "recovery" only, from the list, navigate to the TWRP image file and click "Open", then click on the download button.
4- Plug the USB cable(s)* back into your PC. At this point the flash tool will load the recovery to the tablet. DO NOT UNPLUG ANYTHING UNTIL THE FLASH TOOL SHOWS YOU A GREEN CHECK MARK TO INDICATE THAT IT IS DONE, OR YOUR TABLET COULD BE HARD BRICKED AND IRREPARABLE.
5- After you get your check mark, unplug and boot into recovery, hold the Volume + and Power button. When splash screen comes up (the 2 dogs) release the power button.
6- Welcome to TWRP
*Remember, x.12.x requires 2 USB cables to work
ROOT​
You can get root by flashing the latest SuperSu zip file located here, be sure to download the flashable zip.
Otherwise, for root, you can use the KingRoot app located here, (get the apk, or "Download for Android") and if you don't want a Chinesse Super User app, you can replace it with the ChainFire SuperSu by going here.
NOTE: This method of replacing KingRoot with SuperSu no longer works properly, and results in a bricked device.
Device Tree
GitHub
CREDITS
@vampirefo (for the CWM Recovery and teaching me about TWRP, there would be no recoveries if it wasn't for him!)
@Bogram (for the lk.bin patch trick)
@smartmanvartan (for the flashing guide)
Reserved
Reserved #2
Hello! I've had my Maven Pro for a couple months now and I still haven't rooted it like I have with the rest of my devices. I'd love to do it too, but reviewing your instructions, I found that my version number is way different. V66-V1.12.20-B. will that version patch tool still work for it? is there an update that it's refusing to download? Thanks!
Edit: on top of this, i can't get it to even connect (step 2) with any of my microUSB cables. (they work with my other devices)
equinox13 said:
Hello! I've had my Maven Pro for a couple months now and I still haven't rooted it like I have with the rest of my devices. I'd love to do it too, but reviewing your instructions, I found that my version number is way different. V66-V1.12.20-B. will that version patch tool still work for it? is there an update that it's refusing to download? Thanks!
Edit: on top of this, i can't get it to even connect (step 2) with any of my microUSB cables. (they work with my other devices)
Click to expand...
Click to collapse
Ooh, a v12, sorry friend, lol. Make sure the tablet is off, and be ready with "Device Manager" open, the preloader only shows up for a bit, then it disappears. The patch tool should still work for you, but the TWRP recovery may not. If it doesn't, the CWM recovery will after I modify it, because it's non-touch.
If neither recovery works for you, you can give me a copy of your "boot.img" file, and I can convert TWRP or CWM to work on your tablet. Also, I've changed the guide up top to include other root methods.
If you have any trouble, by all mean, post, and I'll try to help you through it
Regards,
Nepo
EDIT:
A friend found some V12 firmware, and I'll be uploading it soon. I can get a boot.img file from it to make a recovery.
My maven pro is stuck in a bootloop after I rooted now I don't know what to do. I can't even shut it down
GartimusPrime said:
My maven pro is stuck in a bootloop after I rooted now I don't know what to do. I can't even shut it down
Click to expand...
Click to collapse
You can reflash firmware while it is in a bootloop, I've done this many times. If you have everything set up, drivers, SP Flash Tool, firmware, etc..
Do the following:
1) Startup the Flash Tool and Load your firmware, as described in the OP (be sure to "uncheck" the Preloader)
2) Plug in your micro USB cable to both the PC and the tablet
3) Press and hold the "Reset" button located on the back
4) Click the Download button, then let go of the reset button, it should start flashing the firmware.
If it doesn't the first time, retry steps 3 and 4. I've had it fail the first time before, but work on the second.
Good Luck and let me know how it goes. Also, if the battery is completely drained by the time you read this, just flash firmware normally (again, uncheck the preloader). The tablet has to be powered off to flash it anyway.
Regards
Nepo
So after reflashing my tablet (a Canadian V12 that had V68, and flashed to V66 trying to unlock the boot loader and install CWM), USB doesn't work. The port doesn't output any voltage, and neither does the keyboard connector. The tablet acts like nothing is there, as does the PS3 controller I tried. Also, before, Firmware Update would say there's no updated firmware. Now, it doesn't seem to do anything. I flashed every partition except preloader, MBR and ebr, and the sec partitions. Do I have to reflash again, or is there something else I can do?
On a completely different note, I tried flashing a patched lk.bin, and it failed with an error I don't remember (I had temporary access to a PC).
One more thing that was quite interesting to me. It seems if you reboot into recovery or bootloader from Android (APM+ or root), you're then able to access the recovery with Power + Vol. Up. Is this known, or was it a fluke?
ShadowCX11 said:
So after reflashing my tablet (a Canadian V12 that had V68, and flashed to V66 trying to unlock the boot loader and install CWM), USB doesn't work. The port doesn't output any voltage, and neither does the keyboard connector. The tablet acts like nothing is there, as does the PS3 controller I tried. Also, before, Firmware Update would say there's no updated firmware. Now, it doesn't seem to do anything. I flashed every partition except preloader, MBR and ebr, and the sec partitions. Do I have to reflash again, or is there something else I can do?
On a completely different note, I tried flashing a patched lk.bin, and it failed with an error I don't remember (I had temporary access to a PC).
One more thing that was quite interesting to me. It seems if you reboot into recovery or bootloader from Android (APM+ or root), you're then able to access the recovery with Power + Vol. Up. Is this known, or was it a fluke?
Click to expand...
Click to collapse
No USB is a new one on me, I wish I had a x.12 version of this tablet to test on (mine's x.9) I'd try a re-flash, this time, do everything but the preloader, the reason for not flashing a preloader is because it sometimes semi-bricks one of these tablets.
Interesting note, there was a guy on the Viking thread (RCT6303W87DK) that flashed CWM without unlocking his bootloader, and everything is working fine for him...
Regards,
Nepo
PS, Power + Vol Up is the standard way to enter recovery on this device (I have the Xposed APM+ apk installed too)
NepoRood said:
No USB is a new one on me, I wish I had a x.12 version of this tablet to test on (mine's x.9) I'd try a re-flash, this time, do everything but the preloader, the reason for not flashing a preloader is because it sometimes semi-bricks one of these tablets.
Interesting note, there was a guy on the Viking thread (RCT6303W87DK) that flashed CWM without unlocking his bootloader, and everything is working fine for him...
Regards,
Nepo
PS, Power + Vol Up is the standard way to enter recovery on this device (I have the Xposed APM+ apk installed too)
Click to expand...
Click to collapse
So just a quick question: Is the device /dev/recovery for sure recovery? I want to see if I can just use dd to flash recovery.
ShadowCX11 said:
So just a quick question: Is the device /dev/recovery for sure recovery? I want to see if I can just use dd to flash recovery.
Click to expand...
Click to collapse
Yes, to pull a copy from a running tablet you use dd, and the path is: /dev/recovery
So, I'd do it this way, using adb:
Code:
adb push NAME_OF_RECOVERY.img /data/local/tmp
# Wait for it, then type:
adb shell
#Followed by:
dd if=/data/local/tmp/NAME_OF_RECOVERY.img of=/dev/recovery
#After it finishes:
reboot recovery
Okay, I got CWM installed! Now to see if I can find a way to build TWRP...
ShadowCX11 said:
Okay, I got CWM installed! Now to see if I can find a way to build TWRP...
Click to expand...
Click to collapse
Great! Is the CWM in portrait or landscape? You can always try to port the one I built for the x.9's, just unpack stock recovery, unpack TWRP, swap out the prebuilt kernel and repack.
NepoRood said:
Great! Is the CWM in portrait or landscape? You can always try to port the one I built for the x.9's, just unpack stock recovery, unpack TWRP, swap out the prebuilt kernel and repack.
Click to expand...
Click to collapse
It's in landscape, and works quite well! I just like the touch interface a bit more. I'll try the kernel replacement.
ShadowCX11 said:
It's in landscape, and works quite well! I just like the touch interface a bit more. I'll try the kernel replacement.
Click to expand...
Click to collapse
I prefer TWRP as well, that's why I built it
The only reason I don't have one posted for x.12 users is I can't test it. If you get it to work properly, let me know and I'll add it to the OP so others can benefit. :good:
If not, I can do some builds for you to test, if you don't mind. I have the x.12 kernel in my repo
NepoRood said:
I prefer TWRP as well, that's why I built it
The only reason I don't have one posted for x.12 users is I can't test it. If you get it to work properly, let me know and I'll add it to the OP so others can benefit. :good:
If not, I can do some builds for you to test, if you don't mind. I have the x.12 kernel in my repo
Click to expand...
Click to collapse
Yeah, I can't figure out how to extract the kernel, because I don't usually have access to a PC. However, I'll take some testing builds if you can make them.
Also, back to the USB issue, a reflash of everything except preloader didn't fix it. However, checking the firmware update now tells me that this is the latest version (which is definitely wrong, since I had v68). It must be an incompatibility between the USA and Canadian variants. If you find a Canadian firm dump, can you send me a link?
---
Hmm, okay.
So I just took a look at the model number on my box, and it's RCT5213W87DKF. That extra letter is what changes this a bit. I'll try seeing what I can dig up in terms of OTA updates, and I'll keep posting about what I find.
---
Okay, so after a few packet captures, I found the tablet makes a GET request to http://tablet12.gyrodock.com:2300/OtaUpdater/android?device=RCT6213W87DK with the User-Agent rk29sdk/4.0, but the server returns a 404 page. When I do this in the browser, however, I get something quite peculiar happen, which interests me. Most of the other places on the site return a Tomcat 404 that has the path in the parenthesis. However, for the OTA URL, it just has empty parenthesis. POST requests to that URL return a 200 OK with no return data, which is also interesting. I'll keep hunting around.
Some people might not have a PC to run flash_tool on, so here's how you can flash recovery/uboot/mbr/ebr2/logo/sec_ro from within Android
I'll use recovery as an example. I'm using a V12 tablet, so steps might be different if you have a V9. I tried to make this guide as revision-agnostic as possible, so correct me if I mess something up.
Root your device. The method I use is KingRoot, because it doesn't require any weird things. You can uninstall KingRoot and flash SuperSU later.
Download a recovery image. Make sure if you have a V12 tablet, you download a recovery image for V12, and a V9 recovery for a V9 tablet, or you'll brick your recovery. I personally prefer TWRP, because it has more features and a nicer UI, but CWM works too.
Get shell access. You can use a terminal emulator.
Type in su, and give the terminal superuser access on your device.
Type in dd if=/sdcard/Download/mavenVY_XXX.img of=/dev/recovery, where Y is 9 or 12, and XXX is CWM or twrp3.0.2. This will flash the recovery image.
Finally, type in reboot recovery. This should reboot into your custom recovery! It might also enable Power + Vol Up access to recovery, however, this hasn't been confirmed.
All the other partitions are similar, just replace the references to recovery images with the respective file names for the raw partition, and /dev/recovery with /dev/[PARTITION]. You can NOT flash the android or usrdata partition while in Android or you'll most likely soft-brick your tablet, however, you can boot into TWRP and go to the terminal and do the flash. You must copy your disk images to /tmp when doing so however, or you'll probably lose the disk image during the flash, effectively causing a brick.
Hope this helps people out!
ShadowCX11 said:
I've found out that it seems the v12 tablets strictly enforce the checksums of partition images, so flashing a custom recovery or uboot does not work with flashtool.
Click to expand...
Click to collapse
Nice addition, but all you have to do is disable it in the Checksum.ini file (change the 1 to 0):
Code:
[IsEnableChecksum]
CHECKSUM_SWITCH=0
I did that for the v9 versions, but only uploaded the v12 firmware...
NepoRood said:
Nice addition, but all you have to do is disable it in the Checksum.ini file (change the 1 to 0):
Code:
[IsEnableChecksum]
CHECKSUM_SWITCH=0
I did that for the v9 versions, but only uploaded the v12 firmware...
Click to expand...
Click to collapse
Oh... makes sense...
ShadowCX11 said:
Oh... makes sense...
Click to expand...
Click to collapse
I'm glad you posted that info, it'll be super handy for folks that may not have access to a PC, or would rather use their device instead of a PC :good:

Lenovo Tab3-710f custom recovery?

We are trying to get hold a custom recovery for Lenovo Tab3-710F. We are using hundreds of Lenovo tablets in our projects and have up until now used Tab2 A7-10 which has a custom recovery build for it (found here att XDA).
The reason we need the custom recovery is for cloning the unit which works good in CWM or TWRP.
The problem now is that Lenovo have stopped selling Tab2 so we are now stuck with a unit we cant clone.
Have somebody successfully created a custom recovery for the unit? If not or if you have we are offering payments/devices to get this working asap. Are you interested please PM us? When we have it we can share it to the world here no problems for us.
If you need to root the device KingoRoot latest APK works.
So hope somebody can help us.
Perhaps useful for you: I've managed to extract the stock rom of a brand new TB3-710F
http://forum.xda-developers.com/android/help/lenovo-tab-3-7-essential-tb3-710f-mt8127-t3416397
This also includes the "recovery.img" so you could try to change this image and simply flashing it. If it does not work you'll have a stock rom to restore it.
gogetrd said:
We are trying to get hold a custom recovery for Lenovo Tab3-710F. We are using hundreds of Lenovo tablets in our projects and have up until now used Tab2 A7-10 which has a custom recovery build for it (found here att XDA).
The reason we need the custom recovery is for cloning the unit which works good in CWM or TWRP.
The problem now is that Lenovo have stopped selling Tab2 so we are now stuck with a unit we cant clone.
Have somebody successfully created a custom recovery for the unit? If not or if you have we are offering payments/devices to get this working asap. Are you interested please PM us? When we have it we can share it to the world here no problems for us.
If you need to root the device KingoRoot latest APK works.
So hope somebody can help us.
Click to expand...
Click to collapse
Did u manage to get TWRP or CWM for TB3-710F ?
zwirc said:
Did u manage to get TWRP or CWM for TB3-710F ?
Click to expand...
Click to collapse
Yes, I built it for them. Download here
@Tzul @gogetrd We are trying to achieve something similar, configure about 700 tablets of this model. I have played with custom ROMs in the past, but mostly as a consumer (e.g. Cyanogen on personal devices).
It is my understanding that installation using the files provided by @Tzul would require to;
0. create a custom ROM.
Then for each device
1. root device (e.g. Developper mode, allow "Unknown source"s, adb install one rooting apk, run it, etc).
2. install custom recovery on device
3. flash custom ROM
Am I right?
If so do we agree that the time spent doing these operations might be about similar than the time spent e.g. manually installing / configuring the device? Or is there a way to automate the steps above?
You can configure 1 tablet, then extract the ROM and flash it with the "download mode". You don't even need to boot the tablet!
If you want more info let me know, back from holiday in a few days
@lacostej You can certainly automate some steps, and you do not always need root. (And the best way to root is to install the latest SuperSU via TWRP; no need for questionable apps that are doing who knows what...)
There are three ways to install another firmware:
The MediaTek SmartPhone Flash Tool (SPFT). This is a PC program (Windows and Linux) that allows reading and writing of the entire internal storage (on a partition granularity). Via USB, while the device is powered down. Only for devices based on MediaTek chips, of course (this tablet is MediaTek-based).
Fastboot. This is a little USB protocol implemented by the bootloader. A Fastboot client on PC can communicate with the bootloader via USB and execute certain commands, e.g. "fastboot flash" for flashing partitions. However, there are a few drawbacks with this:
First, you need to boot the device into fastboot mode. Some devices have a boot menu that allows you to do this, but this device doesn't. Starting the tablet via power+volumeUP takes you directly to the recovery instead of a boot menu. But in the recovery, whether stock or TWRP, there's a reboot to bootloader option. Using ADB (adb reboot bootloader) should also take you there.
Second, the "fastboot flash" command is restricted on this tablet. If you were to use "fastboot flash recovery <recoveryfilename_here>", for example, it would abort with an error message. I have patched the bootloader to allow the flash command, but you'd first need to install this patched version on your tablet(s), of course, via SPFT or other means.
Third, the "fastboot flash" command has a size limit - the bootloader needs to buffer the USB data in RAM before it can be written, and since the tablet has only 1 GB of RAM, you obviously can't flash a 1 GB system image this way. The buffer is actually a lot smaller: just 128 MiB. Meaning whatever file you send to the tablet via "fastboot flash", it cannot be larger than 128 MiB. So, how do you flash the system or userdata partition then, which are much, much larger? By splitting their image file into many smaller "sparse" image files, each of which is below the size limit. There's probably a tool for doing this, but I don't know any details.
TWRP, or another custom recovery. They allow you to create and restore backups. TWRP has some automation support via OpenRecoveryScript.
So, if you have 700 tablets to configure, you can configure just one, then save its state via SPFT or TWRP, then restore that on each other tablet.
What is its "state"? Well, the system, cache, and data partitions. The system partition is normally read-only and won't change, therefore you do not need to clone it. Unless you install root and modify stuff on the system partition, of course. The cache partition is quite irrelevant. It is the data partition that has all the app settings.
However, if you clone the data partition from one tablet to others, then you're causing each tablet to use the same Android ID (a long number identifying an Android device, usually randomly generated when Android is first booted after a factory reset), the same Bluetooth and WiFi MAC addresses, and some other IDs that should be unique on each device (the tablet's Lenovo serial number might be in some cloned files as well, e.g. the WiFi settings).
You can at least avoid cloning the MAC addresses by deleting the entire directory /data/nvram/ before you create your backup. MediaTek devices have a dedicated NVRAM partition that contains the MAC addresses and some other stuff, and this data gets unpacked to /data/nvram/ when Android boots. Unless the files there already exist. So, by deleting /data/nvram/ before you clone, you force each tablet to extract its unique MAC addresses again at the next boot...
Thanks a lot for the feedback. Really appreciated.
Tzul said:
@lacostej And the best way to root is to install the latest SuperSU via TWRP; no need for questionable apps that are doing who knows what...
Click to expand...
Click to collapse
Doesn't SuperSU already requires root? (http://forum.xda-developers.com/showthread.php?t=1538053)
How did you get root on your Lenovo device? (I assume you had one to dump the image)
However, if you clone the data partition from one tablet to others, then you're causing each tablet to use the same Android ID (a long number identifying an Android device, usually randomly generated when Android is first booted after a factory reset), the same Bluetooth and WiFi MAC addresses, and some other IDs that should be unique on each device (the tablet's Lenovo serial number might be in some cloned files as well, e.g. the WiFi settings).
.
Click to expand...
Click to collapse
That's exactly the thing I was worried about when it comes to cloning. Those problems might arise later during QA, and I probably don't have the time required to do it properly this time.
lacostej said:
Doesn't SuperSU already requires root? (http://forum.xda-developers.com/showthread.php?t=1538053)
How did you get root on your Lenovo device? (I assume you had one to dump the image)
Click to expand...
Click to collapse
SuperSU is just like any other root manager. It provides the actual "su" (superuser) binary that other programs rely on to obtain root privileges, plus an Android app for managing permissions and settings. The su binary needs to be installed on the system partition (at least traditionally), but in order to get write access there, you need root privileges. Therefore, this is a chicken and egg problem: SuperSU provides root, but it also needs root in order to be installed. Other root manager are no different - except that some try to exploit security flaws in Android in order to temporarily obtain root and install their su binary.
Anyway, the classic solution to this conundrum is the (custom) recovery: it basically has root built-in. It can write to the system partition by default, after all one of its jobs is to install firmware updates.
TWRP includes a SuperSU stub. If you leave TWRP via the Reboot menu, it checks whether or not the su binary is installed (at least in Android 4 and 5), and if it isn't, it asks if you'd like to install the SuperSU stub. Which you can then use in Android to update to the latest SuperSU via Play Store. But you can also install SuperSU's latest "update zip" in TWRP to immediately install the full version.
lacostej said:
That's exactly the thing I was worried about when it comes to cloning. Those problems might arise later during QA, and I probably don't have the time required to do it properly this time.
Click to expand...
Click to collapse
Yeah, it is annoying. MediaTek apparently wisened up a bit. Newer platforms they produce do not unpack the NVRAM partition to the data partition anymore. Instead, they use a dedicated "nvdata" partition for that purpose. That way, if you clone the data partition, you at least won't include the unpacked NVRAM data (MAC addresses and IMEI). But still, some other IDs such as the Android ID, references to the serial number, etc. will very likely be referenced by some other files on the data partition.
I created a little "update zip" that can be "installed" via TWRP, which is just a shell script that tries to delete all the files on the data partition that contain unique or sensitive info. I use it to "clean" a data partition before publishing it. But it's not perfect yet...
@Tzul Your modified rom is great. But I have one problem with it.
When you connect your turned off device to the power supply there is a clock and charging animation. The clock is several hours ahead of the system clock. System clock and clock during the charging are connected (when I change the system time the 2nd clock also changes the hour).
I was trying to use hwclock but without success.
Is there some kind of file where I can set the correct time zone for the 2nd clock?
Sorry for my English.
@Yozen I didn't modify the ROM. I extracted and packaged it.
When the tablet is turned off and then connected to a power supply, it will usually start "off-mode charging" (can be disabled, so that Android will boot up instead). This is handled by the bootloader (LK, lk.bin), which also displays the battery animation and the clock that you see. Apparently the bootloader on this device doesn't handle time zones, because the clock shown uses China Standard Time (CST, UTC+08:00). This is the first MediaTek-based device I've seen which shows a clock in the off-mode charging screen at all. I guess they normally don't because they have no simple way to figure out the user's correct time zone at that stage.
Will this method and these files work for TB3-730F?
Sir, is there a custom ROM available for Lenovo tab3-710f ?
lacostej said:
@Tzul @gogetrd We are trying to achieve something similar, configure about 700 tablets of this model. I have played with custom ROMs in the past, but mostly as a consumer (e.g. Cyanogen on personal devices).
It is my understanding that installation using the files provided by @Tzul would require to;
0. create a custom ROM.
Then for each device
1. root device (e.g. Developper mode, allow "Unknown source"s, adb install one rooting apk, run it, etc).
2. install custom recovery on device
3. flash custom ROM
Am I right?
If so do we agree that the time spent doing these operations might be about similar than the time spent e.g. manually installing / configuring the device? Or is there a way to automate the steps above?
Click to expand...
Click to collapse
How did you do it in the end? I'm trying to do something similar here and am very curious!
.acy said:
How did you do it in the end? I'm trying to do something similar here and am very curious!
Click to expand...
Click to collapse
For us it is this "simple".
1. Manually configure a single device
2. Readback the ROM (get the ROM from the device and store it on your PC) using SP Flash Tool
3. Parse the ROM from a single file to multiple files using Mtk Droid Tool
4. (clear cache partition & remove stuff like serial number)
5. Load your ROM in SP Flash Tool
6. Click start
7. DO NOT START your new tablet
8. Connect it to USB
9. Wait (assuming you already have the preloader drivers installed)
10. Done, new ROM is flashed to your tab!
edit:
Oh and with 700 tablets it might be nice to look into compressing the file as the full 8gb dump we flash (and we don't do a lot these days) will take ~30-40 minutes
mattiemvs said:
3. Parse the ROM from a single file to multiple files using Mtk Droid Tool
Click to expand...
Click to collapse
That's unnecessary, because the SP Flash Tool can already read back partitions into separate files.
Also, you don't need to clone some partitions like cache, and you really should not clone nvram and parts of data, otherwise you'll end up with tablets sharing unique IDs such as MAC addresses, which will cause problems.
Tzul, you are absolutely right! I typed the items from my mind as it has been quite some time since I've created the ROM
tb3-710f s000028
Tzul said:
Yes, I built it for them.
Click to expand...
Click to collapse
Hello tzul,
Thanks for your jobs.
I want to install Lenovo_TB3-710F_S000027_TO_S000028_Patched_Tzul.zip
But i don't know how i do this when i try with SPFT i choose teh scatter-file and i have an error :
sp flash toll error : 5417
The load scatter file is invalid !
hint :
please check the scatter file and select again
Can you help me ? please
@siegheart73 That is a patched OTA update. It needs to be installed by the recovery (stock or TWRP). If a zip file contains a "META-INF" folder, then it's most likely intended for the recovery, and not for the SPFT.
Tzul said:
@siegheart73 That is a patched OTA update. It needs to be installed by the recovery (stock or TWRP). If a zip file contains a "META-INF" folder, then it's most likely intended for the recovery, and not for the SPFT.
Click to expand...
Click to collapse
Thanks for your answer.
I go to test it.
I want to root this kernel 000028 and i have difficult to do it ?
Do you have a easy solution ?
Thanks a lot for your help.

[guide] Blu Vivo XL4 | | Vivo Xi || Vivo Xi+

The BLU VIVO XL4 has arived.
Sorry this guide is not for very new users, it relies on certain amount of prior knowledge.
**NOTE**
Unlocking Bootloader WILL set warranty flag to "NO"
Make the read-back backup, BEFORE unlocking, so there is a possibility to restore warranty to "yes"
Getting SPFlash Tool to work on BLU VIVO XL4
I used sp flash tool version 5.18.28
Needs custom DA file and Auth file. Both have been found from a near clone device.
Open flash tool select the DA file and Auth file from the link below.
add the scatter file from archive. There is a preloader file in the archive also. This is needed for spflash tool to open the Auth file.
Stock Rom and Auth file
Then follow the guide found on youtube.
Not planning to go into too much detail about the actual pulling of the firmware, as there is already
a fantastic guide with step-by-step photos and also a video.
Just the basics
Pull stock rom with spflash tool once just from the "boot region" to get the preloader file.
Process that file with the Wwr_MTK tool to get partition table information.
And one more time pull as one large binary file from the "user region" then split it into
individual images using the tool called "Wwr_MTK" it can be found on other site(Hovatek). I cannot put a
link as it is against forum rules (no advertising other forums)
But there is a youtube video that describes the process. And gives link for download of the tool.
**NOTE-1**
The Wwr_MTK tool did not have the correct chip (mt6762 In fact the "family class" for the chip is mt6765) as an option. Because of this you will need to add it to the tool before using it. Open the downloaded zip.( I used "WwR_MTK_2.40_Eng" ). Open "Template.ini" with text editing software, in the section labeled "CPU" add "MT6765 2" , keep same format as the rest of the file. Save the changes and close Template.ini.
Now when you run the tool, you will be able to create the scatter file as you split the rom into files.
**NOTE-2**
The tool connects to internet and downloads fresh the files and scripts when you start it. There is a 30 second ad screen displayed. If you block internet to the tool, then the add screen turns into 2 minute wait screen. I am not suggesting that you hack the tool to by-pass it, just letting you know what to expect.
IT IS HIGHLY RECOMMENDED TO MAKE YOUR OWN FULL BACKUP BEFORE PERFORMING THESE STEPS
AFTER YOU HAVE MADE FULL BACKUPS
Now to start modifying
DOWNLOAD
UNLOCK BOOTLOADER
unlocking bootloader is no more complicated then then enabling OEM unlock toggle in dev options menu.
Then performing Command in terminal. Just like so many android devices.
Unlock Bootloader
1. Enable Developer options on phone:
open settings--> "about device"--> click build number 5-7 times--> go back one screen in settings
-->select more "more settings" --> scroll to bottom "Develpoer options" --> enable "usb debugging"
2. Open cmd or power shell terminal
3. reboot phone to bootloader with the following commands
Code:
adb reboot bootloader
4.Once the phone has finished loading into fastboot mode type this command
Code:
fastboot oem unlock
I also did --MIGHT be an optional step
Code:
fastboot flashing unlock
Do not think both were needed.
After each command when phone was rebooted,
it took extra time to open. But did not show the normal recovery screen while
it did the factory reset. But a reset did happen both times,
as I had the setup wizard each time.
Even after unlocking bootloader, doing a "fastboot boot *xyz.img" (boot or recovery test images)
Phone would only cycle to off then do a full reboot. Doing "fastboot flash boot boot.img" does flash the boot.
And "fastboot flash recovery recovery.img" does flash the recovery.
TWRP
1. Download TWRP From Link above
2. Enable Developer options on phone:
open settings--> "about device"--> click build number 5-7 times--> go back one screen in settings
-->select "more settings" --> scroll to bottom "Develpoer options" --> enable "usb debugging"
3. Open cmd or power shell terminal
4. reboot phone to bootloader with the following commands
Code:
adb reboot bootloader
5. Now give the command to flash twrp, assuming you downloaded the file to default download folder
Code:
fastboot flash recovery %userprofile%\downloads\TWRP-3_2_3-1020-OMFG-mod_b6-device-name-vivo-wipe-misc.img
5. Reboot to twrp. Needed to boot directly to twrp, or stock recovery will be re-flashed by phone.
Code:
fastboot oem reboot-recovery
Once inside twrp It is asking for password to unlock (decrypt)***automatic decrypt not work on this device as of YET***
this is supposed to be same password used to unlock phone.
Because this twrp does not work with encryption, every time you reboot you will have to select language, if changed from default.
To get recovery to be functional, you need to make phone patched for both "DM-Verity" and "Force-encryption"
I do this with
"Universal Disabler"
https://forum.xda-developers.com/android/software/universal-dm-verity-forceencrypt-t3817389
There is similar utiliy built into this Recovery image.
to use the built in option , Select ADVANCED, Then RM Forceencrypt
This will flash the lazypatcher with options set to remove encryption both in boot.img and /vender/*fstab : remove dm-verity.
--OR-- manually do the following steps
Steps
1. Download Zip from Link above.
2. Open TWRP
3. Open Wipe menu
4. Select format /data
5. Key in "YES" and swipe
6. Return to Home Page of TWRP
7. Choose reboot menu then recovery
8. Recovery should now have access to Internal memory (temp for now)
9. Use abd push to put the zip file downloaded above to internal memory
Code:
adb push %userprofile%\downloads\Disable_Dm-Verity_ForceEncrypt_12.16.2018.zip /sdcard/
10. Select install menu , and install the Disable_Dm-Verity_ForceEncrypt_12.16.2018.zip
Do not rename the file. It installs and makes the patch base on the file name.
If you want to have root also, then flash Magisk at this point.
Now the dm-verity and force encryption are off. You can flash gsi custom rom, if you desire. At the moment, I have only been able to boot the phone with working cell data and calls on the PHH-Phusion --vanilla builds. Do not know why the gapps versions do not allow rill to function.
As of the writing of this I have put up V4 of the TWRP port. This version uses the correct mount points for this phone, not the ones from the source of the port. Also corrected the device name in default.prop, to match device name. Build fingerprint has been left as is. Fixed the micro sdcard name and OTG names. Added mipe to the "misc" /"para" partition to escape a factory reset recovery loop that [uu]could[/u] happen under certain situations.
And my prefered ported recovery from LRTeam TWRP-3_2_3-1020-OMFG-mod_b6-device-name-vivo-wipe-misc.img.
DOWNLOADS
Files
1. Sp Flash tool (v 5.18.28 or newer) https://androidmtk.com/smart-phone-flash-tool
2. stock XL4 ROM, DA file, TWRP all in shared folder https://androidfilehost.com/?w=files&flid=287088
3. stock Xi+ ROM, TWRP in shared folder https://androidfilehost.com/?w=files&flid=287703
4. Unviversal DM-Patch disable tool thread
5. Youtube Guide Video to use backup image splitter tool "WWR_MTK" https://www.youtube.com/watch?v=GMAytZ56hac
Kernel sources have been published 12-12-2018, by BLU
I have them synced to GitHub while I make test builds.
https://github.com/mrmazakblu/BLU-VIVO-XL4-kernel
Default defconfig should be arch/arm64/config/k62mv1_64_bsp_defconfig. Based off of build description in "getprop"
Built kernel has not been able to be booted yet.
TWRP is first ported and provided thanks to @Voinea12
.
placeholder not really welcomed here on XDA
just pm a moderator or report this thread when you`re ready to upload something, until then, thread closed
After seeing that the Blu vivo xl4 requires an "auth file" in order to flash with spflash tool, I asked BLU to supply the file.
They responded with a big fat NO.
.......
.......
THE NEXT DAY THE FILE WAS POSTED ON A DIFFERENT THREAD.
SO THERE HELP WAS NO LONGER NEEDED.
Just made successfull readback on preloader. and currently reading full rom.
will post link when done.
here is auth file and DA file I used.
pulled firmware is here.
there are more images in complete firmware, but the ones included should be enough , as long as you NEVER do format all from spflash tool.
STOCK ROM
So far all attempts to load twrp have failed.
Also just tried to flash boot.img with the built kernel. When rebooted, phone just stayed on black screen. No back-light , nothing.
Just a repeating connect disconnect sound from pc. Long pressing power and trying to get into the bootloader menu failed.
Was able to Que up sp flash tool and keep holding the volume down button , on the next time it cycled on off preloader was caught and i was able to flash back the correct boot.img.
Working version is available now
Thread was opened.
mrmazak said:
So far all attempts to load twrp have failed.
Also just tried to flash boot.img with the built kernel. When rebooted, phone just stayed on black screen. No back-light , nothing.
Just a repeating connect disconnect sound from pc. Long pressing power and trying to get into the bootloader menu failed.
Was able to Que up sp flash tool and keep holding the volume down button , on the next time it cycled on off preloader was caught and i was able to flash back the correct boot.img.
Click to expand...
Click to collapse
My streak with SP Flash is still a losing one, the auth file works for my phone as well (Blu Vivo XI+), I just used the preloader.img that was in the update.zip and ran it through the WwR MTK Tool and got the preloader.bin to go with the auth file as you indicated you had done, that was one hurdle that your post helped me solve, but for some reason when I start reading the full rom I get about 6-10 MB into it and then it disconnects from my phone and stops. Not sure if its driver related or what, which drivers did you use for the readback?
psychofad said:
My streak with SP Flash is still a losing one, the auth file works for my phone as well (Blu Vivo XI+), I just used the preloader.img that was in the update.zip and ran it through the WwR MTK Tool and got the preloader.bin to go with the auth file as you indicated you had done, that was one hurdle that your post helped me solve, but for some reason when I start reading the full rom I get about 6-10 MB into it and then it disconnects from my phone and stops. Not sure if its driver related or what, which drivers did you use for the readback?
Click to expand...
Click to collapse
To be honest I have not installed driver specific for this. I have vcomm drivers installed, same from couple years ago.
Is the readback stopping because you set wrong hex address length in the readback tab?
mrmazak said:
To be honest I have not installed driver specific for this. I have vcomm drivers installed, same from couple years ago.
Is the readback stopping because you set wrong hex address length in the readback tab?
Click to expand...
Click to collapse
No, I got the readback of the EMMC_USER just fine and ran it through the WwR MTK tool and it gave me the hex address to use for the full rom readback, t then told me
Code:
The file size is smaller than the start position of the LK (uboot). To determine the type of processor and memory, it is necessary to read the full firmware in the SP Flash Tool, specify the parameters for reading: Start address: 0x0, Lenght: 0x1D1EC00000.
So I entered those two addresses as EMMC_USER readback. If my phone is off and I just connect it to the usb without holding any keys it gives me another error.....and I'm an idiot. just figured it out as I was looking at logs, apparently I must have changed the usb speed in sp flash which changes it's pid causing it to try and read from another port. It's downloading now
Thanks to @hanuma there is now a material themed twrp port.
The V2 version loads. But has no adb or mtp access
https://forum.xda-developers.com/showpost.php?p=78498431&postcount=95
https://mega.nz/#F!225EzQwT!t8hvGvmFoNYNvXev-Li1fQ
******EDIT*****
Most of the following problems did not repeat in same way when I tried to repeat the install process.
Main issue was with simcard. But exact process to get installed and working is still not known.
-- install after already having rooted, encryption removed stock, seems to work.
-- fresh full stock rom, full encryption, then gsi seems to not work sim card.
PHH-treble gsi images do boot this device. I do not have a bug list as yet.
working:WITH encryption removed:
1. wifi
2. camera
3. fingerprint- unlock
4. music
5. video
NOT working :WITH encyyption removed:
1. cell signal
2. cell data
3. phone
4. sms
---------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------
working:WITH encryption enabled
1. phone
2. sms
NOT working:WITH encryption enabled
1.. everything else
EDIT
Much of the force closing problems were from a corrupted external sdcard. When I removed the card , the force close messages did not come.
Getting 4G data connection was not stable. after a full reset and rom re-install I was not able to get data connection, and only able to have connection to make calls when set to 3G connection only.
some bugs in vendor I assume will need some help solving this.
EDIT 2
Finally got around to trying again. his time I started with vanilla version of phh-treble gsi.
4G data and sms, calls in out all work. Camera , video both work.
WiFi tethering did not work.
Setup that worked :
force encryption removed with universal dm-verity patcher, ( bothboot.img and vendor partitions both edited).
magisk patched boot
Would this work on Blu Vivo XI since same chipset?
sinkoo1979 said:
Would this work on Blu Vivo XI since same chipset?
Click to expand...
Click to collapse
It should. I have been working with few users with Xi+ it works for them. And another user of Xi provided a twrp port, but no details on if this read-back worked. It must have, I suppose it must have.
Please do try to do the readback for your self, and share the files. will help with twrp if I can
Guide has been revised.
The original guide suggests to format /data and patch device to remove force encryption. This works fine for stock rom, and modifying stock rom. But I have found that removing encryption will not allow the phone to work as a phone when flashed with GSI. The down side is, at the moment, there is no twrp that is working to read the encrypted /data.
mrmazak said:
Guide has been revised.
The original guide suggests to format /data and patch device to remove force encryption. This works fine for stock rom, and modifying stock rom. But I have found that removing encryption will not allow the phone to work as a phone when flashed with GSI. The down side is, at the moment, there is no twrp that is working to read the encrypted /data.
Click to expand...
Click to collapse
Can any of this be done without a computer
Decaphyz said:
Can any of this be done without a computer
Click to expand...
Click to collapse
No, you need fastboot(PC preogram) to unlock bootloader and either sp flash tool or fastboot to flash recovery.
mrmazak said:
No, need you fastboot(PC preogram) to unlock bootloader and either sp flash tool or fastboot to flash recovery.
Click to expand...
Click to collapse
Oof
mrmazak said:
Thanks to @hanuma there is now a material themed twrp port.
The V2 version loads. But has no adb or mtp access
https://forum.xda-developers.com/showpost.php?p=78498431&postcount=95
https://mega.nz/#F!225EzQwT!t8hvGvmFoNYNvXev-Li1fQ
Click to expand...
Click to collapse
I just did this, and it worked the first time. I got into the phone and set it up. But it was super laggy after a while. So I decided to reset the phone like how you would normally do to fix a problem, and now... it’s making me boot into the recovery each and every time I try and boot into the system... i installed the gsi rom "PixelExperience for AOnly" at max lees site
IndifferentBear said:
I just did this, and it worked the first time. I got into the phone and set it up. But it was super laggy after a while. So I decided to reset the phone like how you would normally do to fix a problem, and now... it’s making me boot into the recovery each and every time I try and boot into the system... i installed the gsi rom "PixelExperience for AOnly" at max lees site
Click to expand...
Click to collapse
dont panic. this is minor bug. Easiest way to solve is to flash stock recovery. and do factory reset from there.
You can install image from twrp or fastboot, even spflashtool.
It is from the flag that is set into para(misc) partition.
You can clear it manually with terminal also, or even use one of the othe rtwrp images I shared. One with "misc" in the file name.
If you use one of those recoveries and do reset will also clear that reboot condition
mrmazak said:
dont panic. this is minor bug. Easiest way to solve is to flash stock recovery. and do factory reset from there.
You can install image from twrp or fastboot, even spflashtool.
It is from the flag that is set into para(misc) partition.
You can clear it manually with terminal also, or even use one of the othe rtwrp images I shared. One with "misc" in the file name.
If you use one of those recoveries and do reset will also clear that reboot condition
Click to expand...
Click to collapse
thanks dude! can you give me the command to run in terminal to do it? ill try that first, then ill try flashing stock recovery!
---------- Post added at 02:47 AM ---------- Previous post was at 02:44 AM ----------
mrmazak said:
dont panic. this is minor bug. Easiest way to solve is to flash stock recovery. and do factory reset from there.
You can install image from twrp or fastboot, even spflashtool.
It is from the flag that is set into para(misc) partition.
You can clear it manually with terminal also, or even use one of the othe rtwrp images I shared. One with "misc" in the file name.
If you use one of those recoveries and do reset will also clear that reboot condition
Click to expand...
Click to collapse
but i was required to wipe the sys, data, cache, and dalvik/art to have a clean install.
---------- Post added at 03:33 AM ---------- Previous post was at 02:47 AM ----------
mrmazak said:
dont panic. this is minor bug. Easiest way to solve is to flash stock recovery. and do factory reset from there.
You can install image from twrp or fastboot, even spflashtool.
It is from the flag that is set into para(misc) partition.
You can clear it manually with terminal also, or even use one of the othe rtwrp images I shared. One with "misc" in the file name.
If you use one of those recoveries and do reset will also clear that reboot condition
Click to expand...
Click to collapse
YO! Oaky so basic laly when i flashed that misc recovery IT BOOTED!!!!! thank you soo much dude, your the best!

[Recovery][Kernel] [8.1] Install TWRP, remove encryption, get Magisk on Visible R2

Disclaimer: This guide and the tools included are provided as-is. Testing has been limited and nothing is guaranteed to work. I take no responsibility for lost data, bricked devices, etc. Continue at your own risk, and please read carefully. THIS GUIDE WAS WRITTEN FOR PHONES ON ANDROID 8.1 - MAY NOT WORK ON DEVICES WITH THE PIE UPDATE.
Note that Magisk and TWRP can interfere with downloading and installing OTA updates. At this time the only updates are security patches, so it would be best to make sure all OTAs are installed before starting.
Mounting and decrypting the data partition is still hit-or-miss. If you haven't set up a passcode or password, TWRP should be able to mount it, and you still might be able to even if you have. Magisk will corrupt encrypted partitions and force a factory reset, and TWRP will not be able to help you back things up if Magisk has been installed before disabling encryption. You've been warned.
Guide: Installing TWRP and Magisk on the Visible R2
Tools:
prog_emmc_firehose_8917.mbn - firehose for flashing system partitions
Latest available TWRP zip - contains TWRP recovery image and the necessary files for flashing
fstab.qcom - for removing forced encryption
Patched boot image - for installing versions of Magisk newer than v16.7
Stock firmware - optional, but handy to have in case something goes wrong.
Windows users: QPST/QFIL and the QDLoad drivers (possibly the first set of ZTE drivers as well, but likely not necessary). Installing drivers in compatibility mode for XP or Windows 7 might help resolve issues.
Install adb if you don't already have it set up.
Linux users: qdl source code; the guide will cover compiling and installing it. You'll also want to install adb from your distro's repositories. There is a snap package for qdl, but it doesn't work for the purposes of this guide, so please don't use it.
Part 1: Installing TWRP
TWRP is an easy-to-use, touch-based custom recovery for Android devices, designed to make backups and installs simple and painless. Unfortunately, the installation of TWRP on the R2 is going to be a little less simple and painless; the device's bootloader isn't locked down, but it doesn't support fastboot commands, meaning we'll need to get our hands dirty to flash partitions.
Before starting, it's also worth noting that the current TWRP build cannot always decrypt encrypted data partitions, and the device is encrypted by default. This means that TWRP may not be able to mount or back up your data partition unless it's formatted and forced encryption is removed (see part 2).
To flash TWRP, we need to put the device into EDL mode and forcibly overwrite the existing partitions using an EDL tool and the firehose linked above, which unfortunately requires a PC of some sort. Enable USB debugging on your phone, then follow the steps for your operating system below.
For Windows:
1. Install the Qualcomm driver package. Before continuing, you will need to make sure Driver Signature Enforcement is disabled on your PC; QFIL may have issues communicating with the device if Windows blocks the driver.
2. Install the QPST package, then open QFIL from the Start menu.
3. Select 'Flat Build' under Select Build Type.
4. Extract the TWRP zip to an accessible directory (something like C:\TWRP works fine). Place the firehose.mbn in the same directory.
5. Press 'Browse' under Select Programmer, then navigate to the TWRP directory and select the firehose file.
6. Press 'Load XML'. Select rawprogram_recovery.xml, then patch0.xml
7. Connect the phone to your PC and make sure USB debugging is enabled. Make sure your PC is trusted by the phone for ADB commands, then send 'adb reboot edl'.
8. If everything went well, the phone should have rebooted with a blank screen, and QFIL should be asking you to select a port. Press Select Port, and then choose (hopefully) the only item available).
9. The 'Select a port' message should now read something like Qualcomm HS-USB QDLoader 9008 (COM#). IF it does, simply press download.
10. There should be some output in the status window, ending a few seconds later with a blue Download Succeeded message. If so, you're done, and can restart your phone. If there's a red error message, or the status window seems to be stuck on sending, double-check that your device is registered properly in Device Manager.
11. Once you're done flashing, you can reboot into TWRP by holding down the Vol Up button as the phone reboots.
For Linux:
1. Unzip the qdl zip into its own directory, then enter the directory.
2. Compiling qdl requires libraries that may not be installed. For Ubuntu users, you simply need to run ' sudo apt install libudev-dev libxml2-dev' to install them; people with other distros should know how to use their package manager and may have to find the packages under a similar name. If any other packages are required (errors compiling, etc.), let me know so I can update this.
3. Actually compiling should be as simple as opening a terminal in the working directory and running 'make && sudo make install'. If you get no errors, qdl should be installed and able to run from any location, and the compile process shouldn't take much time at all.
4. Before running qdl, ModemManager needs to be disabled, as it can interfere with accessing the phone in EDL mode. In Ubuntu (and most systemd-based distros) you can ensure that it's stopped by running ' sudo systemctl stop ModemMangager'. If you need the ModemManager service, make sure to restart it when you're done.
5. Extract the TWRP zip to an easily-accessed folder, like ~/twrp, and place the firehose mbn in the same folder.
6. Navigate to the TWRP folder and open a terminal there. Now would be a good time to plug in your phone and enter EDL with 'adb reboot edl'.
6a. If your phone was already connected in EDL mode before stopping ModemManager, you might need to reboot it and enter EDL again.
7. If you're in the same directory as the TWRP files, you should be able to start flashing by running 'sudo qdl prog_emmc_firehose_8917.mbn rawprogram_recovery.xml patch0.xml'.
8. If everything's good, you should see some output on your screen, and the phone should reboot momentarily. If the command finishes without output, ModemManager or something similar may have interfered. Make sure ModemManager is stopped, reboot your phone into EDL mode again, and try again. If it hangs at Waiting for EDL device, you're not running the program with admin privileges or your phone isn't in EDL mode.
9. Once the process has finished and your phone has rebooted, you should have TWRP installed. Boot into it by holding Vol Up while rebooting.
That's it! Verify that TWRP is working as expected by doing some test backups and restores, etc. Note that TWRP builds for this device are still sort of experimental; decrypting the data partition may not work for some users, and keeping data encrypted while trying to flash Magisk will not work - you will need to wipe and decrypt the device. If you're satisfied just with TWRP, there's not much else you need to do. If you want to run Magisk or decrypt your device for other reasons, keep reading.
Part 2: Removing Forced Encryption
By default, the device encrypts the data partition without input from the user. This is not ideal, and even if TWRP can decrypt and mount your data partition, from my experience Magisk's init process apparently gets things wrong and tries to write to data before its decrypted - whether that's actually the case or not, the fact of the matter is that Magisk has corrupted my data partition every time I've tried to install it while data was encrypted.
DO NOT flash any zip that removes dm-verity and force encryption - these modify the boot and recovery partitions, and the stock kernel doesn't like the way they do it. If you've flashed the patched boot.img first then you'll at least be able to boot to your system partition afterwards, but it'll still nuke recovery even with a custom kernel installed on it. If you're still using the stock boot.img, you'll get boot loops and won't be able to access recovery; your only choice is to enter diagnostic mode, and reflashing anything from that point is a gigantic pain in the ass, so please, just don't. If you feel the need to do it regardless, please please please reflash your boot and recovery images before rebooting.
Counter-intuitively, the quickest and most painless way to stop the device from force-encrypting itself is to modify the fstab on the vendor partition - the boot partition has no fstab files, and the ones in the TWRP recovery image are already set to make encryption optional. Place the fstab.qcom on the phone's microSD card (internal storage will work if you don't have one, as long as TWRP can access your internal storage; if not, use adb push/pull rather than the below commands), boot into TWRP, and adb shell into your device by USB; if done while in TWRP, you should have root permissions. If your PC doesn't see your phone as an ADB-ready device, go to Mount settings in TWRP and tap on the option to disable MTP; after confirming that ADB works, feel free to re-enable MTP. Once ADB is working, run the following commands:
Code:
mount /vendor
cp /vendor/etc/fstab.qcom /external_sd/fstab.qcom.bak
cp /external_sd/fstab.qcom /vendor/etc/fstab.qcom
chmod 644 /vendor/etc/fstab.qcom
umount vendor
.
That's the simple part - you've replaced the fstab on the vendor partition with one that tells the device that encryption is optional, and backed up the original to your microSD as fstab.qcom.bak, just in case. Now you need to actually remove the existing encryption, which will wipe all the user data from the device. If that hasn't scared you out of continuing, read on.
While we're still in TWRP, we need to go to the Wipe menu. From there, we need to Format Data. It'll give you warnings in a scarier color than I did, but you'll have to type yes and continue regardless. Once that's done, hit the back button a couple times before rebooting. Do a standard factory reset, then reboot.
From there, it may take a couple tries for the device to boot normally as it reformats and repopulates the data partition. If you find yourself stuck on a black screen, reboot again, and if it keeps happening, boot into TWRP and then reboot to System from the reboot menu. Eventually, you should be able to get back to the device setup screen, and depending on your security settings beforehand, you may be prompted to enter your PIN, password, or Google account information.
From here, you should be able to mount, backup, and restore your data partition in TWRP without any issues. If you want to go further and root your device, keep reading for the Magisk guide.
Part 3: Any Magisk You'd Like
Note: Magisk and encrypted data partitions do not play nicely together. Follow through Part 2 first, or you'll have headaches.
ZTE's kernel has a custom SELinux plugin called policyproc, which in short doesn't play nice with a lot of things that modify what happens during the kernel's startup sequence. Unfortunately, modifying the startup sequence is what Magisk does best, and versions of Magisk past v16.7 don't play well with the stock kernel.
If you're fine with v16.7, you can download the zip from its Github release page and flash it through TWRP. However, it doesn't support current versions of Magisk Manager or the uninstaller zip, and naturally it doesn't have all the features of newer versions.
This is where the patched boot image comes in. Basically, it's the stock kernel, rebuilt with policyproc disabled, stuffed into the stock boot.img and replacing the original kernel. It's not entirely perfect as ZTE deliberately left out bits of the source, but even working around that, the kernel seems to run fine after nearly a week of testing on my own device. Still, if you run into any issues that don't show up with the stock kernel, please let me know.
So. you can take that patched boot image and install newer versions of Magisk whichever way you'd like. The default method would be to use TWRP to flash the patched boot image, then flash the latest Magisk zip (v20.1 at the time of writing). Alternatively, you could put the patched boot.img on your microSD or internal storage, install the Magisk Manager app, use it to patch Magisk into the patched boot image, then use TWRP to flash the patched-patched-image to the boot partition. Either way should work fine, and honestly I'm hoping if you've made it this far you don't need further instruction on how to get Magisk installed.
Note that on the first reboot after installing Magisk, the phone may reboot again before loading the system normally. I assume this is standard practice for initializing Magisk, but honestly I have no idea.
With that, you've done just about everything you came here to do. If you still feel like tweaking and possibly bricking your phone, however, scroll on down to Part 4.
Part 3.5: Updating Your Magisk Install
When a Magisk update is available, the Magisk Manager app will generally push a notification to you. Letting the manager handle the upgrade is a good way to get bootloops, unfortunately; upgrading requires re-patching and re-flashing the boot image, and most apps running in system mode seem to handle the task poorly on the R2. If you want to update to a newer version of Magisk, it'd be best to reboot into TWRP, flash the 'clean' Magisk-ready boot image, then install the zip for the version of Magisk you want to update to. You don't need to uninstall previous versions of Magisk to do this, and it should be doable even if a previous Magisk upgrade left you stuck in a boot loop. Note that if you previously told the Manager to 'hide' itself, you may end up with two Manager apps after the update; it should be safe to remove either of them, although the one with the Magisk Manager name will need to be re-hidden if you choose to keep it.
Part 4: Going Even Further Beyond - Project Treble and You
Google requires that all Android phones releasing with Android Oreo or newer must support the Treble framework: generally speaking, anything that's 'stock' Android lives on the system partition, and anything manufacturer or carrier specific exists on the vendor partition. This has allowed for developers to create generic system images, or GSI, consisting of particular Android system partitions that should run on a variety of Treble-enabled devices. And wouldn't you know it, the R2 launched with Oreo, and you've got a couple handy methods of writing system images to your device, through TWRP and EDL flashers.
So, does that mean the R2 supports these GSIs? Not really! Honestly, it's more that it's up to curious people to find out. I've been able to get phhussons's Oreo image working, but that's a bit boring on a device that supports Oreo out of the box. A couple more highly modified Pie builds failed to boot properly, either hanging on their splash screen or crashing the display manager before getting through setup.
There's also the fact that they're generally only distributed as sparse system.img files, something I had trouble flashing with QFIL, and up until about 18 hours before this guide went live, the only TWRP build I had for the R2 could only write images to the boot and recovery partitions, not system, so writing them meant I had to decompress them to a standard EXT4 image and then flash them with QFIL, which wasn't a lot of fun to mess with. In short, testing's been pretty limited, but this build of TWRP should make it much easier for anyone to flash whatever image they'd like. If you feel like being a guinea pig, we'd all love to hear the results! If you want to test, you should look for A-only, ARM64 images.
Questions and Issues
My phone is bootlooping after leaving recovery!
If you haven't messed with system partitions in a way that might cause a bootloop, reboot to recovery and try to boot to system from there. If it continues, reflash your boot image (and Magisk afterwards, if necessary, removing the extra Manager app that might pop up in your app tray if you've got Manager disguised in its settings).
I can't access ADB or MTP from recovery.
It happens sometimes, especially in Windows; just toggle MTP on/off from inside TWRP, or unplug and replug your USB cable.
My phone says I need a factory reset, but TWRP just reboots.
This generally happens if something messed with the encrypted data partition. Do not tap the factory reset button on your phone; instead, power off entirely and manually reboot into TWRP by hilding Vol Up while booting. Perform a factory reset (and format data if necessary) from there, then reboot.
(to be populated)
Credits
@deadman96385 - for uploading the tools that made this possible and the stock ROMs that saved my ass more than a few times
@famewolf - for feedback on what did/didn't work in the last guide
@asderdd - for his Axon 7 kernel work which I shamelessly copied to get Magisk working
Anyone who's contributed to Magisk or TWRP over the years, and the maintainers of the moto e5+ device tree for TWRP since I used most of their branch.
Sources
Kernel source, specifically the tree used for the Magisk patch
TWRP device tree
@FEGuy
Attempted to flash the new twrp via zip....acted like it worked but when I when to install section only boot and recovery were options....so I installed the twrp image itself to recovery....rebooted back into recovery and got a black screen. Additional attempts to go into recovery did same thing. I'll attempt to use the flashify app under factory rom to restore previous copy of twrp. It should work as I had magisk going...I think.
That is... not really reassuring. I've suspected the zip flash might not actually work, but I double-checked that TWRP build on my device first.
What's weird is that that's also the only TWRP image I've gotten to boot without dragging it through an AVB signing process. Let me sign that image and reupload it, see if it works any better.
FEGuy said:
That is... not really reassuring. I've suspected the zip flash might not actually work, but I double-checked that TWRP build on my device first.
What's weird is that that's also the only TWRP image I've gotten to boot without dragging it through an AVB signing process. Let me sign that image and reupload it, see if it works any better.
Click to expand...
Click to collapse
Always possible I hosed something....I grabbed the img of the previously good twrp and flashed it via flashify app...said it worked but when booted to recovery got same black screen. I'm about to experiment with the usb drivers you mentioned vs the ZTE USB ones in the op...they conflict with each other so uninstalling old ones.
If the ZTE and QDLoad drivers conflict, I'd probably say keep the QDLoad. I honestly don't remember if I ever installed any ZTE drivers other than the ones that can be served from the phone by USB.
Pretty sure flashify is just broken; I tried it the other day with the same results after flashing a test build that didn't work at all.
I just redownloaded the TWRP from the original link and it worked fine, and there shouldn't be any files or signature tied to my own device, so I don't really know why it wouldn't work on other phones. I've got another one coming in the mail for actual use on Visible, but it won't be here to test on until tomorrow.
In the meantime, try this TWRP. No different other than letting AIK give it an AVB signature, but some of my test images wouldn't boot otherwise. If it works I'll update the zip in the first post.
FEGuy said:
If the ZTE and QDLoad drivers conflict, I'd probably say keep the QDLoad. I honestly don't remember if I ever installed any ZTE drivers other than the ones that can be served from the phone by USB.
Pretty sure flashify is just broken; I tried it the other day with the same results after flashing a test build that didn't work at all.
I just redownloaded the TWRP from the original link and it worked fine, and there shouldn't be any files or signature tied to my own device, so I don't really know why it wouldn't work on other phones. I've got another one coming in the mail for actual use on Visible, but it won't be here to test on until tomorrow.
In the meantime, try this TWRP. No different other than letting AIK give it an AVB signature, but some of my test images wouldn't boot otherwise. If it works I'll update the zip in the first post.
Click to expand...
Click to collapse
If I su from adb and do a dd if=twrp-signed.img of=xxxxxxxxxxx can I overwrite it manually from shell and if so do you know the path I should use to get it to our recovery?
If flashify is broken, twrp is broken and I'm unable to use qdl nor qfil I'm kinda screwed (for the moment). The qdload drivers did not show the device on a com port when in edl mode...the zte ones do but then again I can't write anything. Any ideas what the heck is up with the linux qdl? Even with --debug it says nothing.
---------- Post added at 02:01 AM ---------- Previous post was at 01:48 AM ----------
famewolf said:
If I su from adb and do a dd if=twrp-signed.img of=xxxxxxxxxxx can I overwrite it manually from shell and if so do you know the path I should use to get it to our recovery?
If flashify is broken, twrp is broken and I'm unable to use qdl nor qfil I'm kinda screwed (for the moment). The qdload drivers did not show the device on a com port when in edl mode...the zte ones do but then again I can't write anything. Any ideas what the heck is up with the linux qdl? Even with --debug it says nothing.
Click to expand...
Click to collapse
I tried dd if=twrp-3.3.1-1-z5151v.img of=/dev/block/bootdevice/by-name/recovery and did same with new signed one. I still get black screen when recovery "loads". At this point I'm going to have to get something figured out with qdl or qfil.
Yeah, I wasn't sure if dd was going to work or not.
Try the QDLoad drivers again in Windows, make sure that the device is using them. If it's not showing up as a COM port in device manager, force it to use the proper Qualcomm driver, which on my system installed to C:\Windows\system32\qcusbcer.sys - I don't know if that installed with the QDLoad drivers or with QPST/QFIL itself.
As for qdl, I don't know; it's been hassle-free for me, for the most part. If you're sure you're in EDL mode and not diagnostics or something, an output from lsusb might help diagnose the issue. If the debug flag isn't providing useful info, might as well try it without. I don't know if there's services other than modemmanager that might interfere with qdl, it could depend on distro.
EDIT: I'll also preemptively warn against trying the TWRP app to flash; it'll do about as much good as flashify.
Will tackle it "later" in the morning. Thanks for the quick followup. I might see more clearly in morning when not so frustrated with it. I swear I haven't had this many issues with getting twrp installed in a long time.
*update* Ok so I lied....I completely recompiled qdl from https://github.com/andersson/qdl and it's working as expected..I used it to flash the original twrp. I then used that twrp to flash the twrp-signed.img and rebooted back into it with no issues.
I also flashed your patched boot and it got as far as the blue visible screen after the zte one then hung. I reverted to my nandroid copy of boot.
The Treble pie loaded ok...I did do a factory reset so data would not conflict..it did do one reboot before loading normally. See screenshots.
The First 4 are from when it was initially installed. The later photo's I had added gapps, a few apps, snapped a picture to use as wallpaper and various other minor things. I found it to be faster under treble pie than it was with factory oreo. I haven't found anything that didn't work yet on it.
Launcher: Evie Launcher
famewolf said:
I also flashed your patched boot and it got as far as the blue visible screen after the zte one then hung. I reverted to my nandroid copy of boot.
Click to expand...
Click to collapse
Did you still have Magisk installed at the time? I'd have recommended uninstalling Magisk using the uninstaller zip from the 16.7 release before replacing the boot image; if there's still Magisk data in /data then booting with a non-Magisk boot image is probably going to cause issues.
In the meantime, I guess I'll update the TWRP zip with the signed recovery image, just in case.
FEGuy said:
Did you still have Magisk installed at the time? I'd have recommended uninstalling Magisk using the uninstaller zip from the 16.7 release before replacing the boot image; if there's still Magisk data in /data then booting with a non-Magisk boot image is probably going to cause issues.
In the meantime, I guess I'll update the TWRP zip with the signed recovery image, just in case.
Click to expand...
Click to collapse
I tried the current installer which failed. I didn't locate the 16.7 uninstaller.
*update* I did finally locate the 16.7 Magisk Uninstaller.
FEGuy said:
Did you still have Magisk installed at the time? I'd have recommended uninstalling Magisk using the uninstaller zip from the 16.7 release before replacing the boot image; if there's still Magisk data in /data then booting with a non-Magisk boot image is probably going to cause issues.
In the meantime, I guess I'll update the TWRP zip with the signed recovery image, just in case.
Click to expand...
Click to collapse
I also installed open gapps pico pie amd64 version on top of the pie rom without issue. I have magisk 16.7 working with treble without issue so maybe it was just the newer versions that had issues?
My 2nd R2 (You are a bad influence) arrived today. Anything you need tested on a stock model? Here's hoping qdl/qfil cooperates 1 last time.
When you were patching the kernel did you see anything that was keeping the phone in LTE only mode for calls? When I get a minute I'm going to put my t-mobile sim into the R2 and see what it will do under the pie rom but since it's still using same kernel I wondered if that would be an issue. We know on the stock rom all calls have to use VOLTE.
I haven't figured that much out yet, unfortunately. I don't know if it's due to the way the kernel is built, or custom libraries distributed on the vendor partition, or what. From what I can tell, the bands are properly unlocked in the NVRAM, and I don't really know enough about modem firmware to make heads or tails of those files.
I will note that for people using the phone on Visible, using a non-stock ROM works for getting around the one-connected-device-per-hotspot limit.
FEGuy said:
I haven't figured that much out yet, unfortunately. I don't know if it's due to the way the kernel is built, or custom libraries distributed on the vendor partition, or what. From what I can tell, the bands are properly unlocked in the NVRAM, and I don't really know enough about modem firmware to make heads or tails of those files.
I will note that for people using the phone on Visible, using a non-stock ROM works for getting around the one-connected-device-per-hotspot limit.
Click to expand...
Click to collapse
Had a couple of thoughts...a quick and dirty method to provide "flash and go" rom's might be to do a nandroid of just system or maybe system and boot for whatever rom and make that available for download. I also know there are methods to convert a nandroid into a flashable zip although I haven't done it before. This was more a thought for folks wanting to go to b12 that already had twrp...simple enough for an existing b12 user to back up system. I have verified swapping between nandroid pie vs stock oreo works ok (assuming you are restoring the right data for each). Also the fingerprint "images" continued to work fine after a restore.....on a previous device when we did a nandroid restore we would have to delete the file storing pin/fingerprints as they wouldn't let you into the phone until re-recorded. It also worked if you remember to turn those OFF before doing the backup....wasn't an issue with the R2. The phone is noticeably more responsive on pie than it was with stock oreo. I'm curious whether you found that to be the case with treble oreo?
Oh minor annoyance....I changed the device id to z5151 which is what it showed under stock but when doing an adb shell the command line is "phhgsi_arm64_a:/" Do you know how to change that? This will change it temporarily till next login: https://stackoverflow.com/questions/33069161/how-to-change-adb-shell-prompt-name-before-the-mark
You could try using setprop as root to set ro.build.product or ro.product.device back to Z5151, or manually edit the build.prop; beyond that, I don't know of a simpler way.
I'm having trouble getting the mobile data working on pie,
I can search for networks and it finds visible but it wont connect.
thanks!!!!!!!!
rangolizardy said:
I'm having trouble getting the mobile data working on pie,
I can search for networks and it finds visible but it wont connect.
Click to expand...
Click to collapse
The visible apn was missing from my pie,
If you're an idiot like me and flashed to pie before backing up "apns-config.xml" then here is the stock one with the visible apn settings: mega(.)nz/#!t5o2mKDL!qVHZijM-MhfLyZwmkrkQ7OddepV7xQVBsRbQr1AhCLY
Remove the () Someone else can maybe post the intact link as i seem to be unable to.
After this 4G works like a charm.
rangolizardy said:
The visible apn was missing from my pie,
If you're an idiot like me and flashed to pie before backing up "apns-config.xml" then here is the stock one with the visible apn settings: mega(.)nz/#!t5o2mKDL!qVHZijM-MhfLyZwmkrkQ7OddepV7xQVBsRbQr1AhCLY
Remove the () Someone else can maybe post the intact link as i seem to be unable to.
After this 4G works like a charm.
Click to expand...
Click to collapse
Posted for rangolizardy: http://mega.nz/#!t5o2mKDL!qVHZijM-MhfLyZwmkrkQ7OddepV7xQVBsRbQr1AhCLY
Any other important tweaks anyone has made to the treble pie image?
Factory Wallpapers are here: https://forum.xda-developers.com/showpost.php?p=79011562&postcount=2

Ultimate Idol 3 Recovery Guide - 2019/09/28

This thread is meant as a guide to provide a higher level picture of what to do when your Idol 3 is bricked. This is not a step by step guide, some systems knowledge is expected.
Several hours ago all I had was a boot logo. Now I have Sailfish thanks to developers like vknecht and many other members who posted guides here and other forums.
Let's begin.
Requirements:
USB cable.
Sahara & Firehose Test software.
Appropriate TWRP image.
6045I Stock OS + Correct modem firmware. The OS and firmware comes in zips, unzip and replace and rezip as needed. My model was the 6045I so that was unnecessary.
Optional:
Your custom OS you wish to install. In my case it was LineageOS 14.1 and SailfishOS published by vknecht.
Stage 1:
The very first thing you need to do is to get the device to boot into /recovery partition which will hold the twrp.img. Doing this provides enough functionality to interact with your phone to unbrick it. To do this you need to:
Put the device into Download mode. It is done by connecting it via USB to PC (while it is off), pressing all 3 buttons - Power, Volume Up and Volume Down.
When screen prompts let go and hold Volume Up
The screen turns off. If the Qualcomm driver loaded successfully (in my case it automatically did), open Sahara & Firehose Test program.
All you need to do here is select your device from the dropdown > Click Detect (detects the driver) > NPRG > Get GPT > Info.
Now you need to scroll down and find the /recovery partition. Point the path to where your TWRP image is stored. The version of TWRP is important. For example, if you tried to install some custom boot chain that is not compatible with your OS you won't be able to get to /recovery. In my experience if you have the twrp-3.1.1-idol3.img and the twrp-3.0.0-1.img (from the hybrid boot loader thread) this was sufficient for my situation. Think logically which one you need to be able to load.
Checkmark the box.
Write the image (make sure to click No)
When you reboot your phone if you hold Volume Up you will have access to TWRP.
Stage 2:
Before you start modding anything just get it to load stock. Use the stock image from the thread link above, in my case it worked. However getting it to load will be a pain, depending on the situation. In my case I encountered /data partition errors. All errors regarding the /data partition are solved the same way - you delete it somehow. You are flashing an OS and your device is already a brick, data loss is acceptable. In my case I couldn't even mount /data (encryption issue) so I had to reformat it via the TWRP menu, make it first EXT2, then EXT4. Errors are irrelevant here, as long as EXT4 format succeeded you are good to go.
Stage 3:
Now use the standard procedure for flashing your target .zip via TWRP. In my case I deleted everything, /system (it was a brick anyway, just making sure it was clean), /data, /cache, Cache & Dalvik pretty much everything that made sense in my situation from the TWRP Wipe menu. I did this because at this stage you might encounter the infamous ERROR 7. There are different causes for it, but to know exactly why you got it open the updater-script file inside your extracted stock-rom.zip (META-INF\com\google\android was my location) via Notepad. This should tell you more about why you had the error.
Then flash the .zip. It worked for me.
Stage 4:
Once booted into the stock OS you are good to go. I don't know if you can get the OTA updates with that image, but I was upgrading to a more recent release of LineageOS so I didn't test long.
Earlier I mentioned you might need different TWRP images. This was the case for me here. After using the 3.0.0 recovery image I could boot into the OS but had difficulties booting into TWRP so I just flashed the 3.1.1 using the above methods and continued.
Once you are in TWRP you can use the standard procedures in other threads for flashing your custom OS. I was flashing LineageOS only as an intermediate step to go to Sailfish so I didn't flash GApps.
At this stage you might encounter ERROR 7 again, but for a different reason; If you deleted /data and you still had this issue it might be because of this. Basically it means you did not swap the radios like I told you to. You can either overwrite the script like suggested in this thread (it will cost you 4G) or you can go back and redo it.
Stage 5:
Boot into your custom OS. I think you get the method from here.
In short to go from brick to custom OS you need to get TWRP. If you can somehow boot into that, you can always fix the phone, and thanks to Sahara & FireHose Test program you should always be able to flash the /recovery partition as long as you find the right TWRP image.
Hope I helped someone, I was bashing my head for 3 days with this garbage Mobile Q Upgrade stuck at 20% issue some people have seen before.
Do you know where I can download the Sahara & Firehose Test software? Thanks.
pug_ster said:
Do you know where I can download the Sahara & Firehose Test software? Thanks.
Click to expand...
Click to collapse
The original thread was here: https://forum.xda-developers.com/idol-3/development/tool-sahara-firehose-test-alcatel-t3454855
Looks like the file is taken down now, I still have a copy however:
https://mega.nz/#F!xBRXRIrT!TlYCGpJ-63L1BxjRhuaYrw
printf() said:
The original thread was here: https://forum.xda-developers.com/idol-3/development/tool-sahara-firehose-test-alcatel-t3454855
Looks like the file is taken down now, I still have a copy however:
https://mega.nz/#F!xBRXRIrT!TlYCGpJ-63L1BxjRhuaYrw
Click to expand...
Click to collapse
Password: decker.su
can i get modem files? this download link is no longer available

Categories

Resources