Last Updated: July 10th, 2011

It's hard not to love SetCPU developer Michael Huang. He's been on the overclocking frontline for many devices, including the Samsung Galaxy S II and Motorola XOOM, and now he strikes again with an custom tweaked kernel (update: to clarify, the kernel source isn't available, so this isn't a rewritten kernel - he used a hex editor to modify it) for the HTC EVO 3D that allows for a stable 1.8GHz. With a few minor tweaks the kernel should work for the Sensation as well, although he hasn't had time to get it working without a device in hand.

evo3d_oc evo3d_benchmark

Ludicrous speed indeed! He's also provided a 7-minute video in which he runs a series of benchmarks at both stock and overclocked speeds.

The instructions are somewhere in the middle of the difficulty spectrum as far as hacks and mods go. As always, you should be very careful when modding your phone - if something goes wrong you can end up with a bricked device.  You also need to root with fre3vo. Still with us? His instructions:

Download the kernel module appropriate for your phone. If you're not sure which one to download, check /proc/version and find the version string and then check the part that contains the localversion, which is right after and looks like this: "gb7a86da" or "gcb1cf83"

Download: Latest EVO 3D OTA gcb1cf83: http://setcpu.com/files/8x60_oc.ko
T-Mobile HTC Sensation 4G gb7a86da: http://setcpu.com/files/8x60_oc_gb7a86da.ko
EVO 3D pre-OTA g93c03bf: http://setcpu.com/files/8x60_oc_g93c03bf.ko

Anyone good with a hex editor and your device hasn't been added: Just download the first link above and replace the "gcb1cf83" with whatever your version is - it's hacky, but it works. We can't build a "real" ko anyway, since we don't have kernel source.

(To add support for your EVO 3D/Sensation kernel, send me the kernel version string (cat /proc/version) and I'll upload a kernel with support).

1. Temp root the phone using fre3vo, and install everything you need to run root apps. If you lost temp root due to /system/bin/su becoming unlinked (root apps don't detect root anymore), do it again. Thanks #teamwin!
2. Decide which frequency and voltage you want. Frequencies have to be a multiple of 54MHz. For example, 1512MHz = 54MHz*24. Remember how much you have to multiply 54 by to get the frequency you want. For 1782MHz, as I reached, use 33 (54MHz*33 = 1782MHz).
3. Push the kernel module to your device: adb push 8x60_oc.ko /data/local/tmp/8x60_oc.ko
4. Use SetCPU (you must be 2.2.4 or above for proper MSM 8x60 support!) to set the max frequency to 432MHz and min to 384MHz.
6. Go back to the home screen, press the power button, and count to ten.
7. Load the kernel module with the following command, replacing the scpll_l_val with the value you got above and the vdd_uv with the voltage you want (in microvolts). Here is a valid command for around 1.8GHz: adb shell insmod /data/local/tmp/8x60_oc.ko scpll_l_val=33 vdd_uv=1375000
If you do not specify any parameters, the module defaults to 1512MHz and 1250000 uV! (scpll_l_val=28 vdd_uv=1250000) This should be safe for everybody, since that's the MSM 8x60's native speed (of the higher speed bin anyway ).
8. If it crashes right after you insmod the kernel, reboot and try again - the second core was likely still active. This doesn't necessarily mean your overclock settings were unstable.
9. Now go into SetCPU and it will autodetect the new max frequency. Set it and try it out. If your phone crashes at or after this point, the scpll_l_val and vdd_uv combination was not stable enough. Reboot and try another combination.

Mr. Huang also points out that the kernel allows for a clock as high as 2GHz, although at that speed things probably aren't very stable. Not using SetCPU? Consider it - it's $2, offers a host of features, and it's a good way to support a great dev. Alternatively, you can donate to him using PayPal.

As always, any questions should be directed towards the source thread, as we can't provide much by way of support.

[Source: XDA-Developers]

Aaron Gingrich
Aaron is a geek who has always had a passion for technology. When not working or writing, he can be found spending time with his family, playing a game, or watching a movie.

  • Deon

    I always wondered about this. I bought SetCPU and have it on my HTC Vision (aka G2). But it seems I can set the minimum speed, max speed and scaling method all from within Cyanogenmod Settings, in the performance section. So it seems this program only sends the commands or parameters to the kernel, which does all the work (CM7's kernel and Pershoot's only allow OC to 1.5ghz for my phone and there's this one crazy kernel that allows OC to 1.9ghz; depending on which kernel I use is what determins how high SetCPU and/or CM7's Performance settings will allow me to go), and it seems Cyanogenmod's Performance section can do the same thing. So why would somebody use SetCPU instead of CM7's native performance section?

    • chmcclellan

      On my OG Droid running CM7, I use SetCPU for the Profiles function: downclock when battery is getting low or when CPU temp gets too high. Can really add a fair amount of battery life.

  • jbonics

    Its got nothing on the sgs2, I was expecting the scores to be a lot better. No potential for this one. Smartbench scores were laughable, it doesn't beat tegra 2 searously.

    • Flippy125

      I love how everyone trys to make other peoples' phones look bad. It is lower because of the qHD resolution. For an accurate comparison against Tegra 2 you have to compare it to the Atrix since it has the same resolution. I think AP should post something on this to shut everyone up

  • DJ suMo

    G2x overclocked at 1.5GHz running CM7 Trinity Kernal scored an impressive 4264 - 2910, on Smartbench 2011. I don't care about HTC's new high-resolution.. For a smartphone stock at 1.2Ghz - and gets overclocked to 1.8GHz - and still can't put up the numbers we wanna see is disappointing.

  • twisted

    It's still the same cpu architecture used in the N1, its old and should have been discontinued at gen2. Cortex A9 is roughly 25-30% faster per cpu cycle, thats a fact.

    Add to that new cpu instructions etc. These are facts. Snapdragon could have been competitive cuz they can clock pretty high.

    BUT, the cortex A9's, exynos in particular OC's great also. 1,45Ghz is usually no problem w/o even touching the cpu volt.

    Linpack @1,6Ghz on the SGS2 gives a steady 125Mflops, totally irrelevant but hey, numbers are fun!

  • http://www.txparts.com/htc-parts/htc-evo-3d htc evo 3d parts

    Its highly recommended to proceed if and only if you know what you are
    doing, please don’t proceed ahead for the instructions if you are a
    normal user and don’t know anything about the Overclocking as this may
    even prove fatal for your phone in which case we should not be held
    responsible for any manner. Also, you are requested to follow the below
    mentioned procedure strictly as they are mentioned or else you may brick
    the phone.

  • evo3dhackr

    el questione! :) What if the kernal ver. is In the hex editor I found vermagic= Would I change and update to, if so, would it be stable when I push that to the sd card? Thanks, Brandon.