This post relates my long - for me as I don’t flash my phone everyday - and not very easy update of my OnePlus5T device from the previous oreo build to the new (and current dev version) pie build. As I had previously installed a new TWRP recovery to flash new firmware a few months ago, I realised there was probably going to be a problem as other users pointed out that the 3.4.0-0 version (although specifically recommended on the TWRP site for dumpling) does not like the e-0.12 zip packages.
However I went ahead with flashing the the latest firmware_10.0.0-H1_oneplus5T.zip which gave me a smiley android face on the bootloader screen but caused no problems on reboot. Then I decided to try removing the PIN protection on the welcome screen to see if this would cause a problem with my TWRP recovery which asks for this to decrypt the user partitions. To my surprise it must have recognised I had no PIN protection and in decrypted with no problem, so having overcome this hurdle I decided to go ahead with the upgrade procedure recommended on the e.community site.
I formatted the data partition and then did the factory reset wipe ignoring the warnings that this would totally remove my old /e/ system. I had some problems which I’ll write about in another entry getting adb properly set up on my Debian PC. Finally when the adb server recognised my device I launched the sideload of the latest Pie update for my dumpling device. Needless to say it failed, ending with the well-known “error 7”, so I then decided to try loading the zip file via OTG on a USB stick and flashing it using my TWRP revovery. This ended with another error and now I started to worry that I would end up with a bricked device.
Having read on the X-developers site that codeworkx had produced a new recovery version twrp-3.3.1 to be used with the latest firmware I decided to flash this onto my device using fastboot. No problem, big sigh of relief and I could boot back into this revovery to start the updating procedure again, enabling sideload to be able to connect to my PC.
The sideload operation started slowly with a long wait for the percentage figures to arrive at almost 50 percent and suddenly it ended with
Total xfer: 1.01x
And another huge sigh of relief that it had completed the transfer successfully.
On reboot there was the usual series of setup screens for the /e/ system which completed with no problem, but then I realised that I had a totally empty sdcard/ partition and so would have to rely on my backups to get everything running as before. I realised this meant spending the best part of a day to reconfigure everything.
I had read the long series of exchanges following the new HOWTO by @manoj on Backup & Restore Data on Android Devices, and so I had already done a complete nandroid backup using my first version of TWRP and copied everything onto a USB stick in case the update failed and I had to go back to my previous oreo version. However, the factory reset by reformatting all of the data/ partition erases all data on the sdcard as well and apparently this is not part of the normal nandroid backup, so if I had only this backup to rely on I could have resored my old operating system but with none of my personal data, so this is not a reliable complete backup!
In the end the only solution that helped me to get back to a dependable mobile for everyday use (so far!) was to have manually saved almost all I had used before to my PC and USB stick using Titanium Backup among other utilities. In conclusion I would say that this experience has shown that there has to be a simpler, more specific tool built for the /e/ OS devices to enable upgrades that are less daunting for ordinary users. Let’s hope that the developers can produce an in-house recovery tool that avoids the difficulties I encountered or at least makes a change of Android version a less formidable experience.