[KERNEL] Bricked-Kernel Hammerhead | Sweep2wake | KnockKnock/Dt2w

Search This thread

show-p1984

Inactive Recognized Developer
Jul 30, 2011
3,700
11,805
When I try to download it sends me to bricked. de homepage.. can someone upload latest stable for me, wanna flash it to my bro's n5
You are using a firewall that empties your referrer. I added a workaround for that.
Sorry but where is the f2fs version of the kernel? I flashed the normal version and it just stuck on "Type password to decrypt storage"
I tried the bricked_hammerhead_20140331_050519 build.
The build you tried has f2fs.
Was someone complaining about battery life? Me not :D
View attachment 2664673
View attachment 2664674
I've been getting such horrible battery life with this kernel.
This is medium usage with varying reception.
Just so disappoint....;)
Those are some nice results you two got :)
 

PetritH

Senior Member
Mar 3, 2011
4,174
2,556
Somewhere
and... in the end of the day...

uploadfromtaptalk1396480300886.jpguploadfromtaptalk1396480314132.jpg

Sent from my Nexus 5 using Tapatalk
 
Last edited:

show-p1984

Inactive Recognized Developer
Jul 30, 2011
3,700
11,805

I can never get battery life like that on mobile... I blame my reception with this crap provider... (always < 25%, 1 in 2 calls is routed to the mailbox, every third call you make ends up in nirvana...) But at least it's payable :p
Usually I get 3-4hours SOT over 20 hours when mobile. At home on Wifi I was just shy of the 8hrs mark :)
 

PetritH

Senior Member
Mar 3, 2011
4,174
2,556
Somewhere
I can never get battery life like that on mobile... I blame my reception with this crap provider... (always < 25%, 1 in 2 calls is routed to the mailbox, every third call you make ends up in nirvana...) But at least it's payable :p
Usually I get 3-4hours SOT over 20 hours when mobile. At home on Wifi I was just shy of the 8hrs mark :)

I don't use data that much, sometimes I don't use data at all when im at home or at work.. I usually connect to wi-fi and thats probably why im getting these great results.. thanks a lot for your hard work and this amazing kernel, im not planning to change it and I doubt you can make it any better.. its already awesome. Thanks again !!!:good:
 
  • Like
Reactions: show-p1984

show-p1984

Inactive Recognized Developer
Jul 30, 2011
3,700
11,805
@show-p1984 what's going on with kcontrol I try to download it and it gives me this error
asezebuj.jpg
It's not a KControl bug, it's rather a play store bug combined with custom ROM and recovery backups flashery.
To fix this:
Uninstall KControl.
Head to /data/data
Remove de.bricked.kcontrol and all it's contents.
Reinstall KControl.

You most certainly will experience this with other apps too soon, I guess you partly restored /data or sth, which causes this.
 

Savant

Senior Member
Jul 29, 2011
3,316
1,128
Manchester
It's not a KControl bug, it's rather a play store bug combined with custom ROM and recovery backups flashery.
To fix this:
Uninstall KControl.
Head to /data/data
Remove de.bricked.kcontrol and all it's contents.
Reinstall KControl.

You most certainly will experience this with other apps too soon, I guess you partly restored /data or sth, which causes this.

I'm using slimkat stable and I haven't had that happen before. I deleted the file and installed like it should've.

Sent from my Nexus 5 using Tapatalk
 

alen1901

Senior Member
Jan 29, 2011
5,800
7,215
First battery cycle, from 95 to 25%, i only got 3:30 hours of screen on time. The same like with purified kernel, stock settings, uv -50mv and min freq on 192mhz. Using greenify. Not sure how you guys get 5 hours of screen on time, lol.

Sent from Pure Nexus 5
 

Phazmos

Senior Member
Dec 6, 2010
3,404
1,657
First battery cycle, from 95 to 25%, i only got 3:30 hours of screen on time. The same like with purified kernel, stock settings, uv -50mv and min freq on 192mhz. Using greenify. Not sure how you guys get 5 hours of screen on time, lol.

Sent from Pure Nexus 5

