[General Topics] TheExcitedTech:
I did a full factory reset through the settings without doing anything else first, when attempting to upgrade; received Error 20, same error as I saw prior to the erase.

Did it one more time for good measure and issue persists.

Then restored my backup using:

fastboot flash boot_a yourbackup/boot_a.img

fastboot flash boot_b yourbackup/boot_b.img (Was given an error that it wasn't a valid image but it booted fine)

fastboot flash vbmeta_a yourbackup/vbmeta_a.img

fastboot flash vbmeta_b yourbackup/vbmeta_b.img

fastboot reboot

Did the full factory reset again

Now I am currently upgrading, it would normally have failed within the first minute of installing. Will def try to reroot again when this is done. I'll update this post when that happens (probably won't be for a few hours/a day)

EDIT UPDATE:

The update failed, however with some additional troubleshooting, I was able to successfully update.

The hash compare between partitions were different, however I wasn't sure which partition as it wasn't obvious, so I

Flashed my boot_a backup to boot_b since my boot_b backup wasn't working for me.

Factory Reset

Attempted update, same issue with the hash mismatch.

Flashed my super.img backup back

Factory Reset

Was hoping for the best, but I was making peace with the fact that maybe I couldn't update.

So these are the steps I'd suggest, there may be some things you don't need to do but I figure it's best to show my flow. Make sure you have a backup if you're doing this for the first time, as without one I would've been screwed.

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

1. Factory Reset Device

2.

fastboot flash boot_a yourbackup/boot_a.img

fastboot flash boot_b yourbackup/boot_b.img #(I was given an error that it wasn't a valid boot_b backup, so I flashed my boot_a backup to boot_b partition)

fastboot flash vbmeta_a yourbackup/vbmeta_a.img

fastboot flash vbmeta_b yourbackup/vbmeta_b.img

fastboot flash super yourbackup/super.img

fastboot reboot

3. Factory Reset Device

4. After about 45 mins, the update prompted me to restart on the device. Then after a few minutes, it successfully booted up and is now officially on 1.0.0.28! :cool:

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

Note:

A. When I mention Factory Reset, I mean going to Settings > System > Reset All Data (Factory Reset)

B. I always put on USB Debugging and on my computer shell ran

adb logcat | grep update_engine

when I was booted into Android for log reading.

I was only aware of sysdump, this is so much more convenient.

EDIT about backup script: The script was originally running with permission errors even running as root. I thought it had to do with the partitions not being able to be read for some reason.

Turns out, since I didn't have a /img directory on my external sd card, the script didn't have permission to create one? I wrote an if statement to create the img directory in the beginning of the script, but the script itself couldn't make the directory. Idk why that is when it has root privileges, but creating the img dir is what the script needed to actually backup the partitions. That's a weird bug but good to document.

Once backup is done, will go through the root process.

Also, I feel like we have enough documentation to warrant a separate thread for the RP4, unless there is a forum rule that I am not aware of stopping that. Just my two cents :D