How (not) to loose OTA? - Experiences and Discussion - Xiaomi Mi A2 / 6X Questions & Answers

Ok, as discussed in the other thread, I want to document when you loose OTA, how to avoid it, and how to fix it.
From what I know, OTA is lost when modifying the system. This means flashing a new kernel, rooting the device and modifying the build.prop or other root level stuff (mostly) will do it. The easiest way to recover from it would be to flash the stock boot.img and everything should be fine, right?
The reason this is in the Q&A is because I need real world examples what happened to you and how you've managed to get it back as well as what have you done and not lost OTA?
Thanks in advance!

You can use OTA with magisk quite easily, without even using computer( worst case, magisk wont find the stock boot.img and you need to reflash it, not such a big deal)
If you mount system for any operation(Cam2Api, or any other modification) , you need to reflash system as well.
You can always reflash stock system(or whole fastboot image), or even wait and flash a whole stock image from scratch
This tool is incredably helpful as well
https://forum.xda-developers.com/mi-a2/how-to/mi-a2-toolkit-unlock-bootloader-root-t3834585
for perfoming these operations ( Also, i have used the cam2 enabler from this tool this time, i have to see if that broke OTA next time there's an update)

I applaud the question, it's a good one, and a good basic place to start re discussing Cam2api enabling.
But, you did mean to say flash stock 'system' image, not "flash the stock boot.img"? Because the reason OTA stops working is probably both images. But for sure the system image being modified will stop them.
I can say for certain that enabling cam2api with the 'adb shell setprop persist... etc) commands will enable the API and ALSO allow you to continue to get OTA updates. I'd suggest doing some research on the setprop persist type commands to know why and exactly how it works, but it DOES NOT modify the 'system' partition, that's why OTA's continue.
A word of warning to the noobs, there are a kazillion 'Tools' in the A2 forums (no, I mean software tools, not the other kind ). Be aware, if that 'Tool' mounts 'System' as Read Write (which I know at least one of them does), 'System' is then considered modified! NO More OTA!

Reptant said:
You can use OTA with magisk quite easily, without even using computer( worst case, magisk wont find the stock boot.img and you need to reflash it, not such a big deal)
If you mount system for any operation(Cam2Api, or any other modification) , you need to reflash system as well.
You can always reflash stock system(or whole fastboot image), or even wait and flash a whole stock image from scratch
This tool is incredably helpful as well
https://forum.xda-developers.com/mi-a2/how-to/mi-a2-toolkit-unlock-bootloader-root-t3834585
for perfoming these operations ( Also, i have used the cam2 enabler from this tool this time, i have to see if that broke OTA next time there's an update)
Click to expand...
Click to collapse
Noted, and will be added to the "documentation" when I write it. Thanks for the Magisk tips.
As for the tool, looking at the other comment, OTA should now be broken because the tool should've mounted the system, but I'll wait a couple of weeks before posting that step in the documentation, and do let me know how it went for you.
AsItLies said:
I applaud the question, it's a good one, and a good basic place to start re discussing Cam2api enabling.
But, you did mean to say flash stock 'system' image, not "flash the stock boot.img"? Because the reason OTA stops working is probably both images. But for sure the system image being modified will stop them.
I can say for certain that enabling cam2api with the 'adb shell setprop persist... etc) commands will enable the API and ALSO allow you to continue to get OTA updates. I'd suggest doing some research on the setprop persist type commands to know why and exactly how it works, but it DOES NOT modify the 'system' partition, that's why OTA's continue.
A word of warning to the noobs, there are a kazillion 'Tools' in the A2 forums (no, I mean software tools, not the other kind ). Be aware, if that 'Tool' mounts 'System' as Read Write (which I know at least one of them does), 'System' is then considered modified! NO More OTA!
Click to expand...
Click to collapse
Yup, my mistake. I ment system. Thanks for the sugestion, I'll have to look at setprop persist type commands.
Now looking back at the new info I have, would that mean that flashing a custom kernel would not stop OTA from working and after the OTA update is applied, a new stock kernel would just be flashed along with the OTA?

@ILA "Now looking back at the new info I have, would that mean that flashing a custom kernel would not stop OTA from working and after the OTA update is applied, a new stock kernel would just be flashed along with the OTA?"
I've never flashed a custom kernel, but I highly doubt doing that WOULD NOT stop OTA? If that's not modifying the phone, what is? I mean, that seems to me to be an obvious modification Xiaomi would be unhappy about and try to prevent, would be my bet.

AsItLies said:
I've never flashed a custom kernel, but I highly doubt doing that WOULD NOT stop OTA? If that's not modifying the phone, what is? I mean, that seems to me to be an obvious modification Xiaomi would be unhappy about and try to prevent, would be my bet.
Click to expand...
Click to collapse
I would have to agree, and that would be highly illogical to me as well, but as far as we've seen so far is that it's only triggered by system modification. On the other hand, we haven't really had custom kernels up until recently so, not really a way to check that until someone tries it with the next OTA, but my bet's on it breaking OTA as well. If noone faces it until December, I'll try it with that update. With the November one, I want to have a sanity check if everything passes. If I have time, maybe I'll rollback updates and try it sooner, but I doubt anything from my side on this front will happen before December.

@ILA, if you do not test with another OTA, the next one will be pie update, well, at least that is what we all expect

minnuss said:
@ILA, if you do not test with another OTA, the next one will be pie update, well, at least that is what we all expect
Click to expand...
Click to collapse
Hope you are correct
But until Pie, I can always test this with rolling back to the previous OTA.

To keep OTA you need:
Stock unmodified boot image
Stock, unmodified and never mounted as writable system partition and vendor partition
Systemless root (such as Magisk), custom kernel and custom recovery all install to the boot image, if you only did one of those, flashing the stock boot image will be enough, or if you allowed Magisk to backup the stock boot image, doing this would be the easiest solution https://github.com/topjohnwu/Magisk/blob/master/docs/tutorials.md
Simply mounting System or Vendor as writable will be enough for you to lose OTA (it's normal to mount them read only, don't panic when magisk does that)
so a modified build.prop will break OTA, but using setprop or resetprop will not, because those only affect /data (therefore you can't have a locked bootloader with camera2 enabled, because locking will wipe /data)
If you modified system or vendor and want to OTA, simply flash the stock image of the partition you modified via fastboot and it will work, but only if it comes from the same build you're currently running, if you're on September patch, you'll need to flash system.img from 9.6,13, and only that will work
it's always a good idea to keep the latest fastboot rom on your pc in case you needed it, but if it's not yet available, you can use TWRP to backup system, vendor and stock boot image before modifying them, and restore them before OTA, but make sure to select Backup System image and Vendor image Not backup system/vendor, because normal backup will just copy the files while an image backup will take the whole partition as it is, if you just restore the files then the image will have a different hash and you'll still fail to OTA
Also, as long as Anti Rollback is not active on A2 (it's not yet), you can always just roll back to the latest available fastboot image and OTA from there

Nebrassy said:
To keep OTA you need:
Stock unmodified boot image
Stock, unmodified and never mounted as writable system partition and vendor partition
Systemless root (such as Magisk), custom kernel and custom recovery all install to the boot image, if you only did one of those, flashing the stock boot image will be enough, or if you allowed Magisk to backup the stock boot image, doing this would be the easiest solution https://github.com/topjohnwu/Magisk/blob/master/docs/tutorials.md
Simply mounting System or Vendor as writable will be enough for you to lose OTA (it's normal to mount them read only, don't panic when magisk does that)
so a modified build.prop will break OTA, but using setprop or resetprop will not, because those only affect /data (therefore you can't have a locked bootloader with camera2 enabled, because locking will wipe /data)
If you modified system or vendor and want to OTA, simply flash the stock image of the partition you modified via fastboot and it will work, but only if it comes from the same build you're currently running, if you're on September patch, you'll need to flash system.img from 9.6,13, and only that will work
it's always a good idea to keep the latest fastboot rom on your pc in case you needed it, but if it's not yet available, you can use TWRP to backup system, vendor and stock boot image before modifying them, and restore them before OTA, but make sure to select Backup System image and Vendor image Not backup system/vendor, because normal backup will just copy the files while an image backup will take the whole partition as it is, if you just restore the files then the image will have a different hash and you'll still fail to OTA
Also, as long as Anti Rollback is not active on A2 (it's not yet), you can always just roll back to the latest available fastboot image and OTA from there
Click to expand...
Click to collapse
Thank you for a very comprehensive answer! That pretty much covers everything that I wanted to know in this thread. This will be the main part of the new thread, but I'll write it in a week or so just to leave enough time if anyone remembers any more examples.

Related

[Q] How to flash OTA updates once rooted/custom recovery?

Hi Nexus 6 experts -
My Nexus 6 arrived today, so of course the first thing I did was follow this thread to unlock the boot loader, gain root, and TWRP:
http://forum.xda-developers.com/nexus-6/general/how-to-nexus-6-one-beginners-guide-t2948481
Now I'm reading about how this breaks OTA updates, and after 30 minutes of looking for the right answer across the forums, I'm in need of some more accurate advice.
1. Is this the right location for downloading factory images?
https://developers.google.com/android/nexus/images
Part of my confusion stems from the fact that my build number for 5.0 is currently LNX07M, and the one listed for 5.0 is LRX21O. Does this matter at all? Could I flash the files from 5.0.1 (LRX22C) without any issue?
2. In order to flash 5.0.1, is this the right procedure to follow?
http://forum.xda-developers.com/showpost.php?p=57411133&postcount=75
I'm looking for how to flash the right images in the right sequence with fastboot, as I'd rather not use any toolkits. The aforementioned post flashes the radio image, then the system image. Is anything else missing there?
3. I'm assuming I need to re-flash root again after this point - is the version listed in the beginners guide still applicable?
Since I've had the phone for all of 2 hours I'm trying my best not to brick it. Any insight would be appreciated, thanks!
EDIT: Download the factory images from the google link above and extract everything. The first extraction renders the radio and bootloader images, along with a zip file. Extract the zip file and you'll find the boot, cache, recovery, and system images. Using fastboot is easy:
fastboot flash <type> <filename>
example:
fastboot flash system system.img
As far as I can tell, <type> is specific to every file. Very easy, only takes a few minutes, and you only need to flash what you need.
Yes Lollipop requires 100% stock for OTA updates now. But OTA is overrated
1. Yes indeed. thats the right place. Wasn't LNX07M the pre-release developer preview?
2. The image contains a flash-all script for windows and linux, but this will wipe data (unless you remove the -w i believe) but I prefer to flash individually.
flashing Radio isnt essential but you will probably want to try it at least. You also want to flash the system and boot images (boot image is the kernel). Then flash SuperSU from recovery. I know OTA's have a script that replace your recovery on first boot if you dont immediately root. I havent flashed a factory image for a whiole so not sure if these have them too, so just a word of caution there.
3. I tend to go for the latest from the beta thread personally, but there is no hard going for older versions except that some things might not gain root properly due to the changes with SElinux etc
Hey thanks rootSU - this is exactly what I was looking for! Once I run through that process I'll add the details to my original post.
So I am on LRX210, rooted and am running twrp recovery. Sounds like I should download the 5.0.1 image and flash the boot, cache, recovery, system, and radio files individually, correct?
Any specific order?
scotbotmosh said:
So I am on LRX210, rooted and am running twrp recovery. Sounds like I should download the 5.0.1 image and flash the boot, cache, recovery, system, and radio files individually, correct?
Any specific order?
Click to expand...
Click to collapse
I only flashed a few of the files, like boot, system and radio. Recovery will remove twrp so you don't want that. Order doesn't seem to matter.
im on 5.01 decrypted boot img...if 5.02 comes out all i do is flash an xda modded 5.02 img boot decrypted file and all the other files except for userdata.img to save all my data and files/settings right? no neeed to revert back to stock, update to ota official 5.02, blah blah ...
cobyman7035 said:
im on 5.01 decrypted boot img...if 5.02 comes out all i do is flash an xda modded 5.02 img boot decrypted file and all the other files except for userdata.img to save all my data and files/settings right? no neeed to revert back to stock, update to ota official 5.02, blah blah ...
Click to expand...
Click to collapse
Yeah you shouldn't need to revert/unroot and use the OTA. Just flash what you need from the factory image. System is the only major one to flash, boot would be the kernel, so use whatever you need for the decrypted version.
I'm assuming userdata overwrites /data which would wipe your files and apps.

[Discussion] OTA vs Fastboot flashing system, boot, etc

Hey all, the OTA for 5.1.1 just popped up for me, but I have a custom recovery.
The way I previously have updated my device is by downloading the image from Google...
Extracting the image zip
Booting to fastboot
Flashing all but the Userdata
It's basically like running the flashall script without the user data flashing. I have manually loop mounted the user data.img file to check if it has anything since it's a larger image file, but it turns out to be completely empty and just a space holder for the partition it seems. Same for cache. So leaving it out is fine.
When I do this, I don't even use the "-u" flag for fastboot, would that be better?
This has worked so far, but I see it seems the more popular way is by downloading the OTA and sideloading it.
What's the difference between these two functions? Which is better?
I personally haven't sideloaded an ota in ages, preferring to fastboot flash the stock .img when an update appears. I flash so much on my phone that I like to start fresh for every update to clear out the junk I guess. As to what's better, I guess that's dependant on the needs and experience of the user.
steviemch said:
I personally haven't sideloaded an ota in ages, preferring to fastboot flash the stock .img when an update appears. I flash so much on my phone that I like to start fresh for every update to clear out the junk I guess. As to what's better, I guess that's dependant on the needs and experience of the user.
Click to expand...
Click to collapse
Yes, but you can fastboot flash it without flashing the user data if you don't want to start fresh. I imagine this is similar to doing an OTA but I'd like to know the technical differences.
Maybe I'll have to tear apart an OTA... I was hoping someone had done this already.

Bootable(only) TWRP development

Our phone needs a bootable only TWRP, this is a fact.
This is because of the a/b partitioning but, more, since of the "new" recovery-in-boot.IMG design which links kernel & recovery presence in an unwanted way...
And a bootable TWRP is the "official solution" developed by TWRP Team for Pixel 2/2 XL - the more similar device up to date - to overcome this issue in better way. I fully agree with their solution and I had thought of it even before of their official release...
A LOT of development has been done on this phone during only last month, better installable TWRP, better kernels, better installation methods developed for them, both for first install and for upgrade too, BUT the lack of a boot-only TWRP, something easily (& ever...) accessible with a simple fastboot boot twrpboot.img command is every day more evident...
For some reasons this has been achieved (even if still with limitations...) on Pixels (with available sources obviously...) but, to date, not for our device...
I would like this thread will become the reference thread to all which would want to contribute on this development, a place to report achieved results and faced issues so that others could try to help & overcome them...
We still have a restricted team of developers, but most of them are *great* on their work... I'm sure that only with a bit more teamed up work, this is a result we could achieve in weeks... probably before Christmas!
So, just to start, everyone which has tried to develop (or study...) this, could report what type of issues has faced to date...
I will still have twrp on my boot image. When I was testing kernels without twrp and I got a horrid kernel panic, stock recovery just wiped the device rebooted, wiped, repeat. When I had a bad kernel panic alpha testing on twrp, it would just boot to twrp in tact then I could flash the old kernel. If everything was too messed up, just reflash twrp. All kernels I have made besides the ones that gave those issues work perfect in twrp. Even the ones where bogoMIPS freq was used instead of our frequencies. (38.0 MHz). I like the idea of not having to hook my device up to a computer to boot into recovery.
Uzephi said:
I will still have twrp on my boot image. When I was testing kernels without twrp and I got a horrid kernel panic, stock recovery just wiped the device rebooted, wiped, repeat. When I had a bad kernel panic alpha testing on twrp, it would just boot to twrp in tact then I could flash the old kernel. If everything was too messed up, just reflash twrp. All kernels I have made besides the ones that gave those issues work perfect in twrp. Even the ones where bogoMIPS freq was used instead of our frequencies. (38.0 MHz). I like the idea of not having to hook my device up to a computer to boot into recovery.
Click to expand...
Click to collapse
Yes, I understand this, BUT there are a lot of other scenarios where having a bootable TWRP could save the day and/or at least make things simpler....
On the other hand, you are the first developer I know who is quite ever going without root!
(So you can't be taken as the "average user"... )
enetec said:
Yes, I understand this, BUT there are a lot of other scenarios where having a bootable TWRP could save the day and/or at least make things simpler....
On the other hand, you are the first developer I know who is quite ever going without root!
(So you can't be taken as the "average user"... )
Click to expand...
Click to collapse
I am confused...(I am I am long time enthusiast, pls forgive my naivety!)
I can reboot into twrp without issue using current method in this forum. Is "bootable twrp" referencing where / how twrp is implemented on this device? What are we missing as users and fans of all the great room devs out there by using our current method?
Ty for any insights in advance.
3's&7's said:
I am confused...(I am I am long time enthusiast, pls forgive my naivety!)
I can reboot into twrp without issue using current method in this forum. Is "bootable twrp" referencing where / how twrp is implemented on this device? What are we missing as users and fans of all the great room devs out there by using our current method?
Ty for any insights in advance.
Click to expand...
Click to collapse
The bootable refers to the command fastboot boot boot_a your-filename.img or fastboot boot boot_b your-filename.img . For the Moto Z2 Force, it has to be compiled differently than a boot image intended to be flashed as with the command fastboot flash boot_a your-filename.img , or fastboot flash boot_b your-filename.img . The reason it now has to be compiled differently is that our boot image is combined with recovery. If you try to fastboot boot a fastboot flash type, it would boot normally into Android OS--if all went OK. If you fastboot flash flashed a fastboot boot type, the device would boot into recovery instead of normal Android OS. Both fastboot boot and normal boot result in the kernel and ramdisk being written to RAM--to volatile memory; the difference is whether the data originally came from the device's non-volatile storage or external PC via USB-C cable.
Alternatively, there are two main forms of zip installers for a combined boot image, which are intended to be flashed inside TWRP or an apk like FlashFire (FlashFire does not play nice with already Magisk rooted Z2 Force, in my experience): a zip flash that flashes the entire boot.img (ramdisk + kernel), or a zip flash that only replaces half of the boot image (the ramdisk). For combined boot images, the ramdisk-only type that does not replace kernel is the more common of the two flash zip types on the site TWRP.me . In fact, I have never seen an official installer that also replaced boot image kernel on the official site.
As mentioned above, the fastboot boot type is not meant to be fastboot flash flashed; rather, it is primarily meant to be a platform utilized to flash the TWRP zip installer. You will see some devices on TWRP.me that have both fastboot boot type and zip flash type, and the aforementioned technique is why both are provided. Take a look at Pixel 2 XL (codenamed Taimen) on TWRP.me, and you'll see this method supported.
@jhofseth .... I could never explain it in a better way! :silly::good:
To come back IT... @jhofseth I know you have studied a lot this thing in these weeks, so I have a question for you...
If you take a boot.img containing a TWRP recovery like one we already have, and try a fastboot boot TWRP.IMG it should boot to its included kernel and then to system (if possible...), right?
This way we can test a new kernel without flashing it but it isn't our goal...
Well, when already flashed on phone we can choose between reboot to kernel/system or TWRP by adb commands or by extensions like Gravity Box...
Is it so hard/possible/thinkable to modify one of our boot.img so that it is in some way "forced" to boot to its TWRP in any case?
(and so even when loaded with a fastboot boot command...)
enetec said:
To come back IT... @jhofseth I know you have studied a lot this thing in these weeks, so I have a question for you...
If you take a boot.img containing a TWRP recovery like one we already have, and try a fastboot boot TWRP.IMG it should boot to its included kernel and then to system (if possible...), right?
This way we can test a new kernel without flashing it but it isn't our goal...
Well, when already flashed on phone we can choose between reboot to kernel/system or TWRP by adb commands or by extensions like Gravity Box...
Is it so hard/possible/thinkable to modify one of our boot.img so that it is in some way "forced" to boot to its TWRP in any case?
(and so even when loaded with a fastboot boot command...)
Click to expand...
Click to collapse
I would work on this if someone explains in detail why our current setup is an issue. I have ran into plenty of kernel issues when building bad kernels and twrp as recovery was better than stock recovery (as stated above). Please, I want this if there is a real reason for it. Our stock recovery just factory resets the device, so a recovery with other options is kinda nice.
Temp booting a kernel: use AIK and inject kernel into a boot image.
New TWRP update, just flash the boot image (which might have new boot image as well) and just reflash kernel. It is better than needing to hook the phone up to a PC every time you want to boot TWRP...
enetec said:
To come back IT... @jhofseth I know you have studied a lot this thing in these weeks, so I have a question for you...
If you take a boot.img containing a TWRP recovery like one we already have, and try a fastboot boot TWRP.IMG it should boot to its included kernel and then to system (if possible...), right?
This way we can test a new kernel without flashing it but it isn't our goal...
Well, when already flashed on phone we can choose between reboot to kernel/system or TWRP by adb commands or by extensions like Gravity Box...
Is it so hard/possible/thinkable to modify one of our boot.img so that it is in some way "forced" to boot to its TWRP in any case?
(and so even when loaded with a fastboot boot command...)
Click to expand...
Click to collapse
Yeah, that is one way to test, but sometimes that will fail even when the kernel works. For example, sometimes if you fastboot flash, sometimes you also have to flash latest Magisk again right away in TWRP, or it won't boot into Android OS. That would be impossible with fastboot boot (i.e., unless you patched boot image first with Magisk manager apk, or some other tool), because you would be unable to flash latest Magisk (or SuperSU 2.82 beta SR5). So, sometimes fastboot boot would fail to normally boot into Android OS--even though the kernel may be completely OK.
Uzephi said:
I would work on this if someone explains in detail why our current setup is an issue. I have ran into plenty of kernel issues when building bad kernels and twrp as recovery was better than stock recovery (as stated above). Please, I want this if there is a real reason for it. Our stock recovery just factory resets the device, so a recovery with other options is kinda nice.
Click to expand...
Click to collapse
There are plenty of scenarios where a bootable TWRP could be hassle saving / needed BUT you ask for a single one and I'll give you one... Or two! :laugh:
I want to be free to install the kernel I want with TWRP version I want.
Now this is not possible (if not with weird/tricking installations! ).
E.g.: let's imagine to want to install latest *stock* kernel with latest TWRP.
I have kernel, I have TWRP flashable zips ( @jhofseth made some which are fantastic...) BUT no (simple) way to merge them.
More: as you like to have tweaked kernel BUT without root, there is plenty of people who like to not have TWRP flashed on their systems BUT still being able to make backups and/or flash zips... (e.g. we have already seen some incompatibility between CF-Root and TWRP in past...) and/or remain free to take OTAs... & so on...
I could continue for hours, but these are already valid reasons IMHO...
Pixel 2 developers are not stupid... they have choosed this solution for valid reasons...
enetec said:
There are plenty of scenarios where a bootable TWRP could be hassle saving / needed BUT you ask for a single one and I'll give you one... Or two! :laugh:
I want to be free to install the kernel I want with TWRP version I want.
Now this is not possible (if not with weird/tricking installations! ).
E.g.: let's imagine to want to install latest *stock* kernel with latest TWRP.
I have kernel, I have TWRP flashable zips (@jhofseth made some which are fantastic...) BUT no (simple) way to merge them.
More: as you like to have tweaked kernel BUT without root, there is plenty of people who like to not have TWRP flashed on their systems BUT still being able to make backups and/or flash zips... (e.g. we have already seen some incompatibility between CF-Root and TWRP in past...) and/or remain free to take OTAs... & so on...
I could continue for hours, but these are already valid reasons IMHO...
Pixel 2 developers are not stupid... they have choosed this solution for valid reasons...
Click to expand...
Click to collapse
Answer (I have done this before I flashed TWRP and it worked wonders): root a boot image, go into system, adb shell, su, dd if=/dev/block/sde17(sdf17 for slot B) of=/sdcard/boot.img You now have a rooted bootable image, return to stock image. now you can use Flash Fire to make backups and flash stuff....
You can flash any kernel to TWRP. you want the stock kernel to flash? I can make a flashable zip with the stock kernel by Motorola if needed. It isn't hard tbh...
jhofseth said:
Yeah, that is one way to test, but sometimes that will fail even when the kernel works. For example, sometimes if you fastboot flash, sometimes you also have to flash latest Magisk again right away in TWRP, or it won't boot into Android OS. That would be impossible with fastboot boot, because you would be unable to flash latest Magisk (or SuperSU 2.82 beta SR5).
Click to expand...
Click to collapse
Why do you think a "booted" TWRP wouldn't be able to correctly flash zips?
I don't see reasons for this...
jhofseth said:
...
So, sometimes fastboot boot would fail to normally boot into Android OS--even though the kernel may be completely OK.
Click to expand...
Click to collapse
In fact I wrote "if possible"... BUT anyway this is of no interest. We *only* need to boot to TWRP, we are not interested in boot to an "unflashed kernel" if you understand what I mean...
We have only to force it to boot *ever* in TWRP. Kernel parts not used by TWRP (if some are needed on our phone, like some Mediatek devices need...) could be omitted at all (as done on bootable TWRP for Pixels2 if I don't go wrong...).
Uzephi said:
Answer (I have done this before I flashed TWRP and it worked wonders): root a boot image, go into system, adb shell, su, dd if=/dev/block/sde17(sdf17 for slot B) of=/sdcard/boot.img You now have a rooted bootable image, return to stock image. now you can use Flash Fire to make backups and flash stuff....
You can flash any kernel to TWRP. you want the stock kernel to flash? I can make a flashable zip with the stock kernel by Motorola if needed. It isn't hard tbh...
Click to expand...
Click to collapse
This are exactly the *weird/tricking* solutions I was talkin'about...
(Edit: let me add I don't like this a bit... Root how? Command could be mistyped & flashfire for backups is an orrible & unsafe solution... Just imagine do all this with valuable data in danger... )
All is possible. BUT these are NOT solutions for average user. And every single one requires a different solution/set of commands.
This is not for average user. I repeat it.
You & @johfseth are *NOT* average users... you are fu**ing good developers* and can't evaluate all scenarios with your (advanced) skills & capabilities...
enetec said:
All is possible. BUT these are NOT solutions for average user. And every single one requires a different solution/set of commands.
Click to expand...
Click to collapse
I have offered to give a bootable rooted image to other people in my kernel thread. The thing is, if ANYTHING is edited, OTA won't work, so bootable TWRP won't be feasible, unless you just backup your system and not edit anything.
If the average user can't follow a dd if/of command, would you want them to have to "fastboot boot (image)?" they might flash it, then their boot image needs to be flashed back or it won't boot. There are downsides for bootable TWRP as well. Because we don't know the decryption keys, you still have to wipe data. If you don't decrypt with the zip or SU, you can't update, etc. Decrypting modifies system which in turn makes you not able to get OTAs. It's a vicious cycle. The keys as per DeesTroy change with each boot image, so we would have to make a TWRP that has all keys, then comes to what devices do we support. Currently, the two who are actively developing and have worked on TWRP or assisted with it's boot kernel have only two devices, Sprint and T-Mobile. We wouldn't be able to debug any other model for it's decryption key.
To reiterate: to have working bootable TWRP with all the idiosyncracies you are asking for, we'd have to go through the java code like DeesTroy did and get it working. I am not fluent in java. I can make a bootable TWRP, but you'll have to be decrypted, because I know C and Python which is what kernels and most ROMs use. I don't know much about Java to find the decryption keys for each device.
Edit: for easy analogy: let's say computer languages are like human languages. I know two languages that are anglo-saxan in heritage, but you are asking me to read something latin based. I might know some things in it, but it's all greek to me still... XD
Edit 2: Looking at the TWRP for Pixel 2, the only reason they have a bootable image is to flash TWRP to both boots per their OP. It wasn't suggested to temp boot it for flashing purposes or backup purposes. It was implemented to have it in both boot partitions per the TWRP OP linked here
enetec said:
Why do you think a "booted" TWRP wouldn't be able to correctly flash zips?
I don't see reasons for this...
In fact I wrote "if possible"... BUT anyway this is of no interest. We *only* need to boot to TWRP, we are not interested in boot to an "unflashed kernel" if you understand what I mean...
We have only to force it to boot *ever* in TWRP. Kernel parts not used by TWRP (if some are needed on our phone, like some Mediatek devices need...) could be omitted at all (as done on bootable TWRP for Pixels2 if I don't go wrong...).
Click to expand...
Click to collapse
I understand, I was mainly referring to fastboot stuff, not within TWRP. Any within TWRP stuff was related to Magisk, not the inability of TWRP to flash once TWRP was loaded, but the importance of re-flashing Magisk and the consequences of not re-flashing Magisk. It was really just centered on the importance of re-flashing Magisk. Anything related to kernels stemmed from someone's question about testing kernels. Just minor stuff, but someone asked.
Uzephi said:
...
Edit 2: Looking at the TWRP for Pixel 2, the only reason they have a bootable image is to flash TWRP to both boots per their OP. It wasn't suggested to temp boot it for flashing purposes or backup purposes. It was implemented to have it in both boot partitions per the TWRP OP linked here
Click to expand...
Click to collapse
And this is *ALL* we need IMHO!!!
Is this doable in your (or others...) opinion?
EDIT: and anyway it probably will work fine to flash something and/or to fully backup a system *including* stock boot.img highfive & only excluding encrypted /data (the same encrypted /data our flashed TWRP is unable to manage too... so, what's the point on it? )
Anyway, we are really going OT here... this is not "Could a bootable TWRP be useful?" thread (it's *obvious* it is... ) this is a "What are the issues we have to face & fix to get a working bootable TWRP?" …
So my questions are basically two:
- is there a method to modify (read: force...) a boot.img with TWRP inside like ones we already have so that it boots to TWRP and not to system?
- can Pixels2/2XL bootable-only official TWRP (sources should be available...) be modified to make it work on our (similar...) device?
I would like to keep OTA (at least until there is a lineage os) and must encrypt my z2. Will the bootable TWRP decrypt the system password and allow backup? If I go with a modified boot.img with TWRP, then can I get OTA updates? or must I wait until someone modifies the OTA boot and publishes it? Can I keep one partition with the OTA and the other with a custom rom image?
kendallgreen said:
I would like to keep OTA (at least until there is a lineage os) and must encrypt my z2. Will the bootable TWRP decrypt the system password and allow backup? If I go with a modified boot.img with TWRP, then can I get OTA updates? or must I wait until someone modifies the OTA boot and publishes it? Can I keep one partition with the OTA and the other with a custom rom image?
Click to expand...
Click to collapse
To get OTA, both slots have to have an unmodified boot image, oem image and system. If anything got modified, OTA will fail
Just to link some very useful info(s) posted elsewhere...
https://forum.xda-developers.com/showpost.php?p=74665682&postcount=347
https://forum.xda-developers.com/showpost.php?p=74667790&postcount=350

THE root method. (any android version. yes 10 stable)

Alot of people still dont seem to understand or know how to root their devices and the help ppl find online can be misleading and sketchy. I just want to share this easy method to hopefully save some ppl from trying to do this or that and having bad results. This IS the common sense duh way to root. Use magisk to root it. Long as you got adb and fastboot on ur pc and the phone's bootloader is unlocked you can root like this...
1)download the magisk manager.
2)get the ota .zip file for the android version you are running.
3)get payload-dumperwin64.zip and unzip it.
4)unzip the ota.
5)put the payload.bin file from the ota into the input folder for payload dumper.
6)run payload dumper.
7)get the boot.img from the output folder of the payload dumper.
8)copy the boot.img to your phone.
9)open magisk manager.
10)press install, then install, then 'select and patch a file'.
11)select the boot.img
12)once the boot.img is patched it will be renamed magisk_patched.img, copy the magisk_patched.img to your computer.
13)start your phone in fastboot mode
14)on your computer open a command prompt and type 'fastboot flash boot (and the magisk_patched.img file location)'
15)once successful type 'fastboot reboot'
ROoT! Super easy right? And yes, it works with 10 stable. Just make sure to use magisk manager 20.1.
As far as twrp goes, you can try flashing it with magisk if you like, but I can't say whether or not it will work on 10 because I didnt bother. Twrp hasnt been very helpful to me on my 6T.
I know to a lot of us this is pretty common sense, but it looks like there are still a lot of ppl needing help getting rooted on 10 stable for some reason... Thats why I posted this. Don't hate. Help.
<Mod edit>
To install TWRP,
download - android Q twrp img and the installer zip. Place the TWRP installer zip in your phone storage.
download magisk installer zip into your phone storage.
1. boot in fastboot, open command line in your PC.
2. flash twrp img - fastboot flash boot <your twrp>.img. You lose root and custom kernel here.
(fastboot boot <your twrp>.img for android 9.)
3. Reboot to recovery from phone's fastboot menu
4. install the <TWRP installer>.zip file in TWRP.
5. Reboot TWRP to flash magisk.
6. Flash <magisk installer>.zip in TWRP
7. Reboot system. Exit your command line on PC.
The end.
Can't we just flash Magisk on TWRP?
yot2703 said:
Can't we just flash Magisk on TWRP?
Click to expand...
Click to collapse
Yea, but you tend to lose twrp upgrading to 10. I've seen ppl report having problems when they try the twrp q img. This way, there is no need for twrp. But if you successfully got twrp workin w/ 10, by all means go that route. I decided not to bother with twrp for now after one of my backups failed to be recoverable. The last straw. Lol.
e5p10nage said:
Yea, but you tend to lose twrp upgrading to 10. I've seen ppl report having problems when they try the twrp q img. This way, there is no need for twrp. But if you successfully got twrp workin w/ 10, by all means go that route. I decided not to bother with twrp for now after one of my backups failed to be recoverable. The last straw. Lol.
Click to expand...
Click to collapse
Seeing as how I haven't made a reliable backup in TWRP/custom recoveries in like two years, I appreciate this route. Swift Backup and frequent OTG backups are enough for me, I just want root.
There is a new version of twrp, build .27 that is meant to fix backup / restore issues
Striatum_bdr said:
There is a new version of twrp, build .27 that is meant to fix backup / restore issues
Click to expand...
Click to collapse
Gud to know. Does 'fastboot boot twrp.img' work with android 10 now with .27? Cuz it wasn't lettin me do it after the updgrade.
e5p10nage said:
Gud to know. Does 'fastboot boot twrp.img' work with android 10 now with .27? Cuz it wasn't lettin me do it after the updgrade.
Click to expand...
Click to collapse
No it doesn't work at all forever. Fastboot is modified in 10 you must write 'fastboot flash boot file.img'
Is losing WiFi one of the bugs on Q? I had WiFi, but it won't stay on after I used this to root.
Doesn't work. Made image with latest Magisk Manager. I suspect it might be existing Magisk modules that make my phone boot loop, but without root and TWRP I can't get rid of them without a factory reset, which is what is recommended in the first place when using this method on A10. So this does not work.
UberFiend said:
Is losing WiFi one of the bugs on Q? I had WiFi, but it won't stay on after I used this to root.
Click to expand...
Click to collapse
I have heard of that being a bug with Q. Just look it up on google. Lots of pixel owners havin that same issue. I didnt have this problem, so I am not sure what caused it or how to fix it. You FOR SURE used the boot.img from the ota you currently have installed? Anyway, I think I saw someone say something about the throttling in the developer settings.. IDK if that really has anything to do with it though.. Im sorry that happened though.
greentag said:
Doesn't work. Made image with latest Magisk Manager. I suspect it might be existing Magisk modules that make my phone boot loop, but without root and TWRP I can't get rid of them without a factory reset, which is what is recommended in the first place when using this method on A10. So this does not work.
Click to expand...
Click to collapse
If you dont have root how or why do you have modules? This wasnt meant for upgrading.. This is meant for AFTER you have upgraded. Im not sure I understand what you are saying. Oh, and make sure to use the same ota you upgraded with btw.
e5p10nage said:
If you dont have root how or why do you have modules? This wasnt meant for upgrading.. This is meant for AFTER you have upgraded. Im not sure I understand what you are saying. Oh, and make sure to use the same ota you upgraded with btw.
Click to expand...
Click to collapse
I upgraded from 9.17 to 10. I lost root and ability to flash Magisk, as I am not willing to factory reset, currently. When I was on 9, I had TWRP and root along with Magisk Modules. Just because you flash a stock boot image, doesn't mean that the folder Magisk modules are stored in doesn't exist. So when I upgraded, I had all those modules still stored.
When you try to patch and flash the stock boot image on 10, you're going to see allot of people complaining about boot loops. The current method to gain TWRP and root on 10 require you to factory reset, and my assumption is that it clears Magisk modules out. So if you use the method you posted, you're going to get boot loops, unless you factory reset beforehand. I tried the method posted before you made a post about it, and it is the same as now, boot loops, and being forced to flash stock 10 boot image.
greentag said:
I upgraded from 9.17 to 10. I lost root and ability to flash Magisk, as I am not willing to factory reset, currently. When I was on 9, I had TWRP and root along with Magisk Modules. Just because you flash a stock boot image, doesn't mean that the folder Magisk modules are stored in doesn't exist. So when I upgraded, I had all those modules still stored.
When you try to patch and flash the stock boot image on 10, you're going to see allot of people complaining about boot loops. The current method to gain TWRP and root on 10 require you to factory reset, and my assumption is that it clears Magisk modules out. So if you use the method you posted, you're going to get boot loops, unless you factory reset beforehand. I tried the method posted before you made a post about it, and it is the same as now, boot loops, and being forced to flash stock 10 boot image.
Click to expand...
Click to collapse
This method I am talking about.. Should only be done after already successfully upgrading. Not as a method OF upgrading. What I mean is.. If youre tryin to do this on 10.. Then you need to upgrade to ten via the system update local upgrade method.. THEN patch the boot.img from the SAME exact ota.zip you used to local upgrade. If youre on 9.0.17 and you patch and flash a boot.img for 10, I would expect a boot loop. Maybe I am misunderstanding you.. IDK But for me, I HAD to factory reset to upgrade to 10. Im not sure why. I local upgraded with the ota, then my phone wouldnt boot up except into recovery mode. I hit factory reset, and it booted up fine. A couple days later I used the same ota to patch a boot.img and I fastboot flashed it, and it was smooth as butter. Root, no need to reset, no loss of data, no wifi issue... I am not sure what it is that is going wrong for some of you, but I wanna make sure you understand, this is not a way to keep root through the upgrade.. This is just a way to root without having twrp AFTER the upgrade. Or am I completely not getting what youre saying?
Tl;dr: this is not THE root method IMHO.
I would advise everyone to stay away from this payload-dumperwin64.zip as it produces following Virustotal results (7 detections). Even if they are false positives, it's a needlessly complex method considering the alternatives out there. In comparison, Magisk is 100% clean while that is essentially one major hack. Let's not forget that the recent update of this TWRP recovery has tackled the decryption issue and grants us back all access to system manipulation and troubleshooting root problems. If you ask me, that still is the root method.
Wrapped with delicious Fajita [emoji896]
Timmmmaaahh said:
Tl;dr: this is notTHE root method IMHO.
I would advise everyone to stay away from this payload-dumperwin64.zip as it produces following Virustotal results (7 detections). Even if they are false positives, it's a needlessly complex method considering the alternatives out there. In comparison, Magisk is 100% clean while that is essentially one major hack. Let's not forget that the recent update of this TWRP recovery has tackled the decryption issue and grants us back all access to system manipulation and troubleshooting root problems. If you ask me, that still is the root method.
Wrapped with delicious Fajita [emoji896]
Click to expand...
Click to collapse
Not everyone wants to have to deal with twrp. Especially after being screwed over by it before the new .27 or whatever. Also, it doesnt have to be that specific payload dumper. Any payload dumper you decide to use is fine. Thats just the one I used. And actually I went and looked and found these instructions from the magisk gitHub:
https://github.com/topjohnwu/Magisk/blob/master/docs/install.md#boot-image-patching
e5p10nage said:
Not everyone wants to have to deal with twrp. Especially after being screwed over by it before the new .27 or whatever. Also, it doesnt have to be that specific payload dumper. Any payload dumper you decide to use is fine. Thats just the one I used. And actually I went and looked and found these instructions from the magisk gitHub:
https://github.com/topjohnwu/Magisk/blob/master/docs/install.md#boot-image-patching
Click to expand...
Click to collapse
Heres what it says:
"Boot Image Patching
You would want to choose this method if either your device does not have custom recoveries, your device is A/B and you don't want to mix recovery and boot images, or your device is using system-as-root without A/B partitions.
To use this method, you are required to obtain a copy of the stock boot/recovery image, which can be found by extracting OEM provided factory images or extracting from OTA update zips. If you are unable to obtain one yourself, you might be able to find it somewhere on the internet."
e5p10nage said:
Heres what it says:
"Boot Image Patching
You would want to choose this method if either your device does not have custom recoveries, your device is A/B and you don't want to mix recovery and boot images, or your device is using system-as-root without A/B partitions.
To use this method, you are required to obtain a copy of the stock boot/recovery image, which can be found by extracting OEM provided factory images or extracting from OTA update zips. If you are unable to obtain one yourself, you might be able to find it somewhere on the internet."
Click to expand...
Click to collapse
The payload dumper thing I was talking about is a method of obtaining the boot.img from the ota on your own instead of looking for one on the web. Doesnt matter what payload dumper you use, that was just the one I found. Hopefully this makes it a lil more clear.
e5p10nage said:
This method I am talking about.. Should only be done after already successfully upgrading. Not as a method OF upgrading. What I mean is.. If youre tryin to do this on 10.. Then you need to upgrade to ten via the system update local upgrade method.. THEN patch the boot.img from the SAME exact ota.zip you used to local upgrade. If youre on 9.0.17 and you patch and flash a boot.img for 10, I would expect a boot loop. Maybe I am misunderstanding you.. IDK But for me, I HAD to factory reset to upgrade to 10. Im not sure why. I local upgraded with the ota, then my phone wouldnt boot up except into recovery mode. I hit factory reset, and it booted up fine. A couple days later I used the same ota to patch a boot.img and I fastboot flashed it, and it was smooth as butter. Root, no need to reset, no loss of data, no wifi issue... I am not sure what it is that is going wrong for some of you, but I wanna make sure you understand, this is not a way to keep root through the upgrade.. This is just a way to root without having twrp AFTER the upgrade. Or am I completely not getting what youre saying?
Click to expand...
Click to collapse
I said I upgraded. It's literally the first thing I said.
I upgraded the same way everyone else did. Using Oxygen Updater from the Playstore, then local upgrade. I did not factory reset, however, like you did.
The method you posted only works if you factory reset after the OS 10 upgrade.
There's already a method to upgrade and keep data, while also keeping TWRP and root, but there are a number of hoops to jump through.
greentag said:
I said I upgraded. It's literally the first thing I said.
I upgraded the same way everyone else did. Using Oxygen Updater from the Playstore, then local upgrade. I did not factory reset, however, like you did.
The method you posted only works if you factory reset after the OS 10 upgrade.
There's already a method to upgrade and keep data, while also keeping TWRP and root, but there are a number of hoops to jump through.
Click to expand...
Click to collapse
I see. Well I am glad you pointed this out cuz I wasnt aware of the need to factory reset. The only reason I did is because after the local upgrade my phone wouldnt boot to anything but recovery UNLESS I reset it. So I didnt have an option not to really. I was rooted with twrp on 9.0.17, got the ota from oxy updater, local updated, just like ya said you did. Not sure why it wouldnt boot after that without the reset. Im not entirely sure that it is 100% needed to factory reset to root this way though. Ive talked to other people who tried this and said they had no problem. Then Ive also talked to other people who have. I feel like there are some variables we arent considering at work here. But thank you for pointing this out. The only goal I have here is to be helpful, so all problems with this method also need to be part of the conversation. So I appreciate it.

