This tutorial will walk you through the process of backing up, unlocking your bootloader, rooting your phone for developer access, installing a custom bootloader, doing a device level backup just in case, and finally flashing a custom ROM. Phew. It’ll take you from a stock HTC One X, up to a device you can throw around custom ROMs like they were pancakes.

As ever, neither I nor MakeUseOf make any guarantees about this – you should never try installing custom ROMs or any kind of hack if you can’t afford to buy a replacement device. You may brick your phone.

You will need:

HTC One X (don’t try with another model, I have no idea if it will work).

Windows.

HTC Sync software installed.

Patience.

That last point is vital. If you hurry the process, you’re going to skip something, and throughly mess up your phone. You have been warned. Multiple times. Also, this is going to void all or parts of your warranty.

1. Basic Backup

Use the [NO LONGER WORKS] Go Backup Pro app to back up your contacts, messages and call logs. You’ll need to pay for the full version if you want to back up your apps too, but I found this wasn’t necessary as they were all saved under my Google account and automatically synced back when the process was complete. When the backup is complete, copy the file to your desktop.

2. Unlock Your Bootloader

In this step, we’ll be using the official HTC developer registration process in order to unlock the phone (note, this is different to unlocking your SIM card – you’ll still be tied to that provider).

Ensure you have HTC Sync installed on Windows. For me, the drivers failed to install on Windows 8 64-bit, so I had to manually install the drivers from here. Restart, plug in your phone and check all is well.

Next, register as a developer on the official HTC Dev page. Check your email, activate your account, then log in. Then, select the option to Unlock Bootloader, and choose All Other Supported Models from the dropdown selection. Now, begin the process.

The HTC site will talk about creating a directory and grabbing some files from the Android SDK. Instead of downloading the whole thing, just grab this zip which contains the needed files. Extract these to a new folder in the root of your PC drive – call it Android for simplicity sake. These files are used to communicate directly with your phone over the USB connection.

Next, we need to reboot your phone into fastboot mode. To do this, simply restart the phone (or power it on) whilst holding down the VOLUME DOWN button. You should see a white screen with a menu, similar to this.

If you can’t get it to do this (initially, mine simply flashed the bottom row of buttons then restarted normally), it means your device is set to boot quickly without the developer options. Disable this by going into Settings -> Power -> and uncheck Fastboot. Try again, until you get to that white menu screen.

Connect the device to your computer, then using the volume buttons to go up and down the list, and the power button to choose, select the FASTBOOT option. The screen will change slightly and will now be listening for commands over USB.

Continue on with the process outlined at the HTC site. Open up an elevated command prompt (in Windows 8, you can right click from the bottom right hand corner to do this, or launch the command prompt app from All Apps -> right click -> Run as Admin).

Navigate to the directory you created earlier. If you used my suggestion, you can type:

cd c:\Android

Now type

fastboot oem get_identifier_token

As described on the HTC site, copy (tip: right click and select Mark first) and paste the token into the text field, and click the button to continue. The token will be emailed to you as a .bin file. Download this file, and place it in the Android directory you made earlier.

Now, to send this unlock token to the phone, type:

fastboot flash unlocktoken Unlock_code.bin

Again, using the volume buttons to move up and down and the power button to select, choose to unlock the phone. Congratulations, that was probably the hardest part of this process.

3. Rooting

The phone is now unlocked and ready to be messed with, but still not rooted. To do that, we need to install a special recovery application. We’ll be using one called ClockworkMod. Once it’s been installed, you’ll be able to do a root level backup and it’ll be used to install a custom ROM. Think of it as our friendly modding utility that makes life easy.

Start by downloading both the files from this thread. Place them both into that Android directory we created earlier.

Reboot your phone into the FASTBOOT mode again, and make sure your USB cable is plugged in. Again, I had to change the default Power option to disable fast boot mode before this would work. Type the following command to flash ClockworkMod to the device:

When completed, reboot again, but this time select RECOVERY from the menu, not FASTBOOT. You’ll be thrown into ClockworkMod.

4. NANDROID Backup

From the menu, select Backupand Restore. Create a new backup; this uses NANDROID to create a root level backup of everything, to use just in case something goes wrong later – you should be able to boot back into recovery and restore this. To be safe, reboot into your phone normally and copy the backup contents – found within the clockwork directory – to your PC.

Remember, your phone has been wiped at this point, so you’ll need to go through any setup procedures again. Don’t bother setting up too much though, as the custom ROM will format it again.

5. Install a Custom ROM

I’ve chosen one called Viper X which you can download from here. Why? It seems to be popular, users say it’s rock solid, enhances battery life, and it’s built on Android 4.2. You could choose another one though, and the process will be basically identical. It’s a 650MB download, so get comfy.

Copy the downloaded zip to the phones internal SD card, then extract boot.img from the zip and place it into the Android directory. Reboot and select FASTBOOT mode again, and type:

fastboot flash boot boot.img

Reboot again and select RECOVERY to load ClockworkMod. First select Wipe cache partition, and then Advanced -> Wipe Dalvik Cache. Now you can go back and select install zip from sdcard. Find the custom ROM zip file, select and walkthrough the installer. For the ViperX ROM, be sure to say you’re not using a custom Kernel (unless you are, in which case you probably not reading this guide).

Upon completion, the first boot will be quite slow, but this is normal.

That’s it, all done. Now, I’m no Android expert so I can’t promise to be of any help if you’ve broken something, and certainly don’t try this procedure on anything other than a stock HTC One X.

If you have any suggestions for a better custom ROM to try, let me know in the comments. Erez is a fan of MIUI.

When I attempt to run the fastboot oem get_identifier_token, I'm running into this error: " 'fastboot' is not recognized as an internal or external command, operable program or batch file." I've followed the steps (to my knowledge) exactly. Any idea what I've missed or am doing incorrectly?

Yawn, how many times are we going to be shown how to unlock, root, install custom rom on your bla bla android on this site? Show us something perhaps a bit more unique/uncommon that is not shown on every other site. Make use of used to show its readers new and innovating software and ideas. Earn your money and stop going over old ground, or perhaps editing and re-publishing.

Not a big fan of my work then? Here's an idea - dont read it. There's lots more here for you. I couldn't find one single tutorial to show me how to do it, so I learnt, and wrote about it. Crazy huh? Producing work from your own experience. Madness.

What have you contributed to the global pool of knowledge lately apart from a worthless anonymous comment? Oh, nothing?

Android is open in the sense that you can install whatever you want on it without the need to Jailbreak/root the device. BUT a lot of careers pre-install bloatware onto the devices and that is one thing that can't be removed without rooting. You also have to root the device to make system changes ie custom ROMs ...

For those that want to change the UI look and feel without rooting launcher apps are available in the Play Store.

Basically, when you root an Android device you unlock the ability to access the "/" directory of your system partition, this enables you to do many Superuser things like deleting default/career apps, changing and managing clock the processor clock frequency and formatting it with a new OS or what's called ROM here. The access to the "root" level by default is only locked for security reasons to prevent novice users from messing up with system stuff because, well, if they delete the system files, they will brick the device.

James has a BSc in Artificial Intelligence, and is CompTIA A+ and Network+ certified. He's the lead developer of MakeUseOf, and spends his free time playing VR paintball and boardgames. He's been building PCs since he was a kid.