Sunday, January 1, 2012

Downgrade, root, S-OFF & flash HTC Desire HD

I know I haven't been very active with the blog lately, and I apologise for that. I've been quite busy around the house, with Christmas and New Year closing in...

Now, I'm done with all that. Christmas has passed, New Year as well... and I wish you to have had a wonderful time with your family/friends these holidays.

Got anything for Christmas?
I sure did. I got rid of that HTC Desire and got myself a HTC Desire HD, as a Christmas gift. Not much of an upgrade, but still...

I finally managed to get a custom ROM running on it. I had to downgrade the firmware from 2.x (it was running Gingerbread) to 1.72 (with Froyo) to be able to root it and then S-OFF and flash a Recovery. This entire process took me about 3 hours, basically because I was screwing up on making the goldcard.

Here's what you need to do in order to have a custom ROM and all that. If your phone is running HTC firmware 1.72 or earlier (not 2.x, in any case), you don't have to make a goldcard and downgrade the firmware manually; just skip after those steps.

So... here we go.

Follow THIS guide to:
-create a goldcard for your phone (basically, a microSD card fooling the phone so that you can "upgrade" to a older image file instead of a newer one)
-downgrade the firmware
-obtain temporary / permanent root on the downgraded firmware
-flash ClockworkMod Recovery : I reccomend you NOT do that until you S-OFF (keep reading)

To create the goldcard, I'd reccomend you follow THIS guide instead. I was struggling with HxD editor for the first two hours, trying to make a goldcard (tried with 4 different microSD cards)... all failed : "CID authentication failed". So, the program I linked you to is way better -- with that, it worked.

Then, once you're downgraded & rooted, proceed to S-OFF. There is now a VERY easy tool you can use to obtrain ENG S-OFF on your HTC Desire HD. I used it, and it only took 5 seconds. For this, you would need (naturally) : ADB drivers, the Desire HD to be rooted & with a firmware older than 1.7x and .NET Framework 3.5 installed. HERE it is.

Once you're done with all that, all you have to do now is flash a Radio and a Recovery.

Detailed info on Radio flashing can be found HERE. Also, there is a large repository of Radio image files there. The latest Radio is from 1st of December, 2011, 12.65.60.29_26.14.04.28_M (extracted from HTC 3.12.405.1 WWE). Even though its source is NOT known and the maker of the thread reccomends against flashing it, I, among many other DHD users, have flashed it, and it's working VERY well.

Now, flash a Recovery. I'd reccomend you use 4EXT Recovery, which now has a Touch Recovery system, which is basically what its name says : a recovery through which you don't navigate using the awful volume + power buttons, but rather the actual touch screen. Check it out, it's quite neat. Also, it's better than ClockworkMod's. You can also follow the thread for future updates and more information, HERE.

Now that you have the latest Radio... Here's the thing. The latest Radio is 26.14.04.28_M. What Radio you have does not matter for the ROM, it only gives you better reception and stuff like that. The RIL (Radio Interface Layer) matters, though.
The Radio is flashed separately from the ROM (just like the Hboot and the Recovery : they're not touched if you flash a custom ROM). The RIL, however, is part of the ROM. The RIL is the bridge between the ROM and the Radio. Say you have a new webcam. The webcam itself would be the Radio, and the webcam's software (driver) would be the RIL. We all know how tricky webcams get when the driver is wrong, right?

There are two types of custom ROMs : AOSP ROMs (based on Vanilla Android : CyanogenMod, MIUI etc.) and Sense ROMs (those that have HTC Sense UI on top). For AOSP ROMs, a different RIL and kernel is required. For Sense ROMs, a different RIL and kernel is required. Flashing a Sense kernel on an AOSP ROM doesn' do any good. Flashing a Sense RIL on an AOSP ROM would mean that you no longer have 2G/3G connectivity, for example.

If you plan on flashing a Sense-based custom ROM on your Desire HD, see THIS thread. There is a repository of RILs, SENSE RILs. Maybe a Sense-based custom ROM developer is reccomending that you use a DIFFERENT Radio from the last one, perhaps one that was released 6 months before. The only reason that he's suggesting you use THAT Radio is because the RIL according to THAT Radio is included in the ROM. That's why I advice you to flash the latest Radio, and, ONLY if you plan to flash Sense-based custom ROMs, flash the according RIL, afterwards.

No comments:

Post a Comment