Help! Installation problems on OnePlus 9 Pro 5G (model LE2127) on t-mobile

I have a OnePlus 9 Pro 5G (model LE2127) on t-mobile.
Following instructions at: https://doc.e.foundation/devices/lemonadep/install

  • I unlocked the bootloader after flashing an unlock token from OnePlus (www.oneplus.com/unlock_token).
  • I flashed the latest recovery (recovery-e-0.23-r-20220405175826-dev-lemonadep.img) and rebooted to recovery.
  • e-recovery booted. I followed the pre-installation instructions to adb sideload copy-partitions-20210323_1922.zip
  • I followed the steps for installing e/OS from recovery:
  1. Select Factory reset
  2. Select Format data / Factory reset option
  3. Next screen will display a warning that this action cannot be undone
  4. Select Format data to proceed or Cancel if you want to go back
  5. If you selected Format data …the format process will complete
  6. Display will now return to the Factory Reset screen
    Tip: Use the volume up key to choose the arrow at the top to go back to main screen
  7. Select Apply Update and in next screen Apply update from adb
  8. In the next screen, the device is now in sideload mode

Note at this point the Cancel option is highlighted that does not mean you have canceled the action. The device is in adb sideload mode.

  1. On your PC type begin adb sideload. Type the below command in a console adb sideload downloaded_file_name.zip

Replace downloaded_file_name.zip with the name of the /e/ OS file you downloaded in the previous section
I sideloaded the latest version of /e/OS:
adb sideload e-0.23-r-20220405175826-dev-lemonadep.zip

  1. Press enter key on the keyboard to start the sideloading The screen will show the progress percentage…This might pause at 47%
  2. Give it some time
  3. The PC console will now display Total xfer: 1.00x
  4. The phone screen will now display some text with a message similar to

Script succeeded result was [1.000000]
This means that the install was successful

  1. Use the volume key to select the back arrow on the top left of the phone screen
  2. Go back to the main screen and select Reboot system now

The reboot process may take 5 - 10 minutes
Success: Congratulations !! Your phone should now be booting into /e/OS !!

Things started to go awry at 10.

Update: On watching the phone screen more closely on repeated attempts, I see:
E:Failed to bind mount /mnt/staging/emulated/media/0 to /storage/emulated: No such file or directory
E:emulated failed to bind mount /mnt/staging/emulated/media/0 on /storage/emulated: No such file or directory
, prior to the message “Now send the package you want to apply to the device with …”. I don’t know if this should be expected. FWIW, this phone does not have an SD card slot.

At 47% the process abruptly finished and on the phone screen the display was image validation completed (result 0) - which I figure was NOT a good sign. However, I decided to try to try the reboot anyway. Upon reboot the phone came up in FastBoot mode. Selecting Start brought me back to FastBoot mode. At this point I figured the image flash failed and I should retry it. From FastBoot, I booted back to Recovery, which worked. From there, I repeated the installation starting with step 7. This time, there was a pause at 47% and the phone display showed:
Supported API: 3
Finding update package…
Verifying update package…
Update package verification took 184.0 s (result 0).
Installing update…
Step 1/2
Step 2/2

The PC console showed Total xfer 1.00x, but result was 0 again.

At this point, the phone only boots to FastBoot mode. Selecting Start, Recovery, or Restart bootloader all result in FastBoot mode. The only other options are Show Barcode and Power Off. Power Off, then On again goes to FastBoot mode. I have tried flashing Recovery again from FastBoot with fastboot flash boot recovery-e-0.23-r-20220405175826-dev-lemonadep.img, which gets me this on the PC console:
target reported max download size of 805306368 bytes
sending ‘boot’ (196608 KB)…
OKAY [ 4.192s]
writing ‘boot’…
OKAY [ 0.571s]
finished. total time: 4.778s

The phone display remains at the FastBoot menu with no updates. Attempting to boot recovery still returns me to the FastBoot menu instead. I also tried the previous version of recovery with fastboot flash boot recovery-e-0.23-r-20220324172928-dev-lemonadep.img with the same result.

