Make Your Network Smart – XDA Xposed Tuesday

We rave about the features and abilities of our smartphones. However, in order for … more

Dr.Ketan Brings The S6 Theme Store To The Note 4

Dr.Ketan has submitted a video to the forums showing a functional port of the Galaxy S6 … more

Do You Have Insurance on Your Smartphone?

While affordable smartphones are becoming more available, the majority of high-end flagships … more

Apple Music Will Increase iTunes Match to 100,000 Songs

The battle for music streaming subscription dominance is starting to really heat … more

[APP][OC/UV/Governor][GPU OC][GB][21 June]Control Freak 0.5beta (NEW!!)

635 posts
Thanks Meter: 208
By shane87, Senior Member on 10th May 2011, 03:28 PM
Post Reply Subscribe to Thread Email Thread
Control Freak, the OC/UV app for Gingerbread!


NEW RULE! Read the ENTIRE op, plus the last few pages BEFORE posting a question!! I don't mind sharing information and helping people, but answering the same question on every page is getting old!!

Control Freak is a re-write of xan's Voltage Control app, designed to work with Gingerbread based kernels. It has (most of) the features of my Voltage Control EX.

Beware!! This app is still in development! Any issues are being worked on, but it may not run perfectly!! Also, I, nor anyone who has helped to make this app or the kernels/roms it works with are responsible for any damages caused by use of this app or any kernels/roms supported by this app!!

Designed for use with JVx based Gingerbread kernels
Works with cm7 kernels that support OC/UV
Specifically designed around features present in existz's Talon kernel
Allows enable/disable specific states
Allows undervoltage control on a state-by-state basis
Allows limiting clock to a specific speed
Allows changing of governors
Allows control of Cpu Threshold settings - see note2 bellow.
States enabled info is found by opening each UV control.
TIS info is now shown on the main screen
TIS info for Deep Sleep
TIS percentages
Logs all major start up values as they are polled from the sysfs.
Logs all settings to be applied when Apply is selected
Logs all settings to be saved when Save As Boot is selected
Controls GPU Clock settings on compatible kernels!!

GPU O/C Capable Kernels for Captivate:
Talon 0.3.1 by eXistZ -Released to public
Le Kernel du Jour by TheEscapist - CM7, may be only available on private test versions, talk to TheEscapist for more info
Glitch Kernel by glitch - CM7, may be only available on test versions, talk to glitch for more info

Note: On Gingerbread, the conservative governor is NOT recommended! Interactive/ondemand/smartass governors are supported, and interactive is the preferred governor! Talon does not have smartass implemented yet, so smartass will not show up in the Governor dropdown on Talon.

Additional Note: As of Talon 0.2.1, interactive governor is NOT included anymore! Existz removed it in favor of the ondemand governor.

Note2: Cpu Threshold control is NOT supported on most Gingerbread kernels, since Cpu Threshold is used by conservative governor. I just added the Cpu Threshold settings, so that I can make this backwards compatible with FroYo kernels/roms.

NOTE 3:If you are experiencing issues with settings not sticking on reboot, go to the Market, download the busybox installer by stericson, and install busybox 1.17.1. Some roms, including Perception II, have a version of busybox 1.18.4 that does not have run-parts compiled into it. Without run-parts, nothing in /etc/init.d gets loaded at boot. The version of 1.17.1 included in stericson's busybox installer DOES have run-parts, so it will work.

Change log -

Control Freak 0.5b:
- Added GPU Overclocking controls! Please note that your kernel must support GPU Overclocking for this feature to work! Also note that this version has NOT been tested on kernels without GPU Overclocking, so if anyone has a kernel that does not have GPU Overclocking, test this out and let me know how it goes!!
- Fixed the states enabled command to remove the extra 0 at the end that was being added due to Deep Sleep info

Control Freak 0.4.2b:
- Fixed fc issue on kernels with higher number of states available
- Changed the icon, the new icon was designed by b_randon14