Doesn't matter what others get. Question should be - is it better than what you were getting.
Some of us like to disable stuff we won't use. What gets disabled will vary from user to user, and will have an impact on battery life.
So ..... how is it compared to what you had?
I regularly get 7+ hrs sot, on wifi, with only 5 or 6 things syncing, no location services running, no google now, or bt, mostly surfing, light gaming, a few calls and texts. I'd call that light usage. If usage pattern is similar, battery life should be similar - if not .......
 
  • Like
Reactions: hooliganx

cantevencode

Senior Member
Feb 20, 2012
188
71
Newcastle
First battery cycle, from 95 to 25%, i only got 3:30 hours of screen on time. The same like with purified kernel, stock settings, uv -50mv and min freq on 192mhz. Using greenify. Not sure how you guys get 5 hours of screen on time, lol.

Sent from Pure Nexus 5

If you do the maths, you were heading towards roughly 5 hours sot from 100% - 0%

Sent from my Nexus 5 using Tapatalk
 
  • Like
Reactions: UgoBoss

alen1901

Senior Member
Jan 29, 2011
5,800
7,215
Doesn't matter what others get. Question should be - is it better than what you were getting.
Some of us like to disable stuff we won't use. What gets disabled will vary from user to user, and will have an impact on battery life.
So ..... how is it compared to what you had?
I regularly get 7+ hrs sot, on wifi, with only 5 or 6 things syncing, no location services running, no google now, or bt, mostly surfing, light gaming, a few calls and texts. I'd call that light usage. If usage pattern is similar, battery life should be similar - if not .......

Im only on wifi, good signal, my network reception is great, only contacts, gmail and one more sync on, gnow off, location services off, bt off, using next browser for surfing and for facebook (inbox), a lot of it, partly messenger app, maybe few sms and few very shot phone calls. No games. Greenified all apps (which can be without problems). Screen brightness almost on lowest. Also i used purified kernel, i got 3:30 screen on time too. With stock kernel i got more which is strange. Ill test few more things. On nexus 4 i would get 4 - 4:20 hours of screen on time
with same usage and all same.




If you do the maths, you were heading towards roughly 5 hours sot from 100% - 0%

Sent from my Nexus 5 using Tapatalk

Actually i ended up with 4:14 screen on time and 12% remaining, 19hours on battery. I dont want to discharge my battery under 20% just to have more screen on time. I take care of my battery, ocd. :D

Sent from Pure Nexus 5
 

Savant

Senior Member
Jul 29, 2011
3,316
1,128
Manchester
Why doesn't the camera recognize the the power button as the shutter? Just cuts off screen. That kernel related?

Sent from my Nexus 5 using XDA Premium 4 mobile app







Wasn't this meant to be "press volume up or down to take a picture" ?

Sent from my Nexus 5 using Tapatalk

No its not kernel related, it's user space.

Sent from my Nexus 5 using Tapatalk
 
  • Like
Reactions: hooliganx

