1. Abstract
2. Approach
3. Baseline configuration and results
4. References
5. Disclaimer
1. Abstract
Initially I was quite dissapointed with the battery life of the Samsung Galaxy S II i9100 with Android 2.3.4 out of the box. Coming from the Symbian world Nokia E71 I have been used to 6-7 days without recharging, while on SGS2 I got barely 1.5 days of normal usage. I started to optimize, and felt that the hardware is very capable for power saving, but the software is not optimized. After turning off all synchronization, going thru every program settings to switch to manual sync, switching to 2G network (EDGE in my area), turning off WiFi/Data/GPS/Background data I've got a busy day full of meetings at work (didn't touch the phone apart from 2 incoming calls and a few notes) and only 10% decrease of battery for 24h (100%->90%) which is amazing by itself. But I wanted to optimize more.
I have heard that other things like Custom ROM, freezing of system applications, task killers, Under Volting (UV), Under Clocking (UV) would help me too, but I was about to discover which one really helps in real use.
One lazy Sunday like today while being a bit sick allowed me to conclude an experiment of how far did I get in optimizing the power usage for a "baseline configuration" - WiFi/Data/GPS/Background data off, 2G network, all possible sync to manual - and the results are astonishing.
2. Approach
The approach to optimize the battery life is only one - PUT IT TO SLEEP AND DON'T LET IT AWAKE.
Having read a ton of articles on xda-developers.com and other places I have concluded that the strategy for optimizing includes these major steps:
2.1. Get a clean baseline Custom ROM where much of the "bloatware" is removed, so you have less to optimize - optional step but it helps to do it
This probably helps although not necessary. I'm not sure if the stock ROM will allow you to put custom kernels which will be needed in the next steps to optimize further.
But in any case you need to be at least "rooted" to apply some of the advice - either via a rooted kernel like CF-Root [8], or via an exploit like the DooMLoRD'a zergRush exploit [7].
2.2. Optimize the screen-on time
This is up to how frequently you use the phone
What you can optimize is to set a default "conservative" CPU Governor profile from 200MHZ to 1200MHz for regular usage - nothing really special, it's only slower on jumping to high frequencies.
If you have a kernel like RedPill Kernel [9] you can add an additional In-Call profile with "conservative" CPU Governor from 100MHZ to 800MHz - while you talk and phone to the ear it idles at 100MHz, but if you start a let's say Notes taking application, or go to turn on Bluetooth it will be snappy enough. Same holds true for listening to music or listening to books - but it's up to your imagination how to set a 100MHz profile in this case (maybe via Tasker). Have in mind that the 100MHz setting may be unstable on some phones because it's not standard, but mine is absolutely fine with that setting.
For setting the CPU profiles software like Voltage Control [5] (paid version for many profiles) is used.
CPU Governor "conservative" is crucial so you don't instantly jump to the highest frequency as it happens with the default "ondemand" governor (or its clones).
You can choose an I/O Scheduler appropriate for your CPU Governor based on the MagicConfig article in my references [14].
People also say that the following helps and I use it: turn off button LED lights, darker wallpapers, auto-rotation disabled, auto brightness on (I have to see the screen after all).
If you use kernel like RedPill Kernel [9] the button LED lights are undervolted by default, so you can leave them "on for 1.5s" for example.
If you have a Custom ROM like CheckROM Revolution HD V6 [10] with JKay Deluxe Settings you can set a Dark or Darker auto brightness profile - also usable to some extent.
One article in my references [12] also gives the power drain in milliwatts (mW) for each hardware device - go read it and you will understand how much the Amoled Display (Average - 370mW), LED lamp next to camera (1.3W), Camera (700mW), Bluetooth and GPS (110 to 180mW) etc. hardware actually consumes.
2.3. Optimize the screen-off time
2.3.1. Analyze Wakelocks
Wakelocks indicate when some application prevents the phone from going to sleep for some time. It does not necessarily mean that it does something significant at that time, and may be only a bad application design. Some applications really like to hold wakelocks periodically during the day for no reason, even if set to Manual sync etc. Examples of such applications are Facebook, 3G Watchdog... You milleage may vary but you can be sure that this hurts your battery life a lot. Any such application can be frozen with Titanium Backup or uninstalled if it's not a system application. Both count and total duration of the wakelocks are important.
BetterBatteryStats [1] has a screen to debug Partial Wakelocks and Kernel Wakelocks. You can also obtain the raw information via the console command "cat /proc/wakelocks".
2.3.2. Analyze Alarms
Alarms are a way to start jobs in the system at a predefined time. Many applications set alarms to get awaken and check/poll something before sleeping again. You should note that firing an Alarm is not necessarily connected to having a Wakelock - you can see many alarms firing but very few wakelocks. The problem is that too many applications set too many alarms for no reason. These activities also hurt your battery life a lot. Examples of such applications are Google Maps (at least for me)... As long as I have another GPS application with offline maps, I've simply frozen Maps with Titanium Backup. Another example was let's say Social Hub, but as long it was firing once per 24h, I didn't bother to touch it.
BetterBatteryStats [1] has a screen to debug Alarms which requires Root access. You can also obtain the raw information via the console command "dumpsys alarm".
2.3.3. Analyze Network Connections
If you get lost in the Wakelocks and Alarms, you can help yourself by checking what connections are kept alive while Internet is connected. OS Monitor [3] has a Connections screen which is equivalent to "netstat". This is also a good indicator what may be drawing unnecessary battery and respectively freeze/uninstall. In my case I can point that I've discovered that K-9 Mail had a bug with IMAP accounts - if I connect to an IMAP account set to manual/poll sync once, it keeps a connection open forever, until you restart or kill the process, but for POP3 account there is no problem... Being aware of such things really help with the battery life.
2.4. Optimize deep idle and sleep time
This is the most important goal in this article - how to get into deep idle/sleep and stay there, because this is the only real way to save energy on such a powerful device
CPU Spy [2] can show you how much time you spend in deep idle/sleep - with my baseline testing I've managed to get 99% deep idle/sleep which is amazing - only if the manufacturers gave us the phones in this state and we can build on that...! But it's the other way round.
Unfortunately the sleep mode on the stock kernel and the CF-Root kernel is not too deep. Entropy512 in my references [15] describes the following modes of idle/sleep:
IDLE - clock is gated but power remains (does not eliminate any static power consumption)
AFTR - clock is gated, CPU core power removed, cache power remains - this eliminates a great deal of static power consumption - cannot be entered if second core is active
LPA - AFTR + removal of cache power - cannot be entered if second core is active
IDLE is entered if the CPU is expected to be free for 4 msec (40 msec stock)
AFTR is entered if the CPU is expected to be free for 10 msec (disabled stock)
LPA is entered if the CPU is expected to be free for 40 msec (40 msec stock)
This compares to suspend, aka deep sleep, which takes around 150 msec to enter and 650 msec to resume, and the CPU must be at 800 MHz (or at least have enough voltage to support 800 MHz operation) during this time. Entering suspend/resume is very costly in terms of power due to heavy interrupt load.
Unfortunately my knowledge ends here, but flashing a kernel like RedPill [9] with Power Saving features and patches enabled improved the deepness of the idle/sleep very significantly, let's say 2 fold compared to the stock kernel. Sleep is entered faster and with more savings.
2.5. Optimize the modem/baseband
If all the points above are done, you can consider some savings from trying to flash newer modem/baseband compatible with your Custom ROM for better power savings during Calls and Data transmission. I did not get deep into this yet, but it's rather a big Voodoo, because the contents of the various modems are not public and you can only read feedback like "works very good for me" and "totally awful", which is not very scientific. Initially you can try staying with your original modem or the one provided by the Custom ROM, and optimize the previous points.
2.6. Optimize other stuff
2.6.1. Under Volting - will probably help, but for every frequency you need to choose voltages that are not too low to keep the phone stable. You can try the UV profile from the MagicConfig article from my references [14].
2.6.2. Under Clocking - I consider trying to use 100MHz useful for some scenarios, but only as an additional profile. After all the phone is very powerful and snappy to cripple it with 100MHz-1000MHz profile as default.
2.6.3. Automatic Task Killers - absolutely worthless peaces of software [16]. Android OS is good at power saving. It is very power saving conscious actually, of course combined with capable to sleep hardware. The only reason to kill a process is if it locked on holding some resource/connection forever, and OS Monitor [3] can kill it.
2.6.4. Battery charging - charge the battery as frequently as you want, but be sure to not keep it constantly on high charge (90-100%) [18], as long as this is not a good state for storage. Making bigger cycles helps to maintain better battery life. Some sources say cycling from 0% to 100% is not optimal [17], but from my experience through the years this way also works good for battery longevity, and maintaining small loss of capacity. I can give an example of losing up to 10% of battery capacity per year compared to design capacity with this method. You can view such statistics in Power Management tools in Lenovo ThinkPads etc.
Note that the battery indicator has some tweaks around 100% so consider the following:
- When charging for me it hops from 98% straight to 100%. If you disconnect now, it drops to 98% again, and this is what other people complain from too. Just wait some more time and it will charge to real 100% to have more battery life.
- The indicator stays at 100% longer than at any other value. So when testing, always test from the same baseline, e.g. always charge to 100% before comparing results.
3. Baseline configuration and results
CheckROM Revolution HD V6 PDA XWLA4 (Android 2.3.6) + modem XXKI4 (was XWKL1 but changed for no reason) + kernel RedPill 1.3.
WiFi/Data/GPS/Background data/Auto-rotation/Button LED lights - OFF
Any type of Sync or Polling - OFF/MANUAL, using local Contacts and local Calendar
Widgets - AccuWeather.com on MANUAL and Today view from Calendar.
Network: 2G (EDGE in my area)
Background and lock screen: Dark wallpapers
CPU default profile: conservative 200MHz-1200MHz
CPU in-call profile: conservative 100MHz-800Mhz
Because I don't want to wait a full day for the statistics, I'll post now for 8 and 12 hours, and tomorrow add for 24 hours.
(See the attached images, because I'm not sure how to embed them in the text)
4. References
[1] BetterBatteryStats XDA Edition - http://forum.xda-developers.com/showthread.php?t=1179809
[2] CPU Spy - https://market.android.com/details?id=com.bvalosek.cpuspy
[3] OS Monitor - https://market.android.com/details?id=com.eolwral.osmonitor
[4] Titanium Backup (paid version) - http://matrixrewriter.com/android/
[5] Voltage Control - https://market.android.com/details?id=com.darekxan.voltagecontrol
[6] Android Terminal Emulator by Jack Palevich - https://market.android.com/details?id=jackpal.androidterm
[7] DooMLoRD's Easy Rooting Toolkit [v4.0](zergRush Exploit) - http://forum.xda-developers.com/showthread.php?t=1321582
[8] CF-Root Kernel - http://forum.xda-developers.com/showthread.php?t=788108
[9] RedPillKernel_Rev1.3 - http://forum.xda-developers.com/showthread.php?t=1288850
[10] CheckROM Revolution HD V6 - http://forum.xda-developers.com/showthread.php?t=1312240, http://checkrom.com/
[11] Premium Dark Wallpapers - http://forum.xda-developers.com/showthread.php?t=1474798
[12] Kernel Governors, Modules, I/O Schedulers, CPU Tweaks - http://forum.xda-developers.com/showthread.php?t=1369817
[13] Getting the Most out of the Battery on your Android device - http://softbanksucks.blogspot.com/2011/10/getting-most-out-of-your-battery-on.html
[14] MagicConfig for UV and CPU Governor + I/O Scheduler combinations - http://forum.xda-developers.com/showthread.php?t=1466017
[15] Entropy512 explained CPU idle states - http://forum.xda-developers.com/showpost.php?p=23252902&postcount=17
[16] Android Task Killers Explained - http://lifehacker.com/5650894/andro...ed-what-they-do-and-why-you-shouldnt-use-them
[17] Li-Ion Battery Charge Cycles, Voltages and Storage analysis - http://batteryuniversity.com/learn/article/how_to_prolong_lithium_based_batteries
[18] IBM/Lenovo recommendations on Li-Ion battery treatment - http://forum.xda-developers.com/showpost.php?p=23258191&postcount=19
5. Disclaimer
Paid apps are mentioned here for clarity. You can of course find an alternative if such exists. Free (no ads) versions of software were listed where possible.
Needless to say that all advice here must be applied only under your own responsibility.
Results at 25h usage: The battery indicator has dropped down to 94%.
However it's a bit hard to predict how much is it going to last this way as long as after initially staying at the value "100%" the indicator decreases a bit faster.
See attached screenshots.
Thanks for the detailed post but i still don't understand why people insist on having a smart phone and then turning off any good feature in it to get 2 days of work out of it.
Agent_Adodas said:
Thanks for the detailed post but i still don't understand why people insist on having a smart phone and then turning off any good feature in it to get 2 days of work out of it.
Click to expand...
Click to collapse
That depends if you dont want xxxx app running every day why run it and why let it connect on a daily basis . Its a Smartphone not a dumbphone that controls the user .Nothing in the Smartphone design says hey guy you are really uncool if you don't have everything turned on .
I turn on what i want when i want but then again i am not sad enough to live my life on facebook .
jje
there's nothing wrong with killing background tasks that eats your battery, but to me it looks funny to turn off WIFI, 3G, Sync or polling.
anyway, that's what i think, other people may think different and will prefer to save on battery life.
Agent_Adodas said:
there's nothing wrong with killing background tasks that eats your battery
Click to expand...
Click to collapse
:facepalm:
http://lifehacker.com/5650894/andro...ed-what-they-do-and-why-you-shouldnt-use-them
Unless you love using terribly coded apps.
This is a Baseline - my initial starting position. Yeah I don't feel cool for running tons of unneeded stuff Actually after 15 hours of uptime I feel pretty bad and a slave of the charger.
I hope to tell more people in a single post what can be optimized, stripping off any superstition, voodoo and some pointless beliefs circulating in the web
I don't say "do like me", but instead what a great hardware SGS2 + core Android software actually seems to be
Please also note I didn't limit myself to 1000MHz, do not recommend reducing voltages etc... the struggle is to put the software in control, not to cripple the experience.
Additionally, I have WiFi at work, at home, at the gym, and between them I'm driving... for that reason I don't need unlimited data. And for new mails I actually get SMS and know when to fetch the mail. If it's important I can turn on the data as well. On business trips abroad there is no unlimited data anyway too - only WiFi at the office and at the hotel. So there are different scenarios...
Serious Observations Bro!
Must say, very clear,simple and awesome way to put together things...will try this out and post again!
Thanks a ton bro! Love the efforts and for helping us out!
Great tips mate... I knew many of them before but i will not use them so much.. I have a feeling that it criples my phone... Limiting my usage of the phone... Instead i have a custom rom,custom kernel ,an extra standard battery,car charger...
I even tryed once to apply most of your tips but they gave me a couple of hours extra batt life. My problem is network signal coverage-edge is fine(but who can surf on egde ?!? ) ,3g and hspda signal is not so good (i travel a lot by car all over my country) and the phone keeps trying to get better network signal and uses more battery...
So most of your tips work if u want to criple your phone and if ur network has great coverage...
Sent from my GT-I9100 using XDA
Using a slow scaling cpu governor defeats the purpose of battery savings. You want something that will scale up fast and scale down just as fast. That way the task gets completed quicker and the cpu can go back to an idle state faster.
Slower governors take longer to complete a task and that uses more battery.
I rather OnDemand complete something in 2 seconds jumping immediately to 1.2Ghz than Conservative in 4 seconds scaling it's way up each step and then scaling back down slowly.
Sent from my GT-I9100 using Tapatalk
Elisha said:
Using a slow scaling cpu governor defeats the purpose of battery savings. You want something that will scale up fast and scale down just as fast. That way the task gets completed quicker and the cpu can go back to an idle state faster.
Slower governors take longer to complete a task and that uses more battery.
I rather OnDemand complete something in 2 seconds jumping immediately to 1.2Ghz than Conservative in 4 seconds scaling it's way up each step and then scaling back down slowly.
Sent from my GT-I9100 using Tapatalk
Click to expand...
Click to collapse
Not true if I'm typing notes. Ondemand will struggle to take me on high frequency, while I'm browsing the texts... Do you need high frequency when reading forums?
Actually I have no problem to play Asphalt 6 and Angry Birds on 1200MHz with this setup
It takes you more cpu cycles to get Asphalt or Angry Birds fully loaded with Conservative than it would with OnDemand.
And you have to remember we have dual-core cpus. It's to your benefit to get both cores scaled up faster to finish the task.
You don't notice this as much because the difference is probably in the milliseconds. But Conservative is more of a power hog than OnDemand.
Sent from my GT-I9100 using Tapatalk
Wow, thats massive and informative! Too good job Sir! Hats Off!
Elisha said:
It takes you more cpu cycles to get Asphalt or Angry Birds fully loaded with Conservative than it would with OnDemand.
And you have to remember we have dual-core cpus. It's to your benefit to get both cores scaled up faster to finish the task.
You don't notice this as much because the difference is probably in the milliseconds. But Conservative is more of a power hog than OnDemand.
Sent from my GT-I9100 using Tapatalk
Click to expand...
Click to collapse
Agree. All that advice is mostly targeted to battery conscious people, this is not a gaming setup There is no one best configuration for all.
It's also not about what exact values to choose, but what approach to take for battery life improvement.
Can't wait to run a UV kernel once the sources drop. That there helps quite a bit to conserve battery.
Sent from my GT-I9100 using Tapatalk
I know pretty much all of this already but it's a useful guide for noobs for sure.
I don't bother anymore with SetCPU or any of that anymore and to be honest it's had little or no impact on battery life which is still excellent.
gingingingin said:
0: IDLE - CPU not clocked
1: AFTR - something not totally clear to me, but an alternative way to IDLE the CPU - ARM Off Top Running with L2 cache keeping its state
2: IDLE+LPA - IDLE + DEEP IDLE - also some parts of hardware are powered down
3: AFTR+LPA - AFTR + DEEP IDLE
Click to expand...
Click to collapse
These are not deep sleep states. Deep sleep is also known as "suspend" - where almost the entire system is shut down.
These are CPU idle states, which allow the core to save power even when the system is "running". They take significantly less time and energy to enter, but save less power. Also, there are only three of them - IDLE, LPA, AFTR. See arch/arm/mach-s5pv310/cpuidle.c in the kernel source for more details.
As an example, with kernels that have the cpuidle backport from the Tab 7 Plus:
IDLE is entered if the CPU is expected to be free for 4 msec (40 msec stock)
AFTR is entered if the CPU is expected to be free for 10 msec (disabled stock)
LPA is entered if the CPU is expected to be free for 40 msec (40 msec stock)
There are some rules that can cause lower states to be entered even if the cpuidle governor chooses LPA or AFTR. (cpuidle governor has nothing to do with cpufreq governor).
Your descriptions of the states are pretty close to what I understand them to be:
IDLE - clock is gated but power remains (does not eliminate any static power consumption)
AFTR - clock is gated, CPU core power removed, cache power remains - this eliminates a great deal of static power consumption - cannot be entered if second core is active
LPA - AFTR + removal of cache power - cannot be entered if second core is active
The above are why 100 MHz is pointless on our device, and in my experience, actually can increase power usage. The achievable voltage difference between 100 MHz and 200 MHz is insignificant for most peope, and if the voltages for two frequencies are the same, it's better to run at the higher frequency and drop into AFTR/LPA to shut off core power more often. The PDF linked from Ezekeel's post at http://forum.xda-developers.com/showthread.php?p=21785924#post21785924 is a useful read on this topic, especially section 6. While it's fairly old, most of the concepts remain valid. For this reason, 500 MHz also doesn't consume much more power than 200 for a given fixed amount of load due to having the same voltage stock as 200 (however, it does increase some internal clocks I believe, leading to slightly increased power) - so when the screen is on I have it set to 500 MHz minimum.
This compares to suspend, aka deep sleep, which takes around 150 msec to enter and 650 msec to resume, and the CPU must be at 800 MHz (or at least have enough voltage to support 800 MHz operation) during this time. Entering suspend/resume is very costly in terms of power due to heavy interrupt load, which is involved in 90% of complaints about high "Android OS" battery usage on Gingerbread. However I believe from some of the testing I've run that improved cpuidle greatly reduces this penalty.
With the improved cpuidle patch, even when I use the Wake Lock app to hold a permanent wakelock for testing purposes, my standby drain is only 1.5%/hour or so. When not holding a wakelock, 0.5%/hour on wifi is easily achievable. It gets much worse at my desk at work, where the signal is weak and the cell radio eats huge amounts of power - there it's around 1%/hour.
Edit: As to task killers - all of the people saying "task killers are worthless" talk about memory management only. The fact is, unfortunately, that there are some crappy apps out there that use too much CPU or hold insanely long wakelocks that you just have to use occasionally. Facebook is still the #1 example here - Facebook is a major battery hog, therefore when you're done with it, you must kill it with fire. However, NEVER use an autokiller and never use it for memory management!
Regarding battery charging, I wonder have you read this article before : batteryuniversity.com/learn/article/how_to_prolong_lithium_based_batteries (please add http)
The fact seems to be completely opposite from your theory in 2.6.4.
Sent from my GT-I9100 using xda premium
Not sure, the battery article is a bit doubtful. For me at least the testing sequence is strange:
1. Charging current of 1C is a bit high, to say the least. Quick chargers have never been optimal for any type of batteries.
2. Discharge current of 1C is huge and far from being realistic for a mobile phone.
Also if we interpret the results it becomes that at 10% DoD we get 4700 small cycles, which is close to 100% DoD with 500 big cycles... Actually the results are in favor of the 100% DoD.
Of course my interpretation can be wrong, but so far I have got the opposite idea of that.
For practical purposes I can give an example of a Nokia Li-Ion battery thoroughly fully discharged and for 2 years it retained at least 80% capacity. I'd estimate the number of cycles to be 120-150.
On my current laptop the ThinkPad Panasonic battery was always almost completely discharged via settings, attaching screenshots. At 328 cycles and 3.5 years since first use it retains 88% of the design capacity. This is quite a good achievement for a tortured battery I'd say
Note: See the advice/sentence written in the top box by my good old IBM manufacturer (now Lenovo). "... battery deterioration may occur faster if the battery is constantly charged at 100%. Lowering the charge thresholds ... will help increase its lifespan". These guys know their job... I think their sentence almost surely relates to storage though. Storage at 50% is much better than storage at 100% charge. There is room for interpretation again.
Note: This is my second battery on this laptop, the first one Sanyo was a bit worse with the same treatment (maybe older technology) and after 2 years its electronics suddenly failed, while at around 150 cycles.
Entropy512 said:
The above are why 100 MHz is pointless on our device, and in my experience, actually can increase power usage. The achievable voltage difference between 100 MHz and 200 MHz is insignificant for most peope, and if the voltages for two frequencies are the same, it's better to run at the higher frequency and drop into AFTR/LPA to shut off core power more often.
Click to expand...
Click to collapse
First of all, thanks for the detailed explanation of the states.
I remember from the school/uni that the power used is proportional to the frequency. If we have static consumption in the chip it will not be affected by changing the frequency, but the dynamic part of the consumption is essentially doubled when running on 200MHz compared to 100MHz. I don't know the ratio dynamic_consumption:static_consumption for my chip, but it may be around 1:1.
The formulas were something like that: http://forums.anandtech.com/showthread.php?t=119229
Related
Hi!
I actually found the settings to change the cpu frequency today the warning I was given when i pressed " Performance " have scared me of, but not anymore.
So I was wondering, what are the best settings in your opinion, about the settings, for the Hd2 only. For heavy use, medium ( just listening to music , from-to-work) and for preserving the battery as long as possible.
And I would also like some help with the combinations of the different types of governors with the min/max cpu settings.
I know what RJackson wrote about the different governors
http://forum.xda-developers.com/showthread.php?t=843406
Thanks!
first thing first - congrats for overcoming your fears!
for daily use I have the on demand governor with 245-998 Mhz. I find it to be the best because you can get the performance when you need it and yet the CPU can "calm down" at times you don't run the heavy apps, thing that also saves you some battery
settings
I use the same as above. on demand gov. also.
thanks for your replies =)
Any information about how long the battery last for you guys?
(my battery is 4201mV @ 100%)
I use the setting as I posted above, I unplugged my phone about 17 hours ago made a few calls and texts, gmail and viber are updating every 15 mins via wifi. still got 73% of juice left (I have the stock battery, don't know about V, mA capacity)
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.
Disclaimer; This does not damage your phone at all or fry/mess your cpu.
This method is used to lower CPU stress and increase Battery life
This method works for all rooted phones.
IMPORTANT: The newer versions of SetCPU might prevent your phone from entering deep sleep. Download version 2.24 from the following link which is the one with no problems and completely works 100%.
LINK
Deep Sleep breaks when charger is plugged in, you can see this by CPU SPY application available on playstore
Stop Downloading Battery Saving Applications, they do nothing and uses RAM.:silly:
Also Turn BLN off when you are sleeping.(It also Consumes battery and sometimes prevent deep sleep of CPU)
Set your Brightness to minimum and disable auto brightness.
LINK to Display Brightness
Instead use lite app called - Display Brightness from play store.
Turn off wifi and mobile data when not in use.
Use toggle for auto rotation, and keep off when not needed.
For more battery Saving, disable all animations and set screen timeout to 1min.
The S plus sucks in battery life. We all know that.But here's a fix, Try Under clocking instead of Over clocking.
When screen is on:
MAX 1.4Ghz(Why to OC??, if your phone runs smoothly on 1.4Ghz)
MIN 192Mhz
Ondemand governor (This governor jumps up to max when needed but spends most time on the min freq. Best battery saver.)
When screen is off:
MAX 365 Mhz
MIN 192 MHz
(This prevents lagging when playing music and other activities when screen off)
This way, you have a beast quick phone when you're using it, and the best battery saver when you're not!
NOTE: Turn off Autosync from the settings. It's only used to sync your gmail and contacts and such. You can manually sync when you add a new contact and since I don't use gmail, I refresh manually whenever I do.
SetCPU:LINK
Specific instructions for those that can't get it to work!:
On SetCPU:
Click Add profile
Where it says Profile, select it and tap "Screen Off"
Set the frequencies you want in use while screen is off (If you want just one frecuency, put both sliders on the same number)
Set priority (in case you have other profiles, otherwise don't bother)
Select governor (Won't really matter since cpu is gonna be running at 1 frecuency)
Tap save
Go back to Profiles tab at the top, then tap Enable at the top left to make the profiles work.
For a list of most governors and I/O schedulers detailed;
Visit
1.LINK
2.LINK
To check if its all working, install CPU spy from the playstore: LINK
For Playing GAMES(HD)/HEAVY GAMES, Plug your Charger in and play if possible.:good:
Most Important thing is to calibrate battery,
Calibration of battery is needed when you change your ROM.
This process wipes batterystats.
Battery Calibration
1. Charge 100%(NON STOP)
2. Download any battery Calibration tool from play store; (Link to App)
3. Open that app, click battery calibrate
6. Unplug your charger
7. Discharge your phone down to 0% during the day
8. Charge back up to 100% (NON STOP)
This is to make sure you're using your battery at 100%. Only do this after you flash a new rom.
The worst battery killer is 3G. No matter how much you try to optimize battery by tweaking and underclock, if you have 3G on, you're gonna have a bad battery drain.
Make sure that Autosync is disabled.
Done A small test usage 14 mins , you can see in attachment your CPU should look like this.
THIS READINGS FROM MY SGA.
And never ever install the Facebook App if you want to use your phone for more than 3 hours!
Sent from my GT-I9001 using xda app-developers app
Don't get apps that take background processes like what xellar said, facebook, and some other apps like tap tap revenge 4. Anyways thanks for the tips and link to free setcpu
Other people can also share VALID ideas about saving battery.
Will help many users.
Nice advises. I'm already using these.
One more good thing is turning mobile data off whenever you are not using it, also bluetooth, lowering brightness.
Good app for doing so is Power Toggles. You can always have widget on home screen and switch on/of these things with one tap.
Riiight.. Turn off autosync, disable 3G and wi-fi, dont use apps or games.. I might as well buy Nokia 3310..my phone lasts easily whole day with wifi on..with 3G it can get me at least 6-9h which is fine.. The key is to turn off 3G when you are on wifi and turn down brightness.. Everything else is not using your smartphone smart..
1) Set your network mode to 2G only if you're not using 3G/WCDMA
2) Manually set your operator in settings.
PS: After flashing one of firmwares I got a bug - battery is not charging to 100% while phone is ON. Only to 99% and not showing a message about fully charged battery... But when the phone is in off mode - it charges to 100%. Anyone knows how to fix this thing?
apkfox said:
1) Set your network mode to 2G only if you're not using 3G/WCDMA
2) Manually set your operator in settings.
PS: After flashing one of firmwares I got a bug - battery is not charging to 100% while phone is ON. Only to 99% and not showing a message about fully charged battery... But when the phone is in off mode - it charges to 100%. Anyone knows how to fix this thing?
Click to expand...
Click to collapse
Change/upgrade your firmware...
Battery Calibration
http://forum.xda-developers.com/wiki/Samsung_Galaxy_S_Plus/GT-I9001#Calibrate_Battery
This way works without an app.
TheBlackWolf said:
Change/upgrade your firmware...
Click to expand...
Click to collapse
Didn't help. But deleting batterystats.bin helped. Thanks anyway. :good:
Take a other kernel with better voltage and governor configuration.
Set Display time to 30sec.
Kind regards.
enable "only 2G"
turn off wiifi
turn off bluetooth
black screen wallpaper help?
Sent from my GT-I9001 using Tapatalk 2
If you are on CM7 try this... From CyanogenMod setting.
This will help to save battery.
cheehsiang said:
black screen wallpaper help?
Sent from my GT-I9001 using Tapatalk 2
Click to expand...
Click to collapse
On Amoled-Displays it should help. Inverted Apps, too.
setCPU
i testet the new version of setCPU 3.0.9, deep sleep works perfectly.
If profiles are not used it exits and there is no use of RAM in both versions (But then you do not have the unique feature of auto switching profiles ).
Is there another app with auto-switching?
buffo1987 said:
On Amoled-Displays it should help. Inverted Apps, too.
setCPU
i testet the new version of setCPU 3.0.9, deep sleep works perfectly.
If profiles are not used it exits and there is no use of RAM in both versions (But then you do not have the unique feature of auto switching profiles ).
Is there another app with auto-switching?
Click to expand...
Click to collapse
Actually no idea.
But other simple and best app for controlling CPU is NoFrills.
TheBlackWolf said:
Actually no idea.
But other simple and best app for controlling CPU is NoFrills.
Click to expand...
Click to collapse
But it has no profile-autoswitching, in fact no profiles at all. Voltage control Extreme has at least profiles, but without autoswitching. What is good about Voltage Control Lite/Extreme is that it sets cpu setting with init.d and so the app does not have to start on boot
Yes that is nice...
fo more info how to use
visit here
Link to App
TheBlackWolf said:
[
Stop Downloading Battery Saving Applications, they do nothing and uses RAM.:silly:
<snip>
When screen is on:
MAX 1.4Ghz(Why to OC??, if your phone runs smoothly on 1.4Ghz)
MIN 192Mhz
Ondemand governor (This governor jumps up to max when needed but spends most time on the min freq. Best battery saver.)
When screen is off:
MAX 365 Mhz
MIN 192 MHz
(This prevents lagging when playing music and other activities when screen off)
This way, you have a beast quick phone when you're using it, and the best battery saver when you're not!
<snip>
Click to expand...
Click to collapse
Many thanks for the battery saving hints. I'll finally kick out the Task Killer App, doesn't really seem to do anything except creating problems ..
For the statement that Underclocking would help in saving battery I wouldn't fully agree. A slow cpu needs more time to complete a task before returning to a sleep state. Of course the battery drain is higher with a higher frequency (which also require higher voltages), but I believe, that there isn't much to gain on this front. As long as I don't see any profound evidence I'd even suspect, that an underlocked CPU overall could even cause more power consumption. You can also read more opinions about this in general in this thread.
Much more beneficial would be to identify those apps that cause frequent wakelocks. Does anybody have hints here, how to track down those 'bastards' ? (From my Linux I know 'powertop', does something similar exist for Android? (Or are the battery statistics in CM10 sufficient to decide which app to wipe?)
z3non said:
Many thanks for the battery saving hints. I'll finally kick out the Task Killer App, doesn't really seem to do anything except creating problems ..
For the statement that Underclocking would help in saving battery I wouldn't fully agree. A slow cpu needs more time to complete a task before returning to a sleep state. Of course the battery drain is higher with a higher frequency (which also require higher voltages), but I believe, that there isn't much to gain on this front. As long as I don't see any profound evidence I'd even suspect, that an underlocked CPU overall could even cause more power consumption. You can also read more opinions about this in general in this thread.
Much more beneficial would be to identify those apps that cause frequent wakelocks. Does anybody have hints here, how to track down those 'bastards' ? (From my Linux I know 'powertop', does something similar exist for Android? (Or are the battery statistics in CM10 sufficient to decide which app to wipe?)
Click to expand...
Click to collapse
Better battery stats is application useful for identifying partial wakelocks.
Its an paid app, but Google helps... Lol
Your above sentence about UC comes true for heavy usage.
Normal apps can run smoothly and at same speed as of OC.
Many battery-life-tips mentioned here DON'T need any modifications to your Z.
Please don't post discouraging things like...
-"Why all the fuzz? Buy a external battery"
-"Why BLunlock/undervolting/-clocking/rooting and voiding warranty?"
...we all know that.
There are many factors influencing screen-on-time. Please read the must-read-section before you judge my thread.
THIS THREAD IS ABOUT OPTIMIZING BATTERY LIFE OF THE SONY XPERIA Z WITHOUT SACRIFICING TOO MANY FEATURES OR MUCH OF USER EXPERIENCE/PERFORMANCE. THIS IS A UNFINISHED ONGOING PROCESS.
Don't forget: If you like what you read, please press the thanks-button.
TABLE OF CONTENTS
I. INTRODUCTION
I.1 Prologue / Must read
I.2 My average usage pattern
I.3 Change-Log
I.4 To-do
II. BATTERY SAVING TIPS
II.1 General-section (tips everyone can apply)
II.1.1 Tips I use
II.1.2 Tips I don't use (but you can)
II.2 Root-section (additional: tips for rooted devices)
II.2.1 Tips I use
II.2.2 Tips I don't use (but you can)
II.3 Bootloader-section (add.: tips for bootloader-unlocked devices)
II.3.1 Tips I use
II.3.2 Tips I don't use (but you can)
III. MISC
III.1 Thanks to
III.2 Translations
III.3 Results
I. INTRODUCTION
I.1 Prologue / Must read !
Hi everyone,
First I should introduce myself a little: I'm from germany, 24 years old and currently studying technology of information systems. Since xda helped me alot, I also want to share with you all I know about optimizing battery life.
A XZ with all-standard-settings (without my tips) currently only gets approx. 4,5-5 h with my average usage pattern. And max. 3,5 hours with heavier usage (while travelling e.g.). With heavy games even less.
After implementing my tips I often get 7h+ of REAL USAGE battery life (=screen-on-time = SOT =s-o-t) with my Xperia Z. Sometimes I even get more SOT: see e.g. my screenshots of 7:09 h SOT with remaining 6% and 20 hours since last charging. But I also sometimes only get 5 hours (with heavier usage, while travelling e.g.).
I'm not bragging, please do not misunderstand me. If we crippled all smartphone-features, turned everything off and only read books with the XZ, we could even get 9-10 hours SOT...but thats not what I want to achieve!
There are many factors influencing screen-on-time: Your individual usage, your individual apps, your apps' (obligatory) wakelocks, your cell/data/wifi receiption during the day, provider-support of fastdormancy, your XZ's undervolt capability, ...
Also everyone has his own taste:
Some like 1.5 GHz+4cores+100% brightness all day+5 homescreens+... And some don't.
I only write down ALL tips I know/find. I do not use every single one of them, because some would lower my comfort. But I write them down for you, because I respect everyones individual usage. So please don't blame me for everything or talk bad about my thread in other threads.
You can decide which tips you like to use, which you don't.
Greetings
Seb
I.2 My average usage pattern
- browsing a lot with dolphin browser (sonar etc. disabled with elixir; 'Google Chrome' consumes too much battery, causes many wakelocks and has no flash-support)
- reading hundrets of tech-news with gReader (almost all news include pictures and some videos; hardware acceleration on)
- listening to music with walkman (20 min/day)
- watching some youtube (at least 3-4 videos; each 2 to 15 min long)
- reading for about half an hour (with kindle app or adobe reader)
- usung tapatalk for xda a lot
- whatsapp a lot
- reading many mails with KAITEN MAIL (many include pdf) and let synchronize 2 of 4 email accounts every 3 h and the remaining 2 every 6 h
- sms: 1/day
- calls: 20min/day
- photos: 2/day
- using wunderlist
- checking ebay: 1x/day
- VNC to enter business-pc remotly 2x/day (5-10 min)
- a lot 9gag
- Widgets on 2 homescreens:
4x Kaiten Mail-Widgets (counters for unread emails)
1x Walkman-Widg.
I.3 Changes to this post
31.12.13
- corrected formatting
27.12.13
- Updated and added many new tips to bootloader section (e.g gpu-undervolting!)
- Updated and added many tips to root section
- Updated general section slightly
- Updated prologue slightly
- Updated usage pattern slightly
- NEWS1: Switched to XzKernel by alnikki25k because it currently offers more features, runs smoother and gets updated more frequently
- NEWS2: Lifted my max. cpu-freq from 1.24 to 1.35ghz, which won't effect battery life too much anylonger ( -15 min SOT)
Earlier changes: deleted because of limited space
I.4 To-do
- add measurement-section
- give some milliampere-values
- Shorten all sections/texts/tips
- Find the holy grail of battery life saving
II. BATTERY SAVING TIPS
II.1 General-section
II.1.1 TIPS I USE:
- Update to Android 4.2.2 (currently use stock-sony-firmware .67), but will switch to 4.3 as soon as we get a working custom kernel for it
- if contract has no LTE/4G, so set the network mode to wcdma/gsm (the LTE/4G-chip sucks a lot of battery (better disable it, if you don't need more than the 21 Mbit/s 3G/hsdpa+ provides)
- If you can choose: use Wifi over 3G over LTE (in general). But if 3G connection is fast and wifi very slow, use 3G! Avoid LTE/4G if you do not need more than 21 Mbit/s.
Use "ONLY 2G" only if 3G receiption is extremly poor and as slow as 2G, but 2G receiption is great.
- stamina on (only whatsapp whitelisted). Reset stamina mode if it doesn't work properly (clear cache). Stamina is (mostly) better than turning phone off several times per day, because boot consumes too much battery (especially if many apps load at boot).
- battery settings > battery save mode: on (from 100%; excluding wifi+auto sync)
- wifi set to not search for networks/no notification,
- wifi set to stay always on (turning off during standby will help battery, but every custom kernel has an issue with the wifi drivers, so set wifi to "always on" which circumvents this issue),
- Brightness set automatically to 25% during the day and 0% in the evening with my TASKER-profile (below). more info in root-section.
- NFC off (only on when needed)
- Bluetooth off (only on when needed)
- GPS off (only on when needed)
- charging at 6-10% remaining battery (below could harm your battery and decrease battery life over time...but this is a highly controvertial topic, so I charge at 10% to be on the safe(r) side)
- Reduce wakelocks:
- Install 'Wakelock Detector' to find partial wakelocks and alarms which wake the XZ during standby. Many unnecessary wakelocks can easily be reduced (like fastdormancy). But some may need root access. Here is a very helpful link for wakelocks: http://forum.xda-developers.com/showthread.php?p=38629490#post38629490
- In settings > apps > all apps > select an app: Deactivate the notifications of all apps you don't want to be notified by. Can reduce wakelocks!
- Turn OFF 'developer settings' when not using it (stops their services, wakelocks)
This section will grow in time!
- Google Now off: long-press on home-button > google search > settings > turn google now off
- Let your Wifi-Router always work with 100% signal-power, wifi g+n. This way you will get better wifi-receiption with your Z (might squeeze some minutes/your phone won't connect to data unnecessarily)
- Don't overprotect your phone with metal cases over metal cases Receiption of Cell, 2G/3G/LTE, Wifi, Bluetooth etc. will decrease and your battery life too (a lot)
- Turn Restore & Backup off: settings > restore & backup
- Google Settings App > Location > Turn OFF: Location history + location protocol /summary(? don't know the english name of that button)
- Google Settings App > Search > Turn OFF: Webprotocol + search-results shall not include apps/... (deactivate anything you don't need)
- Deinstall or deactivate FACEBOOK, if you don't use it. If you really need it, change the notification settings + update settings + push-settings according to your REAL needs. This app is a hugh battery consumer and it causes far too many wakelocks which will prevent the phone from entering sleep modes (even when the phone is not being used).
- Settings > Sound(?) > Turn OFF: vibration when touching screen + sound for every screen press + sound for unlocking + xloud + sound for call-buttons
- Settings > Accounts > Google > Turn OFF: google-personalized-advertising + every synchronization you don't need (I don't sync apps and google books because I use Titanium Backup)
- Often forgotten but basic tip: Search for unnecessary settings or battery saving features in the settings of your favourite apps. E.g. many apps allow to deactivate unnecessary settings or ugly special effects/animations which drain battery. OR many apps let you deactivate (maybe in your case: ) unnecessary push notifications...
- Settings > Display > Sleep > After 1 Minute (mostly sufficient)
- Update your apps regularly, because new versions often improve performance, battery drain, wakelock-issues etc. Still: make backups!
[/HIDE]
II.1.2 TIPS I DON'T USE (but you can):
- Display brightness always at 0%
- Wifi set to "save battery when connected" (may cause problems with some custom kernels, so I currently don't use it!)
- Data/cell/wifi/bluetooth always off (e.g. if you only play games/read books)
- Calibrate your battery (this can bring back 5-10% of your battery life, depending on its condition). This tip was discussed a lot. I didn't calibrate my Zs battery yet. Everyone says something different and the manufacturers like sony give instructions for (first) battery cycles... So I leave it up to you to decide if its a myth or not
- Set all animations in dev-settings to 0 x (settings > about phone > press 10 times on the built-number > go back and now you got the dev-settings below)
- Sleep screen after 15 sec
- Turn background sync and auto-sync and google account sync OFF
-Reduce every wakelock possible by spending hours for finding their causes, deinstalling/deactivating all thats necessary to reduce it...etc...
II.2 Root-section
II.2.1 TIPS I USE
- Installed TITANIUM BACKUP PRO and deleted all bloatware/google apps/..
All I didn't need or like or which drained too much battery.
Here is a list of all deleted apps:
com.android.providers.partnerbookmarks.res.overlay
com.sonyericsson.android.socialphonebook.res.overlay
com.sonyericsson.trackid.res.overlay
com.sonymobile.connectivitycenter
Sapphire 10.0.A.0.16 (com.sonyericsson.bluetheme)
Silk 10.0.A.0.16 (com.sonyericsson.blacktheme)
VerifyCertificatesDummyApp
Xperia Twitter Setup
com.sonymobile.datadisclaimer
Anonymous Usage Stats
com.sonymobile.cameraautoupload
Backup-Restore
com.sonyericsson.lockscreen.uxpnxt
Black Hole
Bubbles 1.0
com.android.backupconfirm
com.android.providers.partnerbookmarks
com.android.sharedstoragebackup
com.google.android.voicesearch
com.sonyericsson.unplugchargerreminder
Converter 6.1.1 (com.sonyericsson.androidapp.converter)
Device Usage 1.0.A.0.11 (com.sonymobile.phoneusage)
E-Mail 4.0.1 (com.android.email)
com.sonyericsson.retaildemo
Emerald
com.sonyericsson.music.wikipediaplugin
com.sonyericsson.music.youtubeplugin
com.sonyericsson.music.youtubekaraokeplugin
com.sonyericsson.music.googlelyricsplugin
Exchange Services
Face Unlock 4.1.2-509230 (com.android.facelock)
foursquare 2012.03.09 (com.joelapenna.foursquared)
Infinite view 10.1.A.0.0 (com.sonyericsson.infiniteview)
com.sonyericsson.androidapp.memorycardinstaller
Market Feedback Agent
Mono 6.1.A.0.1 (com.sonyericsson.android.pobox.skn.mono)
com.sonyericsson.metadatacleanup
OMA Client Provisioning
Oma Download Client
OmaV1AgentDownloadServices
Picasa Uploader
Pico TTS
POBox Touch
Quartz
Remote Control Service
com.sonyericsson.vendor.backuprestore
SkinSelector
Smart Connect
com.android.voicedialer
Tags
TalkBack
TrackID
Update Center
com.sonyericsson.verifycertificatesdummyapp.application
com.sonyericsson.verifycertificatesdummyapp.platform
com.sonyericsson.verifycertificatesdummyapp.shared
com.sonyericsson.advancedwidget.weather
Wfd Service
Woody
Xperia AppShare
Xperia Calendar Sync
Xperia FB Setup
Xperia Friends’ Music
Xperia Link
Xperia Music Likes
com.sonyericsson.facebook.proxylogin
com.sonymobile.twitter.account
Xperia Share
Xperia Social Engine
com.sonyericsson.socialengine.plugins.facebook
com.sonyericsson.socialengine.plugins.picasa
com.sonymobile.socialengine.plugins.playmemories
com.sonymobile.socialengine.plugins.facebook_sharefrwk
com.sonymobile.socialengine.plugins.twitter_sharefrwk
com.sonyericsson.androidapp.everchwallpaper
Google Chrome
+ all branding-/carrier-specific apps
- Installed ELIXIR2 and deactivated all kinds of entries I don't need. Examples of activities/receivers/services you can disable:
BE CAREFUL:
If you deactivate vital activities/services/receivers of an app the apps won't work properly anylonger or the app will crash. But thats no problem! Just check the apps and and activate activities/services/receivers e.g. one-by-one to find the cause of the crash and leave it activated.
Deactivate e.g. every ACTIVITY that says (differs from app to app):
-facebook.login
-.analytics.
-.tracking.
- google.ads.AdActivity
- .googleplus.
- .gtalk.
-.ads.
-.voicesearch.
And all kinds of RECEIVERS that will boot apps at boot (if not necessary):
-.onboothandler.
-.bootreceiver.
-.devicestartup.
And SERVICES:
-again: .analytics.
-.gtalk.
-googleplus.
- Install GREENIFY+donation-version (needs Xposed Framework!). Then activate all experimental options like boost mode, gcm push, greenify system apps...
and after that greenify some system apps like google maps etc. (according to your needs)
- Installed Xposed Framework and following modules:
1. "Greenify" (donation-version necessary) and activate all options
2. "BootManager". Deactivate all apps you don't want to load when starting up
3. "ReceiverStop" (if you didn't like Elixir2): Deactivate all unnecessary receivers
4. "App Settings": reduce permissions if necessary
5. "Per App Hacking": prevent services and wakelocks, but becareful...
It can cause apps to not work anymore!
6. "YouTube AdAway": especially helpful fot those watching alot. Why drain battery for ads?!
- Installed TASKER and SECURE SETTINGS (and its helper; see settings).
I currently automated following things (you can also download my tasker-backup below):
Tasker is consuming little power in the background, but is a powerfull tool.
My Tasker-Profile isn't very sophisticated. Working on it, but don't want to use other peoples profiles. You can deactivate/change any feature easily in tasker, if you don't want to use it:
- 18:00 until 08:00 o'clock (6PM till 8AM): Brightness set to 1% (in the evenings 1% is enough mostly and reduces consumption by a high margin) + Turn Rotation off
- Rotation only ON with certain apps and automatically turn off
- Hibernate with Greenify every 3 hours (sometimes the built in autohibernation of greenify won't work, so tasker triggers
- GPS ON when GOOGLE MAPS, NAVIGATION start and turn OFF automatically when closed
- Turn OFF Data when connected to Wifi since 5 Minutes
- Install BuiltProp Editor and add these lines to the end of the built.prop:
(Thanks to …… for this tip):
#signal tweak
ro.ril.enable.3g.prefix=0
ro.ril.enable.dtm=0
ro.ril.hep=0
ro.ril.hsxpa=5
ro.ril.enable.a53=1
ro.ril.gprsclass=12
ro.ril.hsupa.category=9
ro.ril.hsdpa.category=36
____
This will increase receiption by lifting 2G/3G-settings. It increases battery consumption, but over the day the better receiption makes up for that (at least for me).
II.2.2 TIPS I DON'T USE
- ELIXIR2 is hardcore...you could even deactivate EVERY button/activity/service (those which you asume you won't ever need) of all your apps...could save some processing time and therefore battery life
-Installing ES EXPLORER and deleting in the apps-folder:
fast dormancy.apk and .odex ( both ONLY if your provider doesn't support fastdormancy)
-Reducing Wifi-consumption by editing the ini-files in etc/firmware/wlan/prima/
-Reducing 2G/3G/LTE-consumption by editing their ini-files
-With Overlays (App) we can make buttons/switches hovering over apps. In some cases it could save battery (especially in combination with tasker and zoom).
-I tested wether the LTE-Switch for the upper menu will switch back the network mode to "GSM" (=2G) if I activate and then deactivate LTE... Worked! The LTE-switch turns on 2G+3G+LTE but my contract doesnt have LTE so maybe the LTE-chip won't consume anything after a first connection attempt... Then the LTE-switch would effectivly be a 2G/3G-switch for me Update: Switching back and forth is uncomfortable and automation isn't possible without deep rom-modifications... a dead end currently
II.3 Bootloader-section
II.3.1 TIPS I USE:
- Flash @alnikki25k 's custom stock kernel XzKernel
- In TRICKSTER MOD + FAUXCLOCK (!!) do following:
0. Set CPUs to 384 mhz - 1,35 ghz
1. Governor to intellidemand (settings: see below)
2. Set scheduler to 'sio'
3. Underclock the GPU to 325mhz and set gpu-scheduler to "ondemand"
4. Multicore power saving = 0
5. Dynamic FSYNC = on
6. Ecomode = on
7. Mp-decision = off
8. Intelli-plug = on
9. ZRam = off
9.1 Delete VFS cache after boot: on
9.2 Auto FS Writeback: on
9.3 swappiness: 0%
9.4 vfs cachepressure: 150%
9.5 dirty ratio: 20%
9.6 dirty background ratio: 5%
9.7 TCP congestion control: westwood
10. Read_ahead (emmc + sdcard): 2048 mb
10.1 Entropy (emmc + sdcard): off
11. Frequency Lock = on
12. In faux clock: activate c0, c1, c2 and c3 states
13. IMPORTANT TIP FOR SMOOTHNESS: Deactivate gpu's vsync (activate it if you are a egoshooter-gamer)
14. In faux clock: Set a profile for every app which does (or does not) need much performance. Here is an examples:
'Whatsapp' doesn't need high cpu-freq and 400 mhz gpu-freq to run smoothly. We can set a profile for it with these settings:
Min freq: 384 mhz
Max freq: 1188 mhz
gpu freq: 200 mhz
ecomode: on
FOR GAMES you could e.g. slightly overclock frequencies, turn ecomode off and use 450 mhz gpu-freq
14. CPU: Undervolt to these VOLTAGES (ONLY IF YOU KNOW WHAT YOU ARE DOING !!) :
Please ONLY undervolt when you already know all about it...and undervolt slowly (in -25 or -50 mV steps e.g.)
until you reach a stable new voltage for each frequency. Always test several times with benchmarks and all your apps and for 1h at least
MY (VERY LOW) VOLTAGES MIGHT NOT WORK FOR YOUR XZ !
MAKE BACKUPS BEFORE YOU TRY ! IF YOU DON'T HAVE ACCESS TO A PC: KEEP A ROM AND A KERNEL ON YOUR SD-CARD. ALSO MAKE BACKUPS WITH CWM
I assume everyone trying this will know about
the dangers of playing with voltages.
*
[Mhz : sony's standard mV : mV working properly for my Z ]
192 : ---- : 712
384 : 850 : 712
432 : 875 : 712
486 : 875 : 725
540 : 900 : 725
594 : 900 : 725
648 : 925 : 750
702 : 925 : 750
756 : 975 : 750
810 : 975 : 800
864 : 1000 : 800
918 : 1000 : 825
972 : 1025 : 850
1026 : 1025 : 875
1080 : 1075 : 900
1134 : 1075 : 912,5
1188 : 1100 : 912,5
1242 : 1100 : 935
1296 : 1125 : 962,5
1350 : 1125 : 975
1404 : 1137 : 977,5
1458 : 1137 : 987,5
1512 : 1150 : 1025
-Governor-Settings (BE CAREFUL):
As the intellidemand governor got a big update (but almost no descriptions for the new features/settings), here you get my latest settings:
Governor = intellidemand
____
freq_step = 15
enable_boost_cpu = 1
input_event_min_freq = 384000,384000,384000,384000 // #
down_differential = 8 // #
ignore_nice_load = 0
io_is_busy = 1
optimal_freq= 1350000 // #
powersave_bias = 0
sampling_down_factor = 9 // #
sampling_early_factor = 9 // #
sampling_interim_factor = 9 // #
sampling_rate = 50000 // #
smart_each_off = 0
smart_high_slow_up_dur = 5
smart_high_slow_up_freq = 1350000
smart_slow_up_dur = 5
smart_slow_up_freq = 1350000
smart_slow_up_load = 90 // *
smart_up = 0
step_up_early_hispeed = 1242000 // #
step_up_interim_hispeed = 1242000 // #
sync_freq = 810000 // #
two_phase_freq= 384000,0,0,0
ui_sampling_rate = 50000
ui_timeout = 100
up_threshold = 86 // *
up_threshold_any_cpu_load = 90 // *
up_threshold_multi_core = 93 // *
_____
If its laggy for your taste:
1. make sure its no thermal issue or related to the rom itself;
2. Turn these ( // *) down. And these ( // # ) up. But search for their meanings first!
-GPU: undervolting (ONLY IF YOU KNOW WHAT YOU'RE DOING!):
Easiest way I know (until fauxclock/trickster support this feature):
Install "universal init.d", choose any available init.d-script (custom kernels often flash some along the way), add following in it and save:
echo "930000 1000000 1100000" > /sys/devices/system/cpu/cpu0/cpufreq/gpu_mv_table
The numbers (e.g. 930000) are in uVolt for See alnikki25k 's XzKernel-Thread for more info! I highly recommend reading that first!
Becareful: after flashing a new kernel(-version) this added code will likely vanish.
If you know how: just make your own init.d-script, wait for fauxclock/trickster
or just readd it manually again
II.3.2 TIPS I DON'T USE (but you can):
- Thanks @Destroyedbeauty: Instead of using apps like fauxclock/trickster mod you could also just write your own init.d-scripts which would cost nothing and lead to slightly less battery drain (+5 min). I don't use this tip YET, because these apps really don't consume that much. Still a very clever tip!
III. MISC
III.1 Thanks to
People I need to thank for various reasons (in no special order):
@DooMLoRD
@alnikki25k
@gm007
@[NUT]
@Dsteppa
III.2 Translations
I'm very thankful for everyone helping me translate this thread!
(Don't forget: translations can't be always up to date and won't be monitored by me)
-French-Forum (thanks to @monsieur_debile):
http://forum.frandroid.com/topic/16...-plus-de-7-heures-dautonomie-en-écran-allumé/
III.3 Results
-Antutu Benchmark 4: Instead of approximativly 20500 points (standard Z) I currently get approx. 15000. I currently give a damn about benchmarks Will try to improve in the future as promissed
RESULTS WITH REAL USAGE (For those who think I only leave the screen on):
- with my average usage pattern (see beginning of post) in "one sit" I got 7h S-O-T with 10% left battery charge and 9 hours since last charge: See screenshots.
- With my average usage pattern (see beginning of post) on a NORMAL day going to office etc. I got 7:09 h screen-on-time with 6% charge left and 20h since last charge: see screenshots.
- (almost) ONLY reading books, xda, news with gReader, surfing and with a bad phone receiption all day(!) I got 8h screen-on-time with 3% charge left and 12,5 h since last charge.
- Playing Deadtrigger for 0,5h I lost 14% battery life (graphics set to high), so with a full charge I approximativly could get 3,5 h (consider: Deadtrigger isn't optimized very well for non-nvidia-tegra3-hardware so it uses the Z inefficiently and I played with 'high' graphic settings)
If you like what you read: press the thanks-button and rate my thread with 5 stars
One question: Was this done indoors. Like in your room or office, just sitting playing with the device?
And that was a short "stint", I mean 7 hours of screen and 8 hours since the last charge. If you counted idle times, in like a 15 hour stint, screen time would be greatly reduced, plus, if you commute the phone is constantly looking for antennas, thus reducing screen time further.
7 hours is great. But this seems to be on "ideal conditions".
As for my methods of saving battery? 2G all the time. Undervolt. No Underclock. Greenify. Stamina Whatsapp only.
The important question is, what have you been doing ? Did you play games? YouTube? Or did you just let the screen active?
Gesendet von meinem C6603 mit Tapatalk 4 Beta
sea2605 said:
Since xda and its forum helped me alot in many ways, I also want to share something with you, that might solve many users biggest complaint: battery life.
I optimized my battery life so I regularly get 7 hours of battery life (sometimes even more, see screenshot with 10% remaining battery at 7:00h screen on time)... and all that with very normal usage (but no games) and without any sacrifices for me.
Tried many (...!!) methods to optimize but sticked only with those truly making a difference after testing.
________________________________
!!
I'm going to update this thread regularly until I wrote down all details and until I stop optimizing battery life
Lets work together: Tell me your battery life tricks!
Maybe in some weeks/months we can get to 8-9 h of battery life without too large sacrifices
!!
________________________________
HOW I did it (roughly summed up for the moment):
0. Updated to 4.2.2 (no 4.1.2 didn't give me more battery life).
1. Bootloader unlocked (essential, but will void warranty).
2. Rooted
3. Flashed doomkernel v9 via fastboot
4. Installed kernel tuner and underclocked the cpus to 1,24 ghz, changed governor to ondemand,
Undervolted like this (phone is still veeeery fast! No perfomance issues!):
Coming soon
5. Installed titanium backup pro and deleted all sony bloatware/google apps/other apps... All I didn't need or like or which drained too much battery. Here is a list of all deleted apps etc.:
Coming soon
6. Installed elixir2 and deactivated google-ad- and/or google-analytics-entries in all of my apps. Also all features I didn't need in my apps (e.g. I dont want to share everything in.every app with facebook so I deactivated those entries).
I deactivated all voicesearch-entries as I don't like it yet...(Even apples siri isn't great yet in my opinion...maybe in 2-3 years . I also deactivated google now-entries (not google-search!) since it drains a lot and I don't need it.
7.
X. Rather standard things:
- My contract has no LTE so I set the network mode to wcdma/gsm,
-stamina mode on (only whatsapp whitelisted),
- battery save mode on (from 100%; excluding wifi and auto sync),
- wifi-location-based on,
- wifi set to not search for networks,
- wifi set to stay on during standby only when connected (turning off during standby might help some of you, at least those who don't look at/need their phone and need it to be instantly connected),
- Wifi set to save battery
- To be continued
________________________________
I see more potential (but some with sacrifices):
1. With Tasker (thats an app) you could get a little (or quite much) extra battery life (depending on what you are willing to sacrifice...)
2. Future doomkernels could allow for more finetuning of the cpu and gpu (e.g. gpu-underclocking hat sticks; maybe we have some luck and we could undervolt the gpu )
3. elixir2 is hardcore...you could even deactivate EVERY button/activity/service (those which you asume you won't ever need) of all your apps...could save some processing time and therefore battery life
4. Governor wheatley and optimizing it's governor settings would give more juice but it slows all too much down in my opinion...but can lead to +0,5 h!
5. Even further killing some wakelocks with betterbattery
6. Reducing tx of the Wifi-antenna (but reducing tx only helps while downloading, I guess...)
or other antennas...
7. Installing es explorer and deleting fast dormancy app and odex ( both only if your provider doesn't support fast dormancy) in the apps-folder
8. Underclocking min. Frequency to 192 mhz (might help +5-10 minutes but slows phone down a little)
9. Maybe a little further undervolting (+5-10 min, but stability might be a problem...)
10. To be continued
THIS IS NOT READY YET...please wait patiently for more details etc!
Lets work together: Tell me your battery life tricks!
Click to expand...
Click to collapse
I easily get 8+ hours of screen-on time....my tricks for that are as follows,,
1)Root(obvious )
2) download greenify (a must-have by oasis feng)and greenify almost all apps(including games) expect some messaging apps(apps shown with gcm logo in greenify) ,,,and if you want to get that lil extra minutes then go for the donation version of greenify, it lets you greenify some system apps to....also don't kill apps with appkillers(real battery hog)
3) Switching Stamina mode On(especially after the 4.2.2 update)...and carefully selecting only "most needed" apps to be excluded (if you don't want to break notifications)
4)download startup manager..and disable all unwanted apps at startup
5)remove all unwanted bloatware and battery saving apps(they usually do nothing to save your battery,instead they run in background and eatup your battery)
6) no under-clocking, no over-clocking
7) maintain a healthy battery charge history ( don't charge unless battery is less then 20%.,,then charge without interrupting to 100%(don't keep it charging for to long if it reaches 100%,,this will over-charge the battery)
8 ) If you're on 4.2.2 ,,surely you're facing the battery bug,which is really dangerous for the battery (because it bring the battery % down to zero ,without giving you a chance to reach your charger)....So to fix this you'll need to recalibrate your battery by downloading easy battery calibration from playstore (I've calibrated my battery and fixed the bug )...the app will guide you how to calibrate the battery(easy)
9 ) Don't use the "trickle charging" method recommended by some battery saver apps...I've used that method and it shows no improvement in battery life instead it'll drain the battery in a very strange manner ("modern"Li-on batteries should not be trickle charged Google it if you need more info on this subject)
Use this tricks and you'll definitely notice improved juice
More tweaks and tricks for a better battery going to be updated soon(as soon as I'll test and confirm them)...
If you feel that I've helped you in any way,,please hit the thanks button
Sent from my Xperia ZL (C6502) using Tapatalk 4 Beta
Point nr 6 is not true. Best for batery is when working between 50-85%. Battery will not overcharge because phone turn off charging, when battery reaches 100%. You can charge phone even when reaches 90% or 60%. Dont have to wait till 20% (sooner pluged - better for battery).
Sorry for bad english. Regards...
Media Server
Place a ".nomedia" file in directories of your sdcard(s) you don't want scanned so media server doesn't suck all the battery!
Grenify works but not sure about the effectiveness of startup manager. Apps disabled seem to load at startup regardless.
adielee said:
Place a ".nomedia" file in directories of your sdcard(s) you don't want scanned so media server doesn't suck all the battery!
Grenify works but not sure about the effectiveness of startup manager. Apps disabled seem to load at startup regardless.
Click to expand...
Click to collapse
Once you grant root access to startup manager it disables all the apps you've selected not to start at the startup...try it for yourself
If you feel that I've helped you in any way,,please hit the thanks button
Sent from my Xperia ZL (C6502) using Tapatalk 4 Beta
Rumman Shaikh said:
I easily get 8+ hours of screen-on time....my tricks for that are as follows,,
1)Root(obvious )
2) download greenify (a must-have by oasis feng)and greenify almost all apps(including games) expect some messaging apps(apps shown with gcm logo in greenify) also don't kill apps with appkillers..
3)download startup manager..and disable all unwanted apps at startup
4)remove all unwanted bloatware and battery saving apps(they usually do nothing to save your battery,instead they run in background and eatup your battery)
5) no under-clocking, no over-clocking
6) maintain a healthy battery charge history ( don't charge unless battery is less then 20%.,,then charge without interrupting to 100%(don't keep it charging for to long if it reaches 100%,,this will over-charge the battery)
Use this tricks and you'll definitely notice improved juice
Click to expand...
Click to collapse
Sure you get 8 hours screen on time with only that and a normal usage (see my average usage)? If yes: I'm an idiot... why did I even bother with all the other crap
adielee said:
Place a ".nomedia" file in directories of your sdcard(s) you don't want scanned so media server doesn't suck all the battery!
Grenify works but not sure about the effectiveness of startup manager. Apps disabled seem to load at startup regardless.
Click to expand...
Click to collapse
nomedia is a great idea ! Will try it ! :good:
ckyy said:
The important question is, what have you been doing ? Did you play games? YouTube? Or did you just let the screen active?
Gesendet von meinem C6603 mit Tapatalk 4 Beta
Click to expand...
Click to collapse
Updated my first post! See "average usage pattern" on that single day.
DrKrFfXx said:
One question: Was this done indoors. Like in your room or office, just sitting playing with the device?
And that was a short "stint", I mean 7 hours of screen and 8 hours since the last charge. If you counted idle times, in like a 15 hour stint, screen time would be greatly reduced, plus, if you commute the phone is constantly looking for antennas, thus reducing screen time further.
7 hours is great. But this seems to be on "ideal conditions".
As for my methods of saving battery? 2G all the time. Undervolt. No Underclock. Greenify. Stamina Whatsapp only.
Click to expand...
Click to collapse
In some way you could say I tested in ideal conditions as I tested only in "one sit", right (weekend, got bored; but see my
usage pattern...great battery life considering that). But nevertheless:
Roughly we can say, all these methods aggregated will give everyone at least 40-60% more battery life (in relation to their
previous battery life). Thats no exaggeration...UnderVOLTing alone will lead to approx. 15-25% more battery life
...thank @DooMLoRD and his kernel for that!
So someone who only got 4h with his very own usage pattern will now get 6h.
Someone who only played games will get 3 h instead of 2 h...
Someone with a similar usage pattern to mine will get 7 h instead of 4,5 h (my starting point when I bought it)
etc. pp.
EDIT:
even on a normal workday (not "one sit") I get 7+h screen on time and 20 hours since last charge and 6% remaining battery. See my post of 2. August !
I didn't find an option to stop searching for Wifi networks, but I installed an app from google play to automatically turn off wifi when not connected, disbled NFC because I never used it, installed Juice Defender to disable 3G when I don't need it, used greenify on most of my apps, lowered brightness a bit and underclocked and I see some substantial improvement right away.
thanks for sharing your undervolt settings, might try later.
sea2605 said:
Sure you get 8 hours screen on time with only that and a normal usage (see my average usage)? If yes: I'm an idiot... why did I even bother with all the other crap
nomedia is a great idea ! Will try it ! :good:
Updated my first post! See "average usage pattern" on that single day.
In some way you could say I tested in ideal conditions as I tested only in "one sit", right (weekend, got bored; but see my
usage pattern...great battery life considering that). But nevertheless:
Roughly we can say, all these methods aggregated will give everyone at least 40-60% more battery life (in relation to their
previous battery life). Thats no exaggeration...UnderVOLTing alone will lead to approx. 15-25% more battery life
...thank @DooMLoRD and his kernel for that!
So someone who only got 4h with his very own usage pattern will now get 6h.
Someone who only played games will get 3 h instead of 2 h...
Someone with a similar usage pattern to mine will get 7 h instead of 4,5 h (my starting point when I bought it)
etc. pp.
Click to expand...
Click to collapse
Yes,,I'm really getting great screen times(one thing in my favour is that we don't have LTE here in India,& I use a 2g network(since I've a great lan ) so I've disabled wcdma network type & selected only gsm) I even play some graphic intensive games for "sometime" in my normal usage ...see the attached screenshot for details of my usage... Also I would like to add that the switching on the stamina mode is a must(mainly after the 4.2 update) But I'm still trying to squeeze even some extra juice...will update with some more extra tweaks,, after I try them out
If you feel that I've helped you in any way,,please hit the thanks button
Sent from my Xperia ZL (C6502) using Tapatalk 4 Beta
Ill rather use the charger then unlock the bootloader and spend numerous more hours just to get a couple of extra hours screen time as if its a competition lol.
Seriously I can get 6 hours+ screentime with stock 4.22 rom, no root, no bootloader unlocking.
Wifi on, auto sync on, brightness at lowest, stamina on. All I do is read a book from amazon kindle app, lol.
Well, of course no one has to chase maximum battery life... I'm chasing for it out of curiousity... Its only a challenge
But along the way I learn something new about android, smartphone-architecture, linux, ... Might someday be useful (I'm about to study technology of information systems)
Thats all forums/xda/communities exist for: Learning something new and sharing your knowledge
My undervolt goes from
192mhz @ 662mV to 1512mhz @ 975mV on Doom's Kernel.
On FXP Kernel I could go lower. 650mV to 950mV. Although even at those voltages, battery life on CM or AOSP is like 30% lower.
rotkiv3451 said:
I didn't find an option to stop searching for Wifi networks
Click to expand...
Click to collapse
Bump for op. How did you do that?
Turning of that it stops searching for wifi networks.
Now that I arrived home I can write my whole voltage list:
192 mhz @ 662 mV
384 mhz @ 675 mV
432 mhz @ 700 mV
486 mhz @ 700 mV
540 mhz @ 712 mV
594 mhz @ 712 mV
648 mhz @ 737 mV
702 mhz @ 737 mV
756 mhz @ 737 mV
810 mhz @ 787 mV
864 mhz @ 787 mV
918 mhz @ 837 mV
972 mhz @ 837 mV
1026 mhz @ 887 mV
1080 mhz @ 887 mV
1134 mhz @ 912 mV
1188 mhz @ 912 mV
1242 mhz @ 937 mV
1296 mhz @ 937 mV
1350 mhz @ 962 mV
1404 mhz @ 962 mV
1458 mhz @ 975 mV
1512 mhz @ 975 mV
Tested throughout 3-4 weeks. Rock solid stability.
There is a way to know beforehand if your chip can go as low voltages as this:
http://forum.xda-developers.com/showpost.php?p=39373866&postcount=124
First entry is deactivating the intervall-searching for wifis, as far as I can tell
sea2605 said:
First entry is deactivating the intervall-searching for wifis, as far as I can tell
Click to expand...
Click to collapse
I don't think so. As far as I can understand, that option just activates or deactivates the notification for open wifi networks, not the wifi scanning.
Sent from my C6602 using xda app-developers app
mikii100297 said:
Sent from my C6602 using xda app-developers app
Click to expand...
Click to collapse
I'm not a big fan of not charging the phone every day. If I leave home with less than 100% chances are I don't feel confortable.
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.