Jump to content

Downgrade OTA 2.09.405.8 -> 1.21.405.2 -> 1.15.405.4


Guest Slavic

Recommended Posts

Guest Slavic

Hello!

As a lot of others people, I bought the non-branded Desire with 1.15.405.4 and updated it twice with official HTC OTA, eventually getting the Android 2.2 Froyo. After a few days of experiments, I realised the deep of my mistake, being overwhelmed with numerous bugs in first-released Froyo and my inability to fix anything / return back to old OS because of 0.92 hboot jail. It's well known now, no need to tell more. Luckily, recently we got a way to downgrade Froyo to previous version using PB99IMG.zip method, and that 2.1 is seems less hardly rootable and can be used as a base for custom upgrades.

However, 2 serious problems remained after this downdrade. First is the 0.8 version of hboot, which is less friendly to rooting and many people want to downgrade it to previous 0.75. Second, more serious: version 1.21.405.2 which we get has some internal problems: it refuses the RUU with the same version and cannot be rooted using the way developed by Paul. It looks like an internal inconsistence: although the OS reports in software info that version is 1.21.405.2, some check compares the version of new update.zip when we want to update/root a phone with a value 2.09.405.8, which is stored somewhere internally and has not been replaced after downgrade. The cause is in "cheating method" in that PB99IMG.zip, where a value 2.09.405.8 has been placed to android-info.txt to circumvent the internal version check before upgrade, while the real version of img files is 1.21.405.2. So, downgrade looks like an upgrade and passes the check, but the initial value remains in OS configuration. This is a probable reason of unsuccessful attempts of rooting by Paul's method. I decided that the more right way is to "root out" this inconsistency and return to initial 1.15.405.4 with 0.75 hboot, which is a better platform for rooting and custom upgrades. Here I explain some unobvious steps which I had to do for this.

0. Initially we have a non-rooted Desire with Froyo 2.2 (2.09.405.8).

1. Use the PB99IMG.zip (available on some mirrors) method of downgrade to 2.1, which is explained, for example, here (with link to a file too).

2. Use unrevoke recovery package for rooting. After that, we get an inconsistent 1.21.405.2 version with 0.8 hboot, with no full root, but with superuser access.

3. Now we need to downgrade a hboot. This method is expained here, but some modifications are required in our case.

3.1. First, download the official RUU 1.15.405.4 (available on some mirrors as well), which we will install a bit later.

3.2. Download flash_image and make mtd0.img with '11111111' super-CID and '1.15.405.4' ROM version. Now need to copy these files to /data directory of phone, but we cannot use 'push' command from ADB with limited root access granted by unrevoke and also Android mini-Unix doesn't include 'cp' (copy) command, so we need to use another way.

3.3. Copy both files to the root directory of SD card, when phone is connected to PC in 'Disk drive' mode.

3.4. Switch to 'Charge only', allow USB debugging and open the console in a directory with ADB.

adb shell

$ su		  /* confirm the superuser rights from the phone */

# cat /sdcard/flash_image > /data/flash_image

# cat /sdcard/mtd0.img > /data/mtd0.img

# chmod 755 /data/flash_image

# /data/flash_image misc /data/mtd0.img

# exit

$ exit

adb shell reboot oem-78

3.5. Device is rebooted to the update mode. Now run the official RUU 1.15.405.4 and update as usual. Don't forget to delete 2 flash files from sdcard.

4. Congratulations! You have the non-rooted 1.15.405.4 with 0.75 hboot. Now you can root it in any conventional way and do whatever you want (except of the hboot update, of course :))

Link to comment
Share on other sites

Guest Raz2133

Nice guide.

However, there is a simpler way to achieve step 3 onwards.

Once you have rooted with unrevoked3, simply use the clockworkmod recovery to apply the update.zip from the thread below and it will fix the version information in the MISC partition, allowing you to run an official unmodified RUU file.

http://android.modaco.com/content/htc-desi...d-b0rked-fixed/

Note: This particular update.zip was created to solve the USB brick issue, but it will also fix the version info in the MISC partition.

Edited by Raz2133
Link to comment
Share on other sites

Guest BlackWhite
Nice guide.

However, there is a simpler way to achieve step 3 onwards.

Once you have rooted with unrevoked3, simply use the clockworkmod recovery to apply the update.zip from the thread below and it will fix the version information in the MISC partition, allowing you to run an official unmodified RUU file.

http://android.modaco.com/content/htc-desi...d-b0rked-fixed/

Note: This particular update.zip was created to solve the USB brick issue, but it will also fix the version info in the MISC partition.

that's really simply way

I'm successful on it.

Link to comment
Share on other sites

Guest chaosmarine

Sorry for noob question! and for my english.

We have to do all procedure in the raz2133 link , or just step 3, copy update.zip and apply?

Thank's

Edited by chaosmarine
Link to comment
Share on other sites

Guest Raz2133
Sorry for noob question! and for my english.

We have to do all procedure in the raz2133 link , or just step 3, copy update.zip and apply?

Thank's

You don't need to follow all the instructions. You only need to copy the update.zip to your sdcard and apply it using the clockworkmod recovery that unrevoked installs.

Edited by Raz2133
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.