• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!
  • Fill out your device list and let everyone know which phones you have!    Edit Your Device Inventory

[DISCONTINUED][Dec 16][KERNEL][SD] hastarin r8.6 [standard/eb]

Search This thread


Senior Member
Jul 22, 2008
Led notifications (another)

Hi Hastarin,

first thx for your kernel, it runs smooth and fast.

I've upgraded my rom [MCCM]DesireHDV4.0/kernel_gauner's with your kernel cause of some things doesn't run well.

My led notifications still works, before it just light up and still, now it just blinks once.

Does the lights.qsd8k.so just manage the led and buttons or the screen backlight too ???

My previous lights.qsd8k.so was the same of yours (cause of gauner's kernel).
How can I set the blink interval without "Led Me Know" ???


Senior Member
Jun 21, 2006
Someone know how to use this kernel to MIUI builds ? I love this kernel cause the ability to change mac-address (something I need here at work :/), new kernels tend to put whatever mac they want

Top Liked Posts

  • There are no posts matching your filters.
  • 437
    NOTE: No longer being developed. You may want to try tytung's kernels instead.

    Release 8.6

    This is a Kernel I built for my own purposes, and now for others, based on the current EVO kernel (as of whenever I last merged it to my branch) and changes from various sources.
    Here's what's different to the main tree (See changelog for latest changes in case I forget to update this)
    • Packaged to be compatible with cedesmith's new style initrd for easy installation on builds using it
    • CIFS support via a module
    • mac address patch for wifi/bt by mdebeljuh. See http://forum.xda-developers.com/showthread.php?t=819819
    • Built without support for ext3 and yaffs
    • Optimized for speed rather than size
    • Removed some debug features the average user isn't capable of using anyway (dmesg/logcat still work)
    • G-sensor workaround by mdebeljuh & jdivic (http://forum.xda-developers.com/showthread.php?p=9208297#post9208297)
    • Smartass governor added as default
    • Sysfs interface for optional under/overvolting (see http://forum.xda-developers.com/showthread.php?t=821372) (800-1350mV)
    • Optional overclocking (via SetCPU or similar) to 1536MHz - USE AT YOUR OWN RISK - it may damage your phone
    • Optional older battery driver with my patch to support the official HTC extended battery (eb version)
    Extended battery users extra WARNING!
    r8.3+ version with "eb" supports extended batteries using the old driver. r7.7+ temperature reporting for extended batteries is reasonable but NOT accurate. Please see this post for more information.

    As of r8.5.3 versions without eb in the name have EXPERIMENTAL (ie it has known bugs) support for extended batteries using a patch to the new driver. More information.
    Use this at your own risk.

    How to Install the kernel

    Download the latest from here:
    Release r8.6 - https://dl.dropbox.com/u/11373163/Kernels/update.kernel.hastarin.16.12.2010.zip
    (Overclock and Undervolt enabled but defaults to normal speeds and voltages)

    Release r8.6_eb - https://dl.dropbox.com/u/11373163/Kernels/update.kernel.hastarin.eb.16.12.2010.zip
    (as above but with older battery driver with extended battery support)

    Undervolt 925mV - https://dl.dropbox.com/u/11373163/Kernels/update.kernel.hastarin.undervolt925mV.15.12.2010.zip
    (optional update to undervolt to 925mV, edit as needed)

    NOTE: It would be nice to see a few more clicks of that Thanks button folks. ;)
    In the past I've suggested donating to your favorite charity instead of me.

    But I've decided due to the amount of time this is now taking to accept some donations. I encourage you to still consider a charity first, such as:

    So far I've had enough donations to buy an official HTC extended battery for testing purposes. Future donations will probably be spent on beer, coffee or junk food. :D

    Please only donate if you can spare the money. NOTE: I've all but given up getting extended battery support working with the new driver! :(

    I also can't make any guarantees on how long I can keep investing time in the kernel so please consider any donations to be for past work done, not what I might do in the future.

    Finally please note I'm building a kernel here and working on the odd bit of code. The bulk of the work is done by others:
    and no doubt more I've missed

    Donations to some of them can be made here:
    Anyone having issues with this kernel. PLEASE before you post them here, try the following:
    • Make sure you reboot twice after installing so files get updated (or manually update them then reboot if your build won't auto update)
    • Actually reading the README.txt provided!
    • Reading my FAQ
    • If that doesn't work try a stock EVO kernel
    • If you still have issues with the stock EVO kernel it's nothing I've done and we may have to wait for the devs to fix it.
    • If that still doesn't work, then don't use any task killers, and try a clean format of your SD card.
    • If that still doesn't work you're out of luck. :confused:
    Further Information
    • I am running Autokiller (despite it's name this is not an automatic task killer) set to Optimum.
    • I do recommend System Panel Lite to be able to see what processes are using your CPU. I DO NOT recommend using any automatic task killer.
    • I do recommend using EBL with a 3 sec timeout
    • Further recommendations can be found in My FAQ
    A note on the included lights file
    I talked to gauner1986 (author of the new lights file) and the filename comes from the build.prop file.
    It is the ro.board.platform=xxxxxx line in the build.prop file.
    xxxxx is also your lights filename. (lights.xxxxx.so)
    For example my desire hd build has msm7x30
    others I have seen are htcleo, default, qsd8k, ace, bravo.
    So you have to rename the lights.htcleo.so that is in hastarins root\system\lib\hw folder to match your builds filename if you want it to work.
    Old versions
    Old camera driver versions for builds that haven't been updated to support the new driver yet:
    Release r8.5.3_oldcam - http://www.multiupload.com/KTF4ULINT3
    (as per base but with old camera driver)

    Release r8.5.3_eb_oldcam - http://www.multiupload.com/X6ZTQ9S2ER
    (as above but with older battery driver with extended battery support)
    • This should work with any build that can use the EVO kernel.
    • Data will not work on RMNET based builds.
    • For anyone else complaining about no data issues make sure you installed the kernel AND modules correctly, and if you're using an older build you may need to update your WiFi firmware and/or your radio.
    • If it's no data over 3G also check your APN settings.

    [I]Release r8.6 - 16/12/2010[/I]
    - Patched Wifi driver to match main tree (fixes wakeup lag when wifi is on) - Thanks Markinus
    - Updated init script to update calibration data (fixes mac address not working) - Thanks OSM
    - Enabled extreme overclocking and included speeds from mdeejay's kernel. USE THESE AT YOUR OWN RISK  I DO NOT recommend overclocking, you will see little benefit in daily use.
    [I]Release r8.5.3 - 09/12/2010[/I]
    - EXPERIMENTAL support for extended battery users (NOT for daily use yet)  
      See http://bit.ly/eDLk0g for more information
    - REMOVED initrd.gz & haret.exe (by now all recent builds are updated anyway)
    - REMOVED LeTama's new PPP wrapper and aussiebum's suggested ppp options
      The latest builds incorporate these changes anyway, and you can get them from
      the original thread - http://bit.ly/92IBH6
    - Modified package to suit cedesmiths initrd.gz - http://bit.ly/foZ1j3
    - Trimmed changelog to only include recent changes
    - Yet another smd_tty patch test
    [I]Release r8.5.1 - 26/11/2010[/I]
    - Included LeTama's patch to fix music skipping when turning the screen on
    - Included root folder structure with LeTama's new PPP wrapper and aussiebum's suggested ppp options
    ****** WARNING ************ WARNING ************ WARNING ************ WARNING ************ WARNING ******
      Includes new camera driver you may need a new camera APK and libraries, etc
      HTC Desire (Sense) Camera APK - http://www.multiupload.com/0YVTSSQO79 (Thanks mdeejay)
      Libraries for Desire/Nexus builds - http://www.multiupload.com/1UDF24Y28R (Thanks michyprima)
    ****** WARNING ************ WARNING ************ WARNING ************ WARNING ************ WARNING ******
    [I]Release r8.5 - 23/11/2010[/I]
    - Reverted my toolchain due to a wierd bug causing increased power drain in r8.4 after calls
    - Updated smd_tty - This is still experimental but the Beta had 900+ downloads with largely positive feedback
    - Changed default governor to smartass
    [I]Release r8.4 - 18/11/2010[/I]
    - WARNING from 8.3 still applies, see below.
    - Updated my toolchain to latest CodeSourcery one
    - Commit messages follow for the rest. Thanks to huanyu for finding most of the patches so I could just git cherry-pick them, and to mdeejay for pointing me to huanyu's git tree.
    b02a70d Tweak smartass for better performance
    260b0ba Added some extra debug info for vdd_level being set on bootup, and fixed another warning in WiFi driver.
    e9c3ac0 Optimized ARM RWSEM algorithm
    fea4f78 increase IDLE_TIMEOUT within kgsl_yamato_idle (kgsl_yamato.c)
    f248e15 msm: kgsl: Remove support for mmap from the kgsl driver.
    031a7f7 [ARM] msm: qsd8k: audio
    7304611 cpufreq: interactive: Changes to interactive governor
    c8cec4c cpufreq: interactive: Fix potential division by zero
    c69e698 msm_kgsl: Optimize TLB flushing
    9e35440 msm_kgsl: Move kgsl_sharedmem_init to module load
    [I]Release r8.3 - 17/11/2010[/I]
    - Added smartass governor (use SetCPU if you want to try it)
    - Added sysfs interface for undervolting (see http://forum.xda-developers.com/showthread.php?t=821372)
    - Added g-sensor workaround by mdebeljuh & jdivic (http://forum.xda-developers.com/showthread.php?p=9208297#post9208297)
    - Merged main tree - WARNING: Includes new camera driver with auto white balance bug (but auto focus/zoom works)
    [I]Release r8.2 - 11/11/2010[/I]
    - Minor update to enable App2SD again (yes Angry Birds should install without unmounting SD)
    - Merged main tree as usual (nothing of immediate use in there though)
    [I]Release r8.1 - 07/11/2010[/I]
    - Merged main tree again (light sensor changes, lowered verbosity of battery driver, etc)
    - Included latest liblights to go with the light sensor changes
    - Removed NFS support
    - Moved CIFS support to a module
    - Built with support for tunneling (GRE), may help those with VPN issues
    [I]Release r8 - 30/10/2010[/I]
    - MAJOR CHANGES = now closer to main tree
    - Removed gauner1986s video driver tweaks (they were causing issues merging the main tree)
    - DOES NOT support extended batteries due to the new ace based driver (until I can figure out a fix, best bet for eb users is to catch myself and/or Markinus on IRC over the next week or so and we may be able to test further)
    - DOES NOT support Overclocking/Undervolting/AXI  My testing shows they provide minimal benefit in day to day use, and tend to cause unpredictable errors that will make troubleshooting remaining issues (like data issues) harder.  I may release a kernel with these things when everything is running smoothly, but until then I won't even be running one on my phone.
    - Perflocked = You can't even underclock with SetCPU.  My reasoning is the same as above.
    - Merged main tree (updated battery driver from Desire HD kernel, plus a tweak to help prevent oom errors)
    - Updated wifi.mac patch by mdebeljuh (http://forum.xda-developers.com/showthread.php?p=8828147)
    - Added PPP patch from http://docs.openmoko.org/trac/ticket/2212 (no this does not fix everything with PPP)
    r8.6 released

    If you're using r8.5.4EX this is the same as the standard version except it's not overclocked on bootup.

    Feel free to click the thanks button folks. :)
    HOWTO Install the kernel

    I forgot I'd taken the information out of the README.

    You can follow the information on the Wiki or the following...

    All builds
    1. Optionally backup your /system/lib/hw/lights.*.so (typically lights.qsd8k.so) file using an app like ES File Explorer
    2. The modules and lights.qsd8k.so file should be copied in automatically. If they aren't you may need to install them manually using adb shell, or an app of your choice.
    3. Your lights file might be called something other than lights.qsd8k.so If that's the case you may need to rename it after it's installed. You can run the following commands to rename it (eg with GScript Lite). I tried adding them to the update script but unfortunately getprop doesn't return a valid value at the time the script is run.

      mv /system/lib/hw/lights.qsd8k.so /system/lib/hw/lights.`getprop ro.board.platform`.so
      chmod 0644 /system/lib/hw/lights.`getprop ro.board.platform`.so

    Builds based on cedesmith's new initrd.gz

    1. Extract the files to the build folder (ie where you have haret.exe, etc)
    2. Optionally delete the devs folder
    3. Reboot (not hot reboot)
    4. Optionally run the lines shown above to rename the lights file or do it manually. Probably not needed for most builds.

    Other builds - these have a rootfs.img

    1. Encourage your build author to update to the new initrd :D
    2. Extract the files to a temporary folder
    3. Copy the zImage and root folders to your build folder
    4. Reboot (not hot reboot)
    5. Optionally run the lines shown above to rename the lights file or do it manually. Probably not needed for most builds.
    6. Make sure you run the following 2 lines on startup (they tweak kernel memory so PPP is more stable). You can do it manually with GScript Lite or edit an appropriate file (eg 99complete) for your build.
      echo 8 8 > /proc/sys/vm/lowmem_reserve_ratio
      echo 8192 > /proc/sys/vm/min_free_kbytes
    as of when :p ?
    On mdj's kernel 1536mhz work fine :)

    Most of the values I used are the ones he shows in his thread. If you want to tweak them you can:

    I even provide the 925mV Undervolt script (see the first post) as a starting point.

    If that still doesn't work you could try asking him to share his source code. He's told me many times "later" but hasn't done it in the last 3 weeks. Given it's two commands in git there is really no excuse. :rolleyes:

    BTW If it turns out he's boosted the voltage higher than 1.35V I have to say I will not do that unless someone can prove to me it's safe to do so.

    Unlike mdeejay I have always made ALL my code, build scripts, etc available so anyone can reproduce what I'm doing here. I even have a FAQ to guide folks to build a kernel.
    Hastarin's FAQ

    I thought about putting this in it's own thread but there are plenty of them out there already and then I'd have something else I have to maintain, so for now it will just be this one post which I may update if I can be bothered.

    Some handy tips to start:
    • Use Google with "site:forum.xda-developers.com" or try Google Advanced Search to find exactly what you need
    • Update your radio! You MUST have at least 2.08
    • Update your WM ROM

    Some comments on battery usage can be found here:

    The FAQ:
    1. My battery won't charge past 96%, what do I do?
      Boot in to Windows Mobile and charge it to 100% It's a known bug in older EVO kernels. It should be fixed as of 24/10/10 (hastarin 7.7) if you've done a full charge at least once.
    2. I'm trying to use an EVO based kernel (any recent kernel) and can't get data to work at all, what am I doing wrong?
      You're probably using an RMNET based build. You need to update it to PPP first. Search your builds thread for more info. You're probably not the first to try it.
    3. I'm trying to use an EVO based kernel (any recent kernel) and can't get Bluetooth to work, what am I doing wrong?
      You're probably using a CM6 based build. There is a possible fix for this here: http://forum.xda-developers.com/showpost.php?p=8715976&postcount=1246
    4. Why can't I get 3G/data to work?
      If you have a PPP build then most often this is an issue with your APN settings. Search this forum for more info.
    5. My WiFi doesn't work, what do I do?
      Check you've installed any necessary modules and updated your firmware. Check your MAC address if you're filtering
    6. What is the difference between CM6 and Sense based builds?
      CM6 is based on open source code, Sense is HTC based. Sense is generally more compatible with the lastest EVO kernels (BT in particular) whilst CM6 is lighter and preferred by some people.
    7. My music is skipping/stuttering is there a fix?
      Upgrade to r7.7 or higher. This is now fixed. Alternatively you can disable the stagefright player in your build.prop though there may be side effects of doing so. See http://forum.xda-developers.com/showthread.php?t=811248
    8. My data keeps getting disconnected is there anything I can do?
      I'd suggest trying a different radio and my r8 (or an Alternative kernel), and reading these threads: http://forum.xda-developers.com/showthread.php?t=794309 and http://forum.xda-developers.com/showthread.php?t=812930
    9. People are saying my mic gain is too high or they are hearing echo, is there a fix?
      If you're using r7.7+ see this thread http://forum.xda-developers.com/showthread.php?p=8835670&highlight=acdb#post8835670
      Otherwise you're probably on a CM6 build. See this thread http://forum.xda-developers.com/showthread.php?t=805002
    10. My drain is still high (60mA) on standby what can I do?
      I suggest trying an auto boot loader with a short timeout such as EBL and 3 seconds. More tips here: http://forum.xda-developers.com/showthread.php?p=8864448&highlight=screen+brightness#post8864448
    11. My notification LEDs aren't working. What can I do?
      Try this or use this app
    12. Help I get a green tint when taking photos with the flash?!
      This is an issue with your build. See this thread for some fixed build.prop files for some builds or ask for more info in your build thread.
    13. Should I use an automatic task killer?
      Short answer, no! Long answer. Using AutoKiller Memory Optimizer is OK. I use this with the Optimum preset myself.
    14. I upgraded my kernel but now WiFi isn't working. What now?
      You presumably have a build with a broken rootfs that won't automatically copy files/modules. You'll need to manually update your modules. I already describe one method for doing this in my README, but a description of how to do this using Root Explorer can be found here thanks to warrington. You can also hassle the author of your build and ask them to fix the auto copy support in their root filesystem!
    15. Do you recommend overclocking?
      In general, if you can do so stably, then a minor overclock might be of some use, but the extreme speeds I'm seeing lately, definitely not. There is little benefit in general use of the phone. I personally use SetCPU 245-1113MHz on my 8.5.1 kernel even though I've benchmarked it stable at higher. See http://forum.xda-developers.com/showpost.php?p=8720613&postcount=1258 for some benchmarks.

    One more FAQ with it's own little section since people keep asking me how to compile their own kernel.

    1. Read this: http://www.htc-linux.org/wiki/index.php?title=QuickDeveloperStartGuide
    2. Get this: http://www.codesourcery.com/sgpp/lite/arm/portal/release1294
    3. My build script is attached. Modify it to suit your setup.
    4. Use git to get a copy of my kernel from here: http://gitorious.org/~hastarin/linux-on-wince-htc/hastarins-linux_on_wince_htc
    5. Use a config from one of my kernels (in the devs folder) and save it as .config in your git working directory.
    6. Run the modified build.sh script.

    If that's not enough information for you to build my kernel then you probably shouldn't be doing it. :p