Nexus 4 undervolting - Nexus 4 Q&A, Help & Troubleshooting

I've a 16GB Nexus 4 with Lineage OS 14.1.
I've read a lot of stuff about undervolting and to proceed I need a custom kernel with voltage control enabled.
I can't find any reliable kernel, Nexus 4 is pretty old, there aren't many kernels compatible with android 7.1 out there and given that I only want to undervolt, I don't like the idea of using a custom kernel with unneeded (for me) customisations other than voltage control.
1) Can I just change some parameters in my Lineage OS kernel in order to allow undervolt?
2) Which are these parameters?
3) Should I apply this customisations after every update?
4) Is there any way to choose which kernel pick up at boot? Like with GRUB in many Linux distro.

Get kernel auditor mod on XDA developers install it make sure you have root on in lineage os and make sure BusyBox is installed and open app and install BusyBox to system
Then open ka mod and use CPU voltage control I use a global off set of -50 mv works well for me never set voltage below 700mv
Lineage os has a problem with bsod so be careful
When changing voltages click apply on boot and change by small increments every reboot ke3p trying till you get instability thrn go back up to last stable undervolting setting

Her is a screenshot

what is this

Undervolting is when you provide your hardware less power from the battery it is potentially dangerous depending on how much you under volt and can cause bootloops and or hardware damage If done incorrectly
It mainly slightly increases battery life
And decreases heat some also

It cannot cause damage, maybe data loss though.

Undervolting can be useful. But not so much for our phone. you can kinda go around -100mv on every level without issues, but all it does is reduce some heat when gaming or watching streamed videos. However, in terms of battery gains, it is minimal. Not to mention that undervolting can be unpredictable, like you find it to be stable 99% of the time, then some badly coded app at some specific frequency crashes your phone.
My recommendation: lower everything globally by 50mv, and leave at that.

Related

SetCPU - I cant see how it has any effect on battery life!

So, I have given this a lot of thought and I cant see how SetCPU can have any positive effect on battery life. It adjusts the frequency of the processor based on user settings. The Android kernel does this automatically so in a sense, you're just adjusting how this will behave. Thus I cant see how limiting the maximum frequency will save battery life either cuz the system will just need more time to complete a given task..
Am I missing something here?
Indeed, never seem any improvement, juice defender does a better job at this but is often the source of issue, and is cpu module doesn't need to be enabled (does the same as set cpu)
I think a few early application where based on valid concept for x86 platform but android is clearly different, I only use watchdog now to monitor the system and not much battery usage diference than when I was using other app like set cpu etc...
Untouchab1e said:
So, I have given this a lot of thought and I cant see how SetCPU can have any positive effect on battery life. It adjusts the frequency of the processor based on user settings. The Android kernel does this automatically so in a sense, you're just adjusting how this will behave. Thus I cant see how limiting the maximum frequency will save battery life either cuz the system will just need more time to complete a given task..
Am I missing something here?
Click to expand...
Click to collapse
But placebo are tasty! Like task killers and replugging your phone multiple times and powering off while charging.

Undervolt Setcpu settings

Hey guys. i'm using Solarflare rom and it uses snowleopard kernel. What's the right settings to undervolt it? I want to extend my battery life more. I tried to change the values in the undervolt settings but the phone always hangs.
actually i want to know those settings too, my battery seems to be running out so quickly.
Actually SetCPU UV settings are different from phone to phone, you have to find your own good settings. Just start running a day with -25mV on the different speeds and see if it's stable and if so lower it another -25mV the next day etc...
And if you are running out of battery too quickly try to set a screen off profile 200-500MHz with a conservative governor. Also try to recalibrate your battery if you have not done that, that may work wonders on your phones. What kind of battery times are you getting ? Screentime ?
Like Reidar said it's different for every device. Right now I'm using Ninphetamine v2.05 and I'm UC @ 800mHz. With UV I have it at -125mV for 800mHz, 500mHz, and 200mHz with a conservative screen off profile. Been running this for a while now and it has been stable.
A quick tip, if you want to see if a new voltage is stable quickly is to set the voltage and run a stress test in setCPU. And always remember to uncheck the Set on Boot box when testing voltages or even CPU speeds.
Sent from my Galaxy S II using MIUI
With my GS2 i use screen off profile on demand 200Mhz with undervolt of 800mV and work very nice, only thing is a 0,5 sec lag when i unlock my phone
http://forum.xda-developers.com/showthread.php?t=1158102&highlight=SetCPU