Control Freak 0.4.1b:
- Fixed save function, now the proper max frequency is written to S_volt_scheduler
- Added logging to save function
- Added logging to apply function
- Log is now cleared when it is exported, so the log starts from scratch after each export

Control Freak 0.4b:
- Added Deep Sleep TIS info.
- Added TIS percentages.
- Added logging
- NOTE: Logging DOES NOT use logcat, so there is no need to enable logcat to generate logs, or to view/export the logs.

Control Freak 0.3.5b:
- Fixed the Max Frequency issue where any changes to the Max Frequency dropdown were not being saved. Now it writes the proper value to the proper place.
- Fixed another issue with Max Frequency dropdown. If you applied a Max Frequency LESS THAN the highest state enabled, on closing and restarting CF, it would show the highest enabled state as the max frequency, regardless of current setting. Now, if you set limit to 1000MHz, it will show 1000MHz at launch, no matter how many states above that freq that are enabled.
- Fixed the SI unit prefix for frequency. Forgot that 'm' is for "milli" and 'M' is for "Mega." And I was even arrogant enough to tell someone that I was right!!! Anyway, it is fixed now. And a HUGE thank you to aalh for pointing out my mistake!

Control Freak 0.3b:
- Fixed the TIS info issue. Now each state shows it's own TIS, instead of the
the TIS for the first state.
- Moved the TIS info to the main screen, so that it is visible all the time.

Control Freak 0.2b:
- States info issue resolved
- Unsupported kernel issue resolved (Same underlying cause as the states info issue)

Control Freak 0.1b:
- Initial Release

Known Issues -
- Sometimes, gpu read out will disappear for some states at random. If you open the uv/gpu controls, it will show the read out again. Closing the controls may cause that state's readout to stay and cause other states to loose their displays at random. May have to do with a glitch in the code to hide gpu controls for non-gpu compatible kernels.

- Sometimes it will not pull states_enabled_table info. This causes the CPU Limit dropdown to be empty. As an interim solution, until I can track down why this is happening, either exit Control Freak and launch it again, or simply enable each state, and they will be added back to the dropdown.

- Occasionally will report an unsupported kernel. If you are sure your kernel IS supported, simply restart.

Sources available at

Report any issues by posting IN THIS THREAD or sending me a PM. But please, read through the thread, and check the known issues section of this post before posting an issue. If your issue is listed, quote the original issue report, and add details about your system and set up. "Me too!" comments are not helpful and will be ignored.

Issues may also be reported by sending an email to If you use this method to report bugs/issues, please export the log from Control Freak and attach it to the email. To export Control Freak's log, launch Control Freak, press Menu > Export log. The log will be exported to /sdcard/cf.log. Please attach this file to any emails addressed to me using the above link.

NOTE: I removed CF 0.3b due to the number of bugs in that software. Granted, all of them were fairly minor bugs, and primarily affected the UI, other than the Max CPU Limit issue. But with that issue, on top of the inability to enable/disable a state since you couldnt see the checkboxes, ther wasnt a whole lot you could do with 0.3b. Anyway, 0.3.5b takes care of those problems.

I removed CF 0.4b due to the Save errors, 0.4.1b has the same functionality, and it works right!

