[Resource][Guide] HTC EVO 4G LTE Hboot versions & info | Updated 11/19/2013
HTC EVO 4G LTE Hboot Versions & Info
I am not a developer-this is simply my contribution to the EVO LTE community as a way to help users have a basic understanding of what Hboot
is, and understand the differences and capabilities between Hboot versions. In addition to information regarding the various Hboot versions, I have included a guide on how to update firmware (since this is done through the bootloader). Also included is a section on kernel flashing for those who haven't taken the plunge and gained S-off yet. You are free to include my work if you are putting together a guide or FAQ of your own, I only ask that you give credit where credit is due. I've taken a lot of time and put some effort into making this guide as complete as possible, but if you see something you'd like to have added or have a question or comment, feel free to do so. You can also reach me via PM. As I currently own this device, I will try my best to keep this guide up to date. I am not responsible for any misinterpretations of the information contained within this guide, and I will not be held liable or responsible should you damage your phone or cause an act of war.
Now, let's get started.
What is Hboot?
Without getting too technical, Hboot is your bootloader. Its functions are similar to that of the BIOS (Basic Input/Output System) on a PC. The bootloader provides a level of security for your phone by preventing unsigned software and firmware from being installed on your phone. At times, the bootloader will be updated to provide bug fixes and security patches. This sounds like a good thing, but it's really just a roadblock for those of us who like to tinker with our phones. This is where unlocking the bootloader comes in to play. Unlocking the bootloader allows us to install custom recoveries, from which we can flash custom ROM's to our phones. Still, however, depending upon the bootloader security, you are still limited to what you can do once the bootloader is unlocked. Unlocking the bootloader on the HTC EVO 4G LTE is accomplished using HTC Dev, or by using one of the tools provided by developers here on XDA (the toolkits, often referred to as "one-clicks", still use HTC Dev to unlock-there is no way around it). I won't delve into the actual process of unlocking the bootloader, as there are countless places here on XDA and elsewhere that guide you through the process.
What is S-off?
When you received your HTC EVO 4G LTE new, it shipped with a locked bootloader and was S-on, which meant that bootloader security was on. While true that unlocking the bootloader gives some added functionality, like being able to install a custom recovery such as TWRP (Team Win Recovery Project) and allowing the flashing of a custom ROM, there are still limitations based on the bootloader (Hboot) version. This is where S-off comes in to play. If S-on means security on, then yes, S-off means security off. Once S-off, the bootloader's security is turned off. Kernels, splash screens and firmware can be flashed with relative ease. As more than one developer has put it, you are essentially future-proofing your device. This is especially true given the restrictions that HTC has put in place on the newer bootloaders. Think of bootloader unlocking and S-off like a bank. Bootloader unlocking gets you in the front door; S-off gets you into the vault
. Currently, there are four ways to gain S-off on the EVO LTE: Dirty Racun, Facepalm, Moonshine and Rumrunner.
The bootloader screen
How do you check your Hboot version?
If you're running a Sense ROM, make sure you have fastboot disabled in settings. You can go to Menu>Settings>Power and make sure fastboot isn't enabled. Don't confuse the fastboot setting with fastboot in the bootloader-they are not the same. Power your phone completely off. Press and hold the volume down button, then press and hold the power button (most custom ROM's normally let you reboot to the bootloader from the power menu, also). After several seconds you will be presented with a white screen with some information in the top left corner of the screen. Stock, the top line will say "Locked". Once unlocked, the top line will read "Unlocked". If the bootloader has been relocked, the top line will read "Relocked". Once unlocked or relocked, there will also be a "Tampered" warning, as well. Below that is the HTC device codename, which is the Jewel in the case of the EVO 4G LTE. On this same line, you will see whether the phone is S-on or S-off. The fourth line from the top is the Hboot version, and below that is the radio (baseband) version. From the bootloader menu there are also options to power off the phone, reboot the bootloader, enter fastboot mode, factory reset and go to recovery. To navigate the menu, simply use the volume keys to move up and down, and use the power button to select (note in the picture above I have used regaw_leinad's bootloader customizer to change the top line of the bootloader to my XDA screen name). From the bootloader screen you can select the "fastboot" option, whereby you can connect your phone to your PC and issue commands via fastboot USB if you have the correct drivers installed on your computer. You have to have ADB
(Android Debug Bridge) set up on your computer first in order to do so. You also have to use ADB when using HTC Dev to unlock your bootloader, so it comes in handy in more ways than one and doesn't hurt to have it on your computer should you ever need to use it.
Below is a list of current Hboot versions for the HTC EVO 4G LTE:
S-on (Security on) allows flashing of radios (not full firmware) and kernels. Kernel does not have to be flashed separately from ROM. Least restrictive Hboot for the EVO LTE. S-off can be obtained via Dirty Racun or Facepalm. Lazy Panda is no longer supported as of this write-up.
When S-on, kernel must be flashed separately from ROM either via Flash Image GUI or Fastboot. S-off can be obtained via Dirty Racun or Facepalm.
Same info regarding S-on kernel flashing as Hboot 1.15. S-off can be obtained via Dirty Racun or Facepalm.
Permanent write to system partition disabled. Kernel must be flashed separately via Fastboot or Flash Image GUI. S-off can be obtained via Dirty Racun or Facepalm if on software version 3.15 (baseband ending in 1119)/Dirty Racun if on software version 3.16 (baseband ending in 1210). You can use Baby Racun to downgrade from 3.16 to 3.15, at which time you can use Facepalm. You can also use Moonshine S-off for software version 3.16. Use Rumrunner S-off for software version 3.17.651.4 (baseband ending in 0830).
***The OTA update for software version 3.16.651.3 included a touch panel driver update. If you are on this update, you can only use ROM's based on software version 3.16 & 3.17, otherwise the touch screen will not respond to touch input. You must also use TWRP 2.4+ with the updated touch panel driver. You can downgrade the touch panel driver to the previous version if you're S-off. AOSP ROM's utilizing the 3.4 kernel support the updated touch panel driver and does not require downgrading***
Is it necessary to downgrade your Hboot?
At the moment, no. In the past, prior to Dirty Racun, it was necessary to downgrade your Hboot using the Jewel/Evita toolkit if you were on Hboot 1.15 or 1.19 so that you could run Lazy Panda to gain S-off. Currently, this is not the case and is generally ill-advised to do so. If you would like to upgrade to the latest custom Hboot version that supports a full set of flash and erase commands, along with removing the "tampered" text, look here.
This is the Rumrunner custom Hboot. It can be applied using fastboot commands from the bootloader, or by renaming the file PJ75IMG.zip and applying it the same way you would a firmware update (see the section on firmware updating below).
Bootloader unlocking tools:
qbking77's bootloader unlocking video
How to obtain S-off:
I take no credit for any of the tools or methods listed above. The above listed tools are the property of their respective developers.
S-off vs. Root
There seems to be some confusion regarding root and S-off. First off, they are not the same thing. Root
is a method by which users can run privileged commands on their device.
Rooting is typically accomplished by a security exploit that allows the su (superuser) binary to be installed on the device, which in turn installs either the SuperUser or SuperSU app on the device. Both of these apps give the device user the ability to grant or deny root apps to function. In addition to running certain apps (like WiFi tether, Root Explorer or Titanium Backup), root privilege can also allow the removal of files and apps which could not be removed by a user with an unrooted phone (for example, removing carrier-installed "bloatware").
Some users think that you must be S-off in order to be rooted, which is simply not the case. It's actually quite the contrary, as you can have a phone that is S-off but does not have root access. How is this so? Remember, S-off simply means that the bootloader's security is off. In order to root a phone, you must have a custom recovery installed and have the proper superuser binary in place for root to work. S-off methods are not always available when a new phone is released (or when a phone receives updated software and/or firmware), which is why we have methods like HTC Dev to unlock our bootloader.
If a method to gain S-off is available, it's best to use it. Like I stated earlier, S-off is virtually future-proofing your phone, so regardless of any updates that may come out, once you're S-off, that's it: you're S-off until a method is released to put the device back to S-on, and that's something the device user typically initiates (for example, the VipeRUU tool). S-off trumps bootloader unlocking because being simply bootloader unlocked, there are still security restrictions on the bootloader. S-off removes those restrictions. But, as stated earlier, without a custom recovery and superuser in place, the device is not rooted. The ideal situation is to be rooted and
S-off. Gaining S-off allows the user to flash a ROM and not have to flash the kernel separately when on Hboot 1.15+, allows for changing the splash screen, customizing the bootloader, getting rid of the red development disclaimer text & flashing firmware updates, just to name a few benefits.
On the HTC EVO 4G LTE, the root method is the same regardless of the Hboot or software version.
From time to time, it may be necessary to update your phone's firmware, sometimes referred to as your radios or your baseband. This can be done for a number of reasons, ranging from call quality or data connection issues or poor battery life due to outdated firmware, just to name a few things. Personally, I like to keep my firmware version updated to whatever the newest corresponding software version is at the time. Keep in mind that firmware and software are not the same. Software is the ROM you flash via recovery. Firmware is the radios, PRI and whatever other bits a developer chooses to include. The only time you get both packaged together is in a OTA (Over The Air) update sent out by the phone carrier, or by RUU. Since rooted users don't typically take OTA updates, we have to rely on developers to pull the firmware from the update package and re-package it for our use. You must be S-off to update firmware. To update your firmware, first download the applicable firmware package. You can download the file to either your phone or your computer. Typically, the file will have an MD5 sum that acts as a fingerprint to verify that your download matches that of the original. You can use an app like Android File verifier to check the MD5 of the downloaded file versus that of the original file. If the MD5's match, you're good to go. If not, you need to download the file again, making sure you check the MD5 again. This is important, as you don't want to screw up a firmware update. A bad firmware flash is a good way to turn your phone into an expensive paperweight. Once you have the file downloaded you need to transfer it to the root (not in a folder) of your external microSD card. Firmware updates cannot be run from the phone's internal memory. Check and make sure that the file is named PJ75IMG.zip (If using your computer, Windows often hides the .zip extension so if you don't see it on your computer, right-click on the file and select "Properties" to see if the .zip extension is there, which it should be). If you downloaded the file directly to your phone, you can use a file manager like Astro file manager or Root Explorer to check that the file is properly named. The bootloader will be looking for the file named PJ75IMG and, if improperly named, will not locate it. Sometimes the file won't require renaming but it's important to check and make sure, to save you some headache down the road. Make sure you also have a decent charge on your battery, because if your phone dies during the firmware update, you'll end up with a bricked device, most likely. Now, you need to reboot to the bootloader, which was discussed previously. Your phone should reboot to Fastboot mode. Use the volume buttons to navigate to the "Bootloader" option in the menu, and press the power button to make your selection. The bootloader will now scan for the firmware update on your SD card, and once it finds it, will prompt you as to whether or not you wish to start the update. Once again, use the volume buttons to make your choice. The update may take a couple of minutes to complete, at which time you'll be prompted to either power off the phone or reboot. Reboot the phone, then go to Menu>Settings>About Phone>Software info and check your baseband version and see if it corresponds to the firmware update you just installed. Once you've done this and confirmed that the update was successful, delete the PJ75IMG file from your SD card (if you don't do this, you will be prompted to update your firmware every time you reboot to the bootloader). If the update fails from the bootloader, go back through the steps outlined above and double-check that you have done everything correctly. For more information regarding firmware updates, see Captain Throwback's firmware thread, which I have provided a link to at the bottom of this post.
A quick note about the bootloader. With an SD card installed in your phone, the bootloader will always scan for a PJ75IMG file, as shown by the green text that says "No image or wrong image". This is normal as long as an SD card is installed. If you are attempting to update firmware and see this text but don't get prompted to update, make sure the file is named correctly. Otherwise, it's not an error and shouldn't be confused as such.
S-on Kernel Flashing
Below is a short guide on how to flash kernels while S-on using Hboot 1.15 & up. First, check out the link below for an easy how-to on setting up ADB on your computer (credit to Jerry Hildenbrand at Android Central for the write-up). The guide also includes a basic set of commands that users might find useful while using ADB. If you need device drivers for your PC, I have provided a link at the bottom of this thread. You can also install the latest version of HTC Sync to get the latest drivers installed on your computer.
How to set up ADB and ADB commands
Some developers include an S-on kernel flasher in their ROM's to simplify ROM flashing (such as xHausx's kernel installer). Simply follow the instructions in the ROM's OP, as methods may vary.
If no kernel installer is included as part of the ROM, there are two basic ways to flash a kernel to your phone while S-on. The first method is using an app from the Play store called Flash Image GUI. Simply follow the instructions in the app. The second method is to flash the kernel via Fastboot, which I will explain below.
First, download the ROM of your choosing to your computer. Once you've done this, navigate to where you downloaded the ROM and extract the boot.img from the ROM zip file and place it in your ADB tools folder. The boot.img is the ROM's kernel, which is needed for the ROM to work. Without getting too technical, the kernel allows the phone's hardware and software to work together. Place the ROM on the root of your phone's internal or external storage, then boot into the bootloader. Your phone should say Fastboot, highlighted in red. If not, use your volume keys to highlight the Fastboot option from the menu we discussed previously, then use the power button to select. You should then see the word Fastboot highlighted in red. Connect your phone and PC via USB cable. Once the connection is complete, you will see "Fastboot" change to "Fastboot USB". Open up a command prompt in ADB and type "fastboot devices" (without the quotation marks). Your phone's serial number should be output on the line below, so now you know that fastboot recognizes your phone. Now, type "fastboot flash boot boot.img" (again without the quotation marks).The kernel should then be flashed to your phone, unless you get an error message in the command terminal. After flashing the kernel via fastboot, boot into recovery mode and flash the ROM zip. Once the ROM installation is complete you can reboot your phone.
You can also use the HTC Dumlock feature in TWRP recovery to flash a kernel while S-on. You can find information on Team Win's site in the link below.
Hopefully after reading all this you have a better-or at least basic-understanding of what Hboot is and what the bootloader does on this device.
bigdaddy619. Please check out his FAQ
om4. You can check out his "Don't Panic" guide here
WindyCityRockr for his Windroid toolkit
qbking77 for his Youtube video.
Captain Throwback for his firmware thread, which you can find here
If you're looking for the latest drivers for your computer, check out this thread here
. Thanks CNexus for making this thread. You can also install the latest version of HTC Sync to get the drivers you need.
If you're looking to get your device back to a completely stock form, check out VipeRUU here.
Thanks to Viperboy for this particular tool.