Deep sleep question.

Just one simple question. When phone is in deep sleep, the cpu's running speed is the min frequency I choose from the cpu settings or a default lower one?
I use smart ass 2 with min at 768 and max at 1516 . So in deep sleep my phone is running at 768?
Thanks in advance...
Sent from my Huawei u8800 using XDA Premium App
spirosbond said:
Just one simple question. When phone is in deep sleep, the cpu's running speed is the min frequency I choose from the cpu settings or a default lower one?
I use smart ass 2 with min at 768 and max at 1516 . So in deep sleep my phone is running at 768?
Thanks in advance...
Sent from my Huawei u8800 using XDA Premium App
Click to expand...
Click to collapse
Not 100% sure but freq is minimum as it can be. And if cpu is not used no metter is freq 10000MHZ or 300Mhz it uses almost the same power. But when cpu is in use freq is important to power usage. Freq management is good not because it lowers freq but because it lets use lower freq on things that is not require hi freq. so it saves LITTLE LITTLE BIT of power. In idle mode (deep sleep) no meter what freq is.
But i still don't understand the need of governor. It's good only in cases where you overclock cpu but if don't - i don't see why it should be used.
PS Use app called CPU SPY it shows on what freq your cpu is being used and how much of the time.
Thanks! I use CPU SPY and it says tha about 60% or more is in deep sleep, 15%-25% is at 768 and the rest higher, which seems to be a good thing. But my phone still lasts for about 10-15 hours with normal use.
So i thought that maybe my min 768 frequency drain a lot of battery.
To clear things up a bit I use latest oxigen rom+latest franco kernel+zram+Juwe ram script...
Actually deep-sleep state is a special state supported by your phone MCU. In this state, a lot of functionality (therefore a lot of logical gates) are disabled thus MCU consumes very low power compared to normal functioning states. The thing about a CPU/MCU is when it is running even if there are no work to do no code to process, it has to run some command. While idle it must run NOOP (no-operand / no operation) command or do something equally unnecessary like counting a not required number. But in deep sleep mode, MCU actually stops working except for core functions to keep your phone going on.
Think about it this way, in a normal working state, CPUs most basic functionality is to read a command from memory, execute it and proceed to the next command to continue. Thus, in an operating system or a single purpose embedded software, CPU/MCU has to execute a "do nothing" command when you have no job to give it. But even a "do nothing" command need all of the MCU/CPU resources to be kept readily available. If you're sure that you have absolutely no job for your MCU/CPU to do, what you can do is to tell it to go and sleep fr a while until you wake it up again. In sleep, MCU/CPU can shut down a lot of its support systems like math processing, external memory access, graphics related functions (if any), even IO outputs. Depending on your CPU/MCU, this means until an interrupt occurs or a special sub system wakes it up, most of the sub-systems within your MCU/CPU thus may be millions of transistors will not be working so, your CPU/MCU will not consume as much power.
In layman's terms, deep-sleep state is a special state that shut down most of your MCU in your phone, thus while crippling it by removing its ability to function, making sure that it doesn't consumes much power. So OS (Android) (with the help of some additional hardware) controls when your MCU will sleep and under what circumstances it will wake. So it shuts down the engine -so to speak- when you're not using it for long terms and saving fuel rather than leaving your car on idle.
Hope this helps..
Thanks t_d_z. That is also how I imagined things...
But what is wrong with my battery which today, for example, went 33% down in 5 hours with 68% (from cpu spy) in deep sleep, without wi-fi on.
As i said above, I use latest oxigen rom+latest franco kernel+zram+Juwe ram script+smarass2 governor...
I also calibrated my battery by wiping battery stats, like i read in a post.
I have read in an other forum that if you use smartass (I use smartass2) or ondemand (I think...) governors, the governor is learning your habits and after a week you see the difference. Is that true?
Finally, can you guys who have "good" battery life, post your settings? (By settings I mean: rom, kernel, governor with cpu parameters, how you use the phone and everything else you think is important).
Thanks again...
I get about two days of battery life. I use Oxygen without any modifications. CPU is min. 245 (or something like that with 200, I dunno now) and max. is 800. Wifi is always on when I am home.
Try installing Oxygen-r1 and use it with a full battery, do not change anything and do not install too many apps. There will be apps that just won't stop running (like BBC or CNN app), I do not install those. Then you will see how long your battery lasts. If you just write some messages throughout the day and call somebody for 1-3 hours you should get about 2 days.
Then install your apps and test it again - maybe your apps are the problem.
spirosbond said:
Thanks t_d_z. That is also how I imagined things...
But what is wrong with my battery which today, for example, went 33% down in 5 hours with 68% (from cpu spy) in deep sleep, without wi-fi on.
As i said above, I use latest oxigen rom+latest franco kernel+zram+Juwe ram script+smarass2 governor...
I also calibrated my battery by wiping battery stats, like i read in a post.
I have read in an other forum that if you use smartass (I use smartass2) or ondemand (I think...) governors, the governor is learning your habits and after a week you see the difference. Is that true?
Finally, can you guys who have "good" battery life, post your settings? (By settings I mean: rom, kernel, governor with cpu parameters, how you use the phone and everything else you think is important).
Thanks again...
Click to expand...
Click to collapse
Look not at cpu spy but in battery usage to find out what drains your battery. And i can tell All roms are kinda lame in terms of battery, except CM7. In deep sleep it takes about 7% of battery in 10hours. I tried all roms but non of them was so efficient. But latest franco kernel (which i think even more improves cm7 rom) does not support cm7 right now, so i've attached older version if you would like to test cm7+franco kernel.
With normal usage of 50 sms and 30minutes of calls and sometimes wi-fi to download few apps and 20minutes on easy games my battery lats about 18hours. Whan only sms it lasts 30hours. depends how long lcd is on
Well, I'm not an expert on smart phone OSes but I'm an expert on embedded systems and micro controllers. If the designers are not really stupid (which I'm sure they are not) all the peripherals gets suspended when the main CPU goes to deep sleep mode. So, it is almost impossible for the phone to consume much power in deep sleep state. Most likely your phone consumes that power the rest of the time when it is not in sleep mode. I agree with Tommixoft, you should use battery usage info rather than CPU spy to find what drains your battery. Also, here is a quick check list about what consumes power :
1. Screen, especially when it is brightly lit
2. GSM network (Even when you're not talking to phone, GPRS/Edge/3G network communications drains almost as much power)
3. Wireless network
4. GPS
As an additional note, if your phone is not going to sleep mode regularly try to uninstall applications that have "prevent phone from sleeping" security setting.
Hope this helps, and of course there are a lot of more experienced people in the forum that knows about the details of the kernel so they might provide additional info.
Regards,
---------- Post added at 05:15 PM ---------- Previous post was at 05:10 PM ----------
Oh I forgot to tell the MOST important thing, 768MHz is way too high a value to set as minimal frequency. Try to set it 245. I use 122 MHz and it work pretty well. Don't forget, when you need the CPU power, the governor will provide it for you.

[Tips & Tricks & Discussion] Battery Calibration/Improving Battery life

Battery Calibration/Improving Battery life
Requirements:
Device needs to be rooted "Obviously".
Need to have Rom Tool Box Lite or Rom Tool Box Pro.
Some Basic Knowledge on how to use the app.
Note: Turn off Wi-Fi, Bluetooth, GPS, and Auto-sync if they are not in use. Hold down the notifications bar to disable them and activate the Power Saving mode which will make the device conserve energy under low battery state.
Battery Calibration Procedure.
1. Use your phone until the phone battery drains out completely and device gets switched off
2. Switch on the Device to make sure battery really is 0%.
3. Now plug in charger (Device turned off, Dont turn on the device)& leave it for charging until it reaches 100%
4. When the battery is full, switch on the phone, unplug the charger & check if the battery drops by 1 or 2% immediately.
5. If you notice battery drops immediately plug in charger once more (while the phone is on) & let it charge completely.
6. Once charging to 100% is done, don't disconnect the charger, open your root explorer, Provice RW permissions.
7.Search for 'DATA' Folder then 'SYSTEM' Folder.
8.In the 'System' folder you will find 'batterystats.bin' delete this file.
9.Exit Root Explorer and Use your phone normally unless it completly drains the battery(Dont connect your charger)
10.Power On your device and charge your device untill it reached 100%
11.Now you should enjoy the Samsung long Battery Life!!
Note: These methods are not permanent this worked for me so sharing with you.
Greenify your Apps:
NEW: Non-root working mode is now supported in 2.0+, Greenify is a convenient utility that will consequently hibernate battery hoarding applications that wait out of sight after you're done utilizing them.
Google Playstore & Thread
Titanium Backup:
Great battery life, wonderful execution and cool customization— we have seen one or more applications for these things. Presently we should see an alternate must have and a standout amongst the most evaluated applications for established Android gadgets. On the off chance that you got root benefits on your gadget, Titanium Backup is an exceptionally suggested application for you. You may discover various reinforcement applications at the Google Play Store, however none of them does the employment so splendidly and pleasantly.
Google playstore
The KERNEL can do some important things to help with battery saving as it is the controller of all things working in your phone:
1. Underclocking - if you feel your phone is fast enough, go ahead and lower the maximum frequency of your CPU, it will save power as the faster the CPU goes, the more energy it uses.
2. Undervolting - it's more complicated; every CPU requires certain amount of supplied voltage to run and the amount increases with the speed of CPU (clock frequency). For example 200Mhz requires only 0.9V while 1600Mhz requires 1.25V by default. The thing is, the higher the voltage, the higher the heat and of course power consumption. So the best way to lower it is to lower voltage - Samsung had to set voltage at the high enough level that every CPU they produce would work correctly but every CPU is different and some of them allow for lowering voltage and still remaining fully stable thus using less power to do the same work. Typically you can save about 0.05V but some CPU will allow as much as 0.1V to be saved. The same really goes for our GPU part, it can be undervolted as well. There are other parts in our phone that can be undervolted, like memory or controllers of various part but I have found (well in my phone) that saving were very small and caused instability so I would not recommend playing with them. We could think about undervolting our display as it is the biggest consumer of energy in our phone but actually we are doing it all the time The voltage supplied to the screen decides its brightness so if we were to lower the voltage it would just get dimmer
3. There are small savings to be had in various other parts controlled by the kernel:
- first and second thing are tied with SDcard - using it carries high power requirements - the less we use it, the better. Now we can't reduce to completely as all our data, apps and whole system is on it but we can reduce it's use by setting various caches.
a) read cache for internal and external SD combined with scheduler that minimizes reads and writes - so far the best scheduler created specifically for mobile SD use is FIOPS, so using that with a large buffer (maximum of 4096) is actually the best from energy standpoint.
b) system swap space - some kernels allow for creating a very specific kind of swap space, Android will use it once the free memory falls below certain point. Normally this swap space would be placed on SDcard but in this case it's inside a specific region of RAM. Why it is created like this? Because it can be easily compressed to keep more data, so basically we are using Android mechanisms and compressing memory so we can run more apps and keep them in physical RAM That means they are accessible faster than if we were to read them from SDcard and they use less power. Compressing and decompressing data as they go in and out of swap space is still far less energy consuming process then reading them from SDcard.
- third is governor configuration - governor is a system service that decides at what frequency should the CPU be working at every moment and how much cores should be enabled - this of course has great impact on energy consumption and on the smoothness of our experience with our phone. There are two schools of setting up governor and they base their decisions on two premises:
a) sharply increase CPU speed to get the work done fast and sharply decrease speed once it's not needed.
b) slowly increase speed and only so much to do what must be don then slowly decrease speed once you are done because you may have to do something again in a moment
There are pros and cons of both ways - way A means jumping to high frequency for a short time but high frequency uses comparatively large amount of energy, way B means slow increase but also means remaining in intermediate states for longer actually using energy for longer. I don't have any way to actually measure the resulting energy consumption but way A has a distinct advantage of creating much smoother experience so I use that myself.
- fourth is hotplug configuration - our CPU can dynamically enable and disable additional cores - the process is called hotplugging. Some governors are created specifically for controlling this process, the best, as far as I have tested, in this is Lulzactiveq. Hotplugging has to be wise as to the IF and WHEN to enable and disable additional cores, it measures how many "packets" of data are in queue to be processed and based on short history anticipates increase and decrease of workload.
All those interesting options are configured in scripts created for main contemporary kernels: Nadia, Devil and Agni and available HERE.
Latest OC / UV Scripts for Devil / Agni and Nadia Kernels for Note 2 are HERE
Guide to EXT4 to F2FS migration for Note 2 is HERE
CourtesyMat9V
Reserverd
very useful info , thanks :good:
rraaka said:
very useful info , thanks :good:
Click to expand...
Click to collapse
Your welcome :good:
Very briefly stated.
Thanks for sharing
I read all your posts, This will help me in my next configuration for Emotion V7, Nadia with mat's script.
Now on Emotion V6 ....AGNi Pure Stock v4.2.2
yogi909 said:
Very briefly stated.
Thanks for sharing
I read all your posts, This will help me in my next configuration for Emotion V7, Nadia with mat's script.
Now on Emotion V6 ....AGNi Pure Stock v4.2.2
Click to expand...
Click to collapse
Glad you liked it.
The android system, unlike other OS's actually displays the battery reading from a written data config, known as battery stats in general. While there is, in perception no disadvantage to this method of reporting the average remaining battery life, it isn't the actual battery life you are getting, but the percentage read from your daily usage and then sends the information to the OS for displaying the battery life. Due to this, you can have the percentage misreported, so it is suggested to factory reset every 6 months on stock unrooted and if rooted wipe battery stats using rom toolbox free/pro every 2 weeks to ensure correct reporting of your battery life.
Note - This won't increase battery life, but will ensure correct reporting of battery percentage, which gets messed up quite quickly on custom roms(for some unknow reason).
Undervolting can cause battery drain or better battery life depending on your configurations, if you have the CPU set to running high many of the times(like from a governor or background apps that need regular wakelocks for syncing content) it will slow down the ramping up of frequencies during deep sleep(no effect when screen on) and thus it will hold a longer wakelock for the purpose, so undervolt carefully depending on your usage - mild to mid(medium to high undervolt), mid to high(low to medium undervolt), heavy(low to no undervolt).
Different governors have different scaling methods for CPU, thus will give better or worse battery life depending on your config and usage. A governor ramping up faster and scaling down slower will give better battery life in scenario of heavy usage because the device can go to deep sleep state faster and perform background syncs in an instant; while someone with low to mid(or a bit high also) would like to have a governor that ramps up slower and scales down slowly too so as to complete the syncing of files and media scan(if running) and make the device perform smoother and go into deep-sleep and remain in the state for longer times(though going to DS mode will be a bit slower than a fast downscaling governor) and will occasionally wake up for background syncs, but those will be longer, but won't have much effect on battery life because of lower frequencies being used and syncing complete before high frequency threshold is reached.
Depending on what a user needs for his daily usage it is a good idea to keep the rest of apps(preferably facebook, musixmatch, instagram and shazam) hibernated using something like greenify(which now supports auto-hibernation without root in the beta versions). Auto sync should only be enabled for apps that need it, like E-Mail, Google+, Gmail etc.and rest should be set onto manual sync.
Samsung has a habit of throwing in a lot of features onto their device, so keeping motions enabled, which you don't even use, except for a show-off, is a bad idea because it will drain battery. Exploring the settings menu to disable unneeded things can pay-off as a positive fruit for patience.
Keeping the storage clean is also a good way. A corrupted or highly filled up storage requires more passes to be read and thus keeps the media scanner process running for longer, which puts a strain on the battery life. Also, android OS is based of the 32-bit kernel of linux(for now, 64-bit is planned to be introduced after some time), so the media scanner has to look for data linearly in the storage blocks on the internal and external SD, unlike 64-bit where the data is arranged into random blocks which are then brought together as one and the media scanner can be informed of the address of the blocks due to more threads allowed to be run for same process and also a higher memory bandwidth allocated to each process so as to make it perform faster. Due to this reason, the media scanned isn't informed of all the addresses on the time of data writing and thus has to scan linearly looking for bits of data. So keep the storage clean and minimal. Cloud is a good way if you have decent internet and won't need access to the files stored there in regular period of times.
If using a custom rom make sure that it either comes with the modem for your region or flash the modem of your region after that, so as to ensure better signal stability and thus better lasting battery life. A correct modem can give more dBm of signal at the same place as compared to a wrong one.
A good way to have stable battery life is to enable power saving mode in areas with low signal and when on low battery life only, keep it disabled otherwise or it will slow down the race-to-idle for Deep sleep mode and hence cause a bit more battery drain just before deep-sleep state.
Having location services enabled all the time isn't a good idea either, use it only when needed and keep GPS off otherwise. Samsung allows toggling of most things from notification panel so use it.
Smart stay, smart pause, smart scroll all use the front camera for detection, which requires high voltage for operation(separate from CPU, uncontrollable by software) so keep them off unless needed.
Make sure to keep your device clean. How does this affect battery life? Dust and other things when collected around pins, sockets and connectors prevent efficient passing of electricity and thus forces the device to demand more energy, around half of which is taken away by these. Even metallic dust can have adverse effect due to it making the transfer more rapid and forcing the battery to supply the power, which is most probably wasted.
Automatic brightness is good during daytime, but useless during late evening and night, because brightness level doesn't need to be changed and it keeps the light sensor activated. Disable it after 7 Pm(you can also set up tasker or some other automation tool for this).
An Odexed rom provides more battery life as compared to deodexed, but at the cost of available customization as no mods will work and will instead crash the file related to them. Choose your side wisely and patiently.
If you're going to use some app, check if it uses GCM for providing notifications(usually google search at your service), if not look for an alternative which does. GCM doesn't even use marginal amount of battery and is more efficient in providing the notifications at time and also doesn't need a persistent notification.
Check for wakelocks thoroughly and remove the misbehaving apps or hibernate them if you need them on your device. Also, be sure to update the apps for receiving any fixes and optimizations, which can sometimes also decrease the required wakelock frequency for an app and thus preserve battery life.
Don't keep too much of auto updating widgets on homescreen, these only serve to drain the battery further by auto syncing.
if rooted, use Xposed and boot-manager to disable unneeded apps at boot time and thus preserve battery and time required for full boot-up.
If on a custom kernel use DAC direct(if available) for sounds. This bypasses the output mixer and thus preserves a little bit of battery required to produce and refine the sounds, instead utilize 128x oversampling and FLL tuning for an even better quality.
Don't reboot on a regular basis unless needed, this will eat up battery life quicker.
Don't use any task killer( a long debate on uselessness of those can be found on many sites, with a simple google search), the Android system's LMK is itself more than enough.
Be sure to research carefully on what you really need and what you don't and then use it. Don't go on downloading useless things which you'll delete later on because it creates a small entry in /data/data which gets scanned by media scanner due to being present in its path and thus will make the process longer and more battery hungry.
Some custom kernels allow for controlling deep sleep type. Usually these types are already defined in the kernel tweaking app itself. A person with heavy usage should use the IDLE deep sleep more so the device is able to wake up quickly and doesn't drain much battery in case of many wakelocks. Similarly a light user will benefit with AFTR+LPA due to CPU deep sleep, but this isn't advised for medium to heavy usage(use IDLE+LPA instead) because the wakelocks require a high power to even wake up the device, which will drain more battery if you use your mobile more, because many apps will try to acquire a partial/complete wakelock.
I know this is quite long, but read through carefully and you'll surely get better battery life.
Source : Experience and Google groups
Good knowledge
Thanx
cartmanez said:
Good knowledge
Thanx
Click to expand...
Click to collapse
People are still spreading the batterystats.bin myth? *facepalm*
This has been totally and utterly disproven many, many times, including by core Android developer
So delete away. It doesn't calibrate or improve your battery life though.
I cannot study myself all technically like you what you mentioned in "[Experience][Share]My Usage and Testing of Custom kernels for Touchwiz Kitkat".
But above is well informative and now i get why i was getting worse battery life & longer wakelock by OC and UV with selective governer.
By testing different setting in AgniPureStock 4.2.2 today i reach 25 hr + battery life with my moderate usage.
I am sure above valued information, i will get most out of my battery.
Thank you very much KNIGHT97 for sharing.
aukhan, Hi mate, do i need to install greenify too?
botski said:
aukhan, Hi mate, do i need to install greenify too?
Click to expand...
Click to collapse
Yes
Sent from my GT-N7100 using Tapatalk
aukhan said:
Yes
Sent from my GT-N7100 using Tapatalk
Click to expand...
Click to collapse
if i use greenify i need to install xposed framework too?
botski said:
if i use greenify i need to install xposed framework too?
Click to expand...
Click to collapse
Xposed is optional. It is only for the experimental features. However, the developer has got 1 or 2 of those working without Xposed in the latest beta(you'll need to join the greenify G+ community for getting the beta, though)
Sent from my RPG with auto targeting
非常有用的信息,谢谢 :好:
thanks for the info man.....its very helpful
aukhan said:
The KERNEL can do some important things to help with battery saving as it is the controller of all things working in your phone:
1. Underclocking - if you feel your phone is fast enough, go ahead and lower the maximum frequency of your CPU, it will save power as the faster the CPU goes, the more energy it uses.
2. Undervolting - it's more complicated; every CPU requires certain amount of supplied voltage to run and the amount increases with the speed of CPU (clock frequency). For example 200Mhz requires only 0.9V while 1600Mhz requires 1.25V by default. The thing is, the higher the voltage, the higher the heat and of course power consumption. So the best way to lower it is to lower voltage - Samsung had to set voltage at the high enough level that every CPU they produce would work correctly but every CPU is different and some of them allow for lowering voltage and still remaining fully stable thus using less power to do the same work. Typically you can save about 0.05V but some CPU will allow as much as 0.1V to be saved. The same really goes for our GPU part, it can be undervolted as well. There are other parts in our phone that can be undervolted, like memory or controllers of various part but I have found (well in my phone) that saving were very small and caused instability so I would not recommend playing with them. We could think about undervolting our display as it is the biggest consumer of energy in our phone but actually we are doing it all the time The voltage supplied to the screen decides its brightness so if we were to lower the voltage it would just get dimmer
3. There are small savings to be had in various other parts controlled by the kernel:
- first and second thing are tied with SDcard - using it carries high power requirements - the less we use it, the better. Now we can't reduce to completely as all our data, apps and whole system is on it but we can reduce it's use by setting various caches.
a) read cache for internal and external SD combined with scheduler that minimizes reads and writes - so far the best scheduler created specifically for mobile SD use is FIOPS, so using that with a large buffer (maximum of 4096) is actually the best from energy standpoint.
b) system swap space - some kernels allow for creating a very specific kind of swap space, Android will use it once the free memory falls below certain point. Normally this swap space would be placed on SDcard but in this case it's inside a specific region of RAM. Why it is created like this? Because it can be easily compressed to keep more data, so basically we are using Android mechanisms and compressing memory so we can run more apps and keep them in physical RAM That means they are accessible faster than if we were to read them from SDcard and they use less power. Compressing and decompressing data as they go in and out of swap space is still far less energy consuming process then reading them from SDcard.
- third is governor configuration - governor is a system service that decides at what frequency should the CPU be working at every moment and how much cores should be enabled - this of course has great impact on energy consumption and on the smoothness of our experience with our phone. There are two schools of setting up governor and they base their decisions on two premises:
a) sharply increase CPU speed to get the work done fast and sharply decrease speed once it's not needed.
b) slowly increase speed and only so much to do what must be don then slowly decrease speed once you are done because you may have to do something again in a moment
There are pros and cons of both ways - way A means jumping to high frequency for a short time but high frequency uses comparatively large amount of energy, way B means slow increase but also means remaining in intermediate states for longer actually using energy for longer. I don't have any way to actually measure the resulting energy consumption but way A has a distinct advantage of creating much smoother experience so I use that myself.
- fourth is hotplug configuration - our CPU can dynamically enable and disable additional cores - the process is called hotplugging. Some governors are created specifically for controlling this process, the best, as far as I have tested, in this is Lulzactiveq. Hotplugging has to be wise as to the IF and WHEN to enable and disable additional cores, it measures how many "packets" of data are in queue to be processed and based on short history anticipates increase and decrease of workload.
All those interesting options are configured in scripts created for main contemporary kernels: Nadia, Devil and Agni and available HERE.
Latest OC / UV Scripts for Devil / Agni and Nadia Kernels for Note 2 are HERE
Guide to EXT4 to F2FS migration for Note 2 is HERE
CourtesyMat9V
Click to expand...
Click to collapse
Thanks man....you rock:good::good:
What about using Juice Defender (available in play store)? I used the basic one first and then ended up buying ultimate because I saw good results. Now the location (using cell tower) based WiFi enable/disable extends my battery life significantly.
The is one of the first apps I install once I feel a new flash is stable.
If you have the Samsung "Toolbox" utility, that floats a button on the screen to access your choice of five apps from anywhere - turn it off. It causes the "security storage" process to peg at 20% all the time the screen is on if "Toolbox" is enabled. When "Toolbox" is disabled, "security storage" process drops to a couple of percent when the device is idle. There's quite a saving on battery drain.
Battery calibration
I have a rooted Nook HD+ running Android 7.1 and I decided to calibrate its battery.
I ran it down to zero as recommended then attached it to the mains.
All I have had for several hours is a black screen with just the charging symbol (battery with lightning inside it). Nothing else, no progress bar, no charge %, nothing Androidy.
Is this as it should be and should I just wait for several more hours or is there something wrong?
Many thanks.

CPU Frequency staying higher tan it should

I am currently using CloudyFlex 2.6, clean install, but it started with several different ROMs, kernels and configurations...
The thing is: Unless I use conservative governor (tried with interactive/ondemand/intelliactive/alucard), the CPU frequency for the first core stays higher than it should while idling.
Even with less than 10% CPU usage, I find CPU_0 sticking with +1ghz frequency, some time ago the same governors with similar loads slowed down to 300mhz while idling (the expected), now none but conservative seems to respect the established thresholds for slowing down.
For interactive CPU_0 ramps to max_speed, then goes down to defined highspeed_freq parameter and stays there for no good reason or load (3% CPU usage, 6% for several seconds and it still stays at highspeed_freq).
It should go down to 300mhz until new heavy load (80/90% or whatever threshold defined) , but it does not, and I cannot find the reason for it (even played with governor controls without being able to deactivate this battery wasting behavior).
I think something changed recently, but the worst at all is that all kernels seems to be affected (cloudykernel, dorimanx, simple kernel) I already tried disabling all init.d scripts (just in case), disabled xposed framework, uninstalled tweakers, and I cannot find the culprit, clean install, same issue. Different ROMs, same issue... Only conservative slow down as it should.
Any clue on recent cpu handling changes that might produce this behavior? Other users that might try if you see the same behavior?
Thanks in advance

Categories

Resources