A HUGE thank you and shoutout to b_randon14 for designing the new icon!
Keep up the good work!!
If anyone has a Samsung Intercept, or knows anyone with a Samsung Intercept, check out bROM over at sdx, a deodexed, rooted rom designed by my brother, b_randon14!
Attached Files
File Type: apk control-freak-0.1b.apk - [Click for QR Code] (35.9 KB, 412 views)
File Type: apk control-freak-0.2b.apk - [Click for QR Code] (42.9 KB, 151 views)
File Type: apk control-freak-0.3.5b.apk - [Click for QR Code] (42.9 KB, 293 views)
File Type: apk control-freak-0.4.1b.apk - [Click for QR Code] (44.8 KB, 361 views)
File Type: apk control-freak-0.4.2b.apk - [Click for QR Code] (61.8 KB, 449 views)
File Type: apk control-freak-0.5b.apk - [Click for QR Code] (63.3 KB, 11442 views)
Last edited by shane87; 6th July 2011 at 03:30 AM.
The Following 25 Users Say Thank You to shane87 For This Useful Post: [ View ]
10th May 2011, 03:29 PM |#2  
OP Senior Member
Flag Waynesburg, KY
Thanks Meter: 208
Donate to Me
Anyone interested in contributing, drop me an email at, and I will get you added as a contributor on github!
The Following User Says Thank You to shane87 For This Useful Post: [ View ]
10th May 2011, 03:29 PM |#3  
OP Senior Member
Flag Waynesburg, KY
Thanks Meter: 208
Donate to Me
Reserved +++
10th May 2011, 03:36 PM |#4  
Senior Member
Thanks Meter: 54
I know its still in development but with JVH out and existz already working on a JVH talon build (continuum rom has it for now), you might have to implement that too.
10th May 2011, 04:50 PM |#5  
OP Senior Member
Flag Waynesburg, KY
Thanks Meter: 208
Donate to Me
Originally Posted by grkmaster

I know its still in development but with JVH out and existz already working on a JVH talon build (continuum rom has it for now), you might have to implement that too.

Yeah, I am aware of JVH, and I plan on adding JVH compatibility as soon as existz's begins to release JVH-based kernels. Actually, as long as the sysfs is still implemented the same way, there SHOULDN'T be any issues. Of course, I thought the same thing about going from FroYo to to Gingerbread, and it wasn't quite that easy. But compared to the full re-write, which has taken almost three weeks, going from JVB to JVH shouldn't be as bad.
10th May 2011, 04:56 PM |#6  
OP Senior Member
Flag Waynesburg, KY
Thanks Meter: 208
Donate to Me
Anyone interested in looking at the sources on github, I have committed fix that prevents the app from fc'ing at launch. As it turns out, calling the inflater function to inflate a view does NOT save that view unless you specifically tell it to! Seriously though, it was a simple issue of forgetting to add a word or two of code. It is amazing how one messed up variable, or even a missing period, can complete crash an app. Now, just to get the layout setup so that everything is visible and positioned correctly.

Hopefully, I will have a running release ready by the end of the day.

P.S. If you intend to DIVIDE by 1000, and you accidentally put SUBTRACT 1000, Java/Android won't tell you that you are an idiot. It will just cause the app to crash, lol.
11th May 2011, 03:52 AM |#7  
OP Senior Member
Flag Waynesburg, KY
Thanks Meter: 208
Donate to Me
Control Freak is live!!

Please read the OP, especially the known issues section.
11th May 2011, 04:56 AM |#8  
goob1284's Avatar
Senior Member
Thanks Meter: 17
Using this app right now! Let's see how it goes! Im accutally excited cause I don't really like setcpu or voltage control

Sent from my GT-I9000 using XDA App
11th May 2011, 09:36 AM |#9  
superj3211's Avatar
Senior Member
Flag Little Rock
Thanks Meter: 7
will this app also work with cm7 gb or just the i9000 ones
11th May 2011, 10:54 AM |#10  
OP Senior Member
Flag Waynesburg, KY
Thanks Meter: 208
Donate to Me
Originally Posted by superj3211

will this app also work with cm7 gb or just the i9000 ones

I do not know. I don't have cm7 installed, and have not tested it against cm7. If cm7 implements oc/uv in the sysfs like Talon does, it SHOULD work, but again, no guarantees.

Sent from my Samsung Captivate using XDA App.
ROM: Cognition v4.3
Kernel: Onix 2.0.4, Voodoo Sound v7, Voodoo Color, lagfix
Modem: I9000 tljl3
HW Build Number: 1101
Post Reply Subscribe to Thread

gingerbread, governor, oc/uv, talon, voltage control
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes