Thursday, March 14, 2013

Negative effects of unlocked bootloader

Those who are expecting a little bit more from their HTC devices are familiar with HTC online tool to unlock the bootloader - htcdev.com. Once generated and flashed token via fastboot gives you possibility to change some of the partitions on HTC device. It sounds great, but there are some serious disadvantages of it. Some people may say this will result in limited warranty, which it is not true, and I explained that issue hereSo, what else to expect with unlocked bootloader?





First of all, not all the partitions will be unlocked. Forget about flashing hboot.img, rcdata.img or tp.img. Permission to fastboot flash will be denied. The only method to flash those images is to reboot device in RUU mode (fastboot oem rebootRUU) and flash originally signed firmware.zip (from OTA update) using fastboot flash zip firmware.zip command.

So what can be flashed in fastboot mode? Basically just 3 images - boot.img, recovery.img and system.img. Is it enough to flash custom ROM? Yes. With custom recovery you can flash zips or make nandroid backup. Is it enough to be happy? No. The problematic part is flashing boot.img in custom recovery. It's not possible on S-ON devices, unless your device is supported by 4EXT Recovery with SmartFlash feature. So the only method to have complete custom ROM working, is to flash ROM in recovery and then reboot the device, enter fastboot mode and flash boot.img using fastboot flash boot boot.img command.

The second problem of unlocked bootlader is even more serious, but so far it affects only 2 devices: HTC One X+ and HTC One. Those who used htcdev.com before probably noticed, that unlocking bootloader wipes user data, including content of virtual SD card (because virtual SD card = /data/media).

This is no surprise, because every user is warned about it and have a chance to step back. As long as all applications coming with stock ROM are stored on /system partition, there are no side effects. But for some very strange reason in HTC One X+ and HTC One, some of the stock applications like Flashlight, Calculator, Ringtone-trimmer, PDF Viewer, Teeter, Sound Recorder and more, are stored on /data partition instead. Result? After unlocking bootloader with official HTC tool you end up without having some of the basic HTC applications like Calculator or Flashlight, because /data partition (as mentioned above) has been wiped. System partition on HTC One is almost 2 GB big. Not enough to include few more .apk files?

What is more, missing stock applications on /data partition makes your device not capable to receive any OTA updates from HTC. Why? Because every OTA update checks MD5 checksum of every file that originally came with your device. So even if you didn't flash any custom ROM and your /system partition is unmodified, you won't be able to install OTA update.


This is an example of updater-script part from OTA:

assert(apply_patch_check("/data/preload/Calculator.apk","85aa7b00ec97ffe7179739c8815bf102c4f8666e","7055f0376e6b56be6414fdf8495b82db7fd38564")||apply_patch_check("/data/preload/Calculator.apk.uninstall","85aa7b00ec97ffe7179739c8815bf102c4f8666e","7055f0376e6b56be6414fdf8495b82db7fd38564"));

Once assert will fail, OTA update will cancel the installation process. I think every user should be warned, that unlocking bootloader results in no longer OTA updates support.

To summarize:
  1. Unlocked HTC devices via htcdev.com can't have boot.img flashed via custom recovery.
  2. Unlocked HTC One X+ and HTC One via htcdev.com will loose some basic HTC applications like Flashlight or Calculator.
  3. Unlocked HTC One X+ and HTC One via htcdev.com will loose possibility to receive OTA updates unless user will flash original RUU.exe, which are not officially available for customers.
Conclusion: Is it worth to buy HTC One? Yes! It is currently the best device on the market. If you are not planning to flash any custom ROM - don't unlock your bootloader. And if you want to flash custom ROM, it will probably contain missing applications anyway. This is far too great device and I believe HTCdev team will sort out above issues soon!

Got some questions or comments? Please feel free to leave them above! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) down this post!



54 comments:

  1. Damn man, that's a serious dick move by HTC...

    We'll let you unlock the phone, but we'll make sure you break it while you do it...

    ReplyDelete
    Replies
    1. Well, personally I wouldn't call it that way. Maybe (and hopefully) this is just a result of some misapprehension and it will be fixed soon. If HTCdev team is not aware that some applications are now stored on /data partition, then there is a chance they will fix it at some point.

      Delete
    2. and if i back up the .data folder on my computer just in case it gets "damaged" and if it does, can't i just replace it with the one i backed up?

      Delete
  2. Mike, after the unlock process, reboot the phone and simply restore at default settings... the phone re-isntall system apps in data partition ;)

    ReplyDelete
    Replies
    1. In HTC One it doesn't restore missing applications after factory reset.

      Delete
    2. Mike1986,I bought HTC One phone recently which has the bootloader unlocked by you and is now giving me hell

      Delete
    3. I'm not unlocking bootloaders so it can't be unlocked "by me". What do you mean it's giving you hell?

      Delete
  3. Why ain't we able to have s-off like earlier devices. I know security is getting tight, but if 2-3 dev get together wont they be able to achieve s-off???

    ReplyDelete
    Replies
    1. S-OFF for HTC One will probably be achieved at some point (like on previous Snapdragon devices).

      Delete
  4. Just to know... Does this mean that, performing a factory reset (not unlocking bootloader) will also remove those apps?

    ReplyDelete
  5. Same Anonymous as before...

    Well, to me it doesn't matter that much, I'm getting the One (sadly it was delayed) and as always, I will root the device and install ARHD as son as possible... I'm :No-Frost: from XDA (not sure if you remember me though =P)...

    My Desire HD will go to my cousin with latest ARHD, it's time to move on =).


    PS: Thank you for all your efforts mate, I've tried many ROMs, but I always come back to ARHD =)

    ReplyDelete
    Replies
    1. Of course I remember you :) Thanks for such kind comment here, I'm very happy to know some Desire HD users will join One party :) You won't regret getting this beast!

      Delete
  6. Woah, thanks for this warning! I was tempted to unlock the bootloader and mess around with my One X+ while I wait for the One (damn delays).

    Can all this be said about the developer version of the One that they're releasing in the states? Would be a bit stupid if you couldn't get S-OFF on a dev device.

    ReplyDelete
    Replies
    1. I unlocked my htc one and did not lose any of those apps. All have flashlight, calculator. Etc. I have since downloaded renovate rom with no problems.

      Delete
    2. @Michmeister What was your software version when you were unlocking your bootloader? Also, are you sure these apps were on your device even before flashing custom ROM?

      Delete
  7. Thanks for all the explanations and that great Rom so far! I am awaiting my HTC One and will definately flash ARHD :) After a 2 year vacation with my Galaxy S2 i can finally return to HTC(had Desire HD before).
    Over the last years I always followed your threads(flashed your Rom on friends' phone) and I really like your tweaks you add to Sense!

    ReplyDelete
    Replies
    1. Welcome back :) I'm sure you will like HTC One very much!

      Delete
  8. Hi Mike,

    Is it possible to change IMEI on HTC One ?

    ReplyDelete
  9. In practical terms, do you know what breaks with a bootloader-unlocked device? Do Kindle, Netflix, Amazon Instant Video, Amazon Cloudplayer, etc. all require it? Some require it? None?

    ReplyDelete
    Replies
    1. None of them requires locked bootloader, but some of them might not work if SuperUser is detected on the device.

      Delete
  10. Boot is writable from recovery for the HTC One on S-ON devices. I've successfully unlocked, flashed ClockWorkMod recovery, run adb shell, then flashed boot using:
    dd if=/sdcard/boot.img of=/dev/block/mmcblk0p33

    Then confirmed my kernel version was different in the settings after booting Android up again. If you follow some of the CyanogenMod developers and others on G+, they've confirmed it as well. I think a lot of people are just assuming it isn't without trying.

    ReplyDelete
    Replies
    1. Indeed dd seems to work on HTC One. It's true we didn't try dd, however it doesn't work on HTC One X or HTC One X+.

      Delete
  11. What If someone have the developer edition?

    ReplyDelete
    Replies
    1. Dev edition is the same as regular one but already unlocked.

      Delete
  12. Hey mike, can you post again odexed HTC stock Rom and can you tell me how to get rogers original version.

    ReplyDelete
  13. I forgot to say that I am using HTC one right now with costum Rom soft vet. 1.29.401.16
    My original was 1.29.631.4 (Rogers)

    ReplyDelete
    Replies
    1. Is 1.29.401.16 official software number for HTC one?

      Delete
    2. 1.29.401.16 is tagged as "release-keys" but I don't know if it was officially pushed via OTA yet.

      Delete
  14. mehmet-alp tutkun5/22/13, 5:25 PM

    thanks mate, you just saved my phone..
    i'm actually afraid of rooting my device because of all these consequences
    but on the other hand, root brings a ton of awesome features... help me please?
    what should i do? should i wait for htc to fix the wiping problem?

    ReplyDelete
    Replies
    1. I don't know if it will be ever fixed or not. Time will show :)

      Delete
  15. You Say

    "Unlocked HTC One X+ and HTC One via htcdev.com will loose possibility to receive OTA updates unless user will flash original RUU.exe, which are not officially available for customers"

    But then in this link for your HTC One *STOCK* Rom:
    http://forum.xda-developers.com/showthread.php?t=2224752

    You mention this:

    "With odexed version you can download and flash OTA from HTC (you need stock boot.img and recovery.img as well)"

    If I used that rom after unlocking the bootloader, am I still able to receive OTA updates from HTC?


    My Other question, is there any way to access the internal virtual SD card from the computer? What is preventing me from backing up the /data partition before unlocking and then restoring it once I have unlocked and gained root access?

    ReplyDelete
  16. Is there any way to get the lost sound recorder app back? I am using the now on the android-revolution 10. Also I cannot use the MoDaCo Toolkit to enable volume wake function even though I have XPOSED. I tried it several times and it ended with a bootloop.

    ReplyDelete
  17. if I unlock and root my HTC One, can I then simply just reflash the stock recovery, relock my phone and then run the OTA updater?

    ReplyDelete
    Replies
    1. It depends if unlocking bootloader still removes stock apps from preload. If it does, you would also need to backup you these 7 apps using for example "App Control" app from Google Play and restore them after unlocking. Otherwise OTA installation will fail.

      Delete
    2. Excuse me, do you mean the AppControl from Curvefish here? There are several apps having the App Control sentence in their names...

      Delete
  18. hello mike, while trying to install OTA UPDATE in my relocked HTC ONE, bootloader gives the following message TAMPERED>RELOCKED> Seurity Warning >M7_U PVT SHIP S-ON RH>HBOOT-1.44.0000...eMMC-boot... I just want to install the OTA UPDATE anyway. Please bless me with a reliable solution. Thanks in advance dear Mike :-)

    ReplyDelete
    Replies
    1. Security warning means you are not running stock firmware and relocked the bootloader

      Delete
  19. has the issue been sorted yet?

    ReplyDelete
  20. So, other than not receiving OTA Updates, some of the stock apps will be wiped/gone? Is that all? I'm not worried about OTA updates, especially if you can flash a new ROM, and half the reason I root a phone is to get rid of all stock apps anyway - sounds like a win/win to me.

    ReplyDelete
  21. hay mike it is required to unlock the bootloader while try to install official rom???

    ReplyDelete
  22. my htc one is stuck into factory mode can any one tell me what to do??

    ReplyDelete
  23. I'm new to all this, and it was suggested I read this and a few other links to catch up on what is involved in modifying these phones. Thanks for the write-up. Most things I read might as well be written in Greek, but you explain everything quite simply, so it's easy to follow what you're saying.

    I have an HTC One Developer Edition on the way - will be here in a few days. It comes with an unlocked bootloader. I assume HTC has configured it so the apps you mention are properly in place and the OTA updates will work?

    Thanks again!!!

    ReplyDelete
  24. I have an unlocked HTC one.
    Will I get updates?

    ReplyDelete
    Replies
    1. You can download the updates but they will not install. I had to relock my HTC One and then did a RUU to the latest update. It did wipe my phone.

      I'm trying to find out if I unlock my relocked HTC One, will it wipe my phone again? Hey Mike do you have an answer for me?

      Delete
  25. Mike maybe you can answer my question too, I was wondering if I unlocked my relocked HTC One will it wipe my phone?

    ReplyDelete
  26. I am wondering if anyone has saved the stock apk files, unlocked the bootloader and then reloaded the stock apk files to /data. In theory this would seem to meet the requirements for OTA updates.

    ReplyDelete
    Replies
    1. I want to know this as well. If it's just checking to see if some apk files are there, can't you just backup then reload them after?

      Delete
  27. Sorry for leaving two comments in one day, but does the problem of wiping system apps still exists on 4.2.2 update? I can't seem to find any files consisting "flash" or "calc" on anything that is visible on the ES File Explorer. And the /data partition should be visible to user, am I righ? Doesn't this mean that these apps are now moved to the /system partition?

    ReplyDelete
  28. hey i was installing custom rom in my htc one x plus in recovery mode but i wiped ma backup as well as my custom rom zip nd now ders no os in my phone how can i put a zip file in my phone in recovery mode as it has nly no sdcard plz help

    ReplyDelete