[Moto X4 Questions & Answers] redwoodie:
Two X4s Working Well on PPWS29.69-39-6-9; Alternate Solution to OTA Issues

I now have both X4s working well on PPWS29.69-39-6-9. No connection issues, but I don’t know if they will accept OTAs (one did up to -9 after reflashing PPWS29.69-39-6-2, but it did suffer the -8 forced factory reset glitch). I decided I don’t care about getting OTAs any longer as there is a good workaround described below. Here is a recap of what worked and what didn’t:

WHAT WORKED:

The first phone seemed to straighten itself out after flashing -2 and letting it update itself. It took -4, -5, -6, and -8 then bootlooped to recovery. While it was updating connectivity was working even after the

-8 reset. BUT, after the next reboot on -8, I had off and on wifi and no mobile. I restored EFS from a TWRP update taken earlier and all was good. I then used Lenovo Rescue and Smart Assistant to download and install PPWS29.69-39-6-9. All working. I rooted with Magisk and froze Mototrola Update Service in Titanium Backup Pro to prevent update nagging and failed installs.

With the second phone I had a working system on -4 that wouldn’t take OTAs. I first did a full TWRP backup including all possible partitions (especially efs, dsp, fsg etc.). Then I used Lenovo Rescue & Smart Assistant to download/flash the latest factory ROM PPWS29.69-39-6-9. On reboot I had wifi/mobile connectivity issues. This was fixed by restoring EFS only in TWRP from the backup taken immediately before flashing -9. If you require this step it appears important that you restore EFS from the last working state of the phone. Again, I rooted with Magisk and froze Motorola Update Service in Ti Backup Pro. If another update comes I’ll install it with the Lenovo tool.

WHAT DIDN’T WORK:

Flashing Pie “firmware ROM” bits that I mentioned earlier in this post: https://xdaforums.com/showpost.php?p=82907531&postcount=253 and running the “copy partitions” script found at the HavocOS page linked on that post. These had no discernable effect.

Restoring efs, dsp & fsg from a TWRP backup taken a while back, perhaps when the phone had connectivity issues.

Flashing to the inactive slot by switching slots with

fastboot –set-active=b

and then running the appropriate script to flash the whole ROM. Again, no discernible effect.

FINAL THOUGHTS:

Several users have reported the forced factory reset bug when updating to -8. The latest version, -9, seems stable and smooth. If you have an earlier version than -8, skip -8 and use Lenovo to install -9. It doesn’t care what version you’re on and according to KrisM22, doesn’t seem to care if you’re rooted. AFAIK you will have to set up the phone again so be sure you have a recent cloud (Google Drive) backup of everything.

So, if you’re rooted and want to install an update, the Lenovo tool seems easier than unrooting and trying to get the OTA to take. Install the latest ROM with it and re-root. Or not.

This phone has been the most difficult to sort out of over a dozen Android devices I’ve unlocked, rooted and modded over the past 8 years. I suspect Payton is a “beta” implementation of slots/seamless OTA updates, and rooting appears to break that in many cases. X4 is not a Full Treble device, I wonder if FT devices work better.

BEFORE DOING ANY MODIFICATIONS TO YOUR PHONE, EVEN UNLOCKING THE BOOTLOADER, FASTBOOT TO TWRP AND BACK UP EVERYTHING, REPEAT EVERYTHING, BUT ESPECIALLY EFS!!! Failing that, you are pretty much hosed if anything goes wrong.