[APP] LUMOS v1.0 *FINAL* (Complete HTC Auto-Backlight replacement) [UPD.:08-02-2011] - Touch HD Themes and Apps

. . . .
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
. . . . (current version 1.0 FINAL)
More control. More battery. More comfort.
Lumos is fully customizable automatic backlight level changer developed as a complete replacement for stock HTC auto-backlight service. A wide range of HTC branded devices is supported starting from HTC Diamond/Touch Pro up to the current WM flagship HD2.
Lumos focuses on minimal CPU usage, maximum battery saving, low memory footprint while maintaining maximum backlight change smoothness and responsiveness. Lumos combines the best from all available auto-backlight solutions and adds many extras for your tweaking needs
Features:
- simple and clean installation and uninstalation
- extremely low CPU usage when working, 0.05-0.3% on polling
- NO battery and CPU overhead (drainage) unless you actively use your device's display
- low memory profile considering all the options
- simple and reliable configuration GUI with easy step-by-step calibration process
- many options that let you change every aspect of how your backlight works
- program exceptions to set different backlight for any application
- relative excaptions allow you to amplify/attenuate the automatic backlight for specific applications
- ability to force display ALWAYS ON for certain application
- integrated tool to detect all active application names, leave it running in the background and it will log all application names you use
- configuration failsafe. No matter what you do, Lumos won't crash, just tell you what is wrong and use defaults.
- supports vast majority of HTC branded devices since HTC Diamond
- many supported languages
See this thread for details and news and download:
http://forum.xda-developers.com/showthread.php?t=450318
Enjoy the light

Hi Nik3r, going to try it and report back...

Hi,
Can you explain what are the advantages to use your soft compared to the original ?

looks i did everything correctly, including calibration (770 units for maximum light, 0 for dark), Lumos is automatically started after soft reboot but - opening it explicitly from the program directory - it says that Lumos is temporarily disabled and no backlight control happening indeed....should i switch ON automatic light control in
settings-->Power?
any other explicit instruction to be given?

Read the FAQ more carefully next time
Lumos is DISABLED as long as the LumosWizard (configuration) is active. Click Save+Apply on the bottom to exit LumosWizard and start the invisible service.
and Auto backlight in Power settings of your device must be DISABLED

can't wait to give it a go.... (once i get my device!)

Thanks for the update.
I tested for about 20 minutes, and it seems to work good, except that, if I open the wizard and then select 'exit' and 'start service', it seems to forget to return to the minimal backlight, after it is exposed to strong light (almost max. backlight).
When I repeat above steps, but first selecting button 'Save+Apply', everything works good.

The HD light sensor seems too "insenstive" for my expectations. It needs a fair amount of direct light to rise above 0.
In a dimly lit livingroom, my screen needs to be brighter than in bed with my wife sleeping next to me.
This difference is impossible to achieve, and then I might as well stick to the standard.