I considered trying to install a GSI (doc.e.foundation/support-topics/install-GSI.html) since my model number is not listed on the OnePlus 9 Pro info screen (doc.e.foundation/devices/lemonadep), however, I don’t have the treble info and can’t boot my phone to install the treble info app.

Any advise and assistance to recover a functional phone, preferably with /e/OS is appreciated.

Note: this post is not spam.

For anyone who might follow in these footsteps, I have found the factory image for the OnePlus 9 Pro.
This article walks you through downloading and extracting them How to Get Fastboot Flashable Factory Images for Any OnePlus Phone « OnePlus :: Gadget Hacks. Then this article walks you through flashing them with fastboot The Complete Guide to Flashing Factory Images on Android Using Fastboot « Android :: Gadget Hacks.

After fastboot flash boot vendor_boot.img using vendor_boot.img extracted from the factory images obtained as described in the articles above, followed by fastboot reboot, the phone takes a moment to reboot, but does go back to FastBoot mode. However, now I can select Recovery from the fastboot menu and e Recovery does come up - Version 0.23 () Active slot: a. However, repeating adb sideload e-0.23-r-20220405175826-dev-lemonadep.zip produced the same result as before - booting only to FastBoot mode. fastboot flash boot vendor_boot.img using vendor_boot.img extracted from the factory images resulted in being able to boot to recovery again - so at least this is reproducible and gets me back to a working adb command interface.

Any suggestions for next steps?

Investigating installing /e/OS GSI.
Can anyone provide/verify treble info for OnePlus 9 Pro 5G (t-mobile)?
I’m guessing OnePlus 9 Pro is ARM64A/B, so using IMG-e-0.23-q-20220402175186-dev-treble_arm64_bvN.zip - extracting system.img from that.

Instructions at https://doc.e.foundation/support-topics/install-GSI:

Remove dm verity

  • This can be done on some devices using twrp
  • A slightly more complicated method is by extracting the kernel and reflashing it with the below command
fastboot flash --disable-verity --disable-verification boot boot.img

unclear - where does boot.img file come from? Does that only apply to flashing TWRP recovery? I have e recovery installed.

fastboot flash system IMG-e-0.23-q-20220402175186-dev-treble_arm64_bvN\system.img
target reported max download size of 805306368 bytes
sending sparse ‘system’ (786428 KB)…
OKAY [ 17.666s]
writing ‘system’…
FAILED (remote: Partition not found)
finished. total time: 17.697s

However, from e recovery, view log /tmp/recovery.log file starts with this recovery filesystem table:
0 /system ext4 system_a 0
1 /system_ext ext4 system_ext_a 0
2 /product ext4 product_a 0
3 /vendor ext4 vendor_a 0
4 /odm ext4 odm_a 0
5 /metadata ext /dev/block/by-name/metadata 0
6 /mnt/vendor/op2 ext4 /dev/block/bootdevice/by-name/opluslog 0
7 /mnt/vendor/persist ext4 /dev/block/bootdevice/by-name/persist 0
8 /data f2fs /dev/block/bootdevice/by-name/userdata 0
9 /misc emmc /dev/block/bootdevice/by-name/misc 0
10 /storage/usbotg vfat /devices/platform/soc/.ssusb/.dwc3/xhci-hcd..auto 0
11 /vendor/firmware_mnt vfat /dev/block/bootdevice/by-name/modem_a 0
12 /vendor/dsp ext4 /dev/block/bootdevice/by-name/dsp_a 0
13 /vendor/vm-system ext4 /dev/block/bootdevice/by-name/vm-bootsys_a 0
14 /vendor/bt_firmware vfat /dev/block/bootdevice/by-name/bluetooth_a 0
15 /mnt/vendor/qmcs vfat /dev/block/bootdevice/by-name/qmcs 0
16 /tmp ramdisk ramdisk 0