Restoring OTA for stock

Is there a way to restore my stock rooted phone to allow updated the latest stock OTA updates without having to reflash the whole previous stock ROM? With my previous MOT phones (Moto 2, Moto 3, Moto 4) all I had to do was restore stock recovery and logo and then reboot to allow OTA updates. But since there is no recovery.img in this phone's ROM xml then that option is out. It would be nice not have to restore everything from scratch in order to get the updates.
pastorbob62 said:
Is there a way to restore my stock rooted phone to allow updated the latest stock OTA updates without having to reflash the whole previous stock ROM? With my previous MOT phones (Moto 2, Moto 3, Moto 4) all I had to do was restore stock recovery and logo and then reboot to allow OTA updates. But since there is no recovery.img in this phone's ROM xml then that option is out. It would be nice not have to restore everything from scratch in order to get the updates.
Click to expand...
Click to collapse
Yup, If you are just rooted stock and have NOT installed the copy partions.ZIP... Boot to TWRP From FASTBOOT BACKUP your DATA to flash back after Install...Just the Data and install Magisk Uninstaller... After MAGISK unistall... Format DATA PARTITION ONLY...MAKE SURE YOU ARE ON BOOT SLOT A... Reboot to the SETUP WIZARD... STOP and reboot to bootloader.......HAVE STOCK BOOT IMG READY TO BOOT FROM CURRENT FIRMWARE... The STOCK installed boot img has the bootloader and modified devices flagged so that kills the OTA INSTALLATION.... If you have installed any modded logo.bin you have to replace it with STOCK on both logo_a and logo_b
fastboot --set-active=a
fastboot flash logo_a logo.bin
fastboot flash logo_b logo.bin
fastboot boot boot.img
DONT FLASH BOOT
it will trick the flags from trippin that stop the OTA
Setup the phone from setup wizard and it should automatically update the OTA so really its two updates....
Once its done reinstall TWRP and TWRP restore data then install Magisk reboot to your data rooted stock updated OTA
KtownJeff said:
Yup, If you are just rooted stock and have NOT installed the copy partions.ZIP... Boot to TWRP From FASTBOOT BACKUP your DATA to flash back after Install...Just the Data and install Magisk Uninstaller... After MAGISK unistall... Format DATA PARTITION ONLY...MAKE SURE YOU ARE ON BOOT SLOT A... Reboot to the SETUP WIZARD... STOP and reboot to bootloader.......HAVE STOCK BOOT IMG READY TO BOOT FROM CURRENT FIRMWARE... The STOCK installed boot img has the bootloader and modified devices flagged so that kills the OTA INSTALLATION.... If you have installed any modded logo.bin you have to replace it with STOCK on both logo_a and logo_b
fastboot --set-active=a
fastboot flash logo_a logo.bin
fastboot flash logo_b logo.bin
fastboot boot boot.img
DONT FLASH BOOT
it will trick the flags from trippin that stop the OTA
Setup the phone from setup wizard and it should automatically update the OTA so really its two updates....
Once its done reinstall TWRP and TWRP restore data then install Magisk reboot to your data rooted stock updated OTA
Click to expand...
Click to collapse
Thanks KtownJeff, that does sound much easier. Why aren't others posting this much simpler solution? Has anyone else tried this?
I haven't tried it yet as it looks like they may be about to figure out the low call volume issue in custom ROMs and then these OTA updates won't be necessary anyway? I'll wait and see what happens over the next week or so.
I'm wondering why it's necessary to wipe the data though. Why isn't uninstalling Magisk and booting with the original kernel enough?
JerseyChewi said:
Yeah the calling issue is just a lineage thing...and lineage is so generically lame. mokee or corvusos are my favs. Most of the custom Roms work well.... and there is a lot more ROMS for our device that is not on XDA.... The Data may be fine Just back it up first....and I put this on telegram and if you haven't checked it out there is five channels for our phone with tons of stuff.....more ROM builds We also have Pitch Black Recovery now available which is twrp with a cleaner UI and lots more options
Click to expand...
Click to collapse
KtownJeff said:
Yup, If you are just rooted stock and have NOT installed the copy partions.ZIP... Boot to TWRP From FASTBOOT BACKUP your DATA to flash back after Install...Just the Data and install Magisk Uninstaller... After MAGISK unistall... Format DATA PARTITION ONLY...MAKE SURE YOU ARE ON BOOT SLOT A... Reboot to the SETUP WIZARD... STOP and reboot to bootloader.......HAVE STOCK BOOT IMG READY TO BOOT FROM CURRENT FIRMWARE... The STOCK installed boot img has the bootloader and modified devices flagged so that kills the OTA INSTALLATION.... If you have installed any modded logo.bin you have to replace it with STOCK on both logo_a and logo_b
fastboot --set-active=a
fastboot flash logo_a logo.bin
fastboot flash logo_b logo.bin
fastboot boot boot.img
DONT FLASH BOOT
it will trick the flags from trippin that stop the OTA
Setup the phone from setup wizard and it should automatically update the OTA so really its two updates....
Once its done reinstall TWRP and TWRP restore data then install Magisk reboot to your data rooted stock updated OTA
Click to expand...
Click to collapse
WHHAAAT?? I got a few questions...
Why is it important not to have the copy-partitions.zip installed?
Why you should be on slot _a?
There is no need to boot the boot.img instead of flashing it. The Magisk uninstaller restores exactly the same boot.img as you can find in the firmware zip. Your device isn't able to store any data on that image.
Sorry, but this is the most complicate way for an OTA I have ever red. You could sum up these steps to "flash the stock firmware". In the end the result is the same. But it's much easier.
WoKoschekk said:
There is no need to boot the boot.img instead of flashing it. The Magisk uninstaller restores exactly the same boot.img as you can find in the firmware zip. Your device isn't able to store any data on that image.
Click to expand...
Click to collapse
Sooo... assuming you haven't changed the logo then all you need to do is uninstall Magisk? Why do you need to flash the stock firmware then?
WoKoschekk said:
Sorry, but this is the most complicate way for an OTA I have ever red. You could sum up these steps to "flash the stock firmware". In the end the result is the same. But it's much easier.
Click to expand...
Click to collapse
It seems a lot less risky to me. Flashing all those different partitions makes me nervous.
JerseyChewi said:
Sooo... assuming you haven't changed the logo then all you need to do is uninstall Magisk? Why do you need to flash the stock firmware then?
Click to expand...
Click to collapse
Assuming this is not your first time flashing the firmware and you already have a flash script/.bat file:
1. run the script
Done! One command and 5 min later you are on the latest firmware.
JerseyChewi said:
It seems a lot less risky to me. Flashing all those different partitions makes me nervous.
Click to expand...
Click to collapse
Motorola provides you OEM signed images and a .xml sheet with proper commands to flash them as a .zip file. I've never heard that someone bricked his device by using the manufacturer's recommended way. I think it's risky to use your own workaround just because you're nervous about it.
Even if you unplug the device in the middle of the flashing process you won't face any trouble. Every single flashing command loads the image into your device's RAM before it gets written to the device.
fastboot oem fb_mode_set = no matter what reboot command you run your device boots into bootloader
Why are you nervous about it?
Why is it important not to have the copy-partitions.zip installed?
Ok so the copy partitons zip is only supposed to be installed when you install the first custom rom coming from original stock..... because it breaks the chain for OTA from motorola.... If you root stock and flash recovery only Its not necessary.... so that way when OTA comes it will move to the B partition the way that it was intended to.....but the boot-loader is unlocked now both slots start with a boot-loader, bootloader_a and bootloader_b.. .and the on board preboot chip will trip the first flag that communicates with stock flashed boot image which also holds the recovery and the kernel... even if its backed up stock.img with magisk, it will break the next flag on the device along with the custom logo.bin.... now the custom logo if it is cloned with a moto signature official it wont matter and the only one Im aware is logo.bin for the TMOBILE REVVLY variant.... when you boot not flash the stock boot.img it bypasses the security chain until reboot.... I've flashed b slot on accident and then booted several GSI and other lake Roms and at some point ill notice on the bootloader screen that maybe i have April 2020 when Im running July 2020 version....which is headache to fix and i booted to b slot flash stock as normal let boot to the setup wizard then reverse to a and do it again because it brings it back together... now the mapping for the AB partition with duel slots t is standard for all ARM64 AB devices Bootloader a and b Boot a and b Radio a and b which is (firmeware) slot Vendor a and b System a and b....
https://www.xda-developers.com/how-...ess-updates-affect-custom-development-on-xda/
the reason why I wrote it the way that I did was because I tried everything to OTA back and this was the only way it worked for me.... and trust me I stayed up for weeks trying to break it or fix it....I finally I came across a moto g6 thread where some one relocked there bootloader and didnt have the oem unlock set and they couldnt do anything to unlock it again using fastboot because the switch was grey out on developer options which means they couldnt root to fix..., I believe it was Sd_shadow that recommended trying to boot the boot.img like how we boot the twrp.img because it bypasses the security flag... well my first attempt it didn't work which led me to the mismatched boot-loaders and I kept at it and by process of elimination and fully learning the way these partitions communicate..... which is totally backwards from the way it used to be... If u leave data then flash back stock, the boot-loader thinks its fresh but finds its not......so boot-loop... tried it cussed and tried again and screamed but now its automatic. for me because of trial and error... I've been at this a few years now and I'm learning something new all the time and most of time when people don't post is because they either don't know or don't wanna give wrong info or maybe nobody showed them. There kinda is an unwritten bylaw at XDA (tough love)... you gotta learn by experience that way when get an opportunity to help or find a new way it makes it worth the stress
That is why I wrote it the way I did step by step in the easiest way possible because of my experiences and headaches...If it don't work you didn't follow directions.... Now I'm gonna tell you I re-locked my bootloader too and was not able to flash back ota don't even try its a waste of time because the only way to get that flag back is to re ball a chipset, or replace the motherboard, or buy a new phone....
Quoteriginally Posted by WoKoschekk
Sorry, but this is the most complicate way for an OTA I have ever red. You could sum up these steps to "flash the stock firmware". In the end the result is the same. But it's much easier.
I
Our device is unbreakable... trust me I've tried to and still haven't managed to Qualcomm brick it.... test point is the only way to get it to EDL mode and i plan on taking my screen off tonight just to see if I can..... and write another essay because some ass hole from Germany thinks he know everthing
KtownJeff said:
Why is it important not to have the copy-partitions.zip installed?
Ok so the copy partitons zip is only supposed to be installed when you install the first custom rom coming from original stock..... because it breaks the chain for OTA from motorola.... If you root stock and flash recovery only Its not necessary....
Click to expand...
Click to collapse
First of all the copy-partions.zip is a simple dd command script packed with flashize to flash it through TWRP. It determines the active slot and copies your essential partitions to the inactive one in case they were left blank by your manufacturer. You should have a look inside it.
Also there is no complicated chain of safety for OTAs. When a device powers on, the bootloader first checks if a device is locked or unlocked. If a device is unlocked, the bootloader shows the user a warning and then proceeds to boot even if the loaded OS isn't signed by the root of trust.
If the device is locked, the bootloader goes through the steps in Verifying Boot to verify the device's software.
Magisk hides the unlock state to pretend a trustworthy environment. That's the reason why OEM unlocking option is active and OTA updates start to install. But OTA update files verify your system's integrity by calculating checksums for each partition. This check fails with a active Magisk installation and update process ends with an error.
A preboot chip or sth like this is not in use on Moto devices. Partitions 1-14 (+/-) are defined as your bootloader. A prebootloader does only exist for MediaTek devices but not for SnapDragon.
There's a lot of official documentation about all the stuff...
In my opinion the easiest way to update your device is to flash the stock ROM. One script and it's done. No need to flash this and boot that only to be able to download the OTA which hasn't been installed until then. Your system takes more time to flash the OTA update then fastboot takes to flash the firmware.
BTW: You can call me what you want but that doesn't make your statements right either.
WoKoschekk said:
First of all the copy-partions.zip is a simple dd command script packed with flashize to flash it through TWRP. It determines the active slot and copies your essential partitions to the inactive one in case they were left blank by your manufacturer. You should have a look inside it.
Also there is no complicated chain of safety for OTAs. When a device powers on, the bootloader first checks if a device is locked or unlocked. If a device is unlocked, the bootloader shows the user a warning and then proceeds to boot even if the loaded OS isn't signed by the root of trust.
If the device is locked, the bootloader goes through the steps in Verifying Boot to verify the device's software.
Magisk hides the unlock state to pretend a trustworthy environment. That's the reason why OEM unlocking option is active and OTA updates start to install. But OTA update files verify your system's integrity by calculating checksums for each partition. This check fails with a active Magisk installation and update process ends with an error.
A preboot chip or sth like this is not in use on Moto devices. Partitions 1-14 (+/-) are defined as your bootloader. A prebootloader does only exist for MediaTek devices but not for SnapDragon.
There's a lot of official documentation about all the stuff...
In my opinion the easiest way to update your device is to flash the stock ROM. One script and it's done. No need to flash this and boot that only to be able to download the OTA which hasn't been installed until then. Your system takes more time to flash the OTA update then fastboot takes to flash the firmware.
Click to expand...
Click to collapse
KtownJeff said:
Yes correct it easier to flash rom after it is available for download with a month behind....
Click to expand...
Click to collapse
You should check your sources.
KtownJeff said:
Quoteriginally Posted by WoKoschekk
Sorry, but this is the most complicate way for an OTA I have ever red. You could sum up these steps to "flash the stock firmware". In the end the result is the same. But it's much easier.
I
Our device is unbreakable... trust me I've tried to and still haven't managed to Qualcomm brick it.... test point is the only way to get it to EDL mode and i plan on taking my screen off tonight just to see if I can..... and write another essay because some ass hole from Germany thinks he know everthing
Click to expand...
Click to collapse
I also want to leave my device in oem_locked state and not in flashing_locked
Holy Moly! Come on guys! I only wanted a way to fix OTA on my rooted stock installation without having to do a complete stock reinstall. At the time I asked the question, the newest full stock ROM update was not yet available. It is now. My point was I didn't like going through a complete reinstall of my apps and settings, Backing up my Data partition then trying to restore it has never seemed to work for me. Anyway you all need to just chill and put your egos away.
pastorbob62 said:
Holy Moly! Come on guys! I only wanted a way to fix OTA on my rooted stock installation without having to do a complete stock reinstall. At the time I asked the question, the newest full stock ROM update was not yet available. It is now. My point was I didn't like going through a complete reinstall of my apps and settings, Backing up my Data partition then trying to restore it has never seemed to work for me. Anyway you all need to just chill and put your egos away.
Click to expand...
Click to collapse
The fact is you need to restore everything back to stock for an OTA. This includes a deinstallation of Magisk (also modules are gone) and restore your stock boot.img with the stock recovery. Then you download and install the OTA, go back to fastboot mode and start installing TWRP and everything else.
This was option 1.
Option 2: Download the latest firmware on Telegram (only possible with your device!) or install LMSA tool, which also downloads the latest build. Boot into fastboot, flash the firmware (without erase userdata) and boot TWRP. Flash TWRP installer and Magisk. Done!
WoKoschekk said:
The fact is you need to restore everything back to stock for an OTA. This includes a deinstallation of Magisk (also modules are gone) and restore your stock boot.img with the stock recovery. Then you download and install the OTA, go back to fastboot mode and start installing TWRP and everything else.
This was option 1.
Click to expand...
Click to collapse
I'm thinking not, since this was the first thing I tried when I got the notification for the update. And the update still failed.
WoKoschekk said:
Option 2: Download the latest firmware on Telegram (only possible with your device!) or install LMSA tool, which also downloads the latest build. Boot into fastboot, flash the firmware (without erase userdata) and boot TWRP. Flash TWRP installer and Magisk. Done!
Click to expand...
Click to collapse
Telegram didn't have it when I installed the update. LMSA kept giving me a "Decompression failed" error message. So I just reinstalled the stock version I was already on and allowed the update to complete. Then reinstalled TWRP and Magisk without any issues once I had all of my apps and data restored.
Not taking any offense here, but I am not a noob and while I didn't give all of the details to what I had tried I also didn't want to reinvent the wheel. I didn't think about eliminating the line "erase userdata". Since it was very simple with previous devices to do it I knew there had to be an easier way. By the way, the XT1965-2_LAKE_RETLA_10_QPWS30.61-21-14_subsidy-DEFAULT_regulatory-XT1965-2-SUTEL-DS_CFC.xml.zip verson of the ROM is now available here: https://mirrors.lolinet.com/firmware/moto/lake/official/
pastorbob62 said:
Telegram didn't have it when I installed the update.
...
By the way, the XT1965-2_LAKE_RETLA_10_QPWS30.61-21-14_subsidy-DEFAULT_regulatory-XT1965-2-SUTEL-DS_CFC.xml.zip verson of the ROM is now available here: https://mirrors.lolinet.com/firmware/moto/lake/official/
Click to expand...
Click to collapse
The mentioned firmware is available on Telegram since Sep 03. Screenshot
Telegram group: https://t.me/s/motoupdatestracker
WoKoschekk said:
The mentioned firmware is available on Telegram since Sep 03. Screenshot
Telegram group: https://t.me/s/motoupdatestracker
Click to expand...
Click to collapse
That's nice. But the one for my phone was not available on tracker until the day after I updated via OTA.
KtownJeff said:
Yup, If you are just rooted stock and have NOT installed the copy partions.ZIP... Boot to TWRP From FASTBOOT BACKUP your DATA to flash back after Install...Just the Data and install Magisk Uninstaller... After MAGISK unistall... Format DATA PARTITION ONLY...MAKE SURE YOU ARE ON BOOT SLOT A... Reboot to the SETUP WIZARD... STOP and reboot to bootloader.......HAVE STOCK BOOT IMG READY TO BOOT FROM CURRENT FIRMWARE... The STOCK installed boot img has the bootloader and modified devices flagged so that kills the OTA INSTALLATION.... If you have installed any modded logo.bin you have to replace it with STOCK on both logo_a and logo_b
fastboot --set-active=a
fastboot flash logo_a logo.bin
fastboot flash logo_b logo.bin
fastboot boot boot.img
DONT FLASH BOOT
Click to expand...
Click to collapse
I tried this to go back to stock rom from LOS17.
With : fastboot --set-active=a
I have this error :
(bootloader) slot-suffixes: not found
error: could not get suffixes
Any idea of what it means ?
Many thanks
[email protected] said:
I tried this to go back to stock rom from LOS17.
I've never seen that error before have you tried google search for the error?
Click to expand...
Click to collapse
[email protected] said:
I tried this to go back to stock rom from LOS17.
With : fastboot --set-active=a
I have this error :
(bootloader) slot-suffixes: not found
error: could not get suffixes
Any idea of what it means ?
Many thanks
Click to expand...
Click to collapse
Don't know what your error means, but flash the stock ROM and it should be fine.

Categories

Resources