My experience with event based power management tools and governor tuning

I asked a few days ago about governor settings but then set out to explore it myself. The aim of what I was doing was to make my truesmart last a full day of normal use. I am trying to make my truesmart my primary device, so a full days use is important (especially as Omate have not yet shipped my second cradle!)

Over my first couple of days with the Truesmart it was lasting about 9 hours of moderate use (Moderate use to me is having it on my wrist all day, showing people who ask, talking to my girlfriend on hangouts, checking facebook and updating a few apps). This meant that it was usually running out of juice on the walk home from work. And that really was not good enough. Yesterday, with all my modifications I was able to go out until midnight, and come home to 40% battery. So these are the tools that after trying a few I think are worthwhile.

1. Bluetooth on call https://play.google.com/store/apps/d...asper.btoncall
Does what it says, when someone calls BT turns on, pairs with my headset and lets me pick up. In reverse I dail a number, count to 3 and select the bluetooth speaker, usually before they have picked up. The result is that BT goes from being about 17% of a days charge to not registering on my battery meter.

2. Lean data - https://play.google.com/store/apps/d...eqtic.leandata
Wifi is on when screen is on or on charge, when screen is off it can be set to pulse on and off for set time periods (i set 1 on and 10 off). The result is that Wifi goes from being 20% of a days charge to being about 4%

So once I was done with the two most obvious methods I had two main culprits of power usage.Cell Standby (41%) and Phone Idle (37%). Short of some baseband tuning 2g off (I live in Korea, there is no 2g) there is nothing that can be done with cell standby. So I looked to governor settings to reduce Cell standby and maybe even improved on screen battery performance. I tried a few apps, but this was by far the best

This app actually makes the first two redundant,, I've left the links for people that don't want to mess with governors, they are now off my watch. But the best thing this one does is that it allows you to set modes for different CPU governor tweaks on the fly. YOu will want to read this next: http://forum.xda-developers.com/show....php?t=1736168

On the truesmart we have 5 Governors available:
Performance - all on
Powersave - all (yes all) to lowest power
On demand - all scale frequency to power demand
Userspace - something odd that lets compatible apps set it ignore it
Hotplug - like on demand but can turn off one CPU completely

And from what I can tell we have 3 frequencies available on a 1Ghz chip (598, 806 and 1001).

You will almost always want to use hot plug unless you are benchmarking or manually switched one of the cores off as the others lack the ability to halt the second core automatically, so power is usually better, even than powersave. You also get to set the percentage of load that the frequency is upped and a powersave vs performance bias which I believe impacts how long the governor should be at that load before stepping up to the next level and how eager it is to step back.

I use uniform profile and set the following modes:

On screen or lock screen - hotplug - a small powersave bias and threshhold up at 50
Screen off on call or charging - powersave - max cpu 598, 2nd core disabled

People might find my charging profile odd, but I figure the device isn't overly usable in the cradle so why not have it charge as fast as possible, I tried performance but it got hot. With all this set, my phone idle battery usage now tracks up at about 2/3 the rate of my cell standby and there really is no loss in end user performance. The governor tweaking probably gets me and extra hour or 2 usage over the day.

After everything was done I have gone from 9 hours of charge with my usage profile to being able to last a full 18 hour day and still having room to spare. 36 hours off charge is not off the cards, so that is a four fold improvement. Have a play and let me know if it helps.

Here ya go. Remove the txt extension. This is the core of the edits that was getting a TS 10-12 days of 2G standby with no syncs and over 4 days 3G/HSPA+ standby with G+/Hangouts/Email and other apps syncing as they like.

Pay close attention to the loki99 edits. The governor changes alone save a bit of battery. It forces lowest clock rate and one core unless the device really needs both cores and higher clocks.

Here ya go. Remove the txt extension. This is the core of the edits that was getting a TS 10-12 days of 2G standby with no syncs and over 4 days 3G/HSPA+ standby with G+/Hangouts/Email and other apps syncing as they like.

Pay close attention to the loki99 edits. The governor changes alone save a bit of battery. It forces lowest clock rate and one core unless the device really needs both cores and higher clocks.

Ah you are still around. I have a 1/8/2100 (hence why I hadn't applied your ROM to benefit from those tweaks) is there anything I need to change other than the maximum frequency of 1001000 for that model?

There are no 2g networks in Korea or I'd have 3g disabled. So 3 to 4 days it is I think right now mine is tracking down at about 1% an hour, cell standby being the biggest consumer, is there anything that can be done to reduce that further?

Thank you I'll have a play. I take it I just put the script into the init.d folder and copy the parts of the buildprop to the system directory. Is there anything else to it?

Not really. I quit deving but somebody messaged me about this and pointed to this thread. 3G only kind of bites as the 2G radios are still on and looking for networks and using battery. Try DS Battery Saver and set it to "Agressive" or "Slumberer".

Aggressive will disable WiFi, data and syncs when the screen is off and every 2 hours it will turn on data/sync for about a minute and let your apps sync.

Slumberer will completely disable WiFi, data and syncs when the screen is off and only allow data/sync when the TS is awake.

Having wifi on at all unless there is a network it can connect to is useless.

My primarily use is for sports though, the GPS eats battery (as expected). But I want max power when starting.
Less crappy firmware with Bluetooth 4 and/or another dataplan may change my use though.

For more granular control, DS Battery Saver and Kernel Tuner have Locale plugin interfaces, so they can be used in Llama/Tasker. Tasker has some governor/CPU freq support too. Additionally Locale Execute plugin can be used to activate scripts similar to what Loki posted.

CPU Tuner works reasonably well out of the box, but I want to combine profiles with location, for instance wifi only at home. In addition, I have a data plan that require activation, so data/sync is only occasionally on. (Ad based, data, SMS, talk is free, but you have to watch ads every 2nd hour for data.) So for data to be on, the condition should be to ping some internet server. At home I use wifi when screen is on.
I have some Llama events setup now for multiple locations, may have to switch to Tasker to get what I want.

XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality.Are you a developer?