Any idea why FAILED (remote: Partition not found) when flashing system? Does it only exist when booting to recovery (vs FastBoot)? Do I need to recreate it somehow?

I don’t think you are going to get anywhere trying to flash a gsi onto a phone that is not even booting into an OS.
Also, flashing an android 10 gsi over an android 11 base I don’t think is going to work anyway.

On top of this you have the unsupported device problem.

Just trying different things to see if they work is a dangerous path to be on. It might be best to go back to stock t-mobile and wait for others to figure out how to de-brand the os.

Many recent phones since android 10 have a super partition where system and many other partitions are located. I think they’re called dynamic partitions. There is another fastboot on the phone called fastbootd which can access these partitions. Do some research for superpartitions and fastbootd.

When your device is plugged into pc in fastboot mode enter the command fastboot getvar all and have a look at the output. You will see a lot of partitions but probably no system partitions.

Whilst still in fastboot mode you can bring up fastbootd with the command fastboot reboot fastboot. Wait for it to reboot. Once in this mode you can then issue fastboot getvar all again and get more information. On my OP9 it shows treble enabled info, for example.

I would urge you to be very careful to NOT try any flashing or mods from fastbootd. Your device is already in such a mess with various random flashing that imo it would be best to start again from stock.

2 Likes

… to add, as a general point, the presence of a superpartition in a working device is easily found by installing the TrebleInfo.apk Releases · p / TrebleInfo · GitLab

Much thanks for the info and advice. I will do the research and proceed with care. I’ve been occupied with a medical procedure and only now able to refocus on this issue. I will continue to post updates on my progress.

I agree with the advice to return to stock at this time and will look into super and fastbootd and try to identify the best path to that end.

fastboot getvar all output:

(bootloader) parallel-download-flash:yes
(bootloader) hw-revision:20001
(bootloader) unlocked:yes
(bootloader) off-mode-charge:1
(bootloader) charger-screen-enabled:1
(bootloader) battery-soc-ok:yes
(bootloader) battery-voltage:8648
(bootloader) version-baseband:
(bootloader) version-bootloader:
(bootloader) erase-block-size: 0x1000
(bootloader) logical-block-size: 0x1000
(bootloader) variant:SM_ UFS
(bootloader) partition-type:oplusreserve1:raw
(bootloader) partition-size:oplusreserve1: 0x800000
(bootloader) partition-type:fsc:raw
(bootloader) partition-size:fsc: 0x20000
(bootloader) partition-type:fsg:raw
(bootloader) partition-size:fsg: 0x300000
(bootloader) partition-type:modemst2:raw
(bootloader) partition-size:modemst2: 0x300000
(bootloader) partition-type:modemst1:raw
(bootloader) partition-size:modemst1: 0x300000
(bootloader) partition-type:ALIGN_TO_128K_2:raw
(bootloader) partition-size:ALIGN_TO_128K_2: 0x1A000
(bootloader) partition-type:hyp_log:raw
(bootloader) partition-size:hyp_log: 0xFD0000
(bootloader) partition-type:qsee_log:raw
(bootloader) partition-size:qsee_log: 0xFD0000
(bootloader) partition-type:android_log:raw
(bootloader) partition-size:android_log: 0xFD0000
(bootloader) partition-type:kernel_log:raw
(bootloader) partition-size:kernel_log: 0xFD0000
(bootloader) partition-type:abl_log:raw
(bootloader) partition-size:abl_log: 0xFD0000
(bootloader) partition-type:apdp_full:raw
(bootloader) partition-size:apdp_full: 0x40000
(bootloader) partition-type:rtice:raw
(bootloader) partition-size:rtice: 0x80000
(bootloader) partition-type:spunvm:raw
(bootloader) partition-size:spunvm: 0x2000000
(bootloader) partition-type:tzsc:raw
(bootloader) partition-size:tzsc: 0x20000
(bootloader) partition-type:connsec:raw
(bootloader) partition-size:connsec: 0x20000
(bootloader) partition-type:mdcompress:raw
(bootloader) partition-size:mdcompress: 0x1400000
(bootloader) partition-type:vm-data:raw
(bootloader) partition-size:vm-data: 0x20A4000
(bootloader) partition-type:secdata:raw
(bootloader) partition-size:secdata: 0x7000
(bootloader) partition-type:uefivarstore:raw
(bootloader) partition-size:uefivarstore: 0x80000
(bootloader) partition-type:storsec:raw
(bootloader) partition-size:storsec: 0x20000
(bootloader) partition-type:modemdump:raw
(bootloader) partition-size:modemdump: 0x12C00000
(bootloader) partition-type:logdump:raw
(bootloader) partition-size:logdump: 0x4000000
(bootloader) partition-type:logfs:raw
(bootloader) partition-size:logfs: 0x800000
(bootloader) partition-type:limits-cdsp:raw
(bootloader) partition-size:limits-cdsp: 0x1000
(bootloader) partition-type:limits:raw
(bootloader) partition-size:limits: 0x1000
(bootloader) partition-type:apdp:raw
(bootloader) partition-size:apdp: 0x40000
(bootloader) partition-type:dip:raw
(bootloader) partition-size:dip: 0x100000
(bootloader) partition-type:devinfo:raw
(bootloader) partition-size:devinfo: 0x1000
(bootloader) partition-type:oplus_sec_b:raw
(bootloader) partition-size:oplus_sec_b: 0xA00000
(bootloader) partition-type:splash_b:raw
(bootloader) partition-size:splash_b: 0x20A4000
(bootloader) partition-type:qweslicstore_b:raw
(bootloader) partition-size:qweslicstore_b: 0x40000
(bootloader) partition-type:vendor_boot_b:raw
(bootloader) partition-size:vendor_boot_b: 0xC000000
(bootloader) partition-type:featenabler_b:raw
(bootloader) partition-size:featenabler_b: 0x20000
(bootloader) partition-type:cpucp_b:raw
(bootloader) partition-size:cpucp_b: 0x100000
(bootloader) partition-type:multiimgoem_b:raw
(bootloader) partition-size:multiimgoem_b: 0x8000
(bootloader) partition-type:vm-bootsys_b:raw
(bootloader) partition-size:vm-bootsys_b: 0x10625000
(bootloader) partition-type:shrm_b:raw
(bootloader) partition-size:shrm_b: 0x20000
(bootloader) partition-type:imagefv_b:raw
(bootloader) partition-size:imagefv_b: 0x200000
(bootloader) partition-type:uefisecapp_b:raw
(bootloader) partition-size:uefisecapp_b: 0x200000
(bootloader) partition-type:dtbo_b:raw
(bootloader) partition-size:dtbo_b: 0x1800000
(bootloader) partition-type:vbmeta_b:raw
(bootloader) partition-size:vbmeta_b: 0x10000
(bootloader) partition-type:qupfw_b:raw
(bootloader) partition-size:qupfw_b: 0x14000
(bootloader) partition-type:devcfg_b:raw
(bootloader) partition-size:devcfg_b: 0x20000
(bootloader) partition-type:boot_b:raw
(bootloader) partition-size:boot_b: 0xC000000
(bootloader) partition-type:keymaster_b:raw
(bootloader) partition-size:keymaster_b: 0x80000
(bootloader) partition-type:dsp_b:raw
(bootloader) partition-size:dsp_b: 0x4000000
(bootloader) partition-type:abl_b:raw
(bootloader) partition-size:abl_b: 0x800000
(bootloader) partition-type:mdtp_b:raw
(bootloader) partition-size:mdtp_b: 0x2000000
(bootloader) partition-type:mdtpsecapp_b:raw
(bootloader) partition-size:mdtpsecapp_b: 0x400000
(bootloader) partition-type:bluetooth_b:raw
(bootloader) partition-size:bluetooth_b: 0x200000
(bootloader) partition-type:modem_b:raw
(bootloader) partition-size:modem_b: 0x14A00000
(bootloader) partition-type:hyp_b:raw
(bootloader) partition-size:hyp_b: 0x800000
(bootloader) partition-type:tz_b:raw
(bootloader) partition-size:tz_b: 0x400000
(bootloader) partition-type:aop_b:raw
(bootloader) partition-size:aop_b: 0x80000
(bootloader) partition-type:oplus_sec_a:raw
(bootloader) partition-size:oplus_sec_a: 0xA00000
(bootloader) partition-type:splash_a:raw
(bootloader) partition-size:splash_a: 0x20A4000
(bootloader) partition-type:qweslicstore_a:raw
(bootloader) partition-size:qweslicstore_a: 0x40000
(bootloader) partition-type:qmcs:raw
(bootloader) partition-size:qmcs: 0x1E00000
(bootloader) partition-type:vendor_boot_a:raw
(bootloader) partition-size:vendor_boot_a: 0xC000000
(bootloader) partition-type:featenabler_a:raw
(bootloader) partition-size:featenabler_a: 0x20000
(bootloader) partition-type:cpucp_a:raw
(bootloader) partition-size:cpucp_a: 0x100000
(bootloader) partition-type:multiimgoem_a:raw
(bootloader) partition-size:multiimgoem_a: 0x8000
(bootloader) partition-type:vm-bootsys_a:raw
(bootloader) partition-size:vm-bootsys_a: 0x10625000
(bootloader) partition-type:shrm_a:raw
(bootloader) partition-size:shrm_a: 0x20000
(bootloader) partition-type:imagefv_a:raw
(bootloader) partition-size:imagefv_a: 0x200000
(bootloader) partition-type:uefisecapp_a:raw
(bootloader) partition-size:uefisecapp_a: 0x200000
(bootloader) partition-type:dtbo_a:raw
(bootloader) partition-size:dtbo_a: 0x1800000
(bootloader) partition-type:vbmeta_a:raw
(bootloader) partition-size:vbmeta_a: 0x10000
(bootloader) partition-type:qupfw_a:raw
(bootloader) partition-size:qupfw_a: 0x14000
(bootloader) partition-type:devcfg_a:raw
(bootloader) partition-size:devcfg_a: 0x20000
(bootloader) partition-type:boot_a:raw
(bootloader) partition-size:boot_a: 0xC000000
(bootloader) partition-type:keymaster_a:raw
(bootloader) partition-size:keymaster_a: 0x80000
(bootloader) partition-type:dsp_a:raw
(bootloader) partition-size:dsp_a: 0x4000000
(bootloader) partition-type:abl_a:raw
(bootloader) partition-size:abl_a: 0x800000
(bootloader) partition-type:mdtp_a:raw
(bootloader) partition-size:mdtp_a: 0x2000000
(bootloader) partition-type:mdtpsecapp_a:raw
(bootloader) partition-size:mdtpsecapp_a: 0x400000
(bootloader) partition-type:bluetooth_a:raw
(bootloader) partition-size:bluetooth_a: 0x200000
(bootloader) partition-type:modem_a:raw
(bootloader) partition-size:modem_a: 0x14A00000
(bootloader) partition-type:hyp_a:raw
(bootloader) partition-size:hyp_a: 0x800000
(bootloader) partition-type:tz_a:raw
(bootloader) partition-size:tz_a: 0x400000
(bootloader) partition-type:aop_a:raw
(bootloader) partition-size:aop_a: 0x80000
(bootloader) partition-type:DRIVER:raw
(bootloader) partition-size:DRIVER: 0x2000000
(bootloader) partition-type:oplusreserve5:raw
(bootloader) partition-size:oplusreserve5: 0x4000000
(bootloader) partition-type:oplusreserve4:raw
(bootloader) partition-size:oplusreserve4: 0x2000000
(bootloader) partition-type:oplusreserve3:raw
(bootloader) partition-size:oplusreserve3: 0x4000000
(bootloader) partition-type:oplusreserve2:raw
(bootloader) partition-size:oplusreserve2: 0x10000000
(bootloader) partition-type:engineering_cdt_b:raw
(bootloader) partition-size:engineering_cdt_b: 0x100000
(bootloader) partition-type:dinfo:raw
(bootloader) partition-size:dinfo: 0x4000
(bootloader) partition-type:ocdt:raw
(bootloader) partition-size:ocdt: 0x20000
(bootloader) partition-type:engineering_cdt_a:raw
(bootloader) partition-size:engineering_cdt_a: 0x100000
(bootloader) partition-type:ddr:raw
(bootloader) partition-size:ddr: 0x100000
(bootloader) partition-type:cdt:raw
(bootloader) partition-size:cdt: 0x20000
(bootloader) partition-type:ALIGN_TO_128K_1:raw
(bootloader) partition-size:ALIGN_TO_128K_1: 0x1A000
(bootloader) partition-type:xbl_config_b:raw
(bootloader) partition-size:xbl_config_b: 0x80000
(bootloader) partition-type:xbl_b:raw
(bootloader) partition-size:xbl_b: 0x600000
(bootloader) partition-type:xbl_config_a:raw
(bootloader) partition-size:xbl_config_a: 0x80000
(bootloader) partition-type:xbl_a:raw
(bootloader) partition-size:xbl_a: 0x600000
(bootloader) partition-type:userdata:f2fs
(bootloader) partition-size:userdata: 0x3751FB3000
(bootloader) partition-type:super:raw
(bootloader) partition-size:super: 0x29B000000
(bootloader) partition-type:rawdump:raw
(bootloader) partition-size:rawdump: 0x8000000
(bootloader) partition-type:metadata:ext4
(bootloader) partition-size:metadata: 0x1000000
(bootloader) partition-type:vbmeta_vendor_b:raw
(bootloader) partition-size:vbmeta_vendor_b: 0x10000
(bootloader) partition-type:vbmeta_vendor_a:raw
(bootloader) partition-size:vbmeta_vendor_a: 0x10000
(bootloader) partition-type:vbmeta_system_b:raw
(bootloader) partition-size:vbmeta_system_b: 0x10000
(bootloader) partition-type:vbmeta_system_a:raw
(bootloader) partition-size:vbmeta_system_a: 0x10000
(bootloader) partition-type:persist_bkp:raw
(bootloader) partition-size:persist_bkp: 0x2000000
(bootloader) partition-type:opluslog:raw
(bootloader) partition-size:opluslog: 0x10000000
(bootloader) partition-type:carrier:raw
(bootloader) partition-size:carrier: 0x4000000
(bootloader) partition-type:oplusstanvbk_b:raw
(bootloader) partition-size:oplusstanvbk_b: 0xA00000
(bootloader) partition-type:oplusstanvbk_a:raw
(bootloader) partition-size:oplusstanvbk_a: 0xA00000
(bootloader) partition-type:oplusdycnvbk:raw
(bootloader) partition-size:oplusdycnvbk: 0xA00000
(bootloader) partition-type:frp:raw
(bootloader) partition-size:frp: 0x80000
(bootloader) partition-type:keystore:raw
(bootloader) partition-size:keystore: 0x80000
(bootloader) partition-type:misc:raw
(bootloader) partition-size:misc: 0x100000
(bootloader) partition-type:persist:raw
(bootloader) partition-size:persist: 0x2000000
(bootloader) partition-type:param:raw
(bootloader) partition-size:param: 0x800000
(bootloader) partition-type:ssd:raw
(bootloader) partition-size:ssd: 0x2000
(bootloader) has-slot:modem:yes
(bootloader) has-slot:system:no
(bootloader) current-slot:a
(bootloader) has-slot:boot:yes
(bootloader) slot-retry-count:b:7
(bootloader) slot-unbootable:b:no
(bootloader) slot-successful:b:no
(bootloader) slot-retry-count:a:7
(bootloader) slot-unbootable:a:no
(bootloader) slot-successful:a:no
(bootloader) slot-count:2
(bootloader) secure:yes
(bootloader) serialno:c0e64b2d
(bootloader) product:lahaina
(bootloader) snapshot-update-status:none
(bootloader) is-userspace:no
(bootloader) max-download-size:805306368
(bootloader) kernel:uefi
all:
finished. total time: 1.767s

Unfortunately, fastboot reboot fastboot did not put me into fastbootd mode. It appears that reboot fastboot is not a recognized/supported parameter, so the usage/help output is displayed:

Blockquote

fastboot reboot fastboot

usage: fastboot [ ]

commands:
update reflash device from update.zip
flashall flash boot, system, vendor and if found,
recovery
flash [ ] write a file to a flash partition
erase erase a flash partition
format[:[][:[]] format a flash partition.
Can override the fs type and/or
size the bootloader reports.
getvar display a bootloader variable
boot [ [ ] ] download and boot kernel
flash:raw boot [ [ ] ] create bootimage and
flash it
devices list all connected devices
continue continue with autoboot
reboot reboot device normally
reboot-bootloader reboot device into bootloader
help show this help message

options:
-w erase userdata and cache (and format
if supported by partition type)
-u do not first erase partition before
formatting
-s specify device serial number
or path to device port
-l with “devices”, lists device paths
-p specify product name
-c override kernel commandline
-i specify a custom USB vendor id
-b <base_addr> specify a custom kernel base address.
default: 0x10000000
-n specify the nand page size.
default: 2048
-S [K|M|G] automatically sparse files greater
than size. 0 to disable

Update and resolution

I did manage to get eOS running on my OnePlus 9 Pro 5G (t-mobile) device. However, the operating system reports the model as LE2123 rather than LE2127, and the camera app only offers photo resolutions up to 4000x3008 (12.03MP) rear and 2328x1748 (4.07MP) front - rather than the 50MP (ultra-wide) or 48MB (main) rear and 16 MP front. I have not done extensive testing for any other deviations with respect to the device specs.

Here is how I resolved my issue and got eOS running.
Factory Restore:
After reading about fastbootd and the complex array of user mode logical partitions that are embedded within the root mode super partition, I decided to re-initialize my device using the Qualcomm Emergency Download Mode (EDL). My major pain point was getting the phone to boot into EDL mode. It was only after finding a youtube video demonstrating the process that I confirmed that I wasn’t doing anything wrong. After trying different USB ports, cables, and eventually a different computer, it worked as expected.

The steps are:
0. Download OnePlus factory image, with MsmDownloadTool for unbricking OnePlus 9 Pro - (lemonadept_22_O.07_210707_repack)

  1. Verify boot to EDL mode - Boot phone in EDL (Qualcomm emergency download mode) - press both up/down volume buttons while attaching USB cable connected to computer
    Computer will detect Qualcomm COM port device - monitor Device Manager to confirm.
    Notes:
    EDL mode is fleeting - if no EDL commands are sent within a few seconds, phone will exit EDL mode and continue to boot
    Phone screen will remain blank while in EDL mode
    If phone boots to FastBoot menu, recovery, etc., you missed it
    If computer does not recognize Qualcomm COM port device, try different USB port, cable, computer, drivers, etc.
    If incorrect device recognition, right-click unkown or other device and udpate driver to install Qualcomm driver, or use correct Qualcomm driver setup exe.
    [Qualcomm driver link]
  2. Run MsmDownloadTool V4.0.exe as admin, wait for app to finish starting, select user type Others, click Next, click verify to check hash of payload [will take a couple of minutes with no apparent feedback - wait for confirmation messagebox]
    Qualcomm COM port noted while verifying EDL mode should be present in the grid
  3. Boot phone in EDL (Qualcomm emergency download mode) - press both up/down volume buttons while attaching USB cable connected to computer
    You can release the volume button when the app indicates the device is connected in the Status of Connection column of the grid, and press the start button
    Wait for downloading of images to complete - largest is super.img
    If there is any failure while downloading:
    unplug phone, hold vol up/down and power buttons until phone resets to fastboot mode, select power off, then hold up/down volume buttons while re-attaching usb cable to re-enter EDL mode, and retry from 3.
    If repeated failures, try alternate USB port, cable, drivers, computer, etc.
  4. Phone will restart when finished - and enter setup mode (as from factory)
    Go through setup process to verify functionality on carreer’s network
    Restart your alternative OS project from the Unlock bootloader step
    Note: If OEM Unlocking (unlock bootloader) is disabled, it may become enabled again after a few days on carreer’s network - or after applying updates.

This process also failed repeated while the MsmDownloadTool was pushing the system image to the phone (at around 280-300 seconds), until performed from a different computer. Note also that MsmDownloadTool must execute as Administrator.

Having restored my phone to a functional, from factory state, I thought I would try to at least install TWRP recovery so I could boot to recovery and perform full system backups periodically. I follow the TWRP instructions to temporarily boot TWRP from fastboot mode, then within TWRP, use the flash current image feature. This worked to get a functional TWRP recovery installed, but the normal system image would no longer boot after TWRP was permanently installed.

At this point, I was confident that I could recovery the factory image again using Qualcomm EDL as before. But I tried installing eOS from TWRP using the feature to apply update using ADB sideload adb sideload e-0.23-r-20220405175826-dev-lemonadep.zip (from the same PC/port/cable that finally worked for EDL). At 47%, the PC indicated that the sideload failed and the phone indicated completed (status 0), which is failed. Without rebooting the phone, I went back to the TWRP ADB update using sideload and repeated the sideload command twice more, with the same results.

At this point I rebooted the phone. The phone still would not boot normally (bouncing e logo indefinitely, or at least 30 minutes before I forced the phone to reboot again), and boot to recovery came up with eOS Recovery rather than the TWRP recovery that was previously there. From eOS recovery, I did factory reset, and my device rebooted to a functional eOS. Although, as I mentioned, eOS reports by device model incorrectly as LE2123 instead of LE2127 and does not offer the full resolution on my camera.

I hope sharing my experience is beneficial to anyone else traveling this path with a OnePlus 9 Pro, and may be helpful to the eOS developers in extending eOS support to the LE2127 model. Any tips on getting use of the full resolution of my cameras is appreciated.

Sources:
ht tps://onepluscommunityserver.com/list/Unbrick_Tools/OnePlus_9_Pro/T-Mobile_LE5ACB/R%20(11)/
links to [OnePlus_9_Pro_T-Mobile_OxygenOS_11.2.6.6.zip] 2021-10-20 22:56 3.6G which Includes MsmDownloadToolV4.0.exe.

ht tps://forum.xda-developers.com/t/op9pro-repository-of-msm-unbrick-tools-tmo-eu-glo-in.4272549/

LE2127 - T-Mobile

[11.2.3.3](ht tps://www.androidfilehost.com/?fid=2188818919693804752) Thanks to [@Jhoopes517](ht tps://forum.xda-developers.com/m/3039640/) (lemonadept_22_O.04_210409.zip)
MD5: d50ec4bcfb1df465eb84ac1fa1c32365

[Qualcomm USB Drivers](ht tps://onepluscommunityserver.com/list/Unbrick_Tools/Qualcomm%20drivers.7z) Thanks to [@Some_Random_Username](ht tps://forum.xda-developers.com/m/8234677/)
Links to cab file – I used the setup file instead.

OnePlus USB drivers
Packed & Distributed by www.oneplusdriver.com
Latest Version: ht tps://oneplusdriver.com/download-oneplus-driver
How-to Install: ht tps://oneplusdriver.com/install-oneplus-usb-driver
ht tps://www.getdroidtips.com/download-oneplus-usb-drivers links to
ht tps://droidfilehost.com/download/download-latest-oneplus-usb-drivers-for-windows/

[sorry for all the broken links, but apparently I can only post up to two links per post for some strange reason]

2 Likes