[APP][2.3+][NOV06,2012]Daemon Controller - a cpu daemon controller
DaemonController.apk by Sybregunne
Current Version: 4.3.2-beta1
Description:
A small android application that can control the daemons andrev_oc and virtuous_oc, directly set current cpu frequencies and modify cpu voltage in a per frequency basis.
Features
Supports android 2.3 (Froyo) and above (Tested with Gingerbread up to Jelly Bean)
Can configure andrev_oc and virtuous_oc
Allows switching between the two
Faster load times (average of 700ms)
Added core toggler hidden in the options menu as it is experimental at this stage. Works on tf101 using guevor kernel
Added IO scheduler setter hidden in options menu as well. (Experimental)
Supports 2 methods of undervolting
vdd_levels:echo " " > /vdd_levels
UV_mV_table:echo " ... " > /UV_mV_table where n is the number of available frequencies
Requirements
Android device (at least froyo)
Rooted device
Kernel with cpufreq module enabled
init.d scripting support (Optional)
Undervolting using any of the above-mentioned methods (Optional)
Install Guide
Download apk
Enable installing from unknown sources
Install normally
If you encountered a not installed error, uninstall old DaemonController use titatnium backup if necessary
Change log
Code:
Daemon Controller v4.3.2 beta1
Date released: Nov. 6, 2012
Trying to fix IO scheduler not displaying correct spinner dropdown items.
Implemented transparent background for io-sched/core enabler based on user preference.
[SPOILER]
Daemon Controller v4.3.1
Changed Version naming convention to accomodate very minor fixes.
Date released: Nov. 2, 2012
Fixed screen corruption and fc on startup when log is hidden.
Daemon Controller v4.3
Date released: Nov. 1, 2012
implented a basic io scheduler setter.
tweaked page indicator to look a bit like ics viewpager indicator.
Daemon Controller v4.2
Date released: Oct. 31, 2012
Added option to show/hide Rom and Kernel name.
Fixed Disabled Scaling tab when no oc daemon is present.
Added Holo theme for devices that support it.
Fixed some App logic that hinders enabling/disabling apply/reset buttons.
Daemon Controller v4.1
Date released: Oct. 29, 2012
Code cleanup.
Merged O/C D tab with Cpufreq tab to avoid confusion. Re-labelled as Scaling(frequency scaling)
Daemon Controller v4.0 rc10
Fixed issue of not reading available frequencies and governor for some roms.
Simplified the options menu.
Implemented remove andrev_oc
Implemented setting read permmission to available frequencies and governors.
Daemon Controller v4.0 rc9
Date released: Oct. 23, 2012
Fixed cpufreq tab not displaying correct values when applying changes to O/C D tab.
Added extra logic to apply/reset button. Allowing to change between using daemon or not.
Fixed auto-install to also auto-run. Gives option to open newly updated app.
Used dns provider co.cc instead of .net.tc as the latter has been down for almost a week.
Daemon Controller v4.0 rc8
Publicly released (Oct. 19, 2012)
Implement method 2 of undervolt
Attempt to remove some force close that still lingers
Added on the fly changes to UI preferences.
Added option to remove background transparency.
Daemon Controller v4.0 rc7
Publicly released (Oct. 15, 2012)
Outright change to cpufreq values on applying changes to o/c Daemon
Included a core toggle funciton under Options -> Preference -> core Toggle
Daemon Controller v4.0 rc6
Publicly released (Oct. 15, 2012)
Finally fixed init scripts for u/v and o/c.
Adjusted the timer to 10 mins previously 20 mins.
Daemon Controller v4.0 rc5
Publicly released (Oct. 14, 2012)
Moved init scripts from assets folder to String resource
Daemon Controller v4.0 rc4
Publicly released (Oct. 12, 2012)
Fixed init script file removing by removing the accidental "." that was there.
Daemon Controller v4.0 rc3
Publicly released (Oct. 10, 2012)
Fixed force close when moving to UV Tab
Omit UV values that are for system use only.
Daemon Controller v4.0 rc2
Publicly released (Oct. 10, 2012)
Fixed reset UI after changing frequency values.
Daemon Controller v4.0 rc1
Publicly released (Oct. 19, 2012)
Implemented the U/V Control
Included a new andrev_oc one that won't force terminate if a cpu core is turned off...
Daemon Controller v4.0 beta 09
Publicly released (Oct. 08, 2012)
Implemented the switch Daemon Button.
Removed "su" as the first command from scripts to prevent random freezes
Daemon Controller v4.0 beta 08
Publicly released (Oct. 08, 2012)
Added option to disable transition animation.
Fixed kernel name not re-read when kernel changed
Fixed permissions not setting correctly for: installed but not configured status
Daemon Controller v4.0 beta 07
Publicly released (Oct. 06, 2012)
Moved the what's new screen to the options.
Daemon Controller v4.0 beta 06
Publicly released (Oct. 06, 2012)
Added option to select Correct Rom Name to Display. Needs to restart app to take effect.
Added Check for update option.
Added auto update checking.
Daemon Controller v4.0 beta 05
Publicly released (Oct. 04, 2012)
Fixed pressing menu buttons moves active screen when already on the target screen.
Removed displaying of read asset files during startup.
Implemented the option to disable the log screen from on startup.
Daemon Controller v4.0 beta 04
Publicly released (Oct. 01, 2012)
Enable/disable screen1 based on existence of an o/c daemon...
included andrev_oc within the apk.
first option: install andrev_oc!
second option: show log
Enable back key to close the log screen, to minimize confusion.
Daemon Controller v4.0 beta 03
Publicly released (Sep. 26, 2012)
Add back the ability to create the init file 83oc...
Fixed UI only refreshes when applying changes to cpufreq
Added about screen for people to monitor changes...
Temporarily add the application version to the title of the app.
Daemon Controller v4.0 beta 02---
Publicly released (Sep. 21, 2012)
able to write oc daemon configurations
Requests root permissions only if changing values.
Tested with andrev_oc
UI doesn't refresh after apply
Daemon Controller v4.0 beta 01
Internal testing only
Remake of Daemon Controller v3.3b3
Removed features and re-add them one by one while ensuring program stability. (No Force Close)
Changed UI Layout
Not yet functional, just read the values. Root permission is not required.
On its own it acts as a text editor for some of the files in /sys/devices/system/cpu/cpuX/cpufreq (where X is 0 to X depending on the number of cores in your device.
If using andrev_oc or virtuous_oc. This app will help you edit the configuration files for both. Enable you to start and stop the daemon.
What specific files in /sys/devices/system/cpu/cpuX/cpufreq does it modify?
Quote:
scaling_governor - Sets/displays the governor that is currently being used.
scaling_min_freq - Sets/displays the lower limit for the range of frequencies that cpufreq scaling will use.
scaling_max_freq - Sets/displays the upper limit for the range of frequencies that cpufreq scaling will use.
So What is this cpufreq scaling that you mentioned?
Quote:
cpufreq scaling is a linux kernel feature that controls devices' frequencies(speed) and governors(scaling) and many other features relating to cpu.
the word scaling refers to stepping-up or stepping down of cpu frequency based on core utilization.
So why should I modify these system settings?
Quote:
When device manufacturers designed their devices they attempt to strike a balance between a lot of factors like performance, stability, and battery life.
But users' needs varies, example one user might not play games at all and use their devices only for calling, texting and emailing.
So it would be rather useless for them to be running at max frequency that their devices can handle. This is where the app comes in.
You can set your frequencies and choose an appropriate governor for your use-case scenario.
Okay, what is the best governor to use?
Quote:
There are a lot of governors out there, the most common of which are ondemand, conservative, interactive, powersave, userspace and performance.
To make a short summary:
ondemand and performance prioritize higher frequency levels based on cpu-core usage.
conservative and powersave prioritize lower frequency levels based on cpu-core usage.
The difference is how they compute cpu-core usage and how much they step-up the frequency ladder. Although this can be fine-tuned which is a future feature for Daemon Controller.
So best governor? It is really up to you the user.
Do I need to use andrev_oc or virtuous_oc?
Quote:
andrev_oc and virtuous_oc allow the users to have 2 sets of values for the device. One for when the screen is on and the other when the screen is off.
So if you want to set a lower frequency and a less agressive governor when the screen is off then use the daemon. a little warning though, some ROMs have built in
scripts that modify frequency and governor during sleep and wake. I.E. Siyah & Dorimanx kernel.
This FAQ is still incomplete. I will be adding to this soon.
XDA Developer TV Producer Kevin wants to help make your … more
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?