How to Install CyanogenMod on the HTC One X ("endeavoru")

From CyanogenMod
Jump to: navigation, search

This guide will walk you through the process of taking the One X from stock to having a custom recovery image and the ability to flash the latest version of CyanogenMod.


Modifying or replacing your device's software may void your device's warranty, lead to data loss, hair loss, financial loss, privacy loss, security breaches, or other damage, and therefore must be done entirely at your own risk. No one affiliated with the CyanogenMod project is responsible for your actions. Good luck.

Important Notes

CyanogenMod builds for endeavoru currently do NOT support any bootloader version number below: HBOOT 1.28. As the device is S-ON (security-on bootloader), for a working installation you must extract the boot.img from the installer zip and run fastboot flash boot boot.img from fastboot mode. If you see kernel related changes in the changelog of endeavoru builds, you will need to do this every time you update CM on your phone. Read the Additional Info and Installation sections below for more details.

Unlocking the device


Unlocking the bootloader will automatically wipe all device data.


The One X can be unlocked officially via the HTC Dev unlock program. This unlock method may have certain restrictions, such as not being able to flash a kernel via recovery (no longer applicable to 2013+ released devices) or no USB access to sdcard in recovery. Some devices, however, have no other method to install custom firmware.

  1. Make sure your computer has working fastboot and adb.
  2. Enable USB debugging on the device.
  3. Enable OEM unlock in the Developer options settings on the device. (Note: Not all devices have this setting, so continue with next step if yours does not.)
  4. Connect the device to the computer through USB.
  5. From a terminal on a computer, type the following to boot the device into fastboot mode:
    adb reboot bootloader
  6. Once the device is in fastboot mode, verify your PC sees the device by typing fastboot devices
    • If you don't see your device serial number, and instead see "<waiting for device>", fastboot is not configured properly on your machine. See fastboot documentation for more info.
    • If you see "no permissions fastboot", try running fastboot as root.
  7. From the same terminal, type the following command to unlock the bootloader: fastboot oem unlock
  8. On some devices, a disclaimer will display on the device that must be accepted. Use the volume keys to cycle through the options. Pressing the power button should confirm your selection. If no disclaimer appears, you can run fastboot oem device-info which will tell you if the device is unlockedobtain your bootloader unlock token:
    fastboot oem get_identifier_token
  9. Visit the HTCDev Bootloader Unlock website and follow the instructions there to obtain your unlock key and unlock your bootloader. If your device does not appear in the drop-down list, select All Other Supported Models.
  10. If the device doesn't automatically reboot, reboot it from the menu. It should now be unlocked.
  11. Since the device resets completely, you will need to re-enable USB debugging on the device to continue.

Installing recovery using fastboot

See All About Recovery Images for more information about custom recoveries and their capabilities.

  1. Make sure your computer has working fastboot and adb.
  2. Download recovery -- you can directly download a recovery image using the link below, or visit to obtain the latest version of TeamWin Recovery Project for your device.
    Recovery: Download
    md5: 378ab31b2d882baf13c0138d27056772
  3. Connect the One X to the computer via USB.
  4. Make sure the fastboot binary is in your PATH or that you place the recovery image in the same directory as fastboot.
  5. Open a terminal on your PC and reboot the device into fastboot mode by typing
    adb reboot bootloader
    or by using the hardware key combination for your device while it is powered off.
  6. Once the device is in fastboot mode, verify your PC sees the device by typing
    fastboot devices
    • If you don't see your device serial number, and instead see "<waiting for device>", fastboot is not configured properly on your machine. See fastboot documentation for more info.
    • If you see "no permissions fastboot", make sure your UDEV rules are setup correctly.
  7. Flash recovery onto your device by entering the following command:
    fastboot flash recovery your_recovery_image.img
    where the latter part is the filename of the recovery image.
  8. Once the flash completes successfully, reboot the device into recovery to verify the installation. Boot to recovery instructions: Vol Up & Power
    • Note: Some ROMs overwrite recovery at boot time so if you do not plan to immediately boot into recovery to install CyanogenMod, please be aware that this may overwrite your custom recovery with the stock one.

Installing CyanogenMod from recovery


This device, if unlocked with HTCDev Unlock, must have its kernel flashed via fastboot. When you reach the end of the instructions below, do not restart your device to CyanogenMod yet. Instead, restart to the bootloader and put the phone in fastboot mode. Extract boot.img from the CyanogenMod .zip package you just installed and flash it via fastboot: cd to the directory containing boot.img and execute fastboot flash boot boot.img. This needs to be done EVERY time CyanogenMod is updated, thus it is recommended to not use the internal CM updater. The alternative to this burden is to S-OFF your device (recommended), then the boot partition will automatically be updated when CyanogenMod is installed or updated.

  1. Make sure your computer has working adb.
  2. Download the CyanogenMod package for your device that you'd like to install to your computer.
    Optional: Download 3rd party applications packages, like Google Apps which are necessary to download apps from Google Play.
  3. Place the CyanogenMod .zip package, as well as any optional .zip packages, on the root of /sdcard:
    • Using adb: adb push /sdcard/
    Note: You can copy the .zip packages to your device using any method you are familiar with. The adb method is used here because it is universal across all devices and works in both Android and recovery mode. If you are in recovery mode, you may need to ensure /sdcard (sometimes called Internal Storage) is mounted by checking its status in the Mounts menu. If you have booted regularly, USB debugging must be enabled.
  4. If you are not already in recovery, boot to recovery mode now.
    • Vol Up & Power
  5. In Team Win Recovery Project, select menu choices by tapping on the appropriately labelled button.
  6. Optional (Recommended): Select the Backup button to create a backup.
  7. Select Wipe and then Factory Reset.
  8. Select Install (if you're running Cyanogen recovery this is Apply Update).
  9. Navigate to /sdcard and select the CyanogenMod .zip package.
  10. Follow the on-screen notices to install the package.
  11. Optional: Install any additional packages you wish using the same method (if you are installing multiple packages, install CyanogenMod the first and then install any subsequent packages on top of it).
  12. Once installation has finished, return to the main menu and select Reboot, then System. The device will now boot into CyanogenMod.

Helpful Tip

See something wrong on this page? Report it here.