Modding

MIUI ROM Beta #5 – Preview

12

If you’ve rooted your phone, then you’ve most likely heard of the MIUI ROM.  If you haven’t, then it’s about time you found out about it!

MIUI is a custom ROM built by a team of developers in China.  Unlike most other ROMs, MIUI not only gives a complete UI overhaul to Android (iOS like in some cases) but it also introduces a massive range of new features.

The newest version of MIUI is due for release on 31st December, and the video below shows a preview of what’s to come:

Feature List From the Video

  1. iPhone style homescreen, with widget support
  2. Custom themes to change the full design of the ROM
  3. Quick toggle for most settings in the notification screen
  4. Fancy animations
  5. New music player application with lyrics support
  6. Lockscreen music controls
  7. Unlimited homescreens
  8. Rearrange the application drawer
  9. Uninstall applications via the application drawer
  10. FAST
  11. iPhone style contacts app
  12. T9 Dialing
  13. Call Recording (needs loudspeaker to be turned on)
  14. Reject/Mute Calls
  15. Send text message when rejecting a call

If you’re interested in this ROM then the place to lookout for is: http://miui-dev.com

FAQs

  1. The ROM in the video is in Chinese, will the ROM be Chinese too?
    Although all official ROMs are released in Chinese, you can download language packs (including English) from http://miui-dev.com to translate the full ROM into your native language.  If you know what you’re doing, you could actually translate it yourself!
  2. What phones can I get MIUI on?
    MIUI is built for the HTC Desire, Google Nexus One and Motorola Milestone, however it has been ported to other devices such as the HTC Evo
  3. Which version of Android is this ROM based on?
    MIUI ROMs use the latest Froyo release, but I would expect it to be upgraded to Gingerbread at some point

HOW TO: Delete System Applications On Rooted Phones

12

This tutorial shows you how to remove system applications that come installed on your phone, or ROM of your choice that you don’t actually want.

Notes

  1. If the ROM you are using has the Read/Write via Overlay Filesystem on then there’s no need to boot into recovery
  2. If you’ve used the S-OFF hack to enable full read/write access to your system partition then there’s no need to boot into recovery
  3. If you’re using the latest Amon RA Recovery, then you can just use the “Mounts” option to mount the system partition

Requirements

  1. A rooted phone
  2. The adb driver setup on your computer – how to

Video Tutorial

This video shows you how easy it is to do everything below!

Making the System Partition Writable

This change isn’t permanent, meaning that when you leave recovery mode your system partition will revert back to read-only.  It’s only temporarily writable so that you can get rid of those unwanted apps.

  1. Connect your Desire via USB cable
  2. Open the Command Prompt/Terminal on your computer (Start Menu > Run > Cmd)
  3. In the command prompt window type: adb reboot recovery
    Your phone should restart in recovery mode
  4. Type: adb shell
    The first character in the command prompt will change to a #
  5. Type: mount -o rw -t yaffs2 /dev/block/mtdblock3 /system
    This mounts the system partition and gives you read and write access to it

Backing Up Applications

Before you start deleting apps, I’d strongly recommend backing them up onto your computer first.  Here’s how:

  1. Type: exit
    This leaves shell mode
  2. Type: adb shell ls system/data
    You should now see a list of all the apps (.apk files) in your system folder
  3. For whichever apps you want to backup type:
    adb pull system/app/<full_name_of_app.apk> <full_name_of_app.apk>
    where <full_name_of_app.apk> is the name that was listed in step 2
  4. If you look on your computer in the directory that Command Prompt is pointing to e.g. C:/Users/Ash then you’ll see a copy of that .apk file that you just backed up

Deleting Apps

Note: PLEASE make sure you’ve backed up any applications before deleting them.
Also, be sure that you’re not deleting any important system apps like Rosie (the HTC Sense framework!).  Deleting things like Quick Office, Peep, Teeter, Facebook etc is fine.

  1. Enter shell mode again by typing: adb shell
  2. Type: cd system/app
    This takes you into the system/app folder
  3. Type: ls
    This will show you a listing of the apps (.apk files) in the folder
  4. Type: rm <full_name_of_app.apk>
    where <full_name_of_app.apk> is the name that was listed in step 2
    This deletes the application permanently from your phone
  5. If in step #3 there was a <full_name_of_app>.odex file as well as .apk then delete that too using: rm <full_name_of_app.odex>

Rebooting

Once you’re done deleting your applications you can restart your phone and if everything went well then it will start normally and you’ll find that the deleted applications no longer show up in your app drawer.

Restoring Applications

If for whatever reason you decide that you want to reinstall those system applications you backed up, you can do the following:

  1. Make your system partition writable using the steps in Making the System Partition Writable
  2. Locate the apks you backed up before deleting
  3. Type adb push <full_name_of_app.apk> system/app/<full_name_of_app.apk>
ypmount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system

HOW TO: Transfer MicroSD Card Contents (including Apps2ext)

2

Today I received my 16GB MicroSD to replace my now full 8GB.  Normally to transfer contents it’s quite straightforward – just copy everything to computer then back onto the SD card (or from SD to SD if you’ve got a card reader).  However, if you’ve got a rooted phone running apps2sd (also known as Apps2Ext) then there’s slightly more work involved to make sure that you end up transferring all your apps too.  The method below describes how I managed it, and under that I’ve listed a few alternatives…

Requirements

  1. Rooted phone
  2. SD card with ext partition
  3. ADB installed – how to

Instructions

  1. Make sure you’ve still got your old SD card in
  2. Create a new folder on your computer called SD Card Backup
  3. Create 2 subfolders, one called FAT and another called EXT
  4. Connect your phone to computer and set to Disk Drive mode
  5. Copy all your SD card contents (FAT partition) into the FAT folder
  6. Open Command Prompt/Terminal on your computer
  7. Type: cd<space>
    Make sure you use a space character, don’t type <space> and don’t press Enter yet!
  8. Drag and Drop the EXT folder into your command window, and you’ll notice that the full path to your EXT directory appears
  9. Press Enter
  10. Set your phone USB connection to Charge Only
  11. Type: adb pull /sd-ext/app .
    Don’t forget that “.“!
    Press Enter
  12. Wait while all your apps are copied into your EXT folder
  13. Once copied, insert your new SD card and use the same method you previously used to partition your new SD card as you want
    I use the Amon RA recovery, flashed using Unrevoked.  My partitions are: 4GB ext, 32MB swap (not really needed) and the rest as FAT
  14. Connect your phone via USB again
  15. In the command window, type: adb push . /sd-ext/app/
  16. Wait whilst all your apps are copied back to your ext partition
  17. Copy all your FAT files back onto the FAT partition

Alternate Methods

  1. Use Linux.  Mounting your SD card in Linux will mount your ext partition too.  It’s then a simple case of just copy and pasting your files from old SD to computer, then computer to new SD
  2. Titanium Backup.  You can use Titanium Backup’s Batch feature to backup all the apps to the phones Fat partition, then copy the backups to new SD and do a batch restore
  3. MyBackupPro – similar to Titanium Backup, MyBackupPro allows you to backup all apps and their data, then restore them.

Why My Method?

I chose doing it the adb way because it doesn’t involve copying everything onto the SD card first – otherwise you’re waiting for everything to be backed up to SD, then to computer, then back to SD and then restoring using Titanium/MyBackupPro.  It’s also good to have a copy of your apps saved on your computer just in case something goes wrong with your phone or SD card.  If you already have adb installed, then it’s really quick to just run the adb command and grab all your apps.

PSFreedom

HOW TO: Run PSFreedom On Your Desire (PS3 Jailbreak)

7

IMPORTANT: Sony have released the 3.42 update which patches this exploit.  If you want to retain the ability to jailbreak don’t install this update!!!
Instructions are available here on how to avoid the update and still play online.

As mentioned in the Twitter article yesterday there’s an open-source exploit available for the Sony PlayStation 3 which lets you run Homebrew software on it.  This hack has now been ported to Android – this means you can now connect your phone to your PS3, run the jailbreak and be able to run homebrew.

Note

In order to use this you need to Enable PSFreedom first to launch the jailbreak on  the PS3.  Whilst it’s on you won’t be able to use the normal USB capabilities of your phone (adb, file transfer, charge etc), but straight after running it you can disable it.

Requirements

  1. Sony PlayStation 3 on the 3.41 firmware.  DO NOT UPDATE TO 3.42 (see here)
  2. A rooted phone running OpenDesire 4.0.4 – link
  3. Either: Enable PSFreedom Homebrew (link) or Enable PSFreedom BDMV (link).  BDMV is the one for backups.
  4. Disable PSFreedom (link)

Installation

  1. Copy the Enable PSFreedom File and Disable PSFreedom file to your SD Card
  2. Reboot the phone in recovery mode
  3. Select “install zip from SD Card
  4. Select the Enable PSFreedom file
  5. Reboot your phone

Uninstallation

  1. Reboot the phone in recovery mode
  2. Select “install zip from SD Card
  3. Select the Disable PSFreedom file
  4. Reboot your phone

How To Use

  1. Turn off your PS3 (unplug or turn off the switch on the back)
  2. Connect your phone via USB cable to the PS3 (make sure you’ve got PSFreedom Enable on using the Installation steps above)
  3. Restore power to the PS3 by turning the switching on or plugging the cable back in.  Don’t turn on yet
  4. Press the Power button and then QUICKLY press the Eject button.  If you do this right you’ll know because it takes a few seconds longer to start up
  5. In the Games section of the XMB (Cross Media Bar) you’ll see two new options.  If it’s not worked, repeat steps 1-4.
  6. Disconnect your phone and run the Uninstallation instructions to restore normal USB functionality

FAQs

  1. Do I need to repeat this every time I want to run the exploit?
    Yes, as it’s a soft-jailbreak the jailbreak needs to run each time you turn your console on.  There’s no harm in leaving your phone with PSFreedom Enable on if you don’t the USB features for a while.
  2. Will it only work on OpenDesire?
    For now yes.  The exploit needs to modify the kernel and for now it’s only been done for the OpenDesire one.  We’ll probably see the hack coming to other ROMs in the near future
  3. Can I Run Backups?
    Yes, if you use the BDMV file.  There’s a Homebrew Backup Manager which lets you install the contents of game disk to your hard drive.  After that you still need a disk in the drive (any disk) to launch the game.  Please be sensible with this and use it for games you own.  More detailed instructions (and warnings) on this here (first post, scroll down to the FAQs on backups).

via PSFreedom

Font Select

HOW TO: Replace the Default Font

14

This guide shows you how to replace the default Android font (Droid Sans) with a custom font of your choosing.

Requirements

  1. A rooted HTC Desire
  2. The font package zip file – link
  3. The font changer .apk file – link

Installation

  1. Copy the font-package.zip file to your SD card
  2. Reboot your phone in recovery mode – instructions below if you don’t know how:
    • Using adb: type in Command Prompt/Terminal: adb reboot recovery
    • Using Boot Control widget: click the widget and select Recovery console
    • Manually: turn off your phone.  Turn on your phone holding the power key down.  Select recovery from the menu that appears
  3. Select install zip from sd card and select the font-package.zip file
  4. Once the install is complete restart your phone.
  5. Install the Font Changer apk file (instructions here if you don’t know how)

How to Change Font

  1. Run Font Changer. You’ll be presented with a list of fonts that you can choose from
  2. Select a font that you like and a preview will appear
  3. If you’re happy press Yes, then press Yes again when prompted to restart your phone
  4. When it’s restarted you’ll see that the system font will have changed to your selection!

How to Revert back to the Default Font

  1. Download the font-reset.zip file from here
  2. Copy the file to SD card
  3. Reboot into recovery and install the font-reset.zip file. Restart phone
  4. Uninstall Font Changer from your applications

Credits

martino2k6 for the font changer apk and update.zip files (link)

HOW TO: Install A Custom ROM On Your HTC Desire

29

Once you’ve rooted your phone you’ll probably want to install a custom ROM to take full advantage of the new gateway you’ve opened in to phone modding.

Requirements

  1. A rooted Desire

Choosing A ROM
If you’ve already found a ROM you want to install then skip down to the “Installing the ROM” section.

I use XDA-Developers to browse and download ROMs.  There’s a massive selection there all created and customised by various developers.
Just visit the Desire Development section to find a ROM

There’s plenty of ROMs to choose from, each with their strengths and weaknesses.  In order to pick a good ROM there’s a few things to consider:

  • Developer – ROMs are developed usually by individuals, some are created by teams (such as CyanogenMod).  There’s a few dev’s that are well known and have decent reputation, here’s a few examples:
    1. richardtrip – developer of the DeFrost ROM
    2. AdamG – developer of the OpenDesire ROM
    3. uDK – released the leaked Froyo for Desire
    4. Cyanogen – well known for the CyanogenMod series (but currently no stable version for the Desire)
  • Features – what’s included with the ROM.  Here’s a few things to look out for:
    1. HTC Sense – quite a few ROMs don’t actually have HTC Sense.  They run Vanilla Android, which is Android without HTC’s Sense User Interface, and HTC’s applications.  I quite like Vanilla Android, but if you need Sense then make sure the ROM you choose has it.  If you’re not familiar with Vanilla Android then there’s no harm in installing a vanilla ROM to try it out.
    2. A2SD – Apps to SD card feature which means you can install apps to your SD and not have to worry about free space on your phone.  Although Froyo brings A2SD to the Desire anyway, I still managed to run out of space using it (it stores part of the app on the phone still).  As a workaround I switched to the unofficial A2SD method which stores the full app on your SD card though requires an initial setup stage where you create a partition on your SD card to store the apps.
    3. Cache to SD AKA dalvik2sd – This relates to the unofficial A2SD mentioned above.  If you have a fast SD card (class 4 or 6) then it might be worth looking out for this feature too.  If you’re still on a Class 2 like me then it’s probably better if you get a ROM without this.
    4. Custom Kernels – some ROMs will have a custom kernel which features UV (Undervolting) and/or OC (Overclocking).  From my limited understanding, UV causes less voltage to be provided to the processor and therefore increases battery life, whereas OC increases the maximum number of CPU cycles and therefore makes the phone run a little bit faster.  I prefer to stick with the stock kernel in terms of OC/UV.  Additionally, some kernels add support for things like ext3/ext4 partitions, Wireless N and volume hacks.
    5. Theming – some ROMs have exactly the same functionality as other ROMs, but simply look different.  Dev’s have created skinned versions of both Vanilla ROMs and of HTC Sense ROMs.  If you want an alternate look then a themed ROM might be worth looking out for.
    6. Extras – there’s a lot of other customisations developers choose to make too.  Usually the dev will list all the features and modifications in the first post of the article (assuming you’re using XDA) so you can have a look and see if it’s something you like!
  • Updates and Issues-have a look at the topic to see if there’s been many updates to the ROM.  Good developers maintain their ROM and actively fix any problems that occur.  Unfortunately, there’s a number of ROMs where the developer simply wanted their 5 minutes of fame, and then didn’t bother updating the ROM any more even though it has several issues.
    At the top of quite a few ROM topics, the developer will mention and issues that the ROM has so that you’re aware of them before installing.  You can also read through the topic to see if users are reported any other bugs too.  If it seems unstable then it might be worth holding off that ROM for a while.

Installing a ROM

  1. MAKE A BACKUP OF EVERYTHING FIRST.  If you don’t know how have a look at my tutorial here.
    There’s also a backup method in ROM Manager called “Backup current ROM” which I suggest running at least once too.
  2. Download the ROM file from the topic on XDA.  Certain ROMs such as the HTC Sense Froyo’s also need a radio file, if that’s the case then download that too
  3. Connect your Desire to your computer in Disk Drive mode
  4. Copy the ROM file (should be a zip file) and radio (if you need one) to the SD card
  5. Unmount your phone – Eject and change mode to Charge Only
  6. Reboot into recovery using one of these methods:
    • If you have adb install just open Command Prompt/Terminal and type: adb shell reboot recovery
    • If you have ROM Manager installed just choose the “Reboot into Recovery” option
    • Otherwise, turn off your phone -> Hold down Volume Down and Power to boot into hboot -> use the Volume Down key to select “Recovery” and then press the Power button to select it
  7. Once in recovery use your trackpad to scroll down to install zip from sdcard
  8. Choose choose zip from sdcard
  9. Select the ROM to install – your ROM will begin to install
  10. Once installed press the back button a couple of times to go back to the main screen of Clockwork Recovery
  11. Choose reboot system now
  12. If your ROM needs a new radio installing then check if there’s any specific steps in the ROM topic, otherwise just repeat steps 6-9 but select the radio zip file instead of the ROM in step 8
  13. Your phone will now restart and attempt to boot into the custom ROM

FAQs

  1. My phone gets stuck at the boot screen, help!
    Just go back into recovery and select the wipe data/factory reset option.  Then restart your phone.  If the problem persists have a look in the ROM topic because it may just be a faulty version of the ROM.
  2. How Do I Create An Ext Partition for A2SD?
    This is only needed if you’re using the unofficial A2SD script.  If you want to use Froyo’s built-in version then you don’t need to do anything.
    You’ll need 1) AmonRA recovery port: link and 2) UnrEVOked again
    Using the root guide you used previously and get to the point where you have to run UnrEVOked – but DON’T CONNECT YOUR PHONE yet
    Go on File -> Custom Recovery, and select the AmonRA file you just downloaded (e.g. recovery-RA-desire-v1.7.0.1-R5.img)
    Now connect your phone and let UnrEVOked do it’s thing
    You’ll end up in recovery mode, but now with a different recovery image
    Scroll down to Partition SD Card
    Select Partition SD
    Press Trackball to confirm
    Set the swap size to 0
    Set the ext-2 size to any size you want – this is where your apps will be stored.  I’ve found 2GB way more than adequate but it’s down to personal preference.
    Fat32-size should be remainer.  This is your normal storage space for everything that’s normally on your SD card (what you see when you connect in Disk Drive)
    Press the trackball and your SD card will be partitioned.   When you restart your phone the A2SD script should automatically copy all your apps to the new ext2 partition, and installl any future apps to there too!

HOW TO: Root Your Desire Easily (Method #2)

98

This guide is for Windows users who don’t feel comfortable with Method #1.  It’s still really quite easy to follow as you’ll see…
Whilst these instructions will work, I’ll try to go into a bit more detail tomorrow and hopefully get a video tutorial up too.

Disclaimer: I take no responsibility for anything that may go wrong by you following these instructions.  Proceed at your own risk!

What You’ll Need

  1. unrEVOked3 for Windows – download

Preparation

  1. Uninstall HTC Sync if you have it installed
  2. Install the hboot driver using these instructions (it says Evo, but works for Desire) – when complete restart your phone
  3. Reinstall HTC Sync
  4. Double-click the reflash-bundle.exe file you just downloaded
  5. It will ask you where to install it, so just pick a location on your computer you can remember

Rooting

  1. Go to where you installed Unrevoked
  2. On your Desire go to Settings > Applications > Development and make sure you have USB Debugging turned on
  3. Connect your phone to computer via USB
  4. Run reflash
  5. Wait a couple of minutes whilst your phone is rooted
  6. If all goes well you’ll have a rooted phone

Final Word

Once rooted, you can install HTC Sync again.

At the end of this guide your phone should be rooted and you’ll be in recovery mode.  At this point you can restart your phone and continue using it normally, but with the bonus of having root permissions.
You’ll be able to run apps that need root permissions like ShootMe for screenshots, and Titanium Backup which lets you make a backup of all your apps and the app data (really suggest you do this if you’re going to install a custom ROM)

You can now move on to installing custom ROMS including the leaked version of Froyo if you like :)

UPDATES

  1. 17 July 2010 09:29: Added “Reinstall HTC Sync” step.  This will make sure the phone is always recognised and prevent it from being reported as “disconnected”.  Still need to uninstall so that you can install the hboot driver without interruptions.
  2. 21 July 2010 19:18: Added note that phone should be restarted after installing hboot drivers

HOW TO: Root Your Desire Easily (Method #1)

40

This guide shows you how to root your Desire very easily. There’s two methods to root, I prefer this one.  You just download a Linux Live CD and use it to run UnrEVOked.  Don’t be put off by the word “Linux”, this tutorial’s really easy.

Disclaimer: I take no responsibility for anything that may go wrong by you following these instructions.  Proceed at your own risk!

What You’ll Need

  1. HTC Desire!
  2. blank CD
  3. computer with CD/DVD writer, and some software to burn with (if you don’t have burning software try ImgBURN)
  4. A Linux LiveCD (I used Slax)
  5. If you’re on a wireless network, then download Unrevoked for Linux from their site and copy it onto a USB stick (or your phones SD card)

The Guide

  1. Burn your Linux LiveCD to your blank CD using your burning software
  2. Keep the CD in the CD drive and restart your computer
  3. You should see Slax starting to load up – if not you may have to change your boot sequence so that the CD boots before your hard drive (guide)
  4. You’ll see a Slax start screen – select “Slax Graphic Mode (KDE)” then wait for Slax to load up
  5. Once you get to the Slax desktop, open Firefox using the icon in the taskbar at the bottom, and go to: http://unrevoked.com/.  Select the Desire, click “Unrevoked3″ and select “Download for Linux”.  Choose the Save option when prompted by Firefox
    If you’re on a wireless network just copy the file from your USB drive or SD card to the Desktop.
  6. Extract the file you download (instructions below if you don’t know how)
  7. On your Desire go on Settings > Applications > Development and make sure “USB Debugging” is turned on
  8. Connect your phone to your USB cable
  9. Run Unrevoked (file’s called reflash) and wait a couple of minutes whilst it roots your phone
  10. When it returns the success message you know you’ve successfully rooted your phone!
    The video below shows the rooting process:

(Optional) Detailed Instructions on How To Extract the File You Downloaded

If you don’t know how to extract the UnrEVOked file downloaded from Firefox, follow these steps:

  1. Go to the Slax desktop (close any open Windows)
  2. Double-click the Home icon on the Desktop -> go into Downloads
  3. Right-click reflash.tar.gz and select Preview in Archiver
  4. Right-click the file in the window that opens, and select “Extract”
  5. When it asks you to select a location, click the Folder icon next the text box (which says root) and select Downloads
  6. Press OK

Final Word

At the end of this guide your phone should be rooted and you’ll be in recovery mode.  At this point you can restart your phone and continue using it normally, but with the bonus of having root permissions.
You’ll be able to run apps that need root permissions like ShootMe for screenshots, and Titanium Backup which lets you make a backup of all your apps and the app data (really suggest you do this if you’re going to install a custom ROM)

You can now move on to installing custom ROMS including the leaked version of Froyo if you like :)

Tiny Core Linux Desire 2

HOW TO: Root the HTC Desire (Updated, Easier Method)

10

Yesterday I posted how to root your HTC Desire, which was the first method made available by Paul @ Modaco.  Today he’s created a new method which is much easier.

Note:

  1. I take no responsibility for anything that might go wrong. You do this at your own risk
  2. This method will wipe your phone completely – so backup everything using either SMS Backup Restore/ Call Log Backup Restore / MyBackup Pro / Sprite Backup or any other backup apps available in the market
  3. You need a microSD card to create a goldcard as per the instructions.  At the end of it you won’t be able to use that SD card as a normal memory card.  Don’t use your primary SD card, use a spare, smaller card – even 1GB should suffice
  4. Any problems either post here, in the original Modaco thread (linked above)

Skip to the rooting method

Read this whole topic – it contains a ton of useful information as well as the instructions and downloads!


Remember that if you use this guide, you do so entirely at your own risk!

Welcome to my guide on how to root the HTC Desire!

Compatibility

This guide will allow you to root your HTC Desire, provided it has a bootloader version of 0.75 or below. To check this, turn off your device, then turn it back on with the ‘back’ key held. On the second line in green text you will see HBOOT- and then a number. Provided this is 0.75 or below, this guide should work for you.

O2 Germany devices are currently shipping with a 0.80 bootloader, and as such cannot be rooted using this guide at this time.

Desire rooting protection

Back in the early days of Android, rooting was easy. You had several options – you could flash stuff via the bootloader, you could flash an engineering bootloader, you could use kernel exploits – there were many ways of getting the low level access to your device that – in fairness – I think we as paying customers are entitled to. As time has progressed however, the manufacturers have made things harder and harder. The Desire is not a straightforward phone to root, for many reasons, including…

  • a ‘perfected bootloader’ that doesn’t allow flashing or booting of any images (even HTC signed ones)
  • a RUU flash process that does not allow downgrading of the bootloader to earlier versions
  • a kernel (that as yet does not have publicly available source) that as yet has no known exploits
  • a new protection method previously seen on the HTC Tattoo that protects key partitions from having write access. Even with SU access, it is not possible to write to the boot, recovery or system partitions.

In reality, the options for rooting a device this secure are limited. Even if a kernel exploit were found, the key partitions would still be unwritable, rendering su access useless. This was circumvented on the Tattoo very cleverly, using a specific memory address from a confidential Qualcomm datasheet, however this information is not yet available for the Snapdragon chipset used in the Desire (and indeed may never enter the public domain).

And so the root process becomes a process of methodically probing every possible point of exposure on the device, looking for the slightest chink in the armour. I found one and we’re putting it to good use! The downside is that it’s not as easy or as pretty as rooting a device that is actually DESIGNED to be accessible at the lowest level, such as the Nexus One.

Shame on you HTC for going to such unnecessary lengths (but that’s another story for another day).

What this root process provides and does not provide

The root process will…

  • flash your device with a new, generic 1.15.405.4 based ROM that has Superuser access
  • show you how to enter the recovery image in future, allowing you to flash update zips

The root process will NOT…

  • enable you to flash your device with a custom recovery image that can be launched easily by just holding down the volume down button when powering on
  • enable you to have write access to the /system partition in normal use of the device

Both of these limitations are being worked on of course.

Pre-requisites

In order to complete this guide, you need the following…

  • a HTC Desire
  • a PC
  • a microUSB cable
  • a microSD card (to be made into a ‘goldcard’)
  • the downloads below
  • balls of steel (actually, I just made that up)
Download

To be ready for the guide, download the following items…

  • the ISO image – DOWNLOAD / MIRRORS COMING SOON MD5: 854bdbb3c5898b15f92b5991204c9288

Once you have this on your machine, you’re ready to start!

The guide

Follow through these steps, one by one and at the end of it you’ll have a rooted Desire with the latest ROM.

Note: This process will wipe your device and there is currently no option to backup your device ROM before you start.

  • Make your microSD card into a goldcard by following these instructions (it’s a good idea to back up the contents of your card first!).
  • Unzip the file you downloaded to a directory, then open a command prompt / terminal window at that directory.
  • Turn off your HTC Desire, then turn it back on with the ‘back’ button held down. You’ll see ‘FASTBOOT’ written on the screen in a red box. Connect the phone to the computer.
  • In the terminal window, enter either (as appropriate, with no quotes)
    ‘step1-windows.bat’
    ‘./step1-mac.sh’
    ‘./step1-linux.sh’
  • When this step has completed, using the optical trackball, navigate to the ‘BOOTLOADER’ and then ‘RECOVERY’ option on the menu, using the volume buttons to move and the power button to select.
  • In the terminal window, enter either (as appropriate, with no quotes):
    ‘step2-windows.bat’
    ‘./step2-mac.sh’
    ‘./step2-linux.sh’
  • When this has completed, your device should be at the ‘recovery’ screen. Select the ‘wipe’ option, then select the option to apply an update zip from sdcard, and select ‘rootedupdate.zip’. This will take a little while, so go make a nice cup of tea. When the flash has finished, reboot, and you are DONE!

Troubleshooting

If you have any issues with the root process, post below, and we’ll do our best to help!

And finally!

If you wish to do so, you can express your appreciation by signing up to a MoDaCo Ad Free or MoDaCo Plus Account using PayPal or Google Checkout, as detailed in this post on MoDaCo
. As well as donating to support the work that goes into all the various MoDaCo activites, you get cool stuff like free software (there’s some great Android stuff coming too!), an ad free MoDaCo site and of course access to the MoDaCo Online Kitchen. All signups are very much appreciated.
Enjoy!

P

Thanks to ChainsDD for his excellent new Superuser Permissions update and Amon_RA for the recovery image I butchered here.

via Modaco.

Enjoy!

HOW TO: Root the HTC Desire!!!

1

UPDATE: An easier guide is now available here!!!

The wait’s finally over, Paul OBrien over at Modaco has finally completed his guide on how to root the HTC Desire.  The instructions are available below.

Note:

  1. I take no responsibility for anything that might go wrong. You do this at your own risk
  2. This method will wipe your phone completely – so backup everything using either SMS Backup Restore/ Call Log Backup Restore / MyBackup Pro / Sprite Backup or any other backup apps available in the market
  3. You need a microSD card to create a goldcard as per the instructions.  At the end of it you won’t be able to use that SD card as a normal memory card.  Don’t use your primary SD card, use a spare, smaller card – even 1GB should suffice
  4. Any problems either post here, in the original Modaco thread (linked above)

Instructions – courtesy of Paul@Modaco:

Read this whole topic – it contains a ton of useful information as well as the instructions and downloads!



Remember that if you use this guide, you do so entirely at your own risk!

Welcome to my guide on how to root the HTC Desire – this is a ‘first cut’ of the guide, and will be refined / improved as time progresses!

Compatibility

This guide will allow you to root your HTC Desire, provided it has a bootloader version of 0.75 or below. To check this, turn off your device, then turn it back on with the ‘back’ key held. On the second line in green text you will see HBOOT- and then a number. Provided this is 0.75 or below, this guide should work for you.

O2 Germany devices are currently shipping with a 0.80 bootloader, and as such cannot be rooted using this guide at this time.

Desire rooting protection< /b>

Back in the early days of Android, rooting was easy. You had several options – you could flash stuff via the bootloader, you could flash an engineering bootloader, you could use kernel exploits – there were many ways of getting the low level access to your device that – in fairness – I think we as paying customers are entitled to. As time has progressed however, the manufacturers have made things harder and harder. The Desire is not a straightforward phone to root, for many reasons, including…

  • a ‘perfected bootloader’ that doesn’t allow flashing or booting of any images (even HTC signed ones)
  • a RUU flash process that does not allow downgrading of the bootloader to earlier versions
  • a kernel (that as yet does not have publicly available source) that as yet has no known exploits
  • a new protection method previously seen on the HTC Tattoo that protects key partitions from having write access. Even with SU access, it is not possible to write to the boot, recovery or system partitions.

