How to unbrick OnePlus One (bacon)

in #oneplus6 years ago

I wrote this procedure up on XDA a while back and thought I'd post it here as well.
Original post and forum can be found at: https://forum.xda-developers.com/oneplus-one/general/guide-unbrick-oneplus-one-t3013732

First some background and credits:
There are a few ways to brick a phone. Sometimes it's lack of experience, sometimes it's an accidental thing, sometimes there just isn't an explanation for what went wrong... (share your experience here, if you wish). For me, I owned my OPO for about 4 hours before things went wrong. First thing I did was I rooted it and installed TWRP. After creating a nandroid backup of the stock image I installed my favorite custom ROM and restored all my apps with TiBu. Everything was great and configured just the way I wanted it. I then wiped my old phone (Nexus 4), installed a new ROM and got it all ready for my wife. She was so excited to get rid of her GNex and move up to the N4. But then, for whatever reason, I opened an app on my OPO that I used to manage, download, and install kernels with. It came up with "there is a new kernel update!" and I instinctively clicked on "Install". 10 seconds later my phone was bricked. Nothing came on the screen, no fastboot, no recovery, nothing to boot to, no way to send data to and from it. The second the screen went black and the phone became lifeless I got that wretched feeling in my gut as I realized I just flashed a N4 kernel on my new OPO. Restoring the kernel management app with TiBu made it act like it's still running on my old phone, and in my excitement I didn't take a second to think things through...
I received a bit of consolation when a quick XDA search revealed that I am not the only dumbass to brick his phone this very way. I joined forces with some pretty smart and desperate people and tried different things, all described in the following thread: http://forum.xda-developers.com/onep...t-adb-t2835696. Unfortunately it took us what seemed like many long weeks to figure it all out. Well, in the end a solution was found and I documented it in the the following post: http://forum.xda-developers.com/show...&postcount=136.

This was a few months ago, but I recently noticed many people continue to search for these directions and have problems finding them hidden among many pages and other threads, so I've decided to put this stand alone thread with these, now updated, directions.

Let me get one more thing straight, for the record. I did not find the way to unbrick the OPO. In fact I wasn't even the very first one to do it. It was a collective effort of few people who tried many different approaches and ideas, and I eventually documented these steps for others to follow. Being said, the following people deserve credit as well: @os_man, @rezor92, @Mnt-XDA. If I am forgetting other significant names and efforts, I apologize.

CAUTION
The following instructions are for hardware bricked devices ONLY and will not work on soft bricked devices. To determine whether your device is soft or hard bricked, click the button below:

Hardware brick
A hardware bricked OPO has nothing but a black screen (nothing ever comes on the screen, not even a boot logo), it might vibrate when a power button is pressed and held for 20 seconds, has no Recovery partition, no adb mode, and no fastboot partition. The device might be detected in Linux and you might be able to even send commands to it. In Windows, the bricked OPO should be detected as QHSUSB_BULK USB. You might have a bricked OPO as a result of flashing a kernel meant for a different device (or a ROM meant for another device that included a kernel), tinkering with the boot logo or bootloader, or your attempt of unlocking the bootloader resulted in corrupting the boot partition.

Software brick
Please do not attempt to use these directions if your phone is soft bricked. A software bricked OPO is one that might be stuck in a bootloop, but has a working bootloader, recovery partition, fastboot, or adb. If you press the power button and images appear on the screen and you are able to enter fastboot mode (Power + VolUP) or recovery (Power + VolDOWN) then your device is soft bricked. This thread does not encompass soft brick recovery, the instructions below do not apply and will not work on these phones. Consult other threads for help on soft bricked devices.

If based on the above explanation of differences between soft and hard bricks you determined your device is hard bricked, here's what you will need to do...

1:
Download Color.zip from https://goo.gl/iDby26
After downloading, unzip the archive on your computer.

2:
Next, you need proper Windows drivers. There are architectural differences between Windows XP and Windows 7/8, so follow the directions below that pertain to you. One quick note about the drivers: the installation and process is very simple and straightforward on Windows XP (I also tested successfully on Windows 2003), but proves to be quite a challenge when running on Windows 7 or 8. Over and over people report issues when attempting the unbrick procedure on Windows 7/8, some have more luck than others. Being said, if you have access to a Windows XP computer, I highly recommend that you use that. If you have no choice but to use a Windows 7 or 8 computer and have problems, please share them here and read others' experiences.

So first, by now you probably tried a few different things to fix your phone and you've already installed some drivers, including Qualcomm USB drivers for 9006 and 9008. My best advice is to uninstall the drivers you tried so far and use the ones listed below. Go to Device Manager, right click on the bricked USB device (QHSUSB_BULK or Qualcomm HS-USB QDLoader 9008) and go to Properties, click on Driver, then select Uninstall. Check the box to remove driver files, if prompted. Then:

2a:
Windows XP users:
You are in luck, driver installation is straightforward. Go to the extracted Color.zip folder and find Driver.iso. Extract Driver.iso. Inside the extracted folder find Setup.exe. Run Setup.exe to install the drivers. The installer is Chinese, but all you need to do is click through the prompts.

2b:
Windows 7 and Windows 8:
These operating systems block unsigned driver installations by default. Follow these steps (thanks @nag4pl for testing these):
Download and extract these Qualcomm 2012 drivers: https://goo.gl/cIKnFZ. Connect your bricked phone and let Windows do its thing.
Now something very essential you need to do here is to execute two commands to allow you to install unsigned drivers for QHUSB_BULK. Click on Start Menu > Type cmd.exe > Right Click and Run as Administrator.
In the CMD window type in the following commands (hit enter after each):

bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING ON

After both the commands should run successfully, restart your computer.
You can now proceed to install unsigned drivers from the file you downloaded. Open Device Manager, you should be seeing ugly yellow warning under other devices for QHUSB_BULK. Right click on the name and select Update Driver Software > Browse my Computer for driver software. For driver software location provide the path where you have extracted Qualcomm 2012 drivers you downloaded and make sure 'Include Subfolders' is checked. Proceed through all the installation prompts ignoring any warnings.

3:
Once you have the drivers straightened out, connect your bricked phone to the computer and start it up by holding VolUp + Power to about 10 seconds, and let the computer do its thing. Don't install drivers if they are not installed by itself. Instead launch Msm8974DownloadTool.exe as Administrator (right click on Msm8974DownloadTool.exe and select "Run as administrator") from the extracted Color.zip archive. It will scan all the COM ports and find the phone. That's the one line that looks different in the list. The list is just a list of your com ports and devices. If you unplug the phone and move it to another port, it will show your bricked phone on a different line.

Clicking on "Enum" just rescans the busses. Clicking the big square button in upper right corner scans the phone and reports what's good and what's not. It takes a minute for the scan to finish.

If you don't see your phone in the list of com devices, try unplugging/plugging in your phone a couple times, and rebooting it with VolUP + Power (hold 10 seconds). You will see it in Device Manager as well.

Once you see the phone in the list, click Start. You should see the programs start writing different files to the phone. Each time it writes a file you'll see a progress bar. Once you see this process happening, smile, you know you will be good to go... After all files are written, the com line with your device will turn green. You're good, unplug and reboot your phone. It will boot to ColorOS, the Chinese OS that comes on OPO.

4:
Optional Steps:
Your phone is no longer bricked. You now have a few options to get back to stock. The easiest way is to use a toolkit from http://forum.xda-developers.com/onep...9-gui-t2807418, or you can flash an image manually by following directions from: http://forum.xda-developers.com/onep...stock-t2826541. Download the proper image zip and after extracting it, run the following commands in fastboot mode:

fastboot flash boot boot.img
fastboot flash userdata userdata.img
fastboot flash system system.img
fastboot flash recovery recovery.img
fastboot flash cache cache.img
fastboot flash modem NON-HLOS.bin
fastboot flash sbl1 sbl1.mbn
fastboot flash dbi sdi.mbn
fastboot flash aboot emmc_appsboot.mbn
fastboot flash rpm rpm.mbn
fastboot flash tz tz.mbn
fastboot flash LOGO logo.bin

Make sure you have the proper image. I accidentally installed the 16GB version on my 64GB OPO first time and obviously didn't get 64GB of space.

Donations are appreciated:
BTC: 11Nu6FrhMQLQJKAwjv1dCLZ2EBrtsyxaJ
BCH: 14eUtQn31TbMbBWyZUFwSrY9iQz2V1UcuG
ETH: 0xc71c9774b2b93e8b491d359e73bf516cfb6d6e63
LTC: LcdfL6baEDJXVguiV9vKPZrE8BQfvhtC5x
DOGE: DBA5vriuHgPZH8ZaeqdfQAYBinG1dQZ4ih

Sort:  

Hello & Cheers!! I'm a content detection and information bot. You are receiving this reply because a short link or links have been detected in your post/comment. The purpose of this message is to inform your readers and yourself about the use of and dangers of short links.

To the readers of the post: Short links are provided by url shortening services. The short links they provide can be useful in some cases. Generally their use is benign. But as with all useful tools there are dangers. Short links can be used to hide all sorts of things. Quite frequently they are used to hide referral links for instance. While not dangerous this can be deceptive. They can also be used to hide dangerous links such as links to phishing sites, sites loaded with malware, scam sites, etc. You should always be extremely cautious before clicking on one. If you don't know and trust the poster don't click. Even if you do you should still be cautious and wary of any site you are sent to. It's always better to visit the site directly and not through a short link.

To the author of the post: While short links may be useful on some sites they are not needed on steemit. You can use markdown to format your links such as this link to steemit. It's as simple as [steemit](https://steemit.com) Unlike short links this allows the reader to see where they are going by simply hovering over the link before they click on it.

This message was created by a bot. It is part of the ongoing fight against spam and phishing attacks on steemit. If you did not use short links in your post and feel you have received this message in error you can contact @fubar-bdhr on discord or @fubar.bdhr on steemit chat to report the issue.

Coin Marketplace

STEEM 0.26
TRX 0.11
JST 0.033
BTC 62796.11
ETH 3045.55
USDT 1.00
SBD 3.85