[Galaxy S II General] Many40:
Battery friendly config Neatrom 4.X + Siyah6.0 beta5 ver 1.03

Here you are a next release of my battery friendly config. This time for NeatromLite4.X JB and new Siyah 6.0 beta 5. I had to update my previous config due to the fact that Gokhanmoral changed previous Siyah6.0 kernel (beta 4) significantly. The main changes he made which influence previous tweaks are:

- limited number of frequency steps (from 16 to 6)

- fixed bug related to not keeping after reboot (previously set in STweaks app) governor and I/O scheduler.

My battery results are a little worse than on Siyah6.0 beta4 (but still not so bad :)). This could be caused by following reasons:

- IMO, having less frequency steps, a governor scales CPU less efficiently than with more steps

- during battery test on the new kernel my average screen brightness level was Medium/90%, while before (for previous kernel) it was Dark/84%.

Now I'm gonna repeat again what I wrote last time:

If you find something useful for your setup here, don't hesitate to hit THANKS button.

HERE YOU ARE - MY BATTERY FRIENDLY CONFIG:

DISCLAIMER:

1. Everybody can try it but not necessarily it will work for everybody like it works for me.

2. Remember that our phones' hardware is not 100% identical.

3. Make nandroid backup before trying this

4. If any tweak causes freezes, restore your nandroid backup.

Changelog:

[B]Version 1.01:[/B]
- Replaced "Stweaks_Siyah6b5_Many40.zip" archive with "Stweaks_Siyah6b5_CWM.zip"
flashable file. Now it's no need to replace STweaks profile manually
[B]Version 1.0.2:[/B]
- Added all scripts+Stweaks profile in one file
(Many40_Battery_tweaks_Siyah6b5_CWM.zip)
- Added restorer file (Restorer_Siyah6b5_CWM.zip)
- Added additional command into "pegasusqsio" script in order to keep
"sio" I/O scheduler after reboot
- Adjusted VM tweaks in "Writecache" script to less aggressive values.
Previous ones were too laggy.
[B]Version 1.03:[/B]
- updated rom's settings (among other things added Greenify app support to hibernate some user apps) - thanks to bobdoblo who convienced me to use it.

My config is as follows:

- Battery: 1650mAh (results are attached at the end of this post)

- Rom: NeatromLite 4.3 XWLSD (however tweaks are universal for all Neatroms 4.X) - big thanks to Salesale

- Kernel: Siyah6.0 beta 5 - big thanks to Gokhanmoral

1. KERNEL TWEAKS:

It is possible to flash single tweaks separately (description below) or all of them at once by flashing attached "Many40_Battery_tweaks_Siyah6b5_CWM.zip" file from CWM recovery.

A. STweaks settings: in attached Stweaks_Siyah6b5_CWM.zip (flash attached "Stweaks_Siyah6b5_CWM.zip" file from CWM recovery) - inspired by Droidphille's great thread

- CPU UC/UV , made by STweaks:

[B]MHz/mV:[/B]
200/825
500/950
800/1000
1000/1075

- GPU FREQ/VOLTAGE steps/levels by STweaks (VPLL MODE: OFF):

Step/level 1: 54MHz (800mV)
Step/level 2: 66MHz (800mV)
Step/level 3: 108MHz (800mV)
Step/level 4: 160MHz (850mV)
Step/level 5: 267MHz (950mV)

- ARCH POWER: ON - in current ver. of kernel is set ON by default.

- SCHED_MC: OFF (when CPU Legacy Hotplug is set to ON then hotplugging does load balancing already by taking care of thresholds, run queues, process priorities etc) - by STweaks - big thanks to Droidphile for his objective explanation.

- SMOOTH_SCALING: OFF (when "freq_step" is set as one of the pegasusq parameters, it senseless to keep smooth_scaling ON, as they do the same) - by STweaks.

- Brightness Response Curve settings by STweaks - they are very important for battery life. However if you feel your screen is too dark (adjust them in the app)

- As well many other settings contained in STweaks profile file.

B. Pegasusq governor tweaked by init.d script (flash attached "Pegasusq_Siyah6b5_CWM.zip" file from CWM recovery) - inspired by Droidphille:

#!/system/bin/sh
su
echo "90" > /sys/devices/system/cpu/cpufreq/pegasusq/up_threshold
echo "80" > /sys/devices/system/cpu/cpufreq/pegasusq/up_threshold_at_min_freq
echo "60000" > /sys/devices/system/cpu/cpufreq/pegasusq/sampling_rate
echo "1" > /sys/devices/system/cpu/cpufreq/pegasusq/sampling_down_factor
echo "5" > /sys/devices/system/cpu/cpufreq/pegasusq/down_differential
echo "20" > /sys/devices/system/cpu/cpufreq/pegasusq/freq_step
echo "200000" > /sys/devices/system/cpu/cpufreq/pegasusq/freq_for_responsiveness
echo "15" > /sys/devices/system/cpu/cpufreq/pegasusq/cpu_up_rate
echo "15" > /sys/devices/system/cpu/cpufreq/pegasusq/cpu_down_rate
echo "800000" > /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_freq_1_1
echo "500000" > /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_freq_2_0
echo "350" > /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_rq_1_1
echo "200" > /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_rq_2_0
echo "0" > /sys/devices/system/cpu/cpufreq/pegasusq/ignore_nice_load
echo "1" > /sys/devices/system/cpu/cpufreq/pegasusq/io_is_busy
echo "0" > /sys/devices/system/cpu/cpufreq/pegasusq/max_cpu_lock
echo "0" > /sys/devices/system/cpu/cpufreq/pegasusq/hotplug_lock
sleep 45
echo "sio" > /sys/block/mmcblk0/queue/scheduler

