Not limited to OnePlus 9 Pro, and not just documentation, I recommend adding steps to extract the original recovery and OS images, either into .img and .zip files on internal storage, and/or on the PC.
I have flashed LineageOS onto an older phone before, and /e/ onto a tablet device. Now I’m contemplating installing this on a brand new OnePlus 9 Pro as soon as it arrives. This will be, by far, the highest value device that I plan to flash an alternative ROM onto. I know I would feel a bit more comfortable about this with a bit of a safety net - i.e. being able to extract the original images with a reasonable hope of being able to restore them later if needed.
In reading through the installation process, how difficult would it be to include steps to extract the original recovery and OS images, either into .img and .zip files on internal storage, and/or on the PC prior to replacing them? Is it feasible to capture these images in such a way as to enable flashing them back to the phone to ‘restore’ the original factory state later?
This could serve as a safety net if there should be any issue running /e/ on the device, or simply to return it to factory state either when selling or trading in the device later, or possibly returning it should it develop a hardware issue.
Installing eos-s, android 12 onto oneplus 9 pro should follow the same steps as oneplus 9 but at the moment there is a slight mismatch in the install guidesas to how users are able to source appropriate firmware to temporarily boot a custom recovery onto the device.
Suggestions:
e developers provide copies of dtbo.img, vendor_boot.img & e-recovery matching the eos downloads. Just like LOS do.
Or at least re-visit this issue to align Oneplus 9 install guide with oneplus 9 pro guide.
Add in a paragraph to carry out the copy-partitions step directly after “Temporarily booting a custom recovery using fastboot”:
Ensuring all firmware partitions are consistent
Tip: The steps below only need to be run once per device.
In some cases, the inactive slot can be unpopulated or contain much older firmware than the active slot, leading to various issues including a potential hard-brick. We can ensure none of that will happen by copying the contents of the active slot to the inactive slot.
To do this, sideload the copy-partitions-20220613-signed.zip package by doing the following:
Download the copy-partitions-20220613-signed.zip file from here. It should have a MD5 sum of 79f2f860830f023b7030c29bfbea7737 or a SHA-256 sum of 92f03b54dc029e9ca2d68858c14b649974838d73fdb006f9a07a503f2eddd2cd.
Sideload the copy-partitions-20220613-signed.zip package: * On the device, select Apply Update, then Apply from ADB to begin sideload. * On the host machine, sideload the package using: adb sideload copy-partitions-20220613-signed.zip
Now reboot to recovery by tapping Advanced, then Reboot to recovery.
Just sharing some information on my success with migrating to /e/ OS on these seemingly stubborn phones…
[ OOS 11/12 UPGRADE PATH ] ! READ NOTES - DO NOT MODIFY THE FILENAMES OF THESE ROMS !
OOS 11 \ 11.2.2.2 Full Rom - .\OOS_11\lemonadep_22_O.05_210324_msm
-Flash with EDL Mode\Msmtools.
OOS 11 \ 11.2.10.10 Full Rom - .\a074a7205a681509f1b84d6a2e0f75ddc2c6ab9b.zip
-Advanced Boot = Enabled (optional)
-USB Debugging = Enabled
-Flash with OOS Local Software Update.
-Perform a factory reset if Software Upgrade is stubborn and fails.
OOS 12 \ C.48 Full Rom - .\c25ef64fe37b632b526e0cef2f36fa046e35c032.zip
-Flash with OOS Local Software Update.
OOS 12 - C.65 Full Rom - .\490bb705386df0e2f1b1ed4c3fa6483c045a7343.zip
-Flash with OOS Local Update Utility (OPLocalUpdate_For_Android12.apk).
OOS 12 - C.66 Incremental Rom - .\804bec9eabaa9158fd8dbaefaa6c119f3c4e3567.zip
-Flash with OOS Local Update Utility again.
-Reboot
-Factory Reset
-OEM Unlock = Enabled (SIM Card needed) *may be greyed out, unlock done automatically by OOS
-USB Debugging = Enabled
-Shutdown \ Power On
-Verify Fastboot is working in Slot A or you’ll find yourself in a spin of mass confusion! See this post and thank you, @chrisrg .
-Follow instructions carefully except flash the “dtbo”, “vendor_boot”, and “recovery image” in one Fastboot session. Manually power off device, manually access Fastboot, boot into the Recovery through Fastboot menu.
/e/OS “dtbo”, “vendor_boot”, & “recovery image”: see this post and thank you for saving me, @requiem .
[ NOTES ]
-With the phone off, hold both volume buttons + power button to enter EDL Mode. Stop and close MSMTools after flashing is complete!
-Use ADB to enter Fastboot where possible. Two other options are 1) with the phone off, hold both volume buttons after hitting power button and feeling the quick vibrate or 2) with the phone off or rebooting, hold volume down and power button with the phone off or rebooting. The latter seems to only work after flashing a recovery image.
-Volume up button + power button to force a reboot.
-Unplugging after flashing with Fastboot may be a required step before power cycling the device.
-Do not modify the filenames of the ZIP files containing the ROMs due to OOS checksums.
-The /e/OS ZIP installation fails to verify a signature at the 47% mark.
-The /e/OS install did not indicate a success after completing Step 2.
-Despite the two oddities above, the install was a success and no issues to report.
-This entire process was performed on 3 1+ 9 Pro phones (LE2125).
“Flashing additional partitions”, item 1: at the momen of writing “latest date” should be changed to “earliest date”, i.e. 20221227. Most recent /e/ 1.8.1 recovery image (recovery-e-1.8.1-s-20230204257074-dev-lemonadep.img) appears to be modified latest and only available LineageOS 19.1 recovery (lineage-19.1-20221227-recovery-lemonadep.img). Newer additional partition files are for newer LineageOS, which is 20.0, so are not suitable for current /e/. Moreover, LineageOS developers seem to keep only 5 last versions of their build artifacts on their resources, so it would be nice to backup those somewhere as it looks like lag between /e/ and LOS is growing despite they marked OnePlus 9 Pro as discontinued. So link in documentation item in question would point to the resource with backup of appropriate files.
Thanks for pointing this out @bofh666 . The files for 20221227 have been copied here. If you can check if they are the same you used we can link them to our documentation page.
dtbo.img is indeed the same I used: md5sum is 3bc7b2a307137a9148821236d04ae6c0. But vendor_boot.img is missing on resource you provided. And they removed 20221227 folder from LOS resource already I’ve backed up files I used on my Google Drive, so you can get vendor_boot.img there.
I think it’d be great to clarify in the documentation what are these files for and how one can get them directly to not depend on LOS resources and be more flexible with choice of /e/ version. It they are vendor specific proprietary images, it’d be good to add steps described here but with lemonadep specifics and explaination why does one need to replace existing partition images with specific ones (from specific version of vendor ROM?). If the files are modified somehow to match custom recovery, I guess the community needs to learn how to make those modifications and document it as well. I’d be happy to help, but I’m not even close to an Android developer
Still not sure how are those files built and how do they get there, but proper files are included in /e/OS build ZIP file.
dtbo.img contains data about device’s hardware configuration and is used by the bootloader to initialize the correct hardware setup. vendor_boot.img contains all the necessary drivers for the device and is used by the bootloader to load correct drivers.
So I suggest to extract those files from each /e/OS release, put on a /e/ foundation resource and link the resource in item 1 of “Flashing additional partitions” section. Or to replace this item with steps to extract those files manually:
Thanks for sharing this @bofh666 …checking with team if it is possible for have these files extracted everytime we make a new build and place it in a ecloud location and link that in the documentation.
Hi @GaelDuval this feedback has been shared with the build team …, two points were shared - one to check the recovery and second to extract the files as mentioned above from the /e/OS ROMs itself. Do not have ETA on them. Following up with the team. This impact a couple of devices which require such partitions to be flashed first before the installation can be initiated.
This issue I believe is more than a Documentation suggestion – on my part it is a Packaging suggestion. I believe /e/ should publish an “Installation package” in the same way as seen in LineageOS https://download.lineageos.org/devices/lemonadep/builds. (I believe the same approach is needed for Oneplus 8 (+ Pro) as well.)
Enter suggestions to improve documentation in this category. Do not raise bugs or issues here…
As you already opened Problem with installing to oneplus 9 pro please tell me there if you are able to extract dtbo.img and vendor_boot.img from your /e/OS image. Good luck.
Hi, I have bought this phone but it has Android13 (his rom stock). Would I wait to the /e/OS 13 to update or what would I do to start to using my phone?
I have recently installed the software found in this ZIP file. Following the installation, I extracted the ‘dtbo,’ ‘vbmeta,’ ‘vendor,’ and ‘boot’ components from ‘payload.bin.’ I then proceeded to flash all of these components. After completing this step, I performed a factory reset from the recovery menu. Subsequently, I sideloaded the ‘e-1.15-s-20230916331435-dev-lemonadep.zip’ file. While the system is able to boot successfully, I’ve encountered an issue with the functionality of gestures. Specifically, I am unable to initiate actions by clicking on the ‘start’ button to progress further. I would greatly appreciate any assistance with resolving this matter.