From charlesreid1

I picked up an Android HTC Evo 4G for about $15, couldn't pass that up, so I wanted to figure out how to root it.

The summary of steps is as follows:

  • Unlock bootloader on phone
  • Download script to root phone

Yup, so here's the breakdown of those steps:

Unlock Bootloader

You can start by getting an account and instructions at http://www.htcdev.com/bootloader/unlock-instructions. They'll provide some binaries that you'll need too.

Step 1: Turn off Fast Rebooting

Step 1 is to turn off fast rebooting. This was in Settings > Applications > Fast Rebooting (uncheck it).

Step 2: Download Fastboot Binary

Step 2 is to download the fastboot binary. See the HTC developers website for the binary - they provide it.

Step 3: Run Fastboot

Step 3 is to run fastboot on your Mac. You'll tell it to listen for a device and get an identification token, basically a fingerprint for your device:

./fastboot-mac oem get_identifier_token

This will sit and wait for a device until it finds one, then it'll print the ID token to the screen.

Step 4: Reboot into Boot Loader

Step 4 is to reboot into the boot loader menu by turning off the phone, and then turning it on while holding down the "Volume Down" button.

Sequence: (Turn off phone.) (Hold down the Volume Down button.) (Power on the phone.)

You should now see a white android boot loader screen:

AndroidRootBootloader.jpg

If you use the power button to select "Fastboot USB", you should see a dump of information on the screen where you ran the fastboot command.

<<<< Identifier Token Start >>>>
ED5D284CF59A7747615E7487CA511419
FDBAE245F8910567A34142D436E00153
ED5D284CF59A7747615E7487CA511419
FDBAE245F8910567A34142D436E00153
ED5D284CF59A7747615E7487CA511419
FDBAE245F8910567A34142D436E00153
ED5D284CF59A7747615E7487CA511419
FDBAE245F8910567A34142D436E00153
ED5D284CF59A7747615E7487CA511419
FDBAE245F8910567A34142D436E00153
<<<<< Identifier Token End >>>>>

you'll copy and paste that whole block into the HTC developers website, and they'll email you a key that you use to unlock the phone and put firmware onto it.

Step 5: Using the Emailed Key

When I checked my email after submitting my device token, I found a .bin file attached to the email. Download it. Now run the following to get an unlock token using this key:

fastboot flash unlocktoken Unlock_code.bin

You'll see a screen like this, confirming you want to unlock the bootloader and void your warranty:

AndroidRootBootloaderVerify.jpg

Use the Volume Up to pick yes, and Power to select it. The Android phone will restart, and go through a new account setup. This is a brand-new install, everything is wiped clean.

Oh yeah, did I mention you should back up your stuff?

Ready to Root

Once you do all this, you'll finally be done... and ready to actually root the phone.

Actually Rooting the Evo

Following the instructions here

We've enabled firmware updates and the bootloader, which basically means that we can now flash the phone with our own Android images and builds.

The basic steps are:

  • Flash the phone with a recovery image, which will actually be a Cyanogen Mod build, which will give us a nice menu we can use to install software.
  • Put the Android rooting kit onto the SD card
  • Boot into the Cyanogen Mod menu, and install the rooting kit from the SD card

Once we do that, we'll be able to boot into Android and see our rootkit app.

link to a mirror for a zip file I used, basically same as what's in Android developer kit

Step 1: Settings

Since unlocking the bootloader reset the system, we lost all our settings. Sooo.....

First, disable fast boot again. Settings > Applications > Fast boot (uncheck it).

Second, enable USB debugging again. Settings > Applications > Development > USB debugging (check it).

Now we can restart into the boot loader menu again.

Step 2: Restart into Boot Loader

Power down, then power on while holding the volume down button.

Use volume down to pick bootloader and the power button to pick it.

Get the phone to be in fastboot mode, and waiting for the computer to do something.

Step 3: Flash the Phone

Now you'll use the fastboot binary and the image provided here to flash the phone, with this command:

./fastboot-mac flash recovery ./openrecovery-twrp-2.1.8-jewel.img

The img file comes from the link above.

Intermission: Let the Battery Charge

Make sure and do this process with a full battery, because the battery does not charge while the phone is plugged in. I started the whole process with 10% battery and had to end up stopping here to recharge the battery for a bit.

Still working off of this guide.

Step 4: Restart Into Fastboot

Now you'll do the usual, reboot into the bootloader menu by holding down volume when you power the Android on. enable fastboot mode by picking it with the volume up/down keys and pressing the power button. It will then wait for the computer to do something.

A note on listing the devices available:

You can list devices from both adb (android debugger) and fastboot. But depending on the mode that that phone is in, the phone will only show up to one or the other program.

If you have booted the phone into the bootloader menu and selected fastboot mode, the device will show up to fastboot:

$ ./adb-mac devices
List of devices attached

$ ./fastboot-mac devices
HT17JHL04387	fastboot

whereas if we had rebooted the phone normally, we would see this:

$ ./adb-mac devices
List of devices attached
HT17JHL04387	device

$ ./fastboot-mac devices

Use Fastboot to Flash

Okay, here's where we have to stop following guides, because they all turn to crud. The reason is, all the instructions are old, and none of them refer to up-to-date images. But the Cyanogen Mod works great.

So. The next step is to flash the phone with a recovery image from Cyanogen Mod. I downloaded the image/version they pointed to for the HTC Evo 4G.

The Clockwork Mod ROM from Cyanogen: http://clockworkmod.com/rommanager

This worked:

$ ./fastboot-mac flash recovery recovery-clockwork-5.0.2.2-supersonic.img
sending 'recovery' (3120 KB)... OKAY
writing 'recovery'... OKAY

Now, you've successfully flashed the Cyanogen Mod image onto the phone. That gets you a menu where you can install software zip files.

AndroidRootingCyanogen.jpg

Put Rooting Kit Zip File Onto SD Card

Your Android phone will have a small SD card in the back. The Android phone operating system is installed on-board the Android phone, so you can use any SD card you want. The Android operating system is Linux-based, so as long as the SD card is formatted sanely, the Android phone will be able to read the contents.

You'll use this to put the rooting kit onto phone's micro SD card. Then you'll use the Cyanogen Mod menu to install the kit.

Power down your phone, pull out the battery, and take the micro SD card out. You'll plug it into your computer via a micro SD to SD adapter, and then you can see the contents of the SD card mounted on your computer.

I used a fresh 8 GB micro SD card.

Copy the zip file http://charlesreid1.com/SWM-SuperSU-v0.87.zip (which contains the rooting kit) onto the micro SD card.

Once you're done, unmount the SD card, remove it, and put the micro SD card back into the Android phone.

Installing Rooting Kit from SD Card

Boot the phone into the Bootloader menu by holding the volume down button while powering on the phone.

Pick "RECOVERY" from the menu, using the power button to select. This will boot the phone into the Cyanogen Mod menu.

Now you can choose the menu item to apply zip from SD card.

Then you can choose the zip file you put on the SD card, containing the Android rooting kit.

Choose CWM-SuperSU-v0.87.zip.

Then confirm install.

Then it will start installing.

AndroidRootInstalling.jpg

Then it will finish installing.

AndroidRootInstallled.jpg

Restart

Once the installation is done, you'll still be in the Cyanogen Mod menu.

Restart the phone from the Cyanogen Mod menu by going back, then picking restart phone.

When you restart and open the phone's applications, you should see one called "SuperSU".

AndroidRootSuperSU.jpg

Done

You have now rooted your Android Evo 4G!

References

here is the list of resources:

More official and working stuff:

Interesting: