Thursday 16 August 2012

Rooting an HTC Desire (or RTFM)

As I mentioned in a previous post, I'm enjoying my Nexus 7 tablet so much that I've given my HTC Sensation Xe to my wife and am now using her HTC Desire. Which is fine, apart from the fact that when she got it I upgraded it to the official HTC release of Android 2.3.3 (or Gingerbread) which left the phone with very little internal storage. She's mentioned it before but, to be honest, I hadn't realised just how bad it is. It's awful. The phone constantly reports being low on space with little or no apps installed.

Well, now that it's MY phone, it's time to do something about it.

There's a whole bunch of resources out on the internet about rooting. So many in fact that it's pretty overwhelming when all you want to do is get a single phone rooted with the minimum of fuss. I've spent a fair bit of time getting it sorted and at least part of the time I wasted doing it was because I didn't read the instructions properly. So, as I've done before, I'll attempt to put together a simple set of instructions to summarise what I did (on Windows 7 for clarity and for my very specific set of circumstances) in the hope that it might help someone else.

Okay, firstly, no matter what you do you're going to need to install some drivers. You'll need two sets - one for when the phone is in 'normal' mode and one for when it's in HBOOT mode.

for the normal drivers I'd recommend downloading and installing HTC Sync - or at least starting to. It'll first install all of the drivers for normal operation. Once that's done it'll start a standard-ish installation wizard for HTC Sync which you can and SHOULD cancel. You don't want HTC Sync installed at this stage as it messes things up so, if you've already got it, uninstall HTC Sync now.

Next you need the drivers for HBOOT so pop over to unrevoked.com and download the HBOOT drivers there then unzip them somewhere. Then put your Desire into HBOOT by turning it off and then turning it back on using the volume down and power buttons. If you find that it doesn't work, see if you've got Fast Boot enabled in the settings menu. If you can't find it, whip the battery out and put it back in and then turn on using power and volume down.

If you've got an HBOOT USB option in the HBOOT menu then select that using the volume up/down to move and the power button to select then plug your phone into your PC with a USB cable. If the option's not there, just go ahead and plug it in anyway (I did, and it worked fine).

Windows won't recognised the device and so you'll end up with an unknown Android 1.0 device in Device Manager. Right click, update driver and point it to your unzipped HBOOT driver folder. You'll get prompted that the driver isn't signed so you'll have to approve it to proceed.

Once that's installed, unplug the phone and reboot it (battery in and out again if it's easiest).

Now, here's where it depends on what version of Android you've got as to how you proceed. From what I can gather, the best option is unrevoked3 but it doesn't work for me on Android 2.3.3. I believe it works on Android 2.2 and earlier, but I can't guarantee that as I can't test it. The instructions seem pretty simple. Enable USB Debugging from the Settings>Applications>Development menu, plug the phone into the computer, change the USB mode to Charge only (from the pull down menu) and then run Unrevoked. It pretty much does the rest for you.

If, like me, you're stuck then you need to turn to revolutionary. Following the instructions over at androidforums.com you should first download ClockWorkMod 2.5.0.7 and put it in the root of your C drive for simplicity. Make sure you also follow the link it posts to the "Useful Downloads" section to get the latest username and password for downloading it. Next follow the set up instructions for ADB and FastBoot in the [FAQ] ADB and FASTBOOT for Windows post. You'll need this to install the recovery image.

Continue following the instructions - at this point you should be just starting step 4 (downloading revolutionary and the root file). Read the instructions, download the files (save revolutionary on your PC and the root file on the SD card), generate your beta key and then unzip and start running revolutionary. DON'T INSTALL THEIR RECOVERY IMAGE. You're going to install your own in just a minute.

Now boot into fastboot mode (power button plus volume down - see above) then select the fastboot option. connect the phone to the PC once again and you should see FASTBOOT USB on your screen. Open a command prompt on your computer and type:

fastboot flash recovery c:\recovery_CWM_2.5.0.7.img

(if you get some message like "command fastboot not recognized" then go back, read the ADB and FASTBOOT instructions again, and make sure you've modified your PATH variable.)

Finally, you need to apply the root file you downloaded earlier. Reboot into HBOOT (surely you remember how to do it by now?) and this time choose Recovery from the menu. Choose to "install zip from sdcard" then "choose zip from sdcard" and finally pick the zip you downloaded earlier (Superuser-3.0.7-efgh-signed.zip).

Reboot and you're now rooted! Woohoo!

So, now I'd recommend installing ROM Manager from the market which makes it incredibly easy to download and try out different ROMs. I'm using the Desire ISC ROM by Sandvold which is pretty good. The important part though is that after following the instructions at http://www.sandvold.as/FAQ.htm I am now installing all Apps straight to the SD card and not running out of space. Wonderful :)

Monday 6 August 2012

Update on the Nexus - how's it going a few weeks in?

I recently had a friend contact me asking if I was still enjoying the Nexus 7. I thought my reply would actually make a decent blog post with some minor modifications so here we go.

I'm still very happy with it. In fact, I'm so happy with it that I've given my Sensation Xe to the wife and taken her Desire as I'm barely using my phone any more and she's benefitting far more from the improved phone.
I've replaced the default keyboard with the Swift Key keyboard which is excellent (possibly even better than the HTC one!) I've also installed Ultimate Rotation Control as the fixed portrait homescreen is, frankly, stupid and particularly annoying when switching between two apps that you want to use in landscape.

I've opted to not use a screen lock code/face recognition as I prefer being able to get in to things quickly (kind of defeats the purpose of Google Now I feel if it's many clicks to access it). Instead I'm using App Lock on my mail app to comply with my own IT security policies :)

Google Now's pretty clever. My only complaint is that it doesn't do train times in Edinburgh, only bus times. I still think it's got potential to grow a huge amount though.

The lack of Flash is a bit pants. Not because I want to look at flash website particularly, but because the iPlayer app doesn't work. I presume that the BBC are working on a non-flash version for Android (presumably the iPad version is non-flash) but it's not here yet. In the meantime I've installed FireFox Beta and the Flash apk and that's working for the most part, but it's a bit clunky and not how I ideally want to be using this device.

What else? Err... Okay, bought a nice cover and stylus combo from Amazon for a tenner. It's this one:

Although would probably have bought this one if it had been half price at the time I was looking (which it is now):

The cover's quite nice as it has two angles - a shallow one for typing and a steeper one for 'consuming content'. If you're wanting to use it for taking notes, an external bluetooth keyboard might be better but I'm finding Evernote/Skitch adequate at the moment.

It needs more apps developing for it that take advantage of the screen size. There's a few apps that I'd normally have that aren't available for it yet. Amazon's a good example of that although the website is easily accessible at this screen size through the Chrome Browser. Nice feature of Chrome actually - if there's two links close together and, when you click, you don't quite hit either/hit both, it shows a close up of the area to let you click again.

As a bit of a laugh while we were away recently, I tried to use it for Sat Nav by downloading some maps for use offline. It doesn't work though - it needs an active internet connection to plot the route. I don't know how well it would work if you started the navigation before you left home and then carried on from there. Presumably okay but, honestly, it was just for a laugh - nowhere to mount a 7" tablet in my car just now.
For internet out and about I'm using the phone as a hotspot and that seems to work great. Finding it preferable to use the tablet bounced off the phone than just use the phone.

So, that's essentially where I am now. To wrap up, I'd like to answer a question I posed a while back -namely, are apps as relevant to tablets? Well, having had my tablet for a while it's an overwhelming YES from me. Whilst many website are wonderfully functional, they're not all designed to be interacted with via a touchscreen. A great example is GMail. I thought it would be a strong contender for abandoning the app, but it's just not as convenient. Using the web interface really underlines how much thought has gone into making the App clean and easy to use with minimal presses; using the web front-end quickly becomes frustrating.