DRAFT 2013-11-06 UNFINISHED DRAFT
Introduction
A couple of years ago, the company I work for replaced a bunch of old HTC HD2 smartphones and I was allowed to take one home to play with. At the time, I had only ever seen Windows Mobile (6.5 and 7) phones and was really eager to try Android. I soon discovered that the HTC HD2 is a very good candidate for this. Even though the handset is completely outdated, it has drawn the attention of many enthusiastic independent developers that have ported an incredible number of alternative operating systems for it. Even today, this device is still getting updates that newer phones do not even get from their manufacturer!
Ever since I tried Android, I have never looked back. That old HD2 I got and only meant to play with actually became my primary phone for a long time. I enjoyed messing around a lot, but I initially found it really hard to get started and build up good knowledge of how things are done. My humble contribution here will hopefully make it easier for others to get started as well.
Getting Started
There are actually several versions of the HTC HD2. Mine is a European version, also known as International version, which this document will be about. I know there also is an American version with more internal memory, 1024 MB instead of 512 MB, called HTC Leo. There are possibly other variants.
Here is an overview of the required steps. First of all, upgrade the phone to the latest version of the official firmware provided by HTC. Hack the primary boot loader to allow installation of custom software. Install a custom secondary boot loader capable of loading Android. Install a custom Android recovery software. Finally, install a custom Android firmware, also known as ROM.
Please note that these steps require a computer running Microsoft Windows.
Boot Loader Mode
The primary boot loader, also known as SPL, is the very first thing that is run when the phone is switched on. It is a small piece of software that you usually don't even see, designed to either load and start Windows Mobile from the phone's memory, or to connect to a computer and install software updates from it.
To access this primary boot loader, you will need to press and hold the "Volume Down" key while you turn on the phone. Keep the key pressed until you get to a screen with four color bands (red, green, blue and white). It should not take more than a second to get there. If you miss it, remove the battery, put it back in and try again.
We will need to access this screen a few times while preparing this phone for running Android; I will refer to it as "boot loader mode". The red band will show information about the version. The white band will show the connection status: "Serial" when not connected, or "USB" when the cable is connected to a computer.
Upgrade Original Firmware
This step may not be required for every device. It is however recommended to upgrade your phone to the latest official firmware provided by HTC[1]. We actually only care about two subcomponents of this update: the SPL and the radio. The updated SPL should be compatible with the installation of HSPL in the next step if the version originally installed in your device wasn't. The updated radio version 2.15.50.14 will have the benefit of using a bit less memory, which will in turn be available to Android (especially useful for the European version of the HD2).
Download the update from HTC, start the phone in boot loader mode (see instructions in previous step), connect the micro USB cable, run the downloaded update and follow the on-screen instructions to install it. You do not need (but it won't hurt if you do) to restart in Windows Mobile after updating as we will eventually erase it anyway.
[1] Original firmware from HTC: ROM Upgrade for HTC HD2 (3.14.405.2)
http://www.htc.com/ie/support/news.aspx?p_id=297&p_name=htc-hd2
RUU_Leo_S_HTC_WWE_3.14.405.2_Radio_15.42.50.11U_2.15.50.14_LEO_S_Ship.exe
194.88 MB, MD5 sum: e480651082e79109cd693f380c9665c5
Replace Primary Boot Loader
Obviously, the original primary boot loader is only designed to load Windows Mobile. We will need to replace it with a different hacked version that will allow us to load something else.
Get Hard SPL (HSPL) version 4 by Cotulla[2]. Start your phone in boot loader mode as previously described and connect it to your computer using a micro USB cable. Run HSPL4.exe and compare the required SPL version with the version of your current primary boot loader (look for it in the red band). If your version of SPL is not compatible, go back to the previous step and upgrade the original HTC firmware. Otherwise, go ahead and install HSLP version 2.08.HSPL specifically, which you need to specifically select from a drop-down list. Make sure you see the message "we hacked it" at the end of the process. If you make a mistake and install another version, start the process again to install the correct one.
[2] HSPL4 by Cotulla
http://forum.xda-developers.com/showthread.php?p=5279236
http://forum.xda-developers.com/attachment.php?attachmentid=522724&d=1298224028
HSPL4.zip
1.41 MB, MD5 sum: 6c42cd96b187f0f3e2739176b80fe2cf
Wipe Phone Memory
Again, this step is not absolutely required, but it is good practice and may help avoid strange conflicts with your new Android installation. A piece of software called Task29 by DoLoop[3] allows you to completely wipe the internal memory of the phone. Start your phone in boot loader mode, connect the micro USB cable and run Task29.exe. This will not remove the hacked SPL or the updated radio; this will remove Windows Mobile (but will not prevent you from reinstalling it again, should you later wish to do so).
[3] Task29 by DoLoop
http://forum.xda-developers.com/showthread.php?p=5848003
http://forum.xda-developers.com/attachment.php?attachmentid=291950&d=1268260144
Task29_provided_by_doloop.zip
2.24 MB, MD5 sum: 98c2531e678f7e7f68d243481990ad75
Install Secondary Boot Loader
Remember that the HD2 is originally not an Android phone. Its primary boot loader is not designed to load Android. To achieve this, we will need to install a secondary boot loader. The two most popular that I have encountered are MAGLDR[4] and cLK[5].
MAGLDR has the great advantage of being able to load more than just Android. It actually allows you to multiboot different systems on the same phone: you could alternate between Windows Mobile and Android, for instance. On the downside, it is not "pretty" when it starts: you will see white text on a black screen when you switch your phone on, until it passes control to Android. The other problem is that it doesn't allow you to charge your battery without completely loading Android. This prevents you from charging your phone while it's switched off, which could really be a problem if your battery is not charged enough to start Android.
cLK may seem a little more straightforward. It only allows to start Android (no multiboot or loading other systems). Unless there's a problem during boot, you will not see its interface at all. It also allows charging of your phone while it's switched off. These two advantages combine to make your phone feel more Android native. However, I have also read that it may not take advantage of the extra memory that the updated radio could provide, which could be an annoying limitation for the European version. It could also have less stable support for data connections (GPRS, etc.), but I am not certain this is still the case with the latest version.
Both are installed exactly the same way. Download the one you intend to use, start the phone in boot loader mode, connect the micro USB cable and run the downloaded file.
[4] MAGLDR
http://forum.xda-developers.com/showthread.php?t=893618
http://cotulla.pp.ru/leo/Android/DFT_LEO_MAGLDR113_DAF.rar
DFT_LEO_MAGLDR113_DAF.rar
605.02 KB, MD5 sum: fcb5b8997a9a3a3d21a19346c2fa6b5d
[5] cLK
High-level Steps
- use Microsoft Windows
- install Windows Mobile Device Center 6.1 (or ActiveSync for older versions?)
- flash latest official Windows Mobile 6.5 ROM from HTC
- flash latest Radio to regain a bit of memory
- hack primary boot loader SPL 2.08
- wipe phone with Task29 by DoLoop
- flash secondary boot loader: MAGLDR or cLk
- flash Android recovery: ClockWorkMod (CWM)
- install custom Android ROM + gApps from recovery
Detailed Steps
- Flash a hacked primary bootloader. Download HSPL4 by Cotulla http://forum.xda-developers.com/showthread.php?p=11499585#post11499585
Links
- http://en.wikipedia.org/wiki/HTC_HD2
- http://www.cyanogenmod.org/about
- http://www.forum-generationmobiles.net/t61176-tuto-regroupement-comment-mettre-son-hd2-sous-wm-65-android-wp7-pour-les-debutant
ClockworkMod
- http://www.clockworkmod.com/rommanager
- http://download2.clockworkmod.com/recoveries/recovery-clockwork-3.1.0.0-leo.img
Task29 by DoLoop
What is HSPL, MAGLDR , cLK, and Clock Work Mod Recovery and how do you use them?
ClockworkMod Recovery for HD2 - v1.3
CyanogenMod ports for HTC HD2