C. Sio I/O scheduler (in my opinion performs well for our flash drives) set by init.d script from attached "Pegasusq_Siyah6b5_CWM.zip", together with pegasusq governor. If you prefer other schedulers you can also try "row" or "noop".

D. Touch frequency limited from 500MHz to 200MHz - by init.d script (flash attached "TouchFreq_Siyah6b5_CWM.zip" file from CWM recovery) - big thanks to Tungstwenty for help with kmemhelper command:

/sbin/busybox sh
su
kmemhelper -n `grep "^$(cat /proc/kallsyms | grep ' mov_hysti$' | cut -c1-4).* level\." /proc/kallsyms | grep -o "level.*"` -t int 5

E. CFS tweak: Thunderbolt: it sets specific multitasking behaviour of processor's scheduler (flash attached "CFStweaks_Siyah6b5_CWM.zip" file from CWM recovery)

/sbin/busybox sh
su
/res/uci.sh cfs-tweaks 2

F. VM tweak: virtual memory tweak for battery life (flash attached "VMtweak_Siyah6b5_CWM.zip" file from CWM recovery)

/system/bin/sh
su
echo "500" > /proc/sys/vm/dirty_expire_centisecs
echo "1000" > /proc/sys/vm/dirty_writeback_centisecs

Remarks:

- to revert back all kernel's tweaks - flash Restorer ZIP file from CWM recovery (Restorer_Siyah6b5_CWM.zip).

- to avoid long lasting "l2_hsic" wakelock - reboot phone after charging battery and don't disconnect USB cable when the screen is off (unlock it first).

2. ROM TWEAKS

- autorotation: OFF

- syncing: OFF

- frozen (optionally removed) some useless system apps (according to individual needs - do it carefully, remove only if you know what you are doing).

This is my list of removed apps:

Here you can find very usefull guide by bobdoblo (which system apps are safe to remove) -

Bobdoblo's Neatrom Super Lite

- hibernate with

Greenify app

frequently used user apps (the app will sugest them) to stop them from battery draining when not required. Don't "greenify" apps which use bacground functionalities like: alarms, instant messaging, push messages, widgets updates etc

- minimazing partial wakelocks/alarms by proper settings of different apps using BetterBatteryStatts, OS monitor and Gemini App Manager

I disabled autostart of some apps with Gemini App Manager using common sense of that what means - I didn't touch what I was not sure (especially GSF).

- dark coloured wallpapers

- limited number of widgets (auto update OFF or update frq decreased)

- wireless and networks / mobile networks / mobile networks / network operators - chosen specific operator (no "automatic selection")

- wireless and networks / mobile networks / mobile networks / network mode - WCDMA only. If someone doesn't need very fast data transfer he can change it to GSM only (2G) - it drains less battery. However if possible I recommend to use WiFi instead of mobile data.

- turn ON WIFI or mobile data only when you need them, unless turn them OFF

-

Fast Dormancy

- OFF (Turn on

ONLY

if your mobile network supports that). Following this GUIDE you will find out if your network supports FD or not. Shorter way to find out that is to check with BBS app if you have long wakelock "secril_fd-interface". If YES - disable FD in your phone.

Remark: It seems that FD has less importance than on older roms because many people report that no matter whether mobile network supports FD or not, having it turned OFF -

has no significant difference

.

Summary - turn it OFF and observe wakelocks, if nothing happens - keep it like that.

- power saving - OFF

- sounds / system - all options OFF

- sound / vibration intensity > all sliders to MINIMUM

- display / touch key light duration - ALWAYS OFF

- display / screen timeout: 15sec.

- display / brightness - Manual/Minimum (if too dark as low as possible),

- date and time / Automatic date and time - OFF

- developer options / Windows animation scale - Animation is OFF

- developer options / Transition animation scale - Animation is OFF

- motion / motion activation - OFF

Also pls see attached screenshots of my battery statistics from the test.

Remark: I used my phone not so much intesively (mobile data/browsing on xda with Tapatalk app/internet, some usage of sms, a little bit of phone calls etc):

A. General results:(made on version 1.00)

Battery 1650mAh:

- On battery time (100% - 2%): 1d 8h

- Screen on time: 6h 15min

- Voice calls: 15min

- Most of the time when screen ON - mobile data ON (3G)

- Average screen brightness - Medium: 90% time / 93% power

B. Samsung built-in Battery monitor:

C. GSam Battery Monitor Pro:

Enjoy

PS If you have any remarks/suggestions how to improve it, please let me know