[One (M7) Q&A, Help & Troubleshooting] qzcgd:
From Buggy to Stable

This guide requires S-OFF

Less than 1.54 (revone) | 1.54-55

Disclaimer

​

If there are files you need to keep, you can always use adb pull to get them out before hand (let's say a nandroid backup or something important)

This guide assumes you have knowledge about how adb and fastboot command work and that your HTC drivers are up to date. (Latest HTC drivers)

I am in NO WAY responsible for any possible damage that may happen to your phone, I am only trying to help

I am not a developer/hacker/programmer or anything similar; I am simply a patient geek that likes reading and writing. If you have to thank anyone, thank the developers who made this possible.

Special thanks to mike1986 for Android Revolution HD, the Revolutionary team for revone, beaups and fuses for Rumrunner and the CWM team for their awesome, continued work.

Goals of the Guide

​

Help provide the detailed steps to resolve a catastrophe

Help beginners with a detailed step by step and the relevant links to resources that will help them improve their knowledge and understanding

What You Need

​

An HTC One in distress

S-OFF

Custom ROM (or stock, we don't judge)

Unlocked bootloader

A custom recovery (I recommend ClockworkMod Recovery)

Compatible firmware package

*Optional but recommended for stability

*UL Variant : Regular / No Red Warning [3.62.401.1]

ADB and Fastboot in working condition

Quick verification

​

Start your phone in bootloader by holding the Power button and Volume-Down button (make sure there is plenty of light pointed at the sensor) or by typing

adb reboot bootloader

Select "Fastboot" so that it appears in red instead of HBOOT

On your computer, make sure fastboot sees your device, then type

fastboot getvar all

Do a quick copy/paste to compare later.

It should look like this :

(bootloader) version: 0.5
[U](bootloader) version-bootloader: [B][COLOR="Green"]1.xx.0000[/COLOR][/B][/U]
(bootloader) version-baseband: 4A.20.3263.16
(bootloader) version-cpld: None
(bootloader) version-microp: None
[U](bootloader) version-main:[B] [COLOR="green"]3.57.401.500[/COLOR][/U]
[U][COLOR="Green"](bootloader) version-misc: PVT SHIP [SIZE="6"][B]S-OFF[/B][/COLOR][/SIZE][/U]
(bootloader) serialno: HTxxxxxxxxxx
(bootloader) imei: 11111111111119
(bootloader) meid: 00000000000000
(bootloader) product: m7_ul
(bootloader) platform: HBOOT-8064
(bootloader) modelid: PN0712000
(bootloader) cidnum: 11111111
(bootloader) battery-status: good
(bootloader) battery-voltage: 3810mV
(bootloader) partition-layout: Generic
(bootloader) security: off
(bootloader) build-mode: SHIP
(bootloader) boot-mode: FASTBOOT
(bootloader) commitno-bootloader: dirty-6cad6811
(bootloader) hbootpreupdate: 11
(bootloader) gencheckpt: 0

Make sure the device is indeed S-OFF. If not, check your "version-bootloader" value and follow the appropriate instructions (which are linked at the top of thread depending on which version you are at)

If You Are Stuck in a Bootloop

​

Hold the Volume-Down button

Hold the Power button for around 10 seconds

Release the Power button (but keep Volume-Down pressed)

You should see something similar to this :

Plug the phone into the computer

Using the Volume buttons and the Power button, select Fastboot and make sure FASTBOOT USB shows up (like on the picture)

To make sure fastboot is properly connected, use

fastboot erase cache

Destroying to Better Rebuild

​

****Steps 1 to 4 are, although optional, recommended. They will completely erase what you have on your phone, but will reduce conflict; especially in cases where difficulties are encountered.

If you are still on stock recovery and ROM, select the FACTORY RESET option (If it is not there, select BOOTLOADER and then the FACTORY RESET option should appear.) Then skip to Step #4

If you are on a custom recovery, select the RECOVERY option in FASTBOOT If it is not there, select BOOTLOADER and then the RECOVERY option should appear.)

In recovery, select

Wipe data/factory reset

Wipe cache

Advanced - > Wipe dalvik cache

Type

adb reboot-bootloader

Flashing Firmware

​

Prepare your firmware.zip file for imminent flashing.

Type

fastboot erase cache

Type

fastboot oem rebootRUU

Once it's rebooted on a silver HTC logo, type :

fastboot flash zip [pathonyourcomputer/firmware.zip]

You should the following message :

FAILED (remote: 90 hboot pre-update! please flush image again immediately)
finished. total time: [I]X.xxx[/I] s

Re-type :

fastboot flash zip [pathonyourcomputer/firmware.zip]

Wait until it is done on your computer. The green progress bar shown on the phone will never reach the end.

Type

fastboot reboot-bootloader

Type

fastboot getvar all

Allows you, by comparing with your "old" results that the flash indeed worked.

Reinstalling recovery

​

Rename the recovery you downloaded to recovery.img and place it in your adb/fastboot folder

Reflash your recovery

fastboot flash recovery recovery.img

Reboot into recovery by selecting the option in fastboot by selecting BOOTLOADER and then RECOVERY (use the Volume-buttons to navigate and the Power-button to select )

***If it starts a boot loop, just force the phone to enter fastboot by holding the Volume-down button and use "fastboot erase cache"

***If you get an error similar to"mount: mounting /dev/block/mmcblk0p37 on /data failed: Invalid argument", follow this excellent guide by mike1986 on how to fix the issue.

Select the option "Wipe data/factory reset" (

You will loose everything not previously backed up outside the phone.

)

Select "Wipe Cache partition"

Select "Advanced -> Wipe Dalvik Cache"

Installing Custom ROM

​

Now you have 2 options :

Push (Preferred)

While in recovery, type

adb push [path/rom.zip] /sdcard/rom.zip

Select "Install zip"

Select "Choose zip from sdcard"

Voila ! You should be good to go !

Sideload (If you can't push for some reason)

Select "Install zip"

Select "Install zip from sideload"

Type

adb sideload [path/rom.zip]

Voila ! You should be good to go !

If anything needs to be changed or if you have any questions, I am subscribed to this thread and will check a minimum of once a day.