Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,768,353 Members 46,167 Now Online
XDA Developers Android and Mobile Development Forum

[APP][2.3+][NOV06,2012]Daemon Controller - a cpu daemon controller

Tip us?
 
Sybregunne
Old
(Last edited by Sybregunne; 6th November 2012 at 08:44 AM.) Reason: changed title
#1  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
Angry [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
    1. vdd_levels:echo " " > /vdd_levels
    2. 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
  1. Download apk
  2. Enable installing from unknown sources
  3. Install normally
  4. 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.
    [/SPOILER]
Downloads

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
The Following 29 Users Say Thank You to Sybregunne For This Useful Post: [ Click to Expand ]
 
Sybregunne
Old
(Last edited by Sybregunne; 22nd October 2012 at 09:43 AM.)
#2  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
FAQ
  1. What does this app do?
    Quote:
    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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
The Following 2 Users Say Thank You to Sybregunne For This Useful Post: [ Click to Expand ]
 
Sybregunne
Old
(Last edited by Sybregunne; 22nd October 2012 at 09:45 AM.)
#3  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
andrev_oc by Sybregunne

Features
  • Compiled using Android Source prebuilt tools
  • Dynamically linked (Works with most kernel version)
  • Debug stripped (smaller file size and faster execution)
  • Version reporting (andrev_oc --version)
  • Configure all cores of device.
  • logs actions to logcat
  • Small memory footprint
Requirements
  • Rooted device
  • Kernel with cpufreq module enabled
  • init.d scripting support (Not really required but is a must)
Install Guide
  1. Install from DaemonController <---make this a link to the DaemonController post
  2. CWM flashable zip file.
  3. Manually by following this
Change log
Quote:
  • None so far
Future Plans
  • Support fine tuning of governors
  • Support hotplugging of CPU Cores
Downloads
  • None so far

Thanks to all those who support through donations, feedbacks, and app testing!!!

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
The Following 4 Users Say Thank You to Sybregunne For This Useful Post: [ Click to Expand ]
 
Sybregunne
Old
(Last edited by Sybregunne; 5th November 2012 at 03:20 AM.)
#4  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
Currently working on migrating UI to support action bar and view pager + fragments to make it easier to update in the future.

Suggestions by users for Daemon Controller
  • Governor tweaks
  • Battery profile
  • On Call profile
  • Temperature profile
  • Profile for apps?

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
The Following 3 Users Say Thank You to Sybregunne For This Useful Post: [ Click to Expand ]
 
Sybregunne
Old
#5  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
Reserved 4

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
The Following 2 Users Say Thank You to Sybregunne For This Useful Post: [ Click to Expand ]
 
sixty_oz
Old
#6  
sixty_oz's Avatar
Senior Member
Thanks Meter 22
Posts: 197
Join Date: Jul 2011
Location: Glace Bay
Will this work on jelly bean? I used to use this on my HTC desire.

Sent from my HTC One XL using xda premium

HTC Desire, HTC EVO 3D, HTC Incredible S, HTC One XL, Samsung Galaxy S3, Samsung Galaxy Tab 2 10.1", Samsung Galaxy Note II, HTC One
 
Sybregunne
Old
#7  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
Quote:
Originally Posted by sixty_oz View Post
Will this work on jelly bean? I used to use this on my HTC desire.

Sent from my HTC One XL using xda premium
I have tried on a galaxy s2 with a jb rom. So theoretically it should work.

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
 
ferencz1
Old
#8  
ferencz1's Avatar
Senior Member
Thanks Meter 32
Posts: 277
Join Date: Jun 2011
Location: Velika Gorica
here are my screenshots of the app
Attached Thumbnails
Click image for larger version

Name:	2012-10-24 13.53.58.jpg
Views:	1752
Size:	57.8 KB
ID:	1426977   Click image for larger version

Name:	2012-10-24 13.57.01.jpg
Views:	1792
Size:	57.7 KB
ID:	1426978   Click image for larger version

Name:	2012-10-24 13.57.05.jpg
Views:	1659
Size:	49.9 KB
ID:	1426979   Click image for larger version

Name:	2012-10-24 13.57.08.jpg
Views:	1607
Size:	52.9 KB
ID:	1426980  
HTC Desire: S-OFF, Alpharev cm7r2
- MildWild Based On Redux2 -
Radio: 5.11.05.27
Recovery: 4ext Recovery Touch 1.0.0.5 RC8
 
Sybregunne
Old
#9  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
Quote:
Originally Posted by ferencz1 View Post
here are my screenshots of the app
You said 3.1 works for you?

Sent from my virginal HTC One X using Tapatalk 2

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...
 
Sybregunne
Old
(Last edited by Sybregunne; 24th October 2012 at 03:40 PM.)
#10  
Sybregunne's Avatar
Senior Member - OP
Thanks Meter 1127
Posts: 972
Join Date: Jan 2011
Location: Currently in Singapore

 
DONATE TO ME
Quote:
Originally Posted by Sybregunne View Post
You said 3.1 works for you?

Sent from my virginal HTC One X using Tapatalk 2
Question: can you check if you have the file "/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies"

I am trying to see if this will work... will attach sample app later

Edit try attachment below. I added a check file perm when reading files....
Sent from my Transformer TF101 using Tapatalk 2
Attached Files
File Type: apk DaemonController-ferencz1.apk - [Click for QR Code] (275.4 KB, 157 views)

andrev_oc | DaemonController-4.3.2-beta1.apk | Thread | Donate



Borrow money from pessimists they hardly expect them back...

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes