OpenRUU For Linux And Mac OSX Users   September 28th, 2010

The official HTC RUU files are only available for Windows, however if you are using either Linux or Mac OSX there is now a way to run a modified version of the RUU to enable you to update using the same official ROM, just read down through this guide and follow the instructions below.

Caveat: Please read the entire guide before starting and ensure that you fully understand all of the steps.  If you are unsure about anything, please ask a question using the comments at the bottom of the post before continuing; it’s better to check first before starting and finding you run into problems.  The usual also applies, by following this guide you do so at your own risk, I will not be held accountable for any problems you may encounter along the way.

  • Firstly, download and install the appropriate Android SDK for your operating system, both Linux and Mac OSX versions can be found here, this will make sure that you have all the files and drivers necessary on your machine before starting (these will also be useful afterwards so it is a good idea to leave them installed once you have finished).
  • Download the OpenRUU file, complete with the necessary ROM from here [mirror].

Next, you’ll need to create your goldcard:

  • Backup the data on your microSD card.  You may also wish to make a copy of any SMS or MMS messages that are already on your phone, suitable apps can be found on the market to do this.
  • If you took out your microSD in the previous step, ensure it is back in your Desire and click through Menu>Settings>SD & Phone Storage.
  • Click Unmount SD card.
  • Click Format SD card; by doing this from within your phone instead of formatting it from your computer, you will ensure that it is formatted in the correct format.
  • Next, download and install ASTRO File Manager from the market if you do not already have it installed.  Once it has finished being installed open the application.
  • Navigate to sys/class/mmc_host/mmc1/mmc1:82d1 (you may find that ‘82d1 will be different, this is normal just choose the option that you have available on your device).
  • Long press on the CID file.
  • Select Open As and then Text.
  • Select File Editor.
  • You’ll be given a long number, make a note of this somewhere safe.
  • Open this page in your internet browser on your computer.
  • Enter the number you found in the above steps into the SD Card Serial (CID) field.
  • Enter all of the other details that you are asked for and hit Generate Goldcard.
  • Check your email on your computer, the goldcard image that you have just created will have been sent to you as an attachment.  Save this into the root of your user directory, it’s important that you do not save it anywhere else.
  • Connect your Desire to your computer.
  • Pull down the notification bar on your Desire and press Charge Only (if you have previously changed the default option this may be different, i.e. HTC Sync).
  • Select the Disk Drive option and hit Done.
  • On your computer, open Terminal which can be found by clicking through Applications>Utilities>Terminal (depending on which operating system you are using the location of Terminal will vary)
  • Type the following:
    diskutil list
  • You should be able to see your microSD card; you can recognise it from its size and by the fact that its type is DOS_FAT_32.  You need to make a note of the Identifier for example disk2s1.
  • Now you need to unmount the microSD, assuming your Identifier was disk2s1 (change the value ‘2’  based on the number you got after the word ‘disk’) enter the following:
    diskutil unmountDisk /dev/disk2
  • Finally, to actually create your goldcard type:
    sudo dd bs=512 if=~/goldcard.img of=/dev/disk2 (remembering to change the ‘2’ if appropriate)
  • When prompted, you’ll need to enter your password.

That’s the goldcard created, and the hard work out of the way.  At this stage, double check that anything on your device that you wish backed up has been, as in the following stages you will flash your Desire with a new ROM and wipe any data in the process, then when ready proceed with the next stage:

  • Extract the OpenRUU archive that you downloaded earlier.
  • Run 2FastbootFlash-xxx.sh, where xxx represents the operating system that you are using; either Linux or Mac OSX (based on the Linux version, to run the file you will need to ensure that the file is executable.  To do this, right click the file and clicking through Properties>Permissions, tick to allow executing file as a program.  Then simply double click the file and choose Run in the popup allowing it to run within Terminal).

The RUU should now run and after a few minutes you will be finished.  Any questions leave a comment below.

Credits:  Thanks to 42turkeys for the tools and scripts used in this guide.

TweetDeck For Android Step By Step   September 2nd, 2010

I have been asked to write a guide for people new to Android explaining how to install TweetDeck.  For those who aren’t familiar with TweetDeck, it’s a cross platform Twitter client that only recently become available for Android.  A lot of people may well have used the desktop version previously; out of all the desktop Twitter clients, TweetDeck is regularly voted one of the top applications and for good reason.  TweetDeck isn’t just all about Twitter however; it allows you to also configure your Facebook, MySpace, Foursquare, LinkedIn and Google Buzz accounts.

The Android client shares many of the features of its desktop sibling; however it will only allow you to integrate Twitter, Facebook, Google Buzz and Foursquare accounts.  This really isn’t an issue though as MySpace is not as popular these days anyhow and the majority of mobile users will be consumers who probably don’t use LinkedIn (of course there are other LinkedIn applications available from the market if you do require this).  Another great feature is that you are able to enter your TweetDeck account details and it will automatically sync the accounts that you use in your desktop client meaning you don’t have to worry about remembering all of your account details individually.  Right from the word go the developers over at TweetDeck have given a lot of thought towards the end user experience to ensure it doesn’t become another run of the mill Twitter app (have you looked at Seesmic or Twidroyd recently; both good apps but take away the exterior shell and you are left with very similar and traditional Twitter clients) instead choosing to produce a new, innovative design that’s fresh and exciting.

Installing TweetDeck is simple, although as it is still in beta stage, it is not available to download from the market as yet.  To download and install TweetDeck you’ll need to do the following:

  • On your device, navigate through Menu>Settings>Applications
  • Ensure that the Unknown sources option is checked; if it was previously unchecked you’ll be shown a security dialogue box, acknowledge this to continue
  • Open the browser on your device
  • Navigate to http://www.tweetdeck.com/go/android/ and your device will download the required .apk file to your download folder on your microSD card
  • Next you’ll need an app that is capable of initiating an installation directly from a native .apk file, for novices perhaps the simplest solution is to go to the market and download Linda File Manager
  • Once you have downloaded this, open Linda File Manager from the app drawer
  • Click the SD Card option
  • You should see a folder called download, this is where the browser will have downloaded the TweetDeck installer, click download
  • Click TweetDeck-0.9.5.apk (see note below)
  • Once the installer has finished installing, click Open to proceed directly to the app to setup your accounts

Notes:  I have given you the direct download link from TweetDeck so as new updates are released, clicking this link will download the newer files.  You may therefore find that your actual file will differ in version number, this is not an issue; simply install the version that was downloaded.

If you use the desktop version of TweetDeck, you’ll be able to sign in using your TweetDeck account here, this means that you will not have to separately configure Twitter, Facebook, Google Buzz or Foursquare as the app will “pull down” your settings and sync your accounts automatically.  If you don’t have a TweetDeck account, then you’ll need to add each account separately by clicking on the appropriate option.

That’s about all there is to it.  One of the great things about TweetDeck for Android is that there are not many options to configure, making the experience a simple one; it just works!  That’s not to say it is short on features.  You’ll notice that your timeline has all of your accounts in one continuous list; each colour coded for easy identification.  You’ll even notice that as you scroll up and down through the list, the time at that particular place in the timeline is displayed at the top which I think is a nice touch.  You can flick right through 2 more screens to see your mentions (which apply not only to Twitter, but anything that is deemed a “notification” in Facebook also) and your DMs; everything is laid out in a simple yet graphically pleasing way.

One thing worthy of mention at this stage is that unlike any other Twitter app I have ever used on Android, the timeline always remembers where you left it.  Not just some of the time, but all of time; no more waking up in the morning and having to manually find where you were the night before because the timeline had somehow managed to “jump” to the top all on its own.

There are four buttons at the bottom of the main screen, the first of which will probably be one of the most used; the button to compose a new update (allowing you to choose which of the accounts you want to update).  Next you have a favourite’s button, once you press this you are presented with a user customisable screen whereby you can store your favourite contacts for one touch access to all of their profile and update information.  Finally there is the Twitter search and location buttons; the Twitter search button allows you to search trends on Twitter, the location button interfaces with Google Maps to show you your current location.

