• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root [Q] Why JB requires hboot downgrade?

HaTrEd360

Android Expert
Why is it exactly that JB doesn't work with the newer hboots and only older ones? Doesn't make sense to me as the older hboots usually came out before JB even did. :P
 
Why is it exactly that JB doesn't work with the newer hboots and only older ones? Doesn't make sense to me as the older hboots usually came out before JB even did. :P

I'm guessing that the newer hboots have some security mechanisms that will prevent JB roms from working with them.
 
There is an offset parameter used when creating and mounting the boot image that is flashed on the boot partition where the kernel and ramdisk are located. With hboot version >1.57, htc changed that parameter. So the incompatibility happened. It is just a matter of creating the boot image with a different offset for the ROM developer to be compatible with a specific hboot. Since they choose the offset value of older hboots, newer hboots (1.57 and 1.58) cannot boot with their boot image. You can take the boot image, expand it and recreate with the correct offset to make it compatible with the hboot you are using. There are guides if you google for expanding and repacking boot images.

For example, the kernel packages I use (and many others) are any-kernel-updater packages. They don't have a boot image in the package, just the kernel binary and modules. The install script uses the boot image on the phone and just replaces the kernel binary in it. This is why it is compatible with any hboot; it does not alter the offset value, uses as it is, boot image expanded and repacked during the flash process.
 
I think we'd have a lot less noobs getting bricked with Jellybean on an S-On device if they included an Aroma Installer in all the ROMs with an option to choose whether your on the stock newer hboots or older ones so that it automatically changes the boot.img used for the Roms helping them boot then on a newer hboot. Wouldn't it make more sense to just do that or at least include a separate boot.img that will work with Jellybean on 1.57-1.58?
 
Even if the Dev wanted to write an Aroma script for their rom, the end user still has to have enough knowledge of their phone to know what hboot they're on. It's sort of like the installer for 4EXT, it asks if you're s-offed and to choose no if you're not sure. There's only so much that can be done, not everything can be or should be reduced to the lowest common denominator. :banghead: Knowledge is power! :p
OB
 
I think we'd have a lot less noobs getting bricked with Jellybean on an S-On device if they included an Aroma Installer in all the ROMs with an option to choose whether your on the stock newer hboots or older ones so that it automatically changes the boot.img used for the Roms helping them boot then on a newer hboot. Wouldn't it make more sense to just do that or at least include a separate boot.img that will work with Jellybean on 1.57-1.58?
Several of the current JB ROM's (WFTN, PACMAN, Dirty Unicorns) now check the hboot version at the beginning of the updater-script (you don't need aroma to do that) and abort if the user doesn't a compatible version installed.

ramjet73
 
im s-off and still trying to understand h-boots. i have h-boot jbear 1.57.5757 and am running stock sense rom. i tryed to flash the jbear 1.50.5050 hboot and got bootlooped. is this because that doesnt work with sense roms?
 
It's fully compatible with sense based roms, make sure that you clear dalvik/cache After you flashed the new hboot, otherwise bootloops are guaranteed.
OB
 
If i would have read JoeBlows fix everything thread a little longer i would have found this and saved my self a panic attack.

The all-in-one file installs an hboot that is compatible with the GB and AOSP ROM's and most of the ICS Sense based ROM's, but not with the stock ROM. You either need to flash a custom ROM at this point, or if you want to stay on the stock ROM re-flash the JBear 1.57.5757 hoot.

ramjet73
 
Back
Top Bottom