In reality, the options for rooting a device this secure are limited. Even if a kernel exploit were found, the key partitions would still be unwritable, rendering su access useless. This was circumvented on the Tattoo very cleverly, using a specific memory address from a confidential Qualcomm datasheet, however this information is not yet available for the Snapdragon chipset used in the Desire (and indeed may never enter the public domain).

And so the root process becomes a process of methodically probing every possible point of exposure on the device, looking for the slightest chink in the armour. I found one and we’re putting it to good use! The downside is that it’s not as easy or as pretty as rooting a device that is actually DESIGNED to be accessible at the lowest level, such as the Nexus One.

Shame on you HTC for going to such unnecessary lengths (but that’s another story for another day).

What this root process provides and does not provide

The root process will…

  • flash your device with a new, generic 1.15.405.4 based ROM that has Superuser access
  • show you how to enter the recovery image in future, allowing you to flash update zips

The root process will NOT…

  • enable you to flash your device with a custom recovery image that can be launched easily by just holding down the volume down button when powering on
  • enable you to have write access to the /system partition in normal use of the device

Both of these limitations are being worked on of course.

Pre-requisites

In order to complete this guide, you need the following…

  • a HTC Desire
  • a Windows machine (sorry, I am trying to remove dependencies on specific OS’)
  • a Linux (a liveCD should do) or OSX machine (sorry, I am trying to remove dependencies on specific OS’)
  • a microUSB cable
  • a microSD card (to be made into a ‘goldcard’)
  • the downloads below
  • balls of steel (actually, I just made that up)

Downloads

To be ready for the guide, download the following items…

  • the ‘test ruu’ – DOWNLOAD / MIRROR – MD5: f1981b26b90b97aea395d2b30909a23f
  • the ‘push files’ – DOWNLOAD / MIRROR- MD5: 9ee301b702078dd1842bd1c67e552f6e
  • the ‘rooted update’ – DOWNLOAD / MIRROR – MD5: 44f2614452ddf777cab9115e2174a91a

Once you have those on your machine, you’re ready to start!

The guide

Follow through these steps, one by one and at the end of it you’ll have a rooted Desire with the latest ROM.

Note: This process will wipe your device and there is currently no option to backup your device ROM before you start

  • Make your microSD card into a goldcard by following these instructions (it’s a good idea to back up the contents of your card first!)
  • Copy the ‘rooted update’ you downloaded above to the root of your SD card, before replacing it into your device.
  • Turn off your HTC desire, then turn it back on with the ‘back’ button held down. You’ll see ‘FASTBOOT’ written on the screen in a red box.
  • Connect the phone to your computer, then run the ‘test ruu’ that you downloaded above (it may take a short while to start). Let the update complete and turn your device off as soon as it reaches the configuration wizard. If you need USB drivers, you can find them as part of the HTC Sync install.
  • Your device should now be off. Unplug the device from your computer. Turn it on again while holding down the ‘volume down’ button this time. The screen will look similar to before, but will say ‘HBOOT’ instead of ‘FASTBOOT’. Use the volume buttons and the power button to select the ‘RECOVERY’ option. You should then see a screen with a red triangle – at this point, plug it into your Linux or OSX computer.
  • Now you need to unzip the ‘push files’ zip that you downloaded above. When you have done so, you’ll see a file called ‘recovery-linux.sh’ or ‘recovery-mac.sh’. Run the one appropriate to your operating system and the screen of your device should change to display the green recovery image menu.
  • In the recovery image (moving around using the optical trackball), select ‘Wipe -> Wipe data /factory reset’ then ‘Flash zip from sdcard’ and choose the rooted update. Confirm with the trackball and the update process will begin. It’ll take a little while, so go make a nice cup of tea.
  • When the flash has finished, reboot, and you are DONE!

Troubleshooting

If you have any issues with the root process, post below, and we’ll do our best to help!

And finally!

If you wish to do so, you can express your appreciation by signing up to a MoDaCo Ad Free or MoDaCo Plus Account using PayPal or Google Checkout, as detailed in this post on MoDaCo.
As well as donating to support the work that goes into all the various MoDaCo activites, you get cool stuff like free software (there’s some great Android stuff coming too!), an ad free MoDaCo site and of course access to the MoDaCo Online Kitchen. All signups are very much appreciated.

Enjoy!

P

Thanks to ChainsDD for his excellent new Superuser Permissions update!

via Modaco

Go to Top