If you are stuck with a USB bricked HTC Desire that isn’t rooted, there is good news for you as XDA-Developers forum member leinad has posted a solution for this problem to get your unrooted Android phone out of its USB bricked state and we are bringing the method here for you in form of a complete guide.
A USB brick is the state where your Android device isn’t getting recognized by the computer via USB in ADB (USB debugging) mode or in normal mode while booted into Android. The cause for this is usually a messed up misc partition and once it happens, there is little you can do to fix any issues that may arise later. If your device is rooted, you can still fix many problems using a terminal app directly on your phone but in case you didn’t root the device prior to the USB brick, you are often left without any solutions as rooting several Android devices and especially those by HTC, Samsung etc. requires you to connect your phone to your computer via USB. Fortunately, this method helps you when you are stuck in such a fix.
We came across this method while going through a tread at XDA-Developers in which a user asked for help with his USB brick issue and leinad proposed the first few steps of this solution. We then asked him about the remaining steps and he responded with the complete instructions, mentioning that credit goes to Antubis from the French Android forum FrAndroid who originally posted the method in French which leinad translated for us.
Disclaimer: Please follow this guide at your own risk. AddictiveTips will not be liable if your device gets damaged or completely bricked during the process.
- Reboot your device into its bootloader (fastboot) mode and connect it to your computer via USB.
- Launch a Command Prompt window on your computer and enter this command:
fastboot oem enableqxdm 0
- On your phone, Go to Menu > Settings > About phone > Software information and note down the Kernel version that you see there. If you see more than just numbers, only note down the numbers e.g. 126.96.36.199.
- In the Command Prompt window on your computer, enter this command:
fastboot getvar cid
- Note down the CID that you get. It should be something similar to ‘HTC__022’.
this site(unfortunately, the site is down and we can’t find an alternative) enter the CID from step 4 and the kernel version from step 3 as the ROM version, and click ‘OK’. This will generate an mtd0.img file and prompt you to download it. Save it somewhere you will remember.
- Now connect your SD card to your computer using a card reader device or another phone, and transfer the extracted HTC Desire USB Unbrick files as well as this mtd0.img to it. Make sure the files are in the root of the SD card and not in any folder.
- Insert the SD card back into your phone.
- Launch Terminal Emulator on your phone and enter these commands:
cat /sdcard/rageagainstthecage-arm5.bin > /data/data/jackpal.androidterm/rageagainstthecage-arm5.bin cat /sdcard/flash_image > /data/data/jackpal.androidterm/flash_image cat /sdcard/mtd0.img > /data/data/jackpal.androidterm/mtd0.img cd /data/data/jackpal.androidterm/ chmod 755 rageagainstthecage-arm5.bin flash_image /data/data/jackpal.androidterm/rageagainstthecage-arm5.bin
In case your phone seems to crash or shows erratic behavior, ignore it for now.
- Completely quit Terminal Emulator: First press the ‘Home’ button and then go to Menu > Settings > Applications > Manage Applications > All, find ‘Terminal Emulator’ there and tap ‘Force Stop’.
- Launch Terminal Emulator again. This time, you should see a # prompt instead of $, indicating you have achieved temporary root access necessary for the next step.
- Enter these commands in Terminal Emulator:
cd /data/data/jackpal.androidterm/ ./flash_image misc mtd0.img
- Finally, reboot your phone and you’re done.
That’s all there is to it – your USB brick issue should now be fixed.