Once you start using the app, you’ll find more too; like the image preview and location map (but only if the posters update was location aware) below any updates you click on, saving you having to click through 2 or 3 pages to get the same amount of information on other clients.  There is the simple slider button to change the display font size and a well laid out configuration screen where you can change your notification options and set the duration between updates; last but not least my favourite feature, whereby the TweetDeck notification icon flips upside down and “dies” if it encounters a problem whilst posting an update.  I can just imagine the response of the other members of the development team whilst sat around a table brainstorming when that idea came up, pure genius.

Remember also that this is still a beta product (although in fairness, it is the most stable beta I have ever used, not a single FC or issue to date), which means that it is going to more than likely be updated again before the final release, adding more features based on user feedback.  The downside of this is that as the app was not downloaded from the market, you will not receive an automatic notification when an update is available; not a huge issue though.  The best way around this is to follow TweetDeck (@TweetDeck) on Twitter as they tweet when an update is available for download (then all you need to do once you click on the link and download any update is to follow the last 5 steps of the guide again to update).

TweetDeck for Android is great app; it’s in a different league to HTC Peep.

HTC Peep Not Working? This Is Why   September 1st, 2010

A lot of people will be waking up this morning and finding that they are unable to login to Twitter via HTC Peep on their Desires, confusingly your device will report that you have entered an incorrect username or password combination even though you have not made any changes.  The truth is that owing to a behind the scenes change to the Twitter APIs, HTC Peep is no longer compatible and more than likely won’t be for some time.

It’s been common knowledge for some time that Twitter has decided to move away from basic authentication to OAuth for all third party apps; it makes sense that some of the older Twitter clients would be affected by this but you’d have thought HTC would have had the foresight to release an update prior to today, especially given that the switchover date has already been put back previously.  I wonder just how many people will be scratching their heads today trying to figure out why HTC Peep isn’t working, not realising that it’s actually a fundamental problem that they will not be able to resolve, no matter how many times they re-enter their details or reboot their devices.

In honesty HTC Peep is actually a pretty poor client anyway; it does the job if you are after a simple Twitter client but it has been left behind feature wise compared to other apps freely available such as Twidroyd, Seesmic or TweetDeck (though still in Beta, this is by far the best Twitter client around in my opinion, you can download from here).  Of course if you have flashed a custom ROM onto your Desire already chances are you are not using HTC Peep so this will not affect you; certainly if you are using one of the many vanilla ROMs available you’ll probably be sat at home reading this having a little chuckle to yourself.  If not, perhaps this is the excuse you need to delve into custom ROMs and ditch HTC Sense.

Update 02/09/2010 08:30

Here’s an official release from Twitter which I recieved in my inbox overnight; though not effected with the HTC Peep issues myself, frustrating that they only made this public annoucement a full day after the problem manifested itself:

Hi @mikesouthby,

Over the coming weeks, we will be making two important updates that will impact how you interact with Twitter applications. We are sending this notice to all Twitter users to make sure you are aware of these changes.

What are applications?

There are over 250,000 applications built using the Twitter API. To use most applications, you first authorize the application to access your Twitter account, after which you can use it to read and post Tweets, discover new users and more. Applications come in many varieties, including desktop applications like TweetDeck, Seesmic, or EchoFon, websites such as TweetMeme, fflick, or Topsy, or mobile applications such as Twitter for iPhone, Twitter for Blackberry, or Foursquare.

Update 1: New authorization rules for applications

Starting August 31, all applications will be required to use “OAuth” to access your Twitter account.

What’s OAuth?

OAuth is a technology that enables applications to access Twitter on your behalf with your approval without asking you directly for your password.

  • Desktop and mobile applications may still ask for your password once, but after that request, they are required to use OAuth in order to access your timeline or allow you to tweet.

What does this mean for me?

  • Applications are no longer allowed to store your password.
  • If you change your password, the applications will continue to work.
  • Some applications you have been using may require you to reauthorize them or may stop functioning at the time of this change.
  • All applications you have authorized will be listed at http://twitter.com/settings/connections.
  • You can revoke access to any application at any time from the list.

Update 2: t.co URL wrapping

In the coming weeks, we will be expanding the roll-out of our link wrapping service t.co, which wraps links in Tweets with a new, simplified link. Wrapped links are displayed in a way that is easier to read, with the actual domain and part of the URL showing, so that you know what you are clicking on. When you click on a wrapped link, your request will pass through the Twitter service to check if the destination site is known to contain malware, and we then will forward you on to the destination URL. All of that should happen in an instant.

You will start seeing these links on certain accounts that have opted-in to the service; we expect to roll this out to all users by the end of the year. When this happens, all links shared on Twitter.com or third-party apps will be wrapped with a t.co URL.

What does this mean for me?

  • A really long link such as http://www.amazon.com/Delivering-Happiness-Profits-Passion-Purpose/dp/0446563048 might be wrapped as http://t.co/DRo0trj for display on SMS, but it could be displayed to web or application users as amazon.com/Delivering- or as the whole URL or page title.
  • You will start seeing links in a way that removes the obscurity of shortened links and lets you know where each link will take you.
  • When you click on these links from Twitter.com or a Twitter application, Twitter will log that click. We hope to use this data to provide better and more relevant content to you over time.

Thanks for reading this important update. Come and check what’s new at http://twitter.com.

Thanks,
The Twitter Team

It will be interesting to see how long it takes HTC to factor in the new OAuth requirement and release an update; watch this space for news!

** Last Updated 30/08/2010 23:45 – I have updated the post to reflect the release of OpenDesire v4.0 (the original post was built around v3.6).  For future releases, I will not revise the post as all you need to do is substitute the ROM file for the newer release if available; the rest of the guide remains the same.  To check the latest file, head over to this thread **

It’s been a while now since the official Froyo OTA was released and installed by most people who will be reading this post.  For most of you, using the official Froyo will be more than enough to satisfy your soul but for some, you’ll be wishing you had waited a few days; certainly enough time to allow the developers to root the official OTA and thereby giving you what we all – apparently – want, value added extras!

Initially, for those who followed the official upgrade path to Froyo, and I include myself here, there was not much we could do once the initial Froyo honeymoon period was over.  The Froyo update also included a new HBOOT driver which meant that we could not perform root, or play with the recovery very easily.  As with all things though, a little time and this has all changed.  So, if your happy with Froyo (and please, I am not saying that there is anything wrong with it, the official Froyo is great and for the average user, will be more than enough to bring a big smile to your face) then you can stop reading this post; but if you crave the ability to root and delve further into your Desire’s abilities then read on, I’ll show you how to downgrade your HBOOT and install an already rooted, custom Froyo ROM image and install a custom recovery along the way meaning you can easily change ROMs at will in the future.

I decided to install the excellent OpenDesire ROM from AdamG which is as close to stock as possible but with performance enhancements and a very small footprint.  It’s also a vanilla ROM so does not contain the Sense UI overlay (which I prefer as it runs much quicker and smoother than the HTC ROM).  Of course, you can choose any ROM you wish; see here for options and more information on each ROM.  Once you have a custom recovery and root, you can of course swap and change between these ROMs at will, daily if you wish.  To use a different ROM, simply change the download in the first step of the guide below.

Caveat: A word of warning, HTC and your network provider will frown at anyone trying to install custom software onto one of their devices and will quite rightly use this as an excuse for not honouring any warranties.  The method shown in this post has been tested by myself and works, however if you do not understand any of the steps or do not follow the guide, you risk damaging your phone and owning a very expensive ‘brick’; please ensure you read the entire post before attempting this yourselves and ask any questions before you need to ask them.  I will not be held accountable for any bricked phones; you follow this guide at your own risk.

This guide is based on an unbranded Desire handset running the latest HTC official Froyo ROM (although my Desire once upon a time used to be a branded Virgin Mobile handset, you can find a guide here for a step by step guide for debranding and upgrading to the official Froyo ROM) meaning a firmware version of 2.09.405.8, HBOOT version of 0.92.0001 and radio version of 5.09.00.20, importantly it is also based on an AMOLED Desire and not one of the newer sLCD versions.  It’s very important that you check to make sure what specifics you have before following this guide; if unsure ask a question.  This guide will also work on other combinations but you may need to follow additional steps depending on your individual device.

Before proceeding with this guide, ensure that you backup any important data on your Device, by following this guide your Desire will be restored to a state which does not have any of your applications or user data.  You’ve been warned.

Ok, now that’s all of the boring stuff out of the way, let’s get on with the guide:

  • Download the following files to your local machine, for simplicity I usually save them to the desktop as you’ll be needing them again shortly: [PB99IMG] [Official 2.1 WWE OTA] [misc_update] [OpenDesire ROM] [Froyo Radio]
  • Remove your SIM care from your Desire.  You shouldn’t need to do this but some devices has been SIM locked during ROM flashing so best be safe
  • Ensure your Desire is sufficiently charged, I usually make sure it is at least 50% charged; you don’t want the battery running out during the flashing process
  • As above, triple check everything is backed up that you want to keep

Now we can start the actual downgrade process.

Important:  This guide assumes that you still have your original gold card from previously upgrading your Desire’s ROM.  You will need a gold card in your Desire to successfully complete this guide so if you do not have one or have formatted your microSD since you last used it, create one with the aid of this guide.  If you’re unsure, create a new one anyway.

  • Copy the 5 files that you have just downloaded onto the root of your microSD card and then depending on how you did this, either put the microSD card back into your Desire or unplug your Desire from your PC
  • Turn off your Desire
  • Turn your Desire back on whilst holding down the Volume Down key, this will take you to the HBOOT menu.  Wait until PB99IMG.zip is automatically found and verified
  • Press the Volume Up key to begin the downgrade process.  Once the downgrade has started wait until all of the steps have completed, your Desire will automatically reboot during this process.  It’s important that you do not interrupt the power or turn your phone off whilst the downgrade is talking place
  • Once the downgrade process has finished, press the Volume Up key to reboot

At this stage, you will have a downgraded Desire running an official 2.1 Éclair ROM.  You can check this by skipping through the initial installation steps and going to Menu>Settings>About Phone>Software where you should now find your firmware is version 1.21.405.2, if you were watching while your Desire rebooted in the above step you’ll also have noted that the HBOOT is now 0.80

You now need to remove PB99IMG.zip (there is no need to remove the other files, unless you want to) from the root of your microSD before continuing with this guide, also download the following files, again to your desktop for ease: [Unrevoked3] [Unrevoked USB driver]

Next continue with the guide:

  • Uninstall any versions of HTC Sync that you currently have installed on your PC
  • Enable USB Debugging on your Desire, this can be found by navigating through Menu>Settings>Development>USB Debugging, you’ll be asked to confirm this with a security dialogue box, click OK
  • Ensure that the correct adb drivers are installed on your PC, to test this restart your phone in HBOOT mode (reboot with the Volume Down key held in) and go to Device Manager on your PC.  You’ll probably find that the adb device – your Desire – will have an exclamation mark next to it meaning the driver is not installed correctly.  Right click this and choose to update the driver, pointing the wizard to the USB driver you downloaded on your desktop earlier (you may need to extract the archive first)
  • Start the Unrevoked process by running the reflash_package executable on your desktop and follow the onscreen instructions

The Unrevoked package will now root your Desire and install a custom recovery image, meaning you’ll have far greater control over your Desire in the future and allow you to now continue and install the custom Froyo ROM.

  • Once the Unrevoked process finished, you should be in your new custom recovery
  • Select install zip from sdcard by using the Volume Up and Volume Down keys to navigate, using the optical trackball to select the correct option
  • Select choose zip from sdcard
  • Select misc_update from the SD and confirm it by navigating to Yes. This will repair your /misc partition
  • Go back to the front screen on the recovery menu by using the Back key
  • Select both the wipe data/factory reset option and wipe cache partition option before continuing
  • Select install zip from sdcard then choose zip from sdcard
  • Choose radio-5.09.05.03 2.zip from the list and wait for the upgrade to take place then update-od-4.0-signed.zip and wait for the upgrade to take place (remembering that if you downloaded a different ROM at the beginning, you’ll need to select that option instead)
  • Once the upgrade has taken place, choose reboot from the menu

That’s it.

The initial reboot will take longer than normal, once your Desire has started turn it off again and replace your SIM card, then turn it back on and enjoy your new, even faster Froyo!

Notes: I’ve followed this procedure a few times now to test it all works, on one occasion during the initial reboot after the upgrade process my Desire seemed to sit way too long on the initial boot at the splash screen.  If this happens to you (I mean more than 5-10 minutes, it will take longer than normal this is OK) then don’t panic, just pull the battery and restart in HBOOT mode, then reflash the ROM again by following the final 4 steps above, very occasionally it doesn’t seem to take first time, this used to be the same when I was flashing my old G1!  Before reflashing, use the wipe data/factory reset option and wipe cache partition option.

For those like me who miss the HTC clock widget, there is an alternative available (although it has long since been pulled from the market) called fancywidget which can be downloaded from here.  It’s almost undistinguishable from the original HTC version.

I hope you’ve found this useful, please remember to sign up to my FeedBurner service to receive email updates of further posts.  Please leave any comments of questions below and either I or one of the other frequent flyers will get back to you soon.

Enjoy!

I have been asked by a few people how to make a goldcard using a Mac, but as I do not have access to one at the moment I have not been able to produce a guide however thanks to Johnny and some research using Google you’ll be pleased to know that I have now produced a guide.

Caveat:  I have not been able to test this myself as currently I do not have a Mac to test with; however I have read various comments confirming that this method works.  Please post a comment to let me know how you get on.

PLEASE backup the entire contents of your microSD before proceeding, in one of the first steps you’ll need to reformat.  I will not be accountable for anyone neglecting to do this and loosing data – you have been warned!

So, to create a goldcard using Mac OSX, simple do the following:

  • Backup the data on your microSD
  • Click Menu on your mobile
  • Go to Settings and then SD & Phone Storage
  • Click Unmount SD card
  • Click Format SD card

We now need to know the microSD cards CID number, using this method; we can find it by going to the market and downloading ASTRO File Manager.  Once you have downloaded and installed it, do the following:

  • Open ASTRO File Manager
  • Navigate to sys/class/mmc_host/mmc1/mmc1:82d1 (you’ll find that 82d1 will be different on your device)
  • Long press on the CID file
  • Select Open As and then Text
  • Select File Editor
  • You’ll be given a long number, make a note of this

Next we need this long number in order to create your goldcard image; this can be done by using a simple tool found on this page:

  • Copy the number carefully into the data field and hit Submit
  • Make a note of the new number

Next to create the actual goldcard image by going to this page:

  • Enter the number from above into the SD Card Serial (CID) field
  • Enter the other details and hit Generate Goldcard
  • Check your email and save the attached goldcard image file to your user directory

Connect your Desire to your Mac and do the following:

  • Pull down the notification bar and press Charge Only (if you have previously changed the default option this may be different, i.e. HTC Sync)
  • Select the Disk Drive option and hit Done
  • On your Mac, open Terminal which can be found by clicking through Applications>Utilities>Terminal (or your Linux Terminal)
  • Type the following:
    diskutil list
  • You should be able to see your microSD card; you can recognise it from its size and by the fact that its type is DOS_FAT_32.  You need to make a note of the Identifier for example disk2s1
  • Now you need to unmount the microSD, assuming your Identifier was disk2s1 (change the value ‘2’  based on the number you got after the word ‘disk’) enter the following:
    diskutil unmountDisk /dev/disk2

Finally, to create your individual goldcard do the following:

  • Open Terminal once again and type the following:
    sudo dd bs=512 if=~/goldcard.img of=/dev/disk2
    (remembering to change the ‘2’ if appropriate)
  • You’ll need to enter your password when prompted (or if using Linux, the password for root)

That’s it, goldcard created!