That is weird I can't seem to reproduce, can you write a step by step what to do to see this bug? Including current light levels.
I have lowest backlight (it's dark)
open LumosWizard - it sets backlight 6 during configuration
I expose device to maximum light tap Exit - Yes (to start Lumos service)
I move away from the light to shade and backlight dims back to minimum I had before teh test in ~2s
Can you write such step by step to reproduce it? I can't fix it if I can't see it
ugumba:
try to play with the Force BL=0 option, one guy from the Raphael forum is using value 1 (so it dims when sensor reports steady 0 in bed for example) and otherwise it's automatically between min and max backlight

nik3r said:
Read the FAQ more carefully next time
Lumos is DISABLED as long as the LumosWizard (configuration) is active. Click Save+Apply on the bottom to exit LumosWizard and start the invisible service.
and Auto backlight in Power settings of your device must be DISABLED
Click to expand...
Click to collapse
OK you are right. Anyway, the modulation of the backlighting was extremely small - probably i misunderstood the "maximum light" description and i put it under a very strong source, which essentially calibrated the system to always stay dim...

I would like to thanks you man because this app works really great!!!
you're the boss.
Thanks dude

Someone complained about extra scrollbar sometimes visible on the settings tab, does anyone experience the same problem? Should I decrease the usable height for the tab panels by a few pixels? (it's possible because I don't know anyone with HD)
Can someone experiencing this glitch post an unscaled screenshot, co I can measure the available pixels and change accordingly?

I haven't problem with scrollbars, and I have an attach my screen picture.
As for the problem with lower limit, today I start looking my device in a dark place and my backlight was in the lowest value.
After that gradually I went to a brighter place - my backlight became lighter - and after in a brighter ... at the point my backlight was at the brightest point (10).
After that I returned to the darkest place - my backlight became 4 - after in a a brighter point - my backlight went to 6 - and at the end I went in a totally dark place, but the backlight sticked at 2 and never went at the lowest point.
p.s. sorry for my english

Thanks for the screenshot, seems all right but still I will decrease the height by 2pixels just in case
and at the end I went in a totally dark place, but the backlight sticked at 2 and never went at the lowest point.
Click to expand...
Click to collapse
This is exactly what tolerance is supposed to do.
Let's say you are at 10, backlight goes gradually down as you go away from teh light slowly. But if you have tolerance set to '1', it won't change until the backlight is supposed to change by 2.
If you move really carefully away so it fades one by one it will go like this:
10-9-8(change)-7-6(change)-5-4(change)-3-2(change)-1
= your backlight is stuck at last value 2, because you tolerate imprecission of 1.
let's say you move away fast so it's not linear
10-3(change)-2-1(change) = all is fine
and now even a bit faster
10-2(change)-1 = stuck
this is good outside because you save battery but I recommend using the Force BL=0 below option along with tolerance or it won'T sometimes go down to 1.
So, try
tolerance = 0
or leave
tolerance: 1
Force BL=0 below: 5 (or 1 or something small )

ugumba said:
The HD light sensor seems too "insenstive" for my expectations. It needs a fair amount of direct light to rise above 0.
In a dimly lit livingroom, my screen needs to be brighter than in bed with my wife sleeping next to me.
This difference is impossible to achieve, and then I might as well stick to the standard.
Click to expand...
Click to collapse
This is because of hardware problem of HTC light sensor (too cheap sensor?).
To correct it, one should use nonlinear scale for low light intensity.
This is possible with G-light, which looks to me more relevant and advanced for HD.
Just to illustrate what I said, I publish my nonlinear scale in G-light (works fine in the twilight):
level min max
1 0 2
2 3 20
3 21 100
4 101 200
.....
9 601 700
10 701 1000
Has LUMOS linear scale only?

It uses automatic linear scale, I yet have to implement quadratic and logaritmic function.
If you want different behaviour, try to override your sensor calibration (set it a bit lower like 500) and use Force BL=0 and Force BL=1 in settings.
try something like:
MAX_BL_LUMENS = 700
MIN_BL_LUMENS = 0
MAX_BACKLIGHT = 8
MIN_BACKLIGHT = 3
DIM_TO_MINIMUM_BELOW = 1
DIM_TO_MINIMUM_PLUS_ONE_BELOW = 120

Yes, you are so right, I understood what is happening.
Thanks
Please, accept my donation (confirmation number: 327776023L896074D)

You're welcome, thanks for support

malfunction upon wakeup AND Unlock
nik3r,
hopefully this is not because of my setting.
reproduce:
lock the phone, wait till the phone sleeps, leave it for a while (now the screen should be off)
press power button to wake up the phone, now the phone is dim but still locked
unlock the phone, screen still dim, unless i start lumos (the wizard) then exit
sometimes after a long while after unlocking, lumos will kick in and screen changes brightness.
i have also reproduced this problem with HDTweak, which that program there is an auto-lock setting, which kicks in when the screen brightness dims, which in turn is set in the settings->systems->power->advanced tab.
all tests were done on battery power.

Lumos v09
Lumos v09 has been released
This version introduces a few new minor features but focuses mainly on fixing most (if not all) known bugs and improving reliability and ease of use for new users. CPU usage and battery life should be the same or little better than v08 but the difference is nominal.
My battery can last 4-5 days now with low usage
Main new features:
- exceptions can be set to detect only active window (both modes have similar CPU usage)
- installation will automatically disable the built-in HTC auto backlight
- uninstallation will return auto backlight to its former state
- LumosWizard can return backlight to former levels upon exit
- setting tolerance won't prevent backlight from going to lowest and highest settings
- added LumosStarter.exe that (re)starts Lumos service without any feedback
Main bug fixes:
- fixed bug when Lumos got stuck on device softreset due to a bug in HTC sensor libraries
- fixed bug that would set AC power brightness on switch from cable to battery even if disabled in settings
- fixed glitches while deleting and saving multiple exceptions
- fixed erratic backlight control during operation of LumosWizard
.. and many more I forgot to track
If you like and use Lumos, you are welcome to donate.
Enjoy the new version!

Related

Updated [Jan-10]: [App] [G-Sensor] [Brand New] The XSense v1.2 Final

Credits:
Foremost, let us all acknowledge Koushik for his brilliant "Sensors" library upon which most if not all non-HTC apps that use the G-Sensor, Light-Sensor, and Navi-Sensor are built, simply ingenious. Moreover, I would like to recognize No2chem for the NeuLed2 library which is an equally exquisite peace of code that allows access to the Diamond/Pro Leds. Without those two guys, accessing these advance interfaces on the diamond/pro would be inapproachable at best.
Reason: HTC gave these phones lots of sensors, lets give them.."Sense".
......... EXTRA-Sense ...........
* Hopefully an innovaton, though mostly an integration of RANDOM but needful features...
Features:
1. Courtesy Profiles:
- Set Volume Profiles to activate on Face-Down & Face-UP events. Choose from: None, Silent, Normal, and Vibrate. You can also choose to suspend the Phone when its facing down.
2. Notifications-Sense:
- IF there is/are any outstanding notification(s), the device will vibrate whenever you move it - at customizable intervals: Missed Call(s), Voice Mail, and SMS.
3. Stylus-Sense:- When the Stylus is in/out: Will play sound + Blink the Back button's light.
- When the Stylus is out and the device is moved: Device will vibrate faintly + blink the Back button's light to REMIND you that the Stylus has not been placed back in. This goes on UNTIL the Stylus is placed where it should be.
* Uses "in.wav" & "out.wav" files in the \XSense\ Dir; you can use whatever wave files for this. OR, use the UI to select whichever wave files you want!
4. General Settings:
- Polling Interval: From 200 to 3000 Miliseconds. This determines the rate at which the G-Sensor is polled. Lower values give higher response times and fluid operation at the cost of battery life & CPU utilization.
- Flash Navi Lights: Will blink button lights to notify you of Profile changes and Stylus In/Out.
- Vibrate on Events: Will induce very subtle vibrations to notify you of Notifications and Profile changes.
- Suspend when UP-Side-Down: ???
- Light Navi Button When Suspended: Will do just that when the Light Sensor senses Dim or Dark conditions. This is an independent setting that turns ON the Navi button's light at suspend time, and OFF at Resume time (this is Event Driven, so no polling is involved). This feature really helps if, like me, you want to see where the damn thing is in the dark - before you launch it against the floor.
5. Installs to "\Program Files\XSense", and Creates 2 shortcuts:
"Start Menu\Programs\XSense" and "Startup\XSenseSvc".
Program Settings are saved to the Registry at "HKCU\Software\XSense\".
Use of System Resources:
1. Diskspace: 162 KB RAM footprint: 374-535 KB Battery: NOT observed.
2. CPU Usage: %0.29 Average. Spikes for 2 seconds to %2.7 - %8.5.
3. Battery Impact: Neligeable if at all!
* Indicated CPU usage occurs ONLY when there is an EVENT (posture changed, stylus in/out Sounds playing,
etc)
- Vibration: The way I like it is in waves of 200 miliseconds length! I generally hate vibrations, so if you want it at 201 ms. you're welcome to make your own program and exercise your personal taste.
- This prgram Registers Event Handlers for: "G-Sensor", "Incoming Call", "Phone Call in Progress", "Stylus in/out", and Power Manager events. DO NOT move it to Internal Storage, you have been warned.
Requirements:
.NET 3.5 + HTC device with GSensor & Light Sensor.
Compatibility:
Specifically designed for Diamond & Raphael, but will work fine on HD/Rhodium/Topaz/HD2 etc...
Bugs/Limitations:
Knock yourself out...
Release Notes:
- This is the LAST revision/release/app I make; programming too much work
- Download & Install the CAB
- Run the XSense from your Start Menu\Programs, customize to taste, and enjoy!
Change Log:
- Brand New UI: VERY "finger friendly" this should be especially useful if you have a WVGA Device
i.e. HD/Rhodium/Topaz/HD2 etc...
- Revised entire code for existing & potential bugs, and Performance
tweaked to death.
- Removed various functions (auto speakerphone, car-kit options, etc...). Use "Touch InCall Screen Tweak" for these,
its handles Phone/Speaker brilliantly!
- Shortcut added to Startup for automatic launch after reboot.
- Shortcut with a nice icon added to Start Menu (Credit to VetVito).
- General Tab:
- Navi Button will only light up if the device is in a dark place, i.e. You will
always see where your phone is (before you trash it against the wall).
- Stylus Tab:
- UI elements to select & set sounds for Stylus-in/out events.
Disclaimer:
This program is provided strictly "as is". It is intended only as a proof-of-concept. Although fully functional, it must NOT be considered for daily use. This software is very likely to compromise the integrity of your data as well as invariabley cause your device to malfunction in any way, shape, or form. Therefore, the developer shall be absolved of all responsibility towards testers and/or their computers & devices. While using this software you agree to be solely liable for all and any damages you do to yourself, your device, or any damn thing you possess and care for!
Download XSense 1.2 - Final:
http://forum.xda-developers.com/attachment.php?attachmentid=265847&d=1263112521
any screenshots?! Thanks
Super Cool App Thank you Dude now to REPORT
Only The function Suspend when i turn my device Up side down and the Stylus Sound In Out work perfect all other functions not working for me im using the ROM from my signature.
Also in HD Tweak i have option to enable to mute call when face is down but still not working
About the Lights they can`t flash because we don`t have buttons on our Blackstones
The Profiles sometimes work sometimes not work i mean when the face is down sometimes the phone is going to silent but from 10 times only once working ...
So i will use the Suspend Up side down and the sound for now
Thanks
tsalta said:
Super Cool App Thank you Dude now to REPORT
Only The function Suspend when i turn my device Up side down and the Stylus Sound In Out work perfect all other functions not working for me im using the ROM from my signature.
Also in HD Tweak i have option to enable to mute call when face is down but still not working
About the Lights they can`t flash because we don`t have buttons on our Blackstones
The Profiles sometimes work sometimes not work i mean when the face is down sometimes the phone is going to silent but from 10 times only once working ...
So i will use the Suspend Up side down and the sound for now
Thanks
Click to expand...
Click to collapse
Hey, sorry I just saw your post; This doesn't sound like a problem with the program.
Try Calibrating your G-Sensor, if that doesn't solve it, turn your phone off and remove the battery for 5 seconds then turn it on again... that should fix it
This is a perfect app it works perfectly for me on EnergyROM.
Many thanksss
zakariae said:
This is a perfect app it works perfectly for me on EnergyROM.
Many thanksss
Click to expand...
Click to collapse
It is my pleasure, mate Enjoy until the new one comes out (don't ask when tho )
Cheers

[Kernel MOD] (Auto)brightness corrections

Hi,
this is a topic I want to start in order to help the development of more intelligent brightness control for Galaxy S (probably regional variants of it will benefit as well).
It began with my PM to some of kernel DEVs that I've noticed brownish color instead of black on ONE brightness setting. My idea was to omit that one brightness level.
Overnight, I already got two responses. One that it should be no problem and one that the link I sent might lead to fixing the problem I mentioned as well (color correction).
The other, connected to brightness topic, thing I've noticed is that auto control of it is retarded. First, it's too jumpy without any reason (like let's say change of outside brightness) and second it likes to set level that burn the eyeballs. I've never had such problem on my CM Hero.
Here's my original PM:
embrion said:
Hi,
I'm PMing you as the most popular kernels coders.
Long story short: SAMOLED screens like to make black or similar colors brownish at low brightness. I've (and not only me) noticed that there's a step just about min. when it starts to be brown and a next step after that it magically stops. The idea is to omit this step at all or just in auto brightness table. I believe It's doable by using those methods.
The original story begins here from the first half of #522 post
Like I've wrote there, this problem exists in all kernels and all color temperature variants of them + stock one.
If you're interested, please respond me. If not, also respond as I'd like to know if I can count on anything.
Thanks
Click to expand...
Click to collapse
Some links that might help:
[SOLUTION] Fix for minimum screen brightness! [10/13 - adjustable]
Kernel makers, please add the ability to adjust auto brightness.
[APP] Different auto-brightness
Gizmodo - Why iPhone 4 and Android Brightness Controls Are Effectively Useless
My random thoughts:
One option would be fooling the sensor that it is less bright than it is
Another, more proper I believe, it to modify some brightness tables to leave extreme brightness levels to extreme outside light situations. This one would also help skipping this "brown" brightness level as like I said, it looks to be only one level
Color correction MIGHT fix "brown" problem too, but I'm not sure as COLD and WARM kernel variants didn't changed this brown problem (unless colors are optimized only for some of the levels like I've read at VOODOO site)
CM 6 already has such brightness level options in Settings-> CM Settings - > User interface -> Automatic backlight -> Use custom(just checked on my Hero) so probably lot of code can be reused (as I believe there is CM for Galaxy S)
Kernel DEVs, fell free to hijack this thread. It is to help your cooperation (unless each one of you prefer to solve problems on they own ) Btw. don't be offended if I didn't included you in the DEVs list I've sent my PM. It was late and I PMed only those I've noticed that they kernels I've used. All of you are more than welcomed.
Other, please don't post "I cannot see any brown", and those one that can see it, please stop posting about info after first 5 people do
I'm so happy to read this threat. I had posted questions about display and auto brightness a couple of months ago in the questions section but never received any credible responses.
My problem is that when I turn auto brightness on, not only does my display get exceptionally dark, but it becomes very noticeable that e.g. grey turns more brownish. Comparing my display to yet another Galaxy S confirmed my suspicions that this is not they way the display is supposed operate, i.e. compared to mine the other Galaxy stayed a lot brighter in equal lighting conditions and the grey remained grey (instead of brownish-grey like mine). I compared the grey tones of the numeric buttons in the stock Dialer APP to conclude this.
I suspectED the light sensor might be defective, but I have run the test menu on a couple of Galaxies (*#0589#) and the units always display the same values when put next to mine.
You might see why this is bugging me so much, it seems my galaxy's display is not using less battery even though I get less brightness than the others on auto brightness. Unless I manually bump up the brightness to full the colors on my screen look dull (grey turns Brownish, and over all it looks not as alive) as compared to other units. Simply bumping the brightness up is of course not an option, this drain the battery like crazy.
EDIT: I too have tried the various Kernels, hardcore warm and cold, voodoo w/ color fix sadly all to no avail
EDIT2: @embrion The above all doesn't explain why our phones have this problem, but the far majority of Galaxy S phones doesn't. Of course I cannot statistically back this up, but I have not physically seen any other device that gets brown on autobrightness like ours. Any Ideas?
Do you say your friend's Galaxy S doesn't turn brownish or it does but gives higher brightness than your device in same lighting conditions?
embrion said:
Do you say your friend's Galaxy S doesn't turn brownish or it does but gives higher brightness than your device in same lighting conditions?
Click to expand...
Click to collapse
It does not turn brown and appears much brighter in equal lighting w/ auto brightness ON. I edited my post above, please read again if it was unclear before. Thank you!!
You should check it at manual brightness at level set few steps higher than min. I'd like to separate brownish display problem at one brightness level from inproper light sensor measure
embrion said:
You should check it at manual brightness at level set few steps higher than min. I'd like to separate brownish display problem at one brightness level from inproper light sensor measure
Click to expand...
Click to collapse
Like I said, the light sensor does not give an improper measure, the readings in *#0589# menu are equal across the devices (including mine). The brownish color tones do, to some degree, disappear if the brightness bar is set two ticks to the right of minimum.
(Auto)brightness corrections
Original Auto Brightness level is too high & sluggish.
It 's need to fix like a voodoo Brightness level fix (2.1 only).
schiphol said:
Like I said, the light sensor does not give an improper measure, the readings in *#0589# menu are equal across the devices (including mine). The brownish color tones do, to some degree, disappear if the brightness bar is set two ticks to the right of minimum.
Click to expand...
Click to collapse
Yes, mine too. Second step from min. setting. I'll ask guys at my local forums to get some statistics. If your friend doesn't have such problem at the same color/theme than it must be display fault
embrion said:
Yes, mine too. Second step from min. setting. I'll ask guys at my local forums to get some statistics. If your friend doesn't have such problem at the same color/theme than it must be display fault
Click to expand...
Click to collapse
Which CSC code do you have? I mine was originally XEN (Netherlands). The units I tested that did not have the problem were all DBT (german Sim free). Just asked my brother and he says his phone also gets brownish (also XEN). Have to check product codes later, will update then.
Mine is XEE (Orange, Poland)
Supercurio did some tinkering with those settings:
https://github.com/project-voodoo/l...a2/Kernel/drivers/video/samsung/s3cfb_mdnie.c
I suspect this is the file we need to modify;
Code:
mDNIe_data_type mDNIe_UI[]=
{
#ifdef CONFIG_VOODOO_MDNIE
// Voodoo color: optimized UI mode
// reduce the sharpness filter radius to make it much closer
// to the real fuzzyness introduced by the SAMOLED Pentile pattern
// color saturation boost on everything is also disabled because
// it causes harm on stock settings (exaggerated colors)
0x0084, 0x0040,
0x0090, 0x0000,
0x0094, 0x0FFF,
0x0098, 0x005C,
0x009C, 0x0613,
0x00AC, 0x0000,
0x00B4, 0x0A00,
0x00C0, 0x0400,
0x00C4, 0x7200,
0x00C8, 0x008D,
0x00D0, 0x00C0,
END_SEQ, 0x0000,
Any thoughts and datasheet quotations on this? Because seriously I see just random numbers in this.
Some interesting code begins around line 315, but seriously I'm clueless
Another interesting file:
https://github.com/project-voodoo/l...2/Kernel/drivers/video/samsung/s3cfb_tl2796.c
My screen has brownish/reddish deep grays on brightness settings under 16-17%. However when I set it over 17% and use screen filter app deep grays are NOT brownish/reddish, this means there is definitely something with lower brightness settings.
Xan, check out the link I've posted in the first post. He gives sources that might be helpful
And the problem appears only at 2nd step of brightness (counted from zero brightness)
embrion said:
Xan, check out the link I've posted in the first post. He gives sources that might be helpful
And the problem appears only at 2nd step of brightness (counted from zero brightness)
Click to expand...
Click to collapse
@embrion so did you pm Supercurio? What did he say? It's too bad this color/sharpness fixing will probably be put on a back burner what with Gingerbread and CM7 development. D*RN IT! I tried an app in the market that is more precise than the built-in slider. Try it out Adjbrightness (free). I punched in all values possible between 2-255. The tipping point (where the browness is gone) lies at when you go from 34 to 35. Is this the same for everyone suffering from this problem. Please remove all apps like e.g. 'screen filter' before you try!
For me crucial step is going from
/ # echo 53 > /sys/devices/platform/s3cfb/spi_gpio.3/spi3.0/backlight/s5p_bl/brightness
to 54, however I'm running trasig's voodoo.
While 54 and over looks ok, lower values are... reddish/pinkish.
@schiphol: yes I did but no response. In dark colored Gingerbread era, this problem will be become more and more evident.
@xan: dzieki I'll flash latest Darky as it is based on trasig's voodoo and try your fix.
--edited--
Supercurio just responded me, I'll let you know about results
embrion said:
@schiphol: yes I did but no response. In dark colored Gingerbread era, this problem will be become more and more evident.
@xan: dzieki I'll flash latest Darky as it is based on trasig's voodoo and try your fix.
--edited--
Supercurio just responded me, I'll let you know about results
Click to expand...
Click to collapse
No fix there, just a different behaviour...
Would like to see this in next voodoo, might even write some simple user interface for this.
I have an idea but its not quite clear yet, however if this patch will let most users 'calibrate' their screens.. I think I'll give simple GUI a shot.
@embrion
Could you perhaps upload the screenshots you talked about in R64's thread so I can replicate. Because of different kernels and settings I want to try and establish beyond a doubt that the problem we're having is of the same nature and root cause. Thanks
This wont be visible on screenshots. You need to make a photo, problably with DSLR and know how to do it
I'll try it today and let you know
According to Supercurio, this is Samsung's color profile deviation, not SAMOLED fault itself.
Anything software broken can be software fixed
@schiphol, xan: yes, it won't be noticed at screenshots, I've already compared R64's black notification bar screenshots and my brown ones. Color picker showed a little difference in color (R:24, G:24, B:24 or something VS RGB: 0, 0, 0 - true black). Such difference should'n be visible and is not visible from software screenshot point of view but Samsung color profile makes 24,24,24 brown IN REAL LIFE while 0,0,0 is still black. I repeat, they're both black at screenshots no matter which brightness level is set, but only 0,0,0 black doesn't look like brown when viewed by bare human eye. Samsung profile at this brightness treats 24,24,24 as brown while it should as black.
--edited--
You're right, Xan. It's just another, ( but 1337 ) method of changing the brightness. I thought there's a plaintext table with levels accessible to change by hand
Hi Ok I have kept the brightness at 2 clicks to the right from minimum to stop grey from looking grey-brown all through today. Now my display accounts for 95% of the battery usage, it has never been this high before. The battery is at 25% whilst I only used the display for 44 minutes.
Thats ridiculous battery drainage and should be taken into careful consideration when a fix is developed for this issue. Are you guys having a similar experience??

[Kernel][AOSP][2.02 | November 2nd] Plasma kernel

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I. Thanks!
.
Disclaimer: I take no responsibility for any damage that might occur to your device. You proceed strictly at your own risk. This is a work in progress.​Thank you for your interest in Plasma kernel, I hope you enjoy it. I've poured hundreds upon hundreds of hours of work into putting together a kernel that best showcases our hardware. Plasma kernel would not be possible without super-smart people like AndreiLux, DerTeufel, temasek, googyanas, faux123, and the regular contributors to the official cm kernel repositories. Please donate to them to support their hard work!​.
II. Features
CPU frequency range: 100MHz to 2.16GHz
ZZMoove, PegasusQ, performance (with support for multiple cores), and LulzactiveQ CPU governors
Zen, noop, deadline, row, cfq, sio, vr schedulers
Experimental Wolfson AND Voodoo Sound support (choose one or the other on the Audio tab of STweaks, then REBOOT!)
CPU voltage control
Linux 3.0.101
AndreiLux: Screen color calibration with mdnie-control
GPU over/underclock and over/undervolt
Control the frequency and voltage of all 5 GPU steps
Support for GPU clocks from 54MHz to beyond 800MHz
Control GPU governor sampling rate
Built with 4.8 toolchain
Built with -O3 and other optimizations
Extra panel brightness (<299)
Faux123: Dynamic fsync control (v1.2)
AndreiLux: Charging control
Support for STweaks
Control screen refresh rate (can be reduced to save battery)
AndreiLux: Memory/internal voltage control interface
AndreiLux: Adaptive Body Bias (ABB) control
AndreiLux: Digital brightness control/reduction (better than ScreenFilter)
LED control (with some color mixing adjustments by me)
Touchwake support, including touchkeys (enable in Screen tab of STweaks)
Multi-touch kernel-based gesture engine
Proportional Rate Reduction for TCP
Joe's RCU
Temasek: Frandom module (enable on the Memory/Internal tab of STweaks and REBOOT!)
S-Pen settings on the S-PEN tab of STweaks
zCache
Support for 4x parallel "Turbo ZRAM" (settings are on the "I/O / RAM" tab of STweaks)
UKSM
Enhanced Touchwake/Slide2Wake functionality
Arc-swipes to turn your phone on with one hand (Screen tab of STweaks)
Long-tap-off to turn your device off with one hand (Screen tab of STweaks)
Power off gesture: tap the top of the screen and a touchkey at the same time to trigger suspend
Change your power manager (PM) CPU lock frequency
Press the home button 4 times to toggle the screen negative
Press the home buttom 3 times as fast as you can to toggle the screen into nightmode (red)
exFAT support
For more, take a look at the commits
.
III. What's NewDon't forget to check out what was new in 2.0b7 and 2.0b12!​
[ZRAM Total Disk Size]: By default ZRAM is setup as four (4x) swaps operating in parallel at equal priorities. Set this to the TOTAL amount of RAM you wish to dedicate to ZRAM, and STweaks will automatically divide it evenly by four.
[UKSM Enable]: Enable the UKSM daemon that will continuously scan memory for duplicate data.
[UKSM Daemon Sampling Rate]: How often the daemon checks for duplicate data.
[UKSM CPU Usage Limit]: How much system load (CPU usage) the daemon will use.
[Long-tap-off Always On]: Found in its own section under the Touchwake section. When enabled Longtapoff will always work, regardless of how you woke your device. Takes effect immediately.
[Many ZZMoove settings]: Many ZZMoove settings on the newly created "ZZMoove Scaling" and "ZZMoove Hotplug" tabs. Descriptions coming soon.
.
IV. Download / Donate
Support the development of Plasma kernel by DONATING if you find it useful!
AOSP 4.3.x only!
Plasma kernel v2.02 for AT&T Note 2 (i317)
Plasma Gesture Pack
Support the development of Plasma kernel by DONATING if you find it useful!
​.
V. Changelog
v2.02 (November 2nd, 2013)
Tracked audio/media skipping bug to disabled loggers (thanks pappschlumpf!) By default logging is now enabled. While you can still disable it, it will always be reset upon reboot.
Changes to write-back caching (thanks temasek)
Support for switching touchkey backlight driver from ROM/kernel (bottom of Screen tab in STweaks) (thanks Yank555-lu)
Some bug fixes for Slide2Wake
i317: Hopefully fixed the weird root issues
​.
VI. Archived Changelogs
2013-10-29 | v2.00
Linux 3.0.101 (thanks temasek)
Hopeful bugfixes for untouchable screen, and taps on top triggering suspend
Should you encounter a problem like that, cycling on and off (power button) should now reset any state variables
Fix FC issues. Works with more ROMs, including the latest AOSP nightlies
Allow pm_idx_freq to be set as high as 1600 MHz, theoretically could slightly speed up waking from deep sleep. Set on "Plasma Tuneables" tab of STweaks
Added several new tuneable ideas to zzmoove
Added "ZZMoove Scaling" and "ZZMoove Hotplug" tabs to STweaks. The descriptions are still a work in progress
Moved mDNIe controls to their own "Color" tab
Greatly enhanced the longpressoff feature's reliability and ease of use (by upgrading to scheduled_work)
Slide2Wake and arc swipes now trigger CPU and memory frequency locks to speed up waking
Slide2Wake and arc swipes no longer accidentally send input in the milliseconds after the screen comes on, but before you finished your gesture
Added option to Screen tab of STweaks to enable Longtapoff always, regardless of how the device woken
Expanded the trigger areas for slide2wake and arc swipes
ZRAM/swap is working and compatible with "Turbo ZRAM" (4x parallel ZRAM swaps for quad core devices) (thanks googyanas)
ZRAM settings in STweaks now allows you to set one total size of RAM that will be divided into 4x ZRAM swaps. Setting to 0 disables all swaps. Changes are applied instantly. No need for any other ZRAM/swap apps or init.d scripts.
UKSM (Ultra KSM (Kernel Samepage Merging)) enabled, with settings on the "I/O / RAM" tab of STweaks. Mostly just a novelty, but what it does is continuously checks RAM for duplicate pages to save space
zCache enabled and always running
Cleancache enabled
Frontswap enabled
Enabled LOWMEM_CHECK (thanks googyanas)
Enabled SPEEDUP_KEYRESUME as discussed in temasek's thread (Placebo effect? Maybe. Better ask Brian Molko. A cookie for you if you understand that reference) (thanks googyanas)
Added my own wake-speed ideas (2-second max-CPU-speed lock, and 2-second max-bus/RAM-speed lock on KEY_POWER press)
Permanently fixed (hopefully) the laggy, skippy, media bug
Toggle negative screen mode by taping the home button 4 times quickly (but NOT as fast as you can) (based on a commit by gokhanmoral)
Toggle nightmode (red) screen mode by pressing the home button 3 times VERY quickly (pretty much as fast as you can) This is purposely designed to be a dim red, as searing bright 255 red isn't particularly easy on your eyes in the dark. Fun fact: this (and the negative one described above) are functional even during boot...triple tap to see your bootscreen turn red
CPUFreq bug fixes/commits (thanks DerTeufel)
Permanent TRIM (thanks googyanas)
Added shell scripts to quickly and easily see statistics with as little typing as possible. Open a command prompt on your device, type "su" and press enter to ascend to root. Now you can type "szc" and press enter to see zCache statistics (szc = show zcache). Or type "ssw" to see swapfile/zRAM statistics (ssw = show swap). Note: Some statistics don't fully populate until a few minutes after boot
Experimental: Set ZZMoove governor for battery savings by obtaining a root shell as described above, then typing "zzb" and pressing enter (zzb = zzmove battery). Does not reapply after reboot.
Compiler optimizations
​
​.
VII. SourceSource for Plasma kernel can be found on my github.​
XDA:DevDB Information
Plasma kernel, a Kernel for the AT&T Samsung Galaxy Note II
Contributors
ffolkes
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: 2.02
Stable Release Date: 2013-11-02
Created 2013-10-29
Last Updated 2013-11-02
Reserved
FAQ:
Q: I have no earpiece volume!
Be sure to choose Voodoo Sound or Sound Controls on the Audio tab of STweaks, then reboot.​Q: I can stably run this kernel. How can I use the screen-off settings so I can save battery?
You will have to intentionally crash your system to find your lowest value, and should definitely make a nandroid first. Then be sure to turn off dynamic fsync on the bottom of the I/O tab of STweaks, as this being enabled could cause data loss from a crash. When you are done with that, the first thing will be to lower the PM Lock Frequency. Try 600MHz, press Apply, then put your device to sleep, give it a few seconds, and see if it wakes. Be sure it's going into deep sleep! If it wakes up instantly, it wasn't in deep sleep. After booting, things like mediascanner can take minutes to finish and release their partial wakelocks. If you are sure it went into deep sleep, repeat with a lower frequency until you cannot wake. Pull the battery and reboot. Once it boots up, go into STweaks and set PM Lock Frequency to the last stable frequency. You must do this before the screen goes off, or else it'll crash again when it enters deep sleep!
Now, once you are sure of your stable PM frequency, move on to the next step. Set CPU Screen-Off Max Frequency to 200MHz. Use your device for a few minutes or hours or whatever. If you find music skips too much, or calls are slow to wake up the phone, set this to 300MHz, but now be prepared for a possible SOD if your device cannot handle scaling that low. If you experience one, leave this setting at 300MHz, and enable "Keep sleep max frequency fixed" and set CPU Screen-Off Fixed Max Frequency to 200MHz. If your phone was slow to wake at 200MHz before, try setting this to 300MHz.
Err, a bit of a vestigial tail here...don't forget to set Screen-Off Frequency For Responsiveness (it's higher up in the PegasusQ Scaling tab) to whatever your lowest screen-off frequency is. It isn't needed anymore and I should have taken it out probably. Like its waking counterpart, it is a threshold below which aggressive upscaling is used. Basically, it's the frequency the CPU will want to hover at, in this case, while the screen is off.​Q: Explain the PegasusQ screen-off settings.
CPU Screen-Off Max Frequency - This becomes the effective policy max as soon as you press the power button. Setting this too low may cause slow waking, or choppy music. Ideally this is just like normally setting the max policy; i.e. the governor will try to get frequencies as low as possible without going over this. This means if you get skips in your music at 200MHz, you can set this to 300MHz and the governor will be able to grab that extra power if it needs it. The problem is, some devices get finicky when they're bouncing around between sub-PM Lock frequencies and will crash. That's where the Fixed Sleep Frequency setting comes in. Read on.
Up Threshold While Screen-Off - This becomes the effective Up Threshold value as soon as you press the power button. Setting this higher will make the CPU more reluctant to scale higher (go faster).
PM Lock Frequency - This typically hardcoded value normally overrides the governor to throttle the CPU to 800MHz every time the system itself is unsuspended. This means it happens thousands of times a day, and can significantly add up after a few hours. I found different devices could handle different frequencies, so I made this is adjustable and added an interface to lulzactiveq and zzmoove. 500MHz works very stably for me.
After Boot Delay - Gives your device a grace period after booting during which none of the screen-off policies will be enforced so your start up tasks can be completed quickly.
Enable Fixed Sleep Frequency - This is where things get sorta confusing. If your device can't scale while sleeping, most likely it will be able to tolerate just sticking to one low frequency. But this has a downside...you disable the scaling logic of the governor, so you either have to suffer degraded screen-off performance (skips in your music) with a battery-saving frequency, or set this higher, but then that means you'll be pegging this higher frequency now even though you just needed it occasionally. But yay, I had an idea to put a one-way toggle in there. Read on.
CPU Screen-Off Fixed Max Sleep Frequency - So here's the thing. All devices can handle low scaling just fine, as long the screen is merely off (e.g. listening to music, etc). Once the system falls into deep sleep, that's when stability issues arise. So I had an idea... When you play music, you usually interact with the screen then turn it off, but it never actually goes into deep sleep until it's done playing. So I made it so the above Screen-Off Max Frequency will be used, including scaling, until deep sleep is called for. Then from that point on it will become fixed to this setting's frequency until you turn the screen back on, then the toggle gets reset.
v1.60 Release Notes
Control your panel refresh frequency - This is inspired by and based on AndreiLux's commits last year. Samsung includes a driver called "lcdfreq" that allows for scaling of panel refresh frequency to save power. It toggles between two states: limited and unlimited. Not all devices actively use this feature in stock builds, but it is possible to enable nonetheless. When in limited mode the panel's refresh rate is reduced from 60Hz (58 actual) to 40Hz (41 actual). I went a step further and made it so the limited mode's panel divider can be set manually (25, 27, 29, 31, 34, 37, 41, 45, 50, 60 fps). I also made it so the limited mode can now be forced, effectively allowing you to adjust the default refresh rate of your panel to save battery. Not everyone needs/wants 60fps. How much battery will this save? I don't know yet, but if you want to find out, the option is on the Screen tab of STweaks. Be sure to check the force checkbox. Very low rates will introduce flickering to some eyes (remember, this is a refresh rate being adjusted, not just fps).
Lcdfreq in PegasusQ - Note: This is irrelevant if you have decided to lock your refresh rate as described above. AndreiLux implemented this last year, and I modified it a bit and added more tunables. When enabled, PegasusQ will try to control the state of lcdfreq based on CPU load. Some of you may know AndreiLux abandoned this due to problems with flickering, but I have taken a different approach. His goal was to provide 60Hz as quickly as possible, which ended up frequently alternating between the two states. I'm aiming for the opposite - to stick with limited as long as possible and only boost it during heavy use (like a game). When bounced around between limited and unlimited too rapidly, there can be visible flickering and tearing, and different frequencies seem to slightly affect the color balance, which makes it even more noticeable. Quite possibly why Samsung doesn't use this on Note 2's.
lcdfreq_kick_in_down_delay - When PegasusQ decides it wants to call for the panel to be kicked down (into limited mode) it will have to ask this many times before actually doing it.
lcdfreq_kick_in_up_delay - When PegasusQ decides it wants to call for the panel to be boosted (into unlimited mode) it will have to ask this many times before actually doing it.
lcdfreq_kick_in_freq - Before PegasusQ will consider limiting the refresh rate, the CPU must be running at this frequency or below.
Boost lcdfreq on touch - Immediately boosts to the unlimited state, regardless of what PegasusQ calls for. A commit by AndreiLux. At some point I may add to this to make it time based (i.e. hold the boost for x amount of seconds after a touch).
Control the touchy backlight - On the Screen tab of STweaks. For ROMs that don't provide this support natively, otherwise it may be unreliable.
v1.65 Release Notes
Control your GPU - Over/underclock your GPU! Over/undervolt your GPU, too! Settings explained on the GPU tab of STweaks. Support for frequency, voltage, up/down threshold and GPU governor sampling rate.
Lock/Limit your GPU - You can lock your GPU to a specific step, or limit it to a definable maximum number of steps (e.g. 2 or 3)
Control S-Pen booster - Control/disable the S-Pen CPU booster. Stock is 800MHz, but I find that overkill.
S-Pen X,Y Axis Offset - For some reason Wacom sets this to like 30,30 depending on handedness. I have no idea why, I prefer 0,0. For most users I recommend checking the box on the S-Pen tab in STweaks and leaving the sliders at 0,0.
S-Pen Box Filter - Depending upon what you use your S-Pen for, this makes it much easier to draw shapes, but harder to do finer things, like writing. Think of it as "snap to grid".
Gestures! - Be sure to scroll down to the FAQ section to read how to use them.
Q: How do gestures work?
Flash the gesture pack and reboot. This places the action and handler scripts in /etc/init.d to be run on boot. The available gestures are listed on the Gestures tab of STweaks. You may customize the scripts, but be warned that flashing the zip again will overwrite them.
Some gestures will require you to hold down a touchkey while performing them. Be sure to have a Touchkey Modifier Delay set in STweaks (Screen tab). 100-200ms works well. Now any time you touch and hold a touchkey and then touch the screen within the delay you just set, you will activate gesture-only mode, during which the touchscreen will no longer send touch events to the operating system, only the gesture engine. This means you won't get any bleed through of gesture draws into the foreground app. It's also a safety of sorts, to prevent critical gestures from being accidentally triggered. The downside is, you can't have your cake and eat it...well, not without some delay at least. If the touchkey modifier was simply piggybacked onto the touchkey driver that would be nice, but it would also mean every time you used it, it would also report the touchkey (Menu/Back) event. Or, if you blocked it always, well then obviously your touchkeys wouldn't work anymore. So a compromise is using a very short delay, and after that delay is up, the touchkey driver checks to see if the screen has been touched and the touchkey is still down. If it has been touched, then gesture-only mode is set in the touchscreen driver until all fingers are up. If the screen has NOT been touched after the delay, then the touchkey driver assumes it's just a normal touchkey press and reports it like normal. This may seem like an insanely small delay, but it's meant for you to touch the touchkey and start drawing with another finger *simultaneously*.
tl;dr: Flash the gesture pack, go to the Screen tab and set the Touchkey Modifier Delay to 150ms or so, then apply it. Now test it. First swipe from near the bottom-left corner, up towards the middle-right side. Nothing should happen. Now repeat, this time putting a finger down on the touchkey and holding, while *at the same time* starting to drawing this simple gesture. Aim to have both fingertips touch down at the same time. If it goes well, the virtual power key will be pressed and it will go into suspend. If you have trouble, increase the delay until you get more practice. Eventually you'll be able to do this gesture one-handed by touching the touchkey with the side of your thumb, and sliding/flicking your index or middle finger outward in an arc.​.
Useful Apps (no affiliation):
BetterBatteryStats XDA / Play
Awesome tool that lets you see both kernel and partial wakelocks, as well as the average percent battery drain.​CPU Spy XDA / Play
Provides a GUI to CPU time-in-state data.​Micro CPU Monitor Play
One of my favorite apps ever, this puts a very small 1px bar across the top of the screen for each core. It can be set to come from left or right, the background can be set transparent, and the bar thickness and color are adjustable. Very useful for quickly (and discretely) noticing abnormally high CPU usage.​top Play
Provides a GUI to the linux command 'top'. Provides a very reliable way to see what processes are using the most CPU time.​System Monitor Play
This app makes monitoring CPU history easy, and makes it especially easy to see the effects of hotplugging tweaks because of the way it clearly displays the state of each core.​.
Notes:
How to use the mdnie-control interface:
AndreiLux and Slimer777 have gone to great lengths to create an extremely accurate internal color profile using a spectrophotometer. The color accuracy is terrific. Most computers and tech use a very unnaturally cool color temperature (blue tint to white), so many people are taken by surprise when they see how yellow reality actually is. You need some time to get used to the new colors, but if you are still not pleased with the result, AndreiLux has setup MANY options for you to tweak in STweaks. Personally, I recommend increasing the chroma saturation weight.
Settings can easily be configured in the STweak app now. Download it from the Play Store.​
A bit about body bias:
To summarize this feature: When we traditionally change voltages (SetCPU, Performance Control, etc), we are changing the gate voltage of the transistors. This can be a difficult concept to grasp, so here's a super-simple analogy to help: Imagine a light switch instead of a transistor. You reach your finger out to flick it. The force your finger applies would be analogous to the gate voltage. However transistors also have a body voltage, which can be thought of as the resistance behind the switch. By applying a positive difference between the gate and body, (which usually, but not always, equates to reducing the body voltage) we can make the proverbial switch "looser" so it's easier to flip, but now that it's looser, it's starting to leak a small amount of current as a result. So why would we want to do this if it will be leaking more? Because now that the switch is looser, we'll hopefully need less gate voltage (aka finger pressure in the analogy) which would save more power than was lost with that leakage. Or, for someone overclocking instead of undervolting, the "loose" switch will be easier to flip, and you may achieve an overclock not possible by merely ramping up the gate voltage (brute force) in your voltage control app of choice. Basically like the old saying "two steps forward, one step back" - we get something good, but have to sacrifice a little power lost through leakage. But how about the opposite scenario? What if in the analogy you have a really strong finger? Then you're leaking power for no reason because you don't need a "loose" switch. So, we can take advantage of that fitness and tighten it up by applying a negative body bias (also called a Reverse Body Bias, or RBB). This will make the transistor harder to switch, but plug up the leak and therefore increase power efficiency.
Ok, so why does all this exist? Why not just have an enormous negative bias (RBB) from the factory and save all that power lost through leakage? Because not all chips are equal, and not all transistors on the same chip are even equal. Temperature, manufacturing techniques, a few atoms of contamination, etc can make the chip less "fit" and unable to switch as easily as others. So how do they help these weakling transistors from getting the entire chip sent to the factory garbage can? Well, on one hand the gate voltage can be increased, but that is a last resort since it would waste too much power. Before it comes to that, they get a crutch in the form of a positive body bias (also called a Forward Body Bias, or FBB), which hopefully you'll remember was the subject of the first scenario above. And remember what that does? It makes them easier to switch, but at the cost of slightly decreased power efficiency. This offers better power savings when compared to increasing the gate voltage.
Samsung knows all this, and bins their chips according the ASV level, which can be thought of as the "quality" of the chip. The higher the ASV number, the better the chip, and the less power it needs to do its job. At the factory they mix increased gate voltages with varying body voltages to end up with a table of stock body biases. Long story short, this is how they deal with less-than-perfect chips. It's a lottery for the buyer. But since their values aren't tailored to your chip - the hope is that maybe you can scrape by with a bit less power than Samsung thought a chip of that grade could. So what AndreiLux has done is implemented new scaling logic/control code that lets you adjust the body voltage, and thus the body bias. Thanks to him, we now have another tool to help us squeeze a little bit more power out of our chips.
Calculating your body bias is incredibly simple: bodybias = gatevoltage - bodyvoltage. If you know the voltage of a given frequency, you can calculate your body bias by taking the gate voltage (what it says for that frequency in your usual voltage adjustment app) and then subtracting the value of the slice that corresponds to the range the example frequency was in on the ABB tab of STweaks. This can get tricky, because people forget that "body bias" is a difference between two values. If you start off with a stock negative body bias, that is to say that your body voltage is higher than your gate voltage, increasing your body voltage will actually be increasing your bias and you'll be needlessly wasting more power. However if you start off with a positive stock body bias, adding to the body voltage will actually be decreasing your bias since it will be bringing you closer to the gate voltage.​
Mine...
Sent from m
Gonna give this one a try, hopefully it plays nice with Trickster Mod.
Thanks dev.
Will this work with international model? Looks very awesome!
Had it intalled for almost 10 minutes but I already noticed that there is almost NO LAG when waking the screen. Awesome!!!
jibust said:
Had it intalled for almost 10 minutes but I already noticed that there is NO LAG when waking the screen. Awesome!!!
Click to expand...
Click to collapse
Are you getting good deep sleep? The only time the Note 2 screen wakes quickly is if it is not deep sleeping, at least from my personal experience.
BigBake88 said:
Are you getting good deep sleep? The only time the Note 2 screen wakes quickly is if it is not deep sleeping, at least from my personal experience.
Click to expand...
Click to collapse
Like a baby,
What I have noticed is an increase in the battery drain. From the screen shot, you will notice it is not actually scaling, it is either in deep sleep or at 1600 when using pegasusq. I haven't touched most of the settings so I may need to tune it a little more.
Changed to zzmove to see how it performs.
jibust said:
Like a baby,
What I have noticed is an increase in the battery drain. From the screen shot, you will notice it is not actually scaling, it is either in deep sleep or at 1600 when using pegasusq. I haven't touched most of the settings so I may need to tune it a little more.
Changed to zzmove to see how it performs.
Click to expand...
Click to collapse
I don't know why this is happening at the moment, but I do see what's causing this. In PegasusQ, up_threshold is getting set to 0. By default it should be 82. Use SetCPU or something to change the up_threshold to 82 while the PegasusQ governor is active. Or save 82 to "/sys/devices/system/cpu/cpufreq/pegasusq/up_threshold" via your favorite file manager.
ffolkes said:
I don't know why this is happening at the moment, but I do see what's causing this. In PegasusQ, up_threshold is getting set to 0. By default it should be 82. Use SetCPU or something to change the up_threshold to 82 while the PegasusQ governor is active. Or save 82 to "/sys/devices/system/cpu/cpufreq/pegasusq/up_threshold" via your favorite file manager.
Click to expand...
Click to collapse
Done, I will report back in a while. Thanks :good:
that was a great read
looking to try your kernel soon
I ran this on pacman and carbon today, losing superuser / root on both occasions.
Good work, though!
Sent from my GT-N7105 using Tapatalk 4
SwimDrewid said:
I ran this on pacman and carbon today, losing superuser / root on both occasions.
Good work, though!
Sent from my GT-N7105 using Tapatalk 4
Click to expand...
Click to collapse
No issues with root on AOKP. I flashed the supersu zip after flashing the kernel
jibust said:
No issues with root on AOKP. I flashed the supersu zip after flashing the kernel
Click to expand...
Click to collapse
Ah. Mind sharing that zip?
Sent from my GT-N7105 using Tapatalk 4
---------- Post added at 09:52 PM ---------- Previous post was at 09:50 PM ----------
SwimDrewid said:
Ah. Mind sharing that zip?
Sent from my GT-N7105 using Tapatalk 4
Click to expand...
Click to collapse
Physician, heal thyself
http://forum.xda-developers.com/showthread.php?t=1538053
Will try and report back
Sent from my GT-N7105 using Tapatalk 4
SwimDrewid said:
Ah. Mind sharing that zip?
Sent from my GT-N7105 using Tapatalk 4
---------- Post added at 09:52 PM ---------- Previous post was at 09:50 PM ----------
Physician, heal thyself
http://forum.xda-developers.com/showthread.php?t=1538053
Will try and report back
Sent from my GT-N7105 using Tapatalk 4
Click to expand...
Click to collapse
LOL, beat me to it.
jibust said:
LOL, beat me to it.
Click to expand...
Click to collapse
Gave you a thanks anyway
Zip did the trick on carbon, thanks!
Sent from my GT-N7105 using Tapatalk 4
SwimDrewid said:
Gave you a thanks anyway
Zip did the trick on carbon, thanks!
Sent from my GT-N7105 using Tapatalk 4
Click to expand...
Click to collapse
No problem, I actually always flash it. I prefer SuperSU
Amazing read ...and an amazing kernel I'm sure..
I've just downloaded ..and will flash the build shortly..
Wow...I'm baffled by the overwhelming amount of tweaks and customizations this kernel contains...
It's a true marvel ...and one I'm thoroughly going to enjoy I'm sure...
Many thanks to you..g
Sent from my SAMSUNG-SGH-I317 using XDA Premium 4 mobile app
gregsarg said:
Amazing read ...and an amazing kernel I'm sure..
I've just downloaded ..and will flash the build shortly..
Wow...I'm baffled by the overwhelming amount of tweaks and customizations this kernel contains...
It's a true marvel ...and one I'm thoroughly going to enjoy I'm sure...
Many thanks to you..g
Sent from my SAMSUNG-SGH-I317 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
Check out the STweaks apps, it's a fuc**ng encyclopedia.
---------- Post added at 11:12 PM ---------- Previous post was at 11:11 PM ----------
ffolkes said:
I don't know why this is happening at the moment, but I do see what's causing this. In PegasusQ, up_threshold is getting set to 0. By default it should be 82. Use SetCPU or something to change the up_threshold to 82 while the PegasusQ governor is active. Or save 82 to "/sys/devices/system/cpu/cpufreq/pegasusq/up_threshold" via your favorite file manager.
Click to expand...
Click to collapse
Wanted to let you know that it seems the up_threshold for zzmove is 82 instead of the default 70. Could there be a mix up between the zzmove and pegasusq up_threshold values?
jibust said:
Check out the STweaks apps....
Click to expand...
Click to collapse
Uh....
It's gonna take me a week to figure out how to run this beast ....(headache starts now)...LOL
Sent from my SAMSUNG-SGH-I317 using XDA Premium 4 mobile app

[Kernel][AOSP][2.02 | November 2nd] Plasma kernel

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I. Thanks!
.
Disclaimer: I take no responsibility for any damage that might occur to your device. You proceed strictly at your own risk. This is a work in progress.​Thank you for your interest in Plasma kernel, I hope you enjoy it. I've poured hundreds upon hundreds of hours of work into putting together a kernel that best showcases our hardware. Plasma kernel would not be possible without super-smart people like AndreiLux, DerTeufel, temasek, googyanas, faux123, and the regular contributors to the official cm kernel repositories. Please donate to them to support their hard work!​.
II. Features
CPU frequency range: 100MHz to 2.16GHz
ZZMoove, PegasusQ, performance (with support for multiple cores), and LulzactiveQ CPU governors
Zen, noop, deadline, row, cfq, sio, vr schedulers
Experimental Wolfson AND Voodoo Sound support (choose one or the other on the Audio tab of STweaks, then REBOOT!)
CPU voltage control
Linux 3.0.101
AndreiLux: Screen color calibration with mdnie-control
GPU over/underclock and over/undervolt
Control the frequency and voltage of all 5 GPU steps
Support for GPU clocks from 54MHz to beyond 800MHz
Control GPU governor sampling rate
Built with 4.8 toolchain
Built with -O3 and other optimizations
Extra panel brightness (<299)
Faux123: Dynamic fsync control (v1.2)
AndreiLux: Charging control
Support for STweaks
Control screen refresh rate (can be reduced to save battery)
AndreiLux: Memory/internal voltage control interface
AndreiLux: Adaptive Body Bias (ABB) control
AndreiLux: Digital brightness control/reduction (better than ScreenFilter)
LED control (with some color mixing adjustments by me)
Touchwake support, including touchkeys (enable in Screen tab of STweaks)
Multi-touch kernel-based gesture engine
Proportional Rate Reduction for TCP
Joe's RCU
Temasek: Frandom module (enable on the Memory/Internal tab of STweaks and REBOOT!)
S-Pen settings on the S-PEN tab of STweaks
zCache
Support for 4x parallel "Turbo ZRAM" (settings are on the "I/O / RAM" tab of STweaks)
UKSM
Enhanced Touchwake/Slide2Wake functionality
Arc-swipes to turn your phone on with one hand (Screen tab of STweaks)
Long-tap-off to turn your device off with one hand (Screen tab of STweaks)
Power off gesture: tap the top of the screen and a touchkey at the same time to trigger suspend
Change your power manager (PM) CPU lock frequency
Press the home button 4 times to toggle the screen negative
Press the home buttom 3 times as fast as you can to toggle the screen into nightmode (red)
exFAT support
For more, take a look at the commits
.
III. What's NewDon't forget to check out what was new in 2.0b7 and 2.0b12!​
[ZRAM Total Disk Size]: By default ZRAM is setup as four (4x) swaps operating in parallel at equal priorities. Set this to the TOTAL amount of RAM you wish to dedicate to ZRAM, and STweaks will automatically divide it evenly by four.
[UKSM Enable]: Enable the UKSM daemon that will continuously scan memory for duplicate data.
[UKSM Daemon Sampling Rate]: How often the daemon checks for duplicate data.
[UKSM CPU Usage Limit]: How much system load (CPU usage) the daemon will use.
[Long-tap-off Always On]: Found in its own section under the Touchwake section. When enabled Longtapoff will always work, regardless of how you woke your device. Takes effect immediately.
[Many ZZMoove settings]: Many ZZMoove settings on the newly created "ZZMoove Scaling" and "ZZMoove Hotplug" tabs. Descriptions coming soon.
.
IV. Download / Donate
Support the development of Plasma kernel by DONATING if you find it useful!
AOSP 4.3.x only!
Plasma kernel v2.02 for T-Mobile Note 2 (t889)
Plasma Gesture Pack
Support the development of Plasma kernel by DONATING if you find it useful!
​.
V. Changelog
v2.02 (November 2nd, 2013)
Tracked audio/media skipping bug to disabled loggers (thanks pappschlumpf!) By default logging is now enabled. While you can still disable it, it will always be reset upon reboot.
Changes to write-back caching (thanks temasek)
Support for switching touchkey backlight driver from ROM/kernel (bottom of Screen tab in STweaks) (thanks Yank555-lu)
Some bug fixes for Slide2Wake
​.
VI. Archived Changelogs
2013-10-29 | v2.00
Linux 3.0.101 (thanks temasek)
Hopeful bugfixes for untouchable screen, and taps on top triggering suspend
Should you encounter a problem like that, cycling on and off (power button) should now reset any state variables
Fix FC issues. Works with more ROMs, including the latest AOSP nightlies
Allow pm_idx_freq to be set as high as 1600 MHz, theoretically could slightly speed up waking from deep sleep. Set on "Plasma Tuneables" tab of STweaks
Added several new tuneable ideas to zzmoove
Added "ZZMoove Scaling" and "ZZMoove Hotplug" tabs to STweaks. The descriptions are still a work in progress
Moved mDNIe controls to their own "Color" tab
Greatly enhanced the longpressoff feature's reliability and ease of use (by upgrading to scheduled_work)
Slide2Wake and arc swipes now trigger CPU and memory frequency locks to speed up waking
Slide2Wake and arc swipes no longer accidentally send input in the milliseconds after the screen comes on, but before you finished your gesture
Added option to Screen tab of STweaks to enable Longtapoff always, regardless of how the device woken
Expanded the trigger areas for slide2wake and arc swipes
ZRAM/swap is working and compatible with "Turbo ZRAM" (4x parallel ZRAM swaps for quad core devices) (thanks googyanas)
ZRAM settings in STweaks now allows you to set one total size of RAM that will be divided into 4x ZRAM swaps. Setting to 0 disables all swaps. Changes are applied instantly. No need for any other ZRAM/swap apps or init.d scripts.
UKSM (Ultra KSM (Kernel Samepage Merging)) enabled, with settings on the "I/O / RAM" tab of STweaks. Mostly just a novelty, but what it does is continuously checks RAM for duplicate pages to save space
zCache enabled and always running
Cleancache enabled
Frontswap enabled
Enabled LOWMEM_CHECK (thanks googyanas)
Enabled SPEEDUP_KEYRESUME as discussed in temasek's thread (Placebo effect? Maybe. Better ask Brian Molko. A cookie for you if you understand that reference) (thanks googyanas)
Added my own wake-speed ideas (2-second max-CPU-speed lock, and 2-second max-bus/RAM-speed lock on KEY_POWER press)
Permanently fixed (hopefully) the laggy, skippy, media bug
Toggle negative screen mode by taping the home button 4 times quickly (but NOT as fast as you can) (based on a commit by gokhanmoral)
Toggle nightmode (red) screen mode by pressing the home button 3 times VERY quickly (pretty much as fast as you can) This is purposely designed to be a dim red, as searing bright 255 red isn't particularly easy on your eyes in the dark. Fun fact: this (and the negative one described above) are functional even during boot...triple tap to see your bootscreen turn red
CPUFreq bug fixes/commits (thanks DerTeufel)
Permanent TRIM (thanks googyanas)
Added shell scripts to quickly and easily see statistics with as little typing as possible. Open a command prompt on your device, type "su" and press enter to ascend to root. Now you can type "szc" and press enter to see zCache statistics (szc = show zcache). Or type "ssw" to see swapfile/zRAM statistics (ssw = show swap). Note: Some statistics don't fully populate until a few minutes after boot
Experimental: Set ZZMoove governor for battery savings by obtaining a root shell as described above, then typing "zzb" and pressing enter (zzb = zzmove battery). Does not reapply after reboot.
Compiler optimizations
​
​.
VII. SourceSource for Plasma kernel can be found on my github.​
XDA:DevDB Information
Plasma kernel, a Kernel for the T-Mobile Samsung Galaxy Note II
Contributors
ffolkes
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: 2.02
Stable Release Date: 2013-11-02
Created 2013-10-29
Last Updated 2013-11-02
Reserved
FAQ:
Q: I have no earpiece volume!
Be sure to choose Voodoo Sound or Sound Controls on the Audio tab of STweaks, then reboot.​Q: I can stably run this kernel. How can I use the screen-off settings so I can save battery?
You will have to intentionally crash your system to find your lowest value, and should definitely make a nandroid first. Then be sure to turn off dynamic fsync on the bottom of the I/O tab of STweaks, as this being enabled could cause data loss from a crash. When you are done with that, the first thing will be to lower the PM Lock Frequency. Try 600MHz, press Apply, then put your device to sleep, give it a few seconds, and see if it wakes. Be sure it's going into deep sleep! If it wakes up instantly, it wasn't in deep sleep. After booting, things like mediascanner can take minutes to finish and release their partial wakelocks. If you are sure it went into deep sleep, repeat with a lower frequency until you cannot wake. Pull the battery and reboot. Once it boots up, go into STweaks and set PM Lock Frequency to the last stable frequency. You must do this before the screen goes off, or else it'll crash again when it enters deep sleep!
Now, once you are sure of your stable PM frequency, move on to the next step. Set CPU Screen-Off Max Frequency to 200MHz. Use your device for a few minutes or hours or whatever. If you find music skips too much, or calls are slow to wake up the phone, set this to 300MHz, but now be prepared for a possible SOD if your device cannot handle scaling that low. If you experience one, leave this setting at 300MHz, and enable "Keep sleep max frequency fixed" and set CPU Screen-Off Fixed Max Frequency to 200MHz. If your phone was slow to wake at 200MHz before, try setting this to 300MHz.
Err, a bit of a vestigial tail here...don't forget to set Screen-Off Frequency For Responsiveness (it's higher up in the PegasusQ Scaling tab) to whatever your lowest screen-off frequency is. It isn't needed anymore and I should have taken it out probably. Like its waking counterpart, it is a threshold below which aggressive upscaling is used. Basically, it's the frequency the CPU will want to hover at, in this case, while the screen is off.​Q: Explain the PegasusQ screen-off settings.
CPU Screen-Off Max Frequency - This becomes the effective policy max as soon as you press the power button. Setting this too low may cause slow waking, or choppy music. Ideally this is just like normally setting the max policy; i.e. the governor will try to get frequencies as low as possible without going over this. This means if you get skips in your music at 200MHz, you can set this to 300MHz and the governor will be able to grab that extra power if it needs it. The problem is, some devices get finicky when they're bouncing around between sub-PM Lock frequencies and will crash. That's where the Fixed Sleep Frequency setting comes in. Read on.
Up Threshold While Screen-Off - This becomes the effective Up Threshold value as soon as you press the power button. Setting this higher will make the CPU more reluctant to scale higher (go faster).
PM Lock Frequency - This typically hardcoded value normally overrides the governor to throttle the CPU to 800MHz every time the system itself is unsuspended. This means it happens thousands of times a day, and can significantly add up after a few hours. I found different devices could handle different frequencies, so I made this is adjustable and added an interface to lulzactiveq and zzmoove. 500MHz works very stably for me.
After Boot Delay - Gives your device a grace period after booting during which none of the screen-off policies will be enforced so your start up tasks can be completed quickly.
Enable Fixed Sleep Frequency - This is where things get sorta confusing. If your device can't scale while sleeping, most likely it will be able to tolerate just sticking to one low frequency. But this has a downside...you disable the scaling logic of the governor, so you either have to suffer degraded screen-off performance (skips in your music) with a battery-saving frequency, or set this higher, but then that means you'll be pegging this higher frequency now even though you just needed it occasionally. But yay, I had an idea to put a one-way toggle in there. Read on.
CPU Screen-Off Fixed Max Sleep Frequency - So here's the thing. All devices can handle low scaling just fine, as long the screen is merely off (e.g. listening to music, etc). Once the system falls into deep sleep, that's when stability issues arise. So I had an idea... When you play music, you usually interact with the screen then turn it off, but it never actually goes into deep sleep until it's done playing. So I made it so the above Screen-Off Max Frequency will be used, including scaling, until deep sleep is called for. Then from that point on it will become fixed to this setting's frequency until you turn the screen back on, then the toggle gets reset.
v1.60 Release Notes
Control your panel refresh frequency - This is inspired by and based on AndreiLux's commits last year. Samsung includes a driver called "lcdfreq" that allows for scaling of panel refresh frequency to save power. It toggles between two states: limited and unlimited. Not all devices actively use this feature in stock builds, but it is possible to enable nonetheless. When in limited mode the panel's refresh rate is reduced from 60Hz (58 actual) to 40Hz (41 actual). I went a step further and made it so the limited mode's panel divider can be set manually (25, 27, 29, 31, 34, 37, 41, 45, 50, 60 fps). I also made it so the limited mode can now be forced, effectively allowing you to adjust the default refresh rate of your panel to save battery. Not everyone needs/wants 60fps. How much battery will this save? I don't know yet, but if you want to find out, the option is on the Screen tab of STweaks. Be sure to check the force checkbox. Very low rates will introduce flickering to some eyes (remember, this is a refresh rate being adjusted, not just fps).
Lcdfreq in PegasusQ - Note: This is irrelevant if you have decided to lock your refresh rate as described above. AndreiLux implemented this last year, and I modified it a bit and added more tunables. When enabled, PegasusQ will try to control the state of lcdfreq based on CPU load. Some of you may know AndreiLux abandoned this due to problems with flickering, but I have taken a different approach. His goal was to provide 60Hz as quickly as possible, which ended up frequently alternating between the two states. I'm aiming for the opposite - to stick with limited as long as possible and only boost it during heavy use (like a game). When bounced around between limited and unlimited too rapidly, there can be visible flickering and tearing, and different frequencies seem to slightly affect the color balance, which makes it even more noticeable. Quite possibly why Samsung doesn't use this on Note 2's.
lcdfreq_kick_in_down_delay - When PegasusQ decides it wants to call for the panel to be kicked down (into limited mode) it will have to ask this many times before actually doing it.
lcdfreq_kick_in_up_delay - When PegasusQ decides it wants to call for the panel to be boosted (into unlimited mode) it will have to ask this many times before actually doing it.
lcdfreq_kick_in_freq - Before PegasusQ will consider limiting the refresh rate, the CPU must be running at this frequency or below.
Boost lcdfreq on touch - Immediately boosts to the unlimited state, regardless of what PegasusQ calls for. A commit by AndreiLux. At some point I may add to this to make it time based (i.e. hold the boost for x amount of seconds after a touch).
Control the touchy backlight - On the Screen tab of STweaks. For ROMs that don't provide this support natively, otherwise it may be unreliable.
v1.65 Release Notes
Control your GPU - Over/underclock your GPU! Over/undervolt your GPU, too! Settings explained on the GPU tab of STweaks. Support for frequency, voltage, up/down threshold and GPU governor sampling rate.
Lock/Limit your GPU - You can lock your GPU to a specific step, or limit it to a definable maximum number of steps (e.g. 2 or 3)
Control S-Pen booster - Control/disable the S-Pen CPU booster. Stock is 800MHz, but I find that overkill.
S-Pen X,Y Axis Offset - For some reason Wacom sets this to like 30,30 depending on handedness. I have no idea why, I prefer 0,0. For most users I recommend checking the box on the S-Pen tab in STweaks and leaving the sliders at 0,0.
S-Pen Box Filter - Depending upon what you use your S-Pen for, this makes it much easier to draw shapes, but harder to do finer things, like writing. Think of it as "snap to grid".
Gestures! - Be sure to scroll down to the FAQ section to read how to use them.
Q: How do gestures work?
Flash the gesture pack and reboot. This places the action and handler scripts in /etc/init.d to be run on boot. The available gestures are listed on the Gestures tab of STweaks. You may customize the scripts, but be warned that flashing the zip again will overwrite them.
Some gestures will require you to hold down a touchkey while performing them. Be sure to have a Touchkey Modifier Delay set in STweaks (Screen tab). 100-200ms works well. Now any time you touch and hold a touchkey and then touch the screen within the delay you just set, you will activate gesture-only mode, during which the touchscreen will no longer send touch events to the operating system, only the gesture engine. This means you won't get any bleed through of gesture draws into the foreground app. It's also a safety of sorts, to prevent critical gestures from being accidentally triggered. The downside is, you can't have your cake and eat it...well, not without some delay at least. If the touchkey modifier was simply piggybacked onto the touchkey driver that would be nice, but it would also mean every time you used it, it would also report the touchkey (Menu/Back) event. Or, if you blocked it always, well then obviously your touchkeys wouldn't work anymore. So a compromise is using a very short delay, and after that delay is up, the touchkey driver checks to see if the screen has been touched and the touchkey is still down. If it has been touched, then gesture-only mode is set in the touchscreen driver until all fingers are up. If the screen has NOT been touched after the delay, then the touchkey driver assumes it's just a normal touchkey press and reports it like normal. This may seem like an insanely small delay, but it's meant for you to touch the touchkey and start drawing with another finger *simultaneously*.
tl;dr: Flash the gesture pack, go to the Screen tab and set the Touchkey Modifier Delay to 150ms or so, then apply it. Now test it. First swipe from near the bottom-left corner, up towards the middle-right side. Nothing should happen. Now repeat, this time putting a finger down on the touchkey and holding, while *at the same time* starting to drawing this simple gesture. Aim to have both fingertips touch down at the same time. If it goes well, the virtual power key will be pressed and it will go into suspend. If you have trouble, increase the delay until you get more practice. Eventually you'll be able to do this gesture one-handed by touching the touchkey with the side of your thumb, and sliding/flicking your index or middle finger outward in an arc.​.
Useful Apps (no affiliation):
BetterBatteryStats XDA / Play
Awesome tool that lets you see both kernel and partial wakelocks, as well as the average percent battery drain.​CPU Spy XDA / Play
Provides a GUI to CPU time-in-state data.​Micro CPU Monitor Play
One of my favorite apps ever, this puts a very small 1px bar across the top of the screen for each core. It can be set to come from left or right, the background can be set transparent, and the bar thickness and color are adjustable. Very useful for quickly (and discretely) noticing abnormally high CPU usage.​top Play
Provides a GUI to the linux command 'top'. Provides a very reliable way to see what processes are using the most CPU time.​System Monitor Play
This app makes monitoring CPU history easy, and makes it especially easy to see the effects of hotplugging tweaks because of the way it clearly displays the state of each core.​.
Notes:
How to use the mdnie-control interface:
AndreiLux and Slimer777 have gone to great lengths to create an extremely accurate internal color profile using a spectrophotometer. The color accuracy is terrific. Most computers and tech use a very unnaturally cool color temperature (blue tint to white), so many people are taken by surprise when they see how yellow reality actually is. You need some time to get used to the new colors, but if you are still not pleased with the result, AndreiLux has setup MANY options for you to tweak in STweaks. Personally, I recommend increasing the chroma saturation weight.
Settings can easily be configured in the STweak app now. Download it from the Play Store.​
A bit about body bias:
To summarize this feature: When we traditionally change voltages (SetCPU, Performance Control, etc), we are changing the gate voltage of the transistors. This can be a difficult concept to grasp, so here's a super-simple analogy to help: Imagine a light switch instead of a transistor. You reach your finger out to flick it. The force your finger applies would be analogous to the gate voltage. However transistors also have a body voltage, which can be thought of as the resistance behind the switch. By applying a positive difference between the gate and body, (which usually, but not always, equates to reducing the body voltage) we can make the proverbial switch "looser" so it's easier to flip, but now that it's looser, it's starting to leak a small amount of current as a result. So why would we want to do this if it will be leaking more? Because now that the switch is looser, we'll hopefully need less gate voltage (aka finger pressure in the analogy) which would save more power than was lost with that leakage. Or, for someone overclocking instead of undervolting, the "loose" switch will be easier to flip, and you may achieve an overclock not possible by merely ramping up the gate voltage (brute force) in your voltage control app of choice. Basically like the old saying "two steps forward, one step back" - we get something good, but have to sacrifice a little power lost through leakage. But how about the opposite scenario? What if in the analogy you have a really strong finger? Then you're leaking power for no reason because you don't need a "loose" switch. So, we can take advantage of that fitness and tighten it up by applying a negative body bias (also called a Reverse Body Bias, or RBB). This will make the transistor harder to switch, but plug up the leak and therefore increase power efficiency.
Ok, so why does all this exist? Why not just have an enormous negative bias (RBB) from the factory and save all that power lost through leakage? Because not all chips are equal, and not all transistors on the same chip are even equal. Temperature, manufacturing techniques, a few atoms of contamination, etc can make the chip less "fit" and unable to switch as easily as others. So how do they help these weakling transistors from getting the entire chip sent to the factory garbage can? Well, on one hand the gate voltage can be increased, but that is a last resort since it would waste too much power. Before it comes to that, they get a crutch in the form of a positive body bias (also called a Forward Body Bias, or FBB), which hopefully you'll remember was the subject of the first scenario above. And remember what that does? It makes them easier to switch, but at the cost of slightly decreased power efficiency. This offers better power savings when compared to increasing the gate voltage.
Samsung knows all this, and bins their chips according the ASV level, which can be thought of as the "quality" of the chip. The higher the ASV number, the better the chip, and the less power it needs to do its job. At the factory they mix increased gate voltages with varying body voltages to end up with a table of stock body biases. Long story short, this is how they deal with less-than-perfect chips. It's a lottery for the buyer. But since their values aren't tailored to your chip - the hope is that maybe you can scrape by with a bit less power than Samsung thought a chip of that grade could. So what AndreiLux has done is implemented new scaling logic/control code that lets you adjust the body voltage, and thus the body bias. Thanks to him, we now have another tool to help us squeeze a little bit more power out of our chips.
Calculating your body bias is incredibly simple: bodybias = gatevoltage - bodyvoltage. If you know the voltage of a given frequency, you can calculate your body bias by taking the gate voltage (what it says for that frequency in your usual voltage adjustment app) and then subtracting the value of the slice that corresponds to the range the example frequency was in on the ABB tab of STweaks. This can get tricky, because people forget that "body bias" is a difference between two values. If you start off with a stock negative body bias, that is to say that your body voltage is higher than your gate voltage, increasing your body voltage will actually be increasing your bias and you'll be needlessly wasting more power. However if you start off with a positive stock body bias, adding to the body voltage will actually be decreasing your bias since it will be bringing you closer to the gate voltage.​
Great to see a new kernel for aosp, Thanks. So far everything is running pretty good, love all the options in stweaks!
Very nice a lot greatness in the kernel. Would you consider making one for touch wiz?
Sent from my SGH-T889 using XDA Premium 4 mobile app
This kernel looks very nice, thanks.
Does this kernel allow for using USB Dock Audio? (or in other words, is there USB Audio Support without having to use the USB Audio Recorder Pro app?)
Thanks!
Awesome. Testing this out now!! Thanks for taking the time to create another Kernel for the community.
pappy97 said:
This kernel looks very nice, thanks.
Does this kernel allow for using USB Dock Audio? (or in other words, is there USB Audio Support without having to use the USB Audio Recorder Pro app?)
Thanks!
Click to expand...
Click to collapse
I believe so. It's enabled in the config, but I don't have a dock to test it on.
Testing it on the 18th PAC nightly, and is working great and flawless so far. Using Zzmove and Zen great combo. Thanks for your work! :good:
Also using on pac and it works excellent. Thanks so much OP
Sent from my SGH-T889 using Tapatalk
Can't download for some reason from my phone.
inkd86 said:
Can't download for some reason from my phone.
Click to expand...
Click to collapse
Downloaded from tapatalk just fine but no audio. I selected voodoo sound but can't download app to control. Play says voodoo app is incompatible and having trouble with apk
Sent from my GT-N7105 using Tapatalk
TeamHackura said:
Downloaded from tapatalk just fine but no audio. I selected voodoo sound but can't download app to control. Play says voodoo app is incompatible and having trouble with apk
Sent from my GT-N7105 using Tapatalk
Click to expand...
Click to collapse
You gotta sideload it
regime2008 said:
You gotta sideload it
Click to expand...
Click to collapse
Yep, just having trouble finding apk
Sent from my GT-N7105 using Tapatalk
TeamHackura said:
Yep, just having trouble finding apk
Sent from my GT-N7105 using Tapatalk
Click to expand...
Click to collapse
Here it is.
ffolkes said:
Here it is.
Click to expand...
Click to collapse
Worked! I also had to download an apk installer. I'm on cm nightly. Wouldn't install apk without. Very weird
is this Kernel for 4.2.x CM or only 4.3?
Your answer is on the first page I BELIEVE
Sent from my SGH-T889 using xda app-developers app
Somehow I never noticed this kernel before. Going to give it a run now.
thanks
Sorry it has gone so long without an update. Here is 2.04b2 for 4.3.x (Jellybean). For a change log, check the last pages of the Sprint thread.
Not sure if it is the kernel or not, but I'm on liquid smooth, and my phone will freeze and I have to do a battery pull. Has happened twice. Even after the update.
Sent from my SGH-T889 using Tapatalk

Themes / Apps / Mods aodNotify - Notification Light / LED for Pixel 6 Pro!

This app was initially developed for Samsung Galaxy devices with Always on Display. As Pixel devices also have an Always on Display i decided to port the Samsung version to Pixel devices.
You need a notification light / LED for your Pixel 6!
With aodNotify you can easily add a notification light / LED to your Pixel 6!
You can select different notification light styles and show the notification light around the camera cutout, screen edges or even simulate an notification LED dot in the statusbar of your Pixel 6 or Pixel 5!
As the notification light is integrated in Google's Always On Display it has minimal battery consumption and doesn't drain your battery like other apps which keep your phone awake!
MAIN FEATURES
• Notification light / LED for Pixel 6, Pixel 5 or Pixel 4a!
• Low energy notification preview
• Activate Always On Display (AOD) only on notifications
• Charging / Low battery light / LED
MORE FEATURES
• Notification light styles (around camera, screen, LED dot)
• Custom app / contact colors
• ECO animations to save battery
• Interval mode (on/off) to save battery
• Night times to save battery
BATTERY USAGE PER HOUR ~:
• LED - 3.0%
• LED & INTERVAL - 2.0%
• LED & ECO ANIMATION - 1.8%
• LED & ECO ANIMATION & INTERVAL - 1.5%
• NOTIFICATION PREVIEW - 1.0%
• ALWAYS ON DISPLAY - 1.0%
Without notification light the app consumes almost 0% battery!
The Pixel 6's Tensor chip has a context hub, which is a ultra low power context engine especially made for the AOD and other background tasks, wich should reduce power consumption a lot. The values above are approximate values from old Pixel devices.
DOWNLOAD:
DEVICES
• Pixel 6 / 6 Pro
• Pixel 5
• Pixel 4a
• Pixel ...
NOTES
• The app is still in beta stage, errors may occur!!
• Google may block this app with future updates!
• Please check if the app is compatible before updating phone software!
• Altough we never experienced any screen burn in issues on our test devices, we recommend to not keep the notification light / LED active for a long time! Use at you own responsibility!
"Google Pixel" is a protected trademark of "Google LLC"
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
The position of the light around the camera cutout may not be accurate in this beta.
Position can be adjusted in Notification light > Size & position > fine tuning section in the app.
Thank you! Bought. Will definitely be testing and using this!
Update: The Enable AOD in the initial setup takes me to Display settings but I had trouble finding where to re-enable AOD and set to always on. It was in the Display/Lock Screen sub-menu and I had to enable "Always show time and info".
It's also frustrating while writing this that aodNotify disappears from Recently when I'm trying to switch back and forth between the XDA App and it before I've finished completely setting up aodNotify. Actually still disappears from Recents even once it's setup too.
(All the following are fixed)
The attached screenshot shows the appropriate centered offsets for the camera ring on the Pixel 6 Pro. The Zoom, Zoom Ring, Galaxy Spin, and Florescent Tube effects don't appear to respect those settings.
General (Power Saving) / Custom Nighttime repeatedly wants to install or update the Manager app and I can't enable it.
I wouldn't mind the DnD option except if only want it to follow specific scheduled DnD, not DnD that I manually enable.
I prefer to be able to set custom battery low and full percentages, such as 25 and 75, respectively.
Does the app use Google's ability to back up app data to the cloud? Otherwise will there be an option to backup and restore manually?
Thanks, I think that's all regarding testing for now.
No longer applies, for the original testing version:
Click to expand...
Click to collapse
Deleted
roirraW edor ehT said:
Thank you! Bought. Will definitely be testing and using this!
....
Click to expand...
Click to collapse
Thanks for the feedback. Theres an update on the way fixing position and some other issues.
You can set position offset to 0 on next release then.
The app is not in recents, because its getting killed then if you clear apps. Users complained about this.
Thanks for the initial setup hint. Optimised descriptions now.
Trying to optimize as soon as i get my Pixel.
You are awesome mate! Been using your app since S10 days and I'm so glad you're doing this for the pixel 6. Your app is perfect for samsung and I hope it will be the same for pixels.
Jawomo said:
DEVICES
• Pixel 6 / 6 Pro
• Pixel 5
• Pixel 4a
• Pixel ...
NOTES
• The app is still in beta stage, errors may occur!!
• Google may block this app with future updates!
• Please check if the app is compatible before updating phone software!
• Altough we never experienced any screen burn in issues on our test devices, we recommend to not keep the notification light / LED active for a long time! Use at you own responsibility!
Click to expand...
Click to collapse
Thanks will try this when my device arrives
question, have you not considered have X-Y sliders to adjust the position of the notification circle/led and its scaling
This means you should theoretically have 1 app that supports all your current devices and futures devices other than minor compatibility fixes
squee666 said:
Thanks will try this when my device arrives
question, have you not considered have X-Y sliders to adjust the position of the notification circle/led and its scaling
This means you should theoretically have 1 app that supports all your current devices and futures devices other than minor compatibility fixes
Click to expand...
Click to collapse
There are position sliders in the app for sure. But theres much more going on in behind.
I highly optimize the app for specific manufacturers. For this there are a Samsung, Google, OnePlus and a Global version for now.
I couldnt manage to merge them all into one unfortunately, bacause they all have different always on display implementations.
Jawomo said:
There are position sliders in the app for sure. But theres much more going on in behind.
I highly optimize the app for specific manufacturers. For this there are a Samsung, Google, OnePlus and a Global version for now.
I couldnt manage to merge them all into one unfortunately, bacause they all have different always on display implementations.
Click to expand...
Click to collapse
ahh yeah makes perfect sense i've been lucky to have an led in current phone (note 9)
hopefully in future it will be more standardized in oems code implementation
Link to source code?
This is looking pretty good! Any plan to implement multiple colors for the notification light?
ipowyourface said:
This is looking pretty good! Any plan to implement multiple colors for the notification light?
Click to expand...
Click to collapse
It's awesome. It includes the kitchen sink, too! Check the Colors menu. I prefer the "Auto Colors" option for apps, I changed the Battery notification colors, and I might set specific colors for special contacts like my wife. It would be extra nice to be able to have the camera ring notification for my wife be extra noticeable.
Click to expand...
Click to collapse
I cant wait to get my pixel now
Just installed, bought pro. Very nice app, nicely customisable too!
• LED - 3.0%
Click to expand...
Click to collapse
Does that mean that when I have an unread WhatsApp message that creates a green ring around the camera cutout it costs me about 24% battery during 8 hours of sleep?
mko000 said:
Does that mean that when I have an unread WhatsApp message that creates a green ring around the camera cutout it costs me about 24% battery during 8 hours of sleep?
Click to expand...
Click to collapse
You can define how frequently and for how long the app generates the notifications, and even define sporadic notifications off x pattern for y amount of time if that's what you want.
nevermind I saw the post.
I don't think this app is for me. I did like the notification light on my nexus 4 but I have gotten used to not having one.
mko000 said:
Does that mean that when I have an unread WhatsApp message that creates a green ring around the camera cutout it costs me about 24% battery during 8 hours of sleep?
Click to expand...
Click to collapse
Don't you guys use flip to shh when sleeping? I just turn my phone around and it's quiet and the display is off 100%.
roirraW edor ehT said:
You can define how frequently and for how long the app generates the notifications, and even define sporadic notifications off x pattern for y amount of time if that's what you want.
Click to expand...
Click to collapse
Let's say that a flashing light only requires 2/3 of that, it's still a lot.
Morgrain said:
Don't you guys use flip to shh when sleeping? I just turn my phone around and it's quiet and the display is off 100%.
Click to expand...
Click to collapse
Good idea, but that would mean I would probably need two hands to snooze the alarm? I'll try it out.
mko000 said:
Let's say that a flashing light only requires 2/3 of that, it's still a lot.
Click to expand...
Click to collapse
I've always liked this app made for the other devices I've used. I doubt if it'll use even 2/3 of what you mentioned. Personally, I set mine to only notify for up to 5 minutes. Anything beyond 5 minutes, I know to just turn on my screen and see if I've had any new activity because I was most likely going to the bathroom or purposefully taking a nap away from my phone.
You can adjust as you see fit.

Categories

Resources