[HOWTO] OnePlus 6T: Roll-back to stock OxygenOS ROM after a brick / being stuck in a loop

Goal
Going back to a fully working OxygenOS ROM on a OnePlus 6T after an installation went really wrong (brick / fastboot loop / Qualcomm crash dump mode)

Disclaimer

  1. THIS IS A LAST RESORT “HOW TO”
  2. During this “how to”, you will be performing dangerous actions on and for your phone that could make it as useful as a paperweight. I can’t take any responsibility if this doesn’t work.
    But since your phone is already stuck in fastboot loop / already bricked… Well, that’s your choice!
  3. I performed this operation on a Manjaro Linux laptop, but they should be working on Mac and Windows too

Pre-requisites

  • DO NOT PANIC
  • Know how to go in fastboot and recovery modes (if you aren’t already) and how to hard reboot your phone (dangerous):
    • Fastboot: Hold volume up + power until the “fastboot” screen appears
    • Recovery: Hold volume down + power until the “OnePlus Logo” screen appears
    • Hard reboot: Hold volume down + volume up + power until your phone shut down
  • Download an official ROM from here (mauronofrio is one of TWRP developer)
  • Download adb and fastboot tools (they are included in the zipped ROM for Windows, and you can get them from an official Google link)
  • On Linux and Mac: add them to your shell $PATH and know if you need to perform the operations as sudo
  • On Windows:
    • perform the operations from the unzipped folder if you use those binaries, or make sure you added them to your environment PATH variable
    • download the Windows OnePlus drivers
  • DO NOT PANIC

Steps

  1. Unzip the downloaded stock ROM in a new folder (let’s name it stock for this tutorial)
  2. Go inside this unzipped folder named stock
  3. Unzip “images.zip” inside a new folder (let’s name it images for this tutorial)
  4. Open a command line inside stock
  5. Go in fastboot mode on your phone
  6. Check if your device is visible from your computer with fasboot devices (as sudo/Administrator if required by your OS)
  7. Perform the following operations as sudo/Administrator, if required by your OS, one by one, waiting for the previous to finish before executing the next:

fastboot flash aop_a images/aop.img
fastboot flash aop_b images/aop.img
fastboot flash bluetooth_a images/bluetooth.img
fastboot flash bluetooth_b images/bluetooth.img
fastboot flash boot_a images/boot.img
fastboot flash boot_b images/boot.img
fastboot flash dsp_a images/dsp.img
fastboot flash dsp_b images/dsp.img
fastboot flash dtbo_a images/dtbo.img
fastboot flash dtbo_b images/dtbo.img
fastboot flash fw_4j1ed_a images/fw_4j1ed.img
fastboot flash fw_4j1ed_b images/fw_4j1ed.img
fastboot flash fw_4u1ea_a images/fw_4u1ea.img
fastboot flash fw_4u1ea_b images/fw_4u1ea.img
fastboot flash modem_a images/modem.img
fastboot flash modem_b images/modem.img
fastboot flash oem_stanvbk images/oem_stanvbk.img
fastboot flash qupfw_a images/qupfw.img
fastboot flash qupfw_b images/qupfw.img
fastboot flash storsec_a images/storsec.img
fastboot flash storsec_b images/storsec.img
fastboot flash system_a images/system.img
fastboot flash system_b images/system.img
fastboot flash vbmeta_a images/vbmeta.img
fastboot flash vbmeta_b images/vbmeta.img
fastboot flash vendor_a images/vendor.img
fastboot flash vendor_b images/vendor.img
fastboot flash LOGO_a images/LOGO.img
fastboot flash LOGO_b images/LOGO.img
fastboot flash persist persist.img

Notes

  • Invalid sparce file format at header magic is not an error
  • Some image flashing will take more time than others (depending on images size)
  • Last .img file to flash is in the stock folder, not the images folder
  • If you named your folders differently, don’t forget to modify them in the script

Finally
Use volume buttons to navigate in the fastboot mode, go on the “reboot to system” action and press the power button to validate.
Your phone should take some time to reboot, like if it was a first boot.

Remaining issues troubleshooting

  • if you plug your device to a computer, and it can’t access the phone internal storage, try downloading anything from your OnePlus (for example, an image from Google Images in Google Chrome). If it says that an error occured, and that the file can’t be saved on your device internal storage, go in Settings > System, and factory reset your phone
  • If you still have issues on your phone (mine had emojis missing…), copy the downloaded stock ROM ZIP on your phone internal storage root, go in Settings > System > System updates, touch the settings icon in the top-right corner, and perform a local update. Select the stock ROM ZIP and apply update.

Helpful links

At this point, all my troubles were gone. If you still have issues, do not hesitate to reply in this thread, and I’ll do what I can to try and help you!

Thanks!

2 Likes

Hello,

Could you try the solution to install in this theard ?

martoni :slight_smile:

Hey @martoni !
Actually, your thread was my main source of information when I tried to install /e/ OS on my OnePlus 6T, so thanks a lot!
But sadly, it seems it wasn’t enough… I did succeed to install TWRP with your information, but then, when I installed /e/ OS, I got the infamous fastboot boot-loop…
I think a better understanding of A/B partition may be the key to successfully install this OS in one shot.
I would be glad if you could write the full installation process, for I could check if I didn’t miss anything.
In the meantime, I’m gonna read stuff about A/B partioning, and maybe try those two threads:

This last thread is about a OnePlus 6, but has a well detailed installation process for A/B partitioned device.

Hello @Fluf,

Yes, understand A/B partition will be better. But you have TWRP on your 6T and now you’ve got 2 options :

  • Recovery mode + adb sideload myimage.img
  • Recovery mode with the img file in your phone + install + choose your folder where img file is and go

Is it Ok for you ?

Personnaly, i chose option 1 and it was success

martoni

Yes, that was what you explained on your other thread, but it didn’t work on my phone :cry:
I don’t know why… But I won’t stop trying to get rid of Google in my life :stuck_out_tongue:
I will try again later!

Hello,

Could you do a checksum about your img ? Is it correct with the md5 where you download it ?
Or download other one and checksum after.
Or try to install lineageOS, it’s an android 10.

martoni

I did a checksum validation, everything was okay.
I did try to install an older pi/e/ OS version, it didn’t work either.
I didn’t try installing a LineageOS ROM because I didn’t see how it could help me, though.
I could do that, and try installing /e/ OS then.

Ok, for what it’s worth, theres this awesome tool on XDA Developers.


It has saved me many times

Be careful, as this is the T-Mobile version, which is not compatible with the global version.
Global MSMDownloadTool is easily findable on XDA Developers, though. And it is, indeed, a wonderful tool to save tour phone if you are on windows (not so much on unix systems :wink:)

Hey, I’ve just encountered the same problem, could you tell me if this solution went well? Thanks!

Hey!

Yes, it went really well :grin:

1 Like

Thanks!!! I will try it today! Will let you know how it went.

1 Like

Please do! I hope I didn’t forget any step in the process :sweat_smile:
I hope you are ready to be my tutorial first tester :stuck_out_tongue_winking_eye:

2 Likes

Hello, how to know the version ? T-Mobile or global ?

martoni

Did you buy your phone at T-Mobile ? :wink:

Yes, i was a bad question…i bought it in France and the first owner bought it in Rakuten :slight_smile:

The T-Mobile version has a tray that holds one sim card. The global version has a tray that holds two sim cards.