Top Liked Posts

  • There are no posts matching your filters.
  • 313



    Welcome to the most customizable N5 kernel on xda :)
    Bricked-Kernel Nexus 5 (hammerhead)

    Features:

    * Based upon Google's msm 3.4 source
    * Various fixes, improvements and optimizatios (look @ github)
    * Compiled with gcc4.7.2 toolchain (linaro 09.12)
    * -O3+ optimized
    * Snapdragon & CortexA15 optimizations
    * replaced qcom's hotplug binary with msm_mpdecision (IN-KERNEL, better battery life + performance)
    * Extensive sysfs interface for mpdecision with all the tuneables you want (/sys/kernel/msm_mpdecision/)
    * replaced qcom's thermal binary with my IN-KERNEL solution. (/sys/kernel/msm_thermal/)
    * export krait version to: /sys/kernel/debug/krait_variant
    * Allow OC up to 2,5Ghz
    * Allow UC to 96Mhz
    * Undervolting (faux123)
    * F2FS Support
    * Multirom Support
    * KCAL (savoca) & Gamma Control (faux123)
    * Sound Control (faux123)

    * Default clocks: 300 Mhz min & 2265,6 Mhz max

    Zip features:
    *** ON-THE-FLY-RAMDISK EDITS!
    *** THIS KERNEL USES YOUR RAMDISK, it will just modify it on the fly while flashing. These changes are not creating any incompatibilities with roms/other kernels.
    * removes min freq overrides from the ramdisk
    * removes governor overrides from the ramdisk
    * adds init.d support to your ramdisk (if not already supported)
    * modifies stock ondemand settings
    * add module insertion

    Check the compare links for the rest :)

    Where is tha Changelog???

    There will be no more changelogs.
    Instead the download pages were outfitted with compare links to github for each download.

    What is sweep2wake?

    Disabled as default, activate through an app like KControl or over sysfs: echo 1 > /sys/android_touch/sweep2wake

    What is doubletap2wake / knock knock?

    Disabled as default, activate through an app like KControl or over sysfs: echo 1 > /sys/android_touch/doubletap2wake

    How to install?

    Flash through recovery. #done.


    Where to complain about errors/bugs?

    Please use the Issuetracker for bugs/errors/feature wishes!
    Issuetracker @ https://github.com/showp1984/bricked-hammerhead/issues


    [email protected]
    IRC Chat: Freenode IRC #bricked

    Download:

    No Guarantees! If it kills your grandmother or your device, I am NOT responsible! If you understand this:
    (If you download, please hit Thanks below my post! Thank you!)

    >>> DOWNLOAD <<<



    Donation Hall-of-Fame:

    > Hall of fame <

    Thank you very much!


    Stock 4.4 Nexus5 boot.img - flash this if you come from another kernel coming with it's own ramdisk (eg: zip contains a *.img file) ONLY FLASH ON 4.4

    Source:


    65
    What is msm_thermal?

    Kernel based 3-phase thermal control!
    This replaces your /system/bin/thermal-engine-hh binary which is renamed by the installer to thermal-engine-hh_bck.
    It will throttle your cpu speed to keep it cool and unleash it if the cpu has cooled down enough. (3 phases: low, mid and high)

    Check /sys/kernel/msm_thermal/conf/ for the thermal configuration :)

    allowed_max_high = highest threshold (phase 3)
    allowed_max_low = remove the throttling if we cooled down to this (clr_thrshold)
    allowed_max_freq = max frequency if throttled (limit)

    [...]mid[...] = same as above, just for phase 2
    [...]low[...] = Lowest threshold (phase 1)

    check_interval_ms = how often shall we check? (sampling rate)

    shutdown_temp = if we reach this shut down the device!

    If you want to see msm_thermal doing it's job:
    Code:
    adb shell
    cat /proc/kmsg | grep 'thermal'
    What is msm_mpdecision?

    100% kernel based multi core decision! (should cpu1/2/3 be online or not?)
    This replaces your /system/bin/mpdecision binary which is renamed by the installer to mpdecision_bck.

    Check /sys/kernel/msm_mpdecision/conf/ for the configuration.

    startdelay = time until mpdecision starts doing it's magic (20000)
    delay = time between checks (130)
    pause = if something else plugs in the cpu, fall asleep for 10000ms (10 secs)
    scroff_single_core = if the screen is off, don't plug in cpu1/2/3. Additionally: Unplug all cpus except cpu0 when screen is turned off (1)
    enabled = enable(1) or disable(0) mpdecision. This does not affect scroff_single_core!
    min_cpus = min cpus to be online, cannot be < 1. Default: 1
    max_cpus = max cpus to be online, cannot be > 4. (if you set it to 2 and min_cpus to 1 you will basically have a dualcore) Default: 4
    idle_freq = a value against that will be checked if a core +/- is requested. (499200)
    If cpu0 is below that value and a core up of another cpu is requested, nothing will happen.
    If any other cpu is above that value and a core down of that cpu is requested, nothing will happen. (otherwise it would now put down that cpu even though it is still working, which isn't what we want)


    Hot plug thresholds (aka now it gets 'complicated')
    This small formula calculates which value will be used: (number_of_cpus_online - 1) * 2
    The result of this formula will be the nwns_threshold where a new cpu is hotplugged.
    The result of this formula + 1 will be the nwns_threshold where a cpu is unplugged.

    nwns_threshold_x = runqueue threshold, if this is reached cpuX will be hot/unplugged
    twts_threshold_x = time threshold, this amount of time must have passed for the related action to be taken (hot/unplug)

    Example:
    One cpu is online.
    (1 - 1) * 2 = 0 ergo:
    nwns_threshold_0 = cpu1 will be hotplugged at this value
    ((1 - 1) * 2) + 1 = 1
    nwns_threshold_1 = cpu0 will be unplugged at this value
    Since we can't unplug cpu0 this is '0'.

    Two cpus are online.
    (2 - 1) * 2 = 2 ergo:
    nwns_threshold_2 = cpu2 will be hotplugged at this value
    ((2 - 1) * 2) + 1 = 3
    nwns_threshold_3 = cpu1 will be unplugged at this value

    etc...

    Some values are:
    NwNs_Threshold: 12, 0, 25, 20, 32, 28, 0, 35
    TwTs_Threshold: 140, 0, 140, 190, 140, 190, 0, 190
    Where the position and function of the number equals the result of the above explained formula.

    (all times are in ms)
    If you want to see the mpdecision magic happening:
    Code:
    adb shell
    cat /proc/kmsg | grep 'MPDEC'
    mpdecision's input event boost, aka project butter :p

    This will boost your min cpu speed if you touch the screen or press a button and gives you full control.
    In those events the min cpu freq will be risen to a predefined value (look below) on every online cpu. This boosts overall reaction times and smoothness a lot. (works similar to the qcom mpdecision binary)
    Configuration files:
    [email protected]:/sys/kernel/msm_mpdecision/conf # ls | grep boost
    boost_enabled
    boost_freqs
    boost_time

    All of them work like the usual sysfs files, except one special case:
    boost_freqs will list all frequencies from cpu 0 to cpu x. Cpu 3 and any following cpu will share one frequency.
    To change those frequencies echo the cpu number + the frequency in khz.
    Example: To change the boost freq of cpu3 (and 4,5,6,7,8, etc) the echo would look as follows:
    Code:
    echo "3 960000" > /sys/kernel/msm_mpdecision/conf/boost_freqs
    for cpu0:
    Code:
    echo "0 960000" > /sys/kernel/msm_mpdecision/conf/boost_freqs

    Defaults:
    Code:
    cat /sys/kernel/msm_mpdecision/conf/boost_freqs
    960000
    960000
    729600
    576000
    Why do I have no WLAN?

    Due to this kernels very high optimization settings it is too big for our boot.img with WLAN included into the kernel, so it is built as a module. That means it needs to be inserted into the kernel upon boot up, which needs to be automated for maximum comfort.

    The zip adds module insertion to your ramdisk, if that fails for some reason the wlan module cannot be inserted.

    if
    Code:
    adb shell lsmod
    doesn't show this:
    Code:
    tun 14701 0 - Live 0x00000000
    cifs 275399 0 - Live 0x00000000
    bcmdhd 2964650 0 - Live 0x00000000 (C)
    Then something went horribly wrong.
    Chances are that I broke it and this should never happen.
    One post in the issue tracker will probably fix it with the next release :)

    You can restore wlan for your current bootup by executing:
    Code:
    adb shell
    su
    insmod /system/lib/modules/bcmdhd.ko
    Is there an app available to customize this pure bodacious and awesome kernel?

    Yes there is: KControl. It's in the Google Playstore.


    45
    New Kernel beta :)

    Download:
    http://bricked.de/index.php?action=kdownload&device=hammerhead&release=beta&type=aosp

    Changes:
    https://github.com/showp1984/bricked-hammerhead/compare/ca9faf4...9ef2634

    A small KControl backport is to follow, so that color control will be enabled on the Hammerhead. (Sound already is)


    -------------------------------------


    The source now contains a fully fledged one command compile script.

    Ubuntu dependencies:
    Code:
    sudo apt-get build-dep linux-image-$(uname -r)
    (This should install most of what is needed to build any kernel)
    Code:
    sudo apt-get install ccache xz-utils git
    (This installs the ccache, a compiler cache, xz compression utils & the version control system git)

    Downloading the source:
    Code:
    mkdir ~/WORK
    cd ~/WORK
    git clone -b exp https://github.com/showp1984/bricked-hammerhead.git

    Building the source:
    Code:
    cd ~/WORK/bricked-hammerhead
    . buildme.sh exp
    (currently only exp has the build script though, since it's still all beta over here. This will change soon, then you can choose between master = stable and exp = beta)
    This script will download the toolchain, prebuilts and kcontrol gpu module source used and generate a flash-able zip at the end of the compilation as well as check-sums.
    It will ask you if you want to create the out directory, if you say n or N here it will be disabled. If you say y or Y however you will find everything in ~/WORK/bricked-hammerhead/out after compilation has finished.

    So if you have a linux machine, have fun. If you don't, well, it's as good as a time as any to download a distribution and get cracking! :)
    40
    Has anyone actually demonstrated (scientifically or otherwise) anything wrong with the qcom mpdecision binary? Im not taking anything away from kernel developers who write their own mpdecision (especially those who also provides sources), but I am curious as to whether they are actually better than those provided by qcom. Surely they know more about the capabilities of their own cpus better than anyone no?

    It's not that complicated (there is no black voodoo magic), that's why bricked kernel was the first to introduce this feature back on the pyramid.
    CPUs need to be plugged in / unplugged based on load, there is nothing more qcom can know that we can't also see inside of the kernel.

    There is one HUGE thing that is wrong with qcom's mpdecision: It's closed. It's a black box. We don't have any idea what is going on in there. Literally, none. It's not even configurable. It could contain secret nsa code, or send dirty sms to your girlfriend (who might actually enjoy that, idk...)
    If we would have source, hell, awesome. I wouldn't have spent over a year (first commit: Date: Thu, 21 Jun 2012 06:06:47 +0200, see here) to get my msm_mpdecision solution to the point where it is a) awesome and b) a lot better than the binary. It can be configured in any way you might need to. It features statistics on how often and how long a cpu is hotplugged. It has the input event boost. It's the full package deal.

    If you compare my kernel with the stock kernel you will see huge performance improvements and battery savings on bricked. Those are not only because of my msm_mpdecision but certainly related. Furthermore: we can completely customize it, over sysfs, on a running kernel, without reflashing.
    That's what I would have expected from qcom in the first place.

    Another thing wrong with qcom's binary: It's static. Meaning: If you change your min freq on stock it will always reset back to defaults. Same with their thermal binary. That's just annoying.
    msm_mpdecision will notice it if you change your min frequency and dynamically work with that from there on. It will also prevent hotplug wars between apps and it: eg: an app plugs in cpus to grab some cpu data (like frequencies, etc. That is only available if the cpu is plugged in). Qcom's mpdecision would now raise hell to keep that cpu unplugged, my msm_mpdecision just sits back and chills for 10 seconds to avoid those wars. (again, even that delay is fully configurable)

    There are also a bunch of boring advantages as to why it is better to let something crucial to the system run in kernel space and not in user space, but that would most certainly explode the context of this thread by the factor of 4.

    My solution is not inferior to that binary in any way, in fact it has been vastly superior in my testing up until now, otherwise I would a) improve it or b) ditch it. I don't keep around bad stuff just for the point of having it or because I wrote it. If it sucks I will say that and act accordingly.
    36
    Showp is my favorite Kernel dev. Used his kernel on all my phones (Sensation and One S). Was using Bricked on N5 until the battery light stopped working with SlimKat. SlimKat's stock kernel has some commit by Showp, though, which is great.

    Have been waiting for update for a while, now.

    Not asking for ETA. And I know Showp has been dealing with some personal matters but I have a feeling that it might either take a long time before Showp's back, or maybe even never.

    Anyway, I wish Showp all the best. If he decides to come back, I will try his kernel in a heartbeat!
    ill-be-back-quote.png
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone