[APP][ROOT][Yureka Thermal Control][Gaming][Balanced][Conservative] - Android Apps and Games

The Yureka Thermal Control is an android application written by me for rooted users of YU Yureka+/Yureka, this app gives you the ability to change the thermal configuration of your device. This will help the users to switch according to their requirements, I consider this a very useful application for all Yureka users since no one is satisfied with the performance to heat ratio.
The Yureka Thermal Control has four different settings explained below, if you use this app, make sure to test for minimum 12 hours before saying anything, you cannot judge anything just by 1 hour of usage. Below is the explanation of the available settings -
1. Gaming -
Using the gaming thermal config will help gamers and heavy users, this option is meant for those who don't like cores turning off quickly even with mild heat. With this config, cores will not be hotplugged easily, cores will start hotplugging only when cpu temperatures are above 56-58 range, hence gamers and heavy users won't face any lags with extended usage.
2. Balanced -
This is the thermal config which comes inbuilt with my builds of RR Rom, this is a precisely tweaked version of the stock Yureka thermal config. The stock config only turns off cores when device heats, in addition to that this config will also ramp down cpu and gpu frequency by one step. This helps in further reduction of heat with mild battery backup improvement.
3. Conservative -
The conservative thermal config is meant for those users who don't use many heavy applications on their device, this config is slightly more aggressive in terms of throttling and hotplugging compared to the balanced config. This config controls heating to a great extent at the cost of mild performance drop which is only noticeable in heavy games.
4. Ultimate -
The ultimate thermal config is meant for those who have light usage like internet messaging or browsing the web and basic phone operations. This config will control heat generation most aggressively at the cost of performance drop. Since throttling and hotplugging is fastest with this config, battery backup will also be increased with this config.
Compatibility -
Yureka thermal control is only for rooted users.
Tested on lollipop and marshmallow roms.
Don't try this on other devices.
Instructions -
Install the yureka thermal control application
Select the desired configuration
Press apply button
Reboot device
Important -
This app requires root permissions and will replace your /system/etc/thermal-engine.conf, If you want to verify which thermal config you are using, find a file named thermal in your internal sdcard and open it as text, your current thermal config status will be written there.
Download Yureka Thermal Control
Thank you for reading :fingers-crossed:
XDA:DevDB Information
Yureka Thermal Control, App for all devices (see above for details)
Contributors
Umang96
Version Information
Status: Stable
Current Stable Version: V1.0
Stable Release Date: 2016-07-02
Created 2016-07-02
Last Updated 2016-07-01

Reserved

Working On MM?

Hell7 said:
Working On MM?
Click to expand...
Click to collapse
Yes

Is this works on cm13 ?

is it okay if you just uninstall the app any time? because there is no revert to default option in the app

Related

Padfone 2 A68 [Kernel] Stone custom kernel for ASUS Padfone 2 - OC/UV/GPL/etc

Presenting the Stone Kernel for ASUS Padfone 2 (A68), a custom kernel designed to get a little more out of the Padfone 2.
DISCLAIMER: As per all custom kernel disclaimers, while I do test this kernel on my own device, I'm not responsible for you voiding your warranty, or any damage/bricking/weirdness that may occur to your Padfone. If you're not comfortable with this, do not proceed.
v0.9
Main features:
Based on ASUS source code v10.4.16.8, compatible with Android 4.1.1 stock PadFone2 firmwares
init.d support (init.rc busybox runparts)
USB OTG Host in phone mode
UI rendered with GPU instead of CPU, making it very snappy
Lowest CPU frequency set to 162mhz
CPU frequency locked to 162mhz-1512mhz during boot
Undervolted to save power & reduce heat
Undervolt interface (compatible with System Tuner, Kernel Tuner, etc)
Additional CPU Governors: Wheatley, InteractiveX v2, MSM_DCVS
Set InteractiveX v2 CPU Governor to default instead of Performance, to lower battery consumption, maintain snappy performance, and improve CPU freq config
GPU normal freq set to 200mhz to lower battery usage (will still scale upto 266/400/533mhz when busy)
Simple IO Scheduler (SIO) added, and set as default
Increased min/max read-ahead values from 16/128 to 32/2048
USB FastCharge upto 1400mA (enable using Kernel Tuner, sysfs, etc)
Lower minimum brightness to save power
Lower voltage for display (~13% lower voltage) to save power
NTFS USB drives need USB OTG Helper software or similar - working on fixing the NTFS module
Increased file cache ratio to improve storage performance
Standard edition: CPU max 1.51ghz, GPU max 400mhz
Overclock edition: CPU max 1.72ghz, GPU max 533mhz, low voltages
Powersaver edition: CPU max 1.35ghz, GPU max 266mhz, low voltages
Minor tweaks:
Replace Wifi modules with AOSP versions (needed due to the way the stock modules were compiled by ASUS)
Disabled swap
Disabled "Compile the kernel with debug info"
Disabled Debug memory initialisation
Disabled Magic SysRq key
NTFS in kernel (instead of module)
FAT support
Improved CPU multi-core frequency limiting
GitHub: https://github.com/lindsaytheflint/stone
Download:
Stock kernel 10.4.12.24: https://docs.google.com/file/d/0ByOiY1XD_cLvNVFwVi1Yc3lmS2M/edit?usp=sharing
Stock kernel 10.4.15.1: https://docs.google.com/file/d/0ByOiY1XD_cLvVU5KWkJqZzVrU00/edit?usp=sharing
Stock kernel 10.4.16.8: https://docs.google.com/file/d/0ByOiY1XD_cLvaGR2X19RS2hOa28/edit?usp=sharing
Stone kernel v0.1 "Dual": https://docs.google.com/file/d/0ByOiY1XD_cLva0Q3el9VbU1vd1k/edit?usp=sharing
Stone kernel v0.1 "Quad": https://docs.google.com/file/d/0ByOiY1XD_cLvdk9EcTAtdXdDRGM/edit?usp=sharing
Stone kernel v0.2 "Standard voltage": https://docs.google.com/file/d/0ByOiY1XD_cLvUFpSenoyXzFYRVk/edit?usp=sharing
Stone kernel v0.2 "Low voltage": https://docs.google.com/file/d/0ByOiY1XD_cLvclVXdEs4Qm1sb0U/edit?usp=sharing
Stone kernel v0.3 "OC": https://docs.google.com/file/d/0ByOiY1XD_cLvd28ybVB2MHhXTXc/edit?usp=sharing
Stone kernel v0.3 "STD": https://docs.google.com/file/d/0ByOiY1XD_cLvUnI4Z01YYzZBY1k/edit?usp=sharing
Stone kernel v0.4 "OC": https://docs.google.com/file/d/0ByOiY1XD_cLvd1lOQmI4c2duaGc/edit?usp=sharing
Stone kernel v0.4 "STD": https://docs.google.com/file/d/0ByOiY1XD_cLvM2QxdXVFMGcxRm8/edit?usp=sharing
Stone kernel v0.6 "OC": https://docs.google.com/file/d/0ByOiY1XD_cLvSm9XQVBqTWtBUEU/edit?usp=sharing
Stone kernel v0.6 "STD": https://docs.google.com/file/d/0ByOiY1XD_cLvN3otdjM3elNHYUk/edit?usp=sharing
Stone kernel v0.7 "OC": https://docs.google.com/file/d/0ByOiY1XD_cLvbTBralZ4aVZFOVk/edit?usp=sharing
Stone kernel v0.7 "STD": https://docs.google.com/file/d/0ByOiY1XD_cLvTGc2YWJFWFYxWGM/edit?usp=sharing
Stone kernel v0.8 "STD": https://docs.google.com/file/d/0ByOiY1XD_cLvNGxheldqTThNT2c/edit?usp=sharing
Stone kernel v0.8 "OC": https://docs.google.com/file/d/0ByOiY1XD_cLvOWw4cFBGb0xyUEk/edit?usp=sharing
Stone kernel v0.8 "PS": https://docs.google.com/file/d/0ByOiY1XD_cLvemtzSTlMZEpGcU0/edit?usp=sharing
Stone kernel v0.9 "STD": https://docs.google.com/file/d/0ByOiY1XD_cLvbUxWRHVPd1cyX2s/edit?usp=sharing
Stone kernel v0.9 "OC": https://docs.google.com/file/d/0ByOiY1XD_cLvd3FQOXJnbVZVbFE/edit?usp=sharing
Stone kernel v0.9 "PS": https://docs.google.com/file/d/0ByOiY1XD_cLvbm5qNFdHZWcwYjA/edit?usp=sharing
Installation:
1. Copy StoneK_A68_v0.9_OC.zip or StoneK_A68_v0.9_STD.zip to /sdcard/ via USB.
2. Copy StockKern_A68_10.4.16.8.zip to /sdcard/ via USB, in case you have trouble booting, and need to uninstall.
3. Boot into TWRP or CWM Recovery.
4. Perform backup of at least your "Boot" partition.
5. Install zip from step 1.
6. Reboot.
Uninstallation:
1. Copy StockKern_A68_10.4.16.8.zip to /sdcard/ via USB.
2. Boot into TWRP or CWM Recovery.
3. Install zip from step 1.
4. Reboot.
ChangeLog
ToDo:
Possibly faster CPU & GPU overclocking, pending successful testing
GPU undervolt
GPU freq sysfs interface
WiFi undervolt
Enable additional audio codecs: WMA, AAC, etc
BLN?
v0.9 - 2013/08/19
Raised voltage slightly for display, to increase compatibility with other's phones, and prevent flickering
Increase storage read-ahead from 1024kb to 2048kb
Increased file cache ratio to improve storage performance
v0.8 - 2013/07/29
Lower minimum brightness to save power
Lower voltage for display (~16% lower voltage) to save power
CPU lowest freq set to 162mhz (from 192mhz)
GPU idle frequency set to 200mhz (from 128mhz)
Fixed USB OTG for both phone & pad
NTFS USB drives need USB OTG Helper software or similar - working on fixing the NTFS module
Disabled MPDecision?
OC edition: GPU max freq set to 533mhz (from 487mhz)
New edition: Power Saver - lower CPU & GPU limits, useful when travelling
v0.7 - 2013/06/14
Built from 10.4.16.8 ASUS source code
Fixed camera
Removed Faux123 MSM CPUFreq_limit to improve multi-core freq limiting
Modified CPU freq limits so that cores 2-4 will never exceed core 1 frequency
v0.6 - 2013/06/05
Disabled Android Low Memory Killer (2GB RAM is quite a bit, and the perf cost of relaunching processes is annoying)
Enabled USB OTG Host in phone mode
Minor voltage tweaks
Added MSM_DCVS Governor
Added Faux123 MSM CPUFreq_limit to improve multi-core freq limiting
UI rendered with GPU instead of CPU, making it very snappy
Minor init.rc/build.prop tweaks
v0.5 - 2013/05/18
Enabled init.d support (init.rc busybox runparts)
v0.4 - 2013/05/13
Lowered InteractiveX default boost freq from 1512000 to 1350000
Increased USB Fast Charge limit from 1000mA to 1400mA
Fixed LCD backlight during calls
Reverted from GCC 4.7 to GCC 4.6 so ASUS modules load ok
v0.3 - 2013/05/07
Based on ASUS source code v10.4.15.1
Two versions - OC & Standard
Switched compiler from GCC 4.6 to 4.7
Further voltage tweaking
Fixed CPU throttling
Added InteractiveX v2 Governor - very good for properly setting CPU freqs across all cores
Set default Governor to InteractiveX v2
GPU overclock to 487mhz - working
GPU normal freq set to 128mhz to lower battery usage (will still scale upto 487mhz when busy)
Simple IO Scheduler (SIO) added, and set as default
Increased min/max read-ahead values from 16/128 to 32/1024
USB FastCharge (enable using Kernel Tuner, etc) - working
Removed Sysctl syscall support
Removed software controlled Adaptive Voltage Scaling (AVS)
Removed adaptive voltage scaling (AVS)
Removed Generic Dynamic Voltage and Frequency Scaling (DVFS) support
Removed CPU frequency translation statistics details
Reduced max CPU voltage back to 1.30v
Re-enabled "Monitor thermal state and limit CPU Frequency"
v0.2
Removed dual/quad versions - quad-core is running stably for me with revised voltages
Added standard/low voltage versions, for anyone having trouble booting, please try the standard version
Lowest CPU frequency set to 192mhz
Android Logger re-enabled temporarily, for USB FastCharge troubleshooting
CONFIG_SCHED_MC=n (not needed with HotPlugging CPU)
CONFIG_SCHED_SMT=n (not needed)
Disabled "Monitor thermal state and limit CPU Frequency"
Increased max CPU voltage from 1.30v to 1.45v (always monitor your temperature when increasing the voltage/frequency!!)
Further tuned CPU voltages
Added Wheatley Governor, and set to default
Disabled "Use MSM_DCVS for CPU/GPU frequency control"
GPU overclock to 487mhz - not verified yet - I think some kind of ASUS lock may still be preventing this
USB FastCharge (can be turned on with Kernel Tuner etc) - not verified yet - I think some kind of ASUS lock may still be preventing this
FAQ
Q. My phone is running hot!
A. This is usually related to the voltage being too high. Try lower voltage, and try to determine which frequencies are running hot for you. You may need to also restrict your max CPU frequency with SetCPU, System Tuner, Kernel Tuner, etc, if the frequency won't run stably on your phone.
Q. CPU-intensive apps (particularly games) terminate abnormally after a bit of use.
A. This usually means the voltage is a little too low for that frequency. Try to raise the voltage (only 12.5mv at a time) until you find a stable voltage, and let the rest of us know what value is best for you.
Q. My phone won't even boot with this kernel.
A. Sounds like the voltages are too low for you. Try the "STD" version, which uses voltages only slightly lesser than stock.
Q. I want GPU overclocking, but I don't want CPU overclocking.
A. Use the "OC" version, and use SetCPU, System Tuner, Kernel Tuner, etc, to set the max CPU freq you want.
Q. Proximity sensor doesn't work during a call
A. Fixed in version 0.4
How stable is it?
And also, if I read/understood the "main features" right, you limited the CPU to only use 2 cores instead of 4?
I read that you did it for more stability when overclocked, but if this only uses 2 cores out of it's 4, I will be very hesitant to flashing it...
Either way though, this is great progress! We are finally getting a handfull of developers for the Padfone 2! Hopefully we can get Cyanogenmod ported soon aswell!
Great job!
Lidenburg said:
How stable is it?
And also, if I read/understood the "main features" right, you limited the CPU to only use 2 cores instead of 4?
I read that you did it for more stability when overclocked, but if this only uses 2 cores out of it's 4, I will be very hesitant to flashing it...
Either way though, this is great progress! We are finally getting a handfull of developers for the Padfone 2! Hopefully we can get Cyanogenmod ported soon aswell!
Great job!
Click to expand...
Click to collapse
I've been using it for a few weeks, and when I had 4 cores enabled, I found it a bit unstable. With 2 cores enabled only, it flies along due to the higher frequency, and is rock-solid.
Unless you're using the MSM_DCVS Governor (which isn't default even on stock kernel), not all the cores are used except for under high load. Using Interactive, Performance, and other Governors, it usually keeps 3 cores off, and just powers the second one up when doing things. Only when running very CPU-intensive tasks will all 4 cores be used, and the phone will run very hot. If using the MSM_DCVS Governor, it'll continually lower the CPU frequency anyway. These factors are why I've limited the CPU cores - the end-result is a faster, cooler, and less power-hungry kernel.
Nevertheless, I'll upload another one in the next couple of days with all 4 cores enabled, so people can test it out.
First of all nice work here ! Good to see people progressing. As im still bit of a noob and my question maybe quite noobish.
I have NOS installed on my padfone 2 atm and its working flawlessly. Just before I try this I wanted to ask you if this will some way interfere with NOS ?
I would happily be our test monkey if needed
One more time,
Thank you !
Hey first of all this is very nice that you develop kernel to padfone and its nice to see some progress , but i would like that if you make the kernel with 4 cores and little bit smaller clocks ex 1.5 or 1.6 and if you set low freg to somewhere near 100mhz. That would be nice to see
Sent from my PadFone 2 using xda app-developers app
Great work! We finally have our first custom kernel
Great work... I will test soon as possible
Sent from my PadFone 2 using xda app-developers app
Quad core
I've recompiled the kernel with all 4 cores enabled, and will update after I've done some stress testing. (I won't upload it if it's not stable for me.)
When I tested it a few weeks ago, quad core was too hot, but I've tweaked the voltages quite a bit since then, so hopefully it'll be upload-worthy.
How to download link using phone?
Quad core version uploaded
I've uploaded the Quad core version too.
Curious to here other people's experiences on that - I personally find that my PF2 barely uses the 3rd & 4th cores (even on stock kernel), so I prefer the dual core kernel version (faster, more stable, less heat, less voltage requirements), but CPUs differ a little from phone to phone.
Keen to here people's tests from the dual core kernel vs the quad core kernel.
Me currently testing dual core version
Just downloaded and installed the QuadCore version. Will be back here in a couple of days!
Can you say thank you too many times ? NOT!
Thank you once more !
Thank you for quadcore version wil try it out!
Sent from my PadFone 2 using xda app-developers app
Reboots in Padfone Station
I tried to use the dual core version today during some meetings and it was fine when in phone mode, but after using it in the station for a while it would get very hot and then reboot. I was overclocking it to 1.7. Anybody else have similar experience?
sunshine333 said:
I tried to use the dual core version today during some meetings and it was fine when in phone mode, but after using it in the station for a while it would get very hot and then reboot. I was overclocking it to 1.7. Anybody else have similar experience?
Click to expand...
Click to collapse
Usually "very hot" means that the voltage needs to be lowered. Can you try using System Tuner to lower the voltage slightly for 1.7ghz frequency, and advise whether that helps?
i have flash the dual core ver.
But when i boot and at the asus loading logo, it keep shining white screen and some color line.
After booted into system it soft reboot again and again. then i revert to stock kernel it fine.
i already wipe cache/dalvik
i am using TWRP 2.5 and stock rom
Undervolting 1.7
I have not tried it in the padstation yet, but the 4 core version undervolted 1 step down (1125 I think?) was stable when I just played Final Fantasy 3 for about 20 mins. CPU spy shows that it was running at 1.7 during that time. No apparent heat issues and no reboots or anything like that. I will try it in the padstation and report back later.
---------- Post added at 03:49 AM ---------- Previous post was at 03:40 AM ----------
Just to be clear I only further undervolted the highest frequency (1.7). Other parts of the table were default for your 4c kernel.
Which app is recommended to overclocking and undervolting?

[KERNEL][3.0.31][HDMI][FULL HD][GUIDE 1.8]JBX-Kernel Hybrid [1,5ghz]

/// JellyBeanX-kernel ///​
DISCLAIMER
Me, XDA-Developers.com and anyone else doesn't take any repsonsibilty for damages on your device!
Rooting your device will void your warranty!
Don't play with settings you aren't familiar with, you could burn your device!!
Click to expand...
Click to collapse
READ THIS: I added almost all important topics which have been discussed around the kernel thread to the OP and wrote this FAQ just that you guys don't have to browse through 100+ pages of the thread. READ BEFORE YOU ASK and HELP TO KEEP THIS THREAD MORE CLEAN! BUT ALSO BETTER ASK ONCE MORE BEFORE YOU MESS UP YOUR PHONE! If you find something missing in this OP/FAQ, please PM me and I will add it. Thank you!
You can find the FAQ at the bottom of this post!
This is a direct port of my RAZR-JBX-Kernel Hybrid for Motorola Razr!
This kernel is built of the Kexec Project which was initiated first by Kholk & [mbm] and finished by the STS-Dev-Team (Hashcode, Dhacker). Using this kernel will provide addtional features to your ATRIX 2.
LATEST CHANGES (for latest release and NIGHTLIES)
--> DETAILED CHANGELOG JBX-kernel Hybrid <--
Kernel Guide by Placca 1.8!!
Check the FAQ section at the bottom of this post to download it! It will make many things easier for you and help you to understand the kernel and its features!
FEATURES
JBX-Kernel Hybrid
Battery Friend toggle (a battery friendly mode)
Intelli-Plug (Kernel side replacement for msm MPDecisions) by Faux123 + patches by me (no hotplugging when screen is ON)
Dynamic Hotplug: Second core will be turned off ONLY while screen is off - independent from selected governor. (Not needed when using Intelli-Plug)
Optimized OPP Table for smooth CPU scaling
Frequencies: 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300
Modifed Smartreflex driver (Custom Sensor for detecting n-Value).
Smartreflex Tuning Interface: Set min/max calibrated voltage
Overclocking using Live OC (mine runs stable at a maximum frequency of 1,498ghz!)
hwmod, uart, IRQs - cleanups from pre-kexec config to safe power
CPU: lower voltages for CORE and IVA. Give CORE the abbility to scale up to higher voltage if needed
Added IVA_NITROSB
Dynamic fsync control: FSYNC interval is dynamic depending on screen state (SCREEN OFF: synchronous, SCREEN ON: asynchronous)
HTC's Asynchronous Fsync port - read explanation below*
Dynamic page-writeback: Page writeback interval is dynamic depending on screen state.
Frandom v2
JRCU / Tiny RCU (currently JRCU in use)
Raised voltage limits for mpu a bit
Raised the temperature limits from 64c* to 74c* (degrees)
optimized CRC32 algorithm (better code generation)
RW Readahead dynamically depending on storage device (automatic detection of the best value)
zRAM support
GPU has 4 scaling steps and OC to 384mhz (Base freq: 102 mhz --> 154 mhz, 307 mhz, 384 mhz)
GPU C4 states / GPU Control (Governors, Frequencies)
Multicore Power Saving Mode Control
ARCH Dependant Power feature
Gamma Control
Front Buffer Delay Control (draw in x msecs on early suspend)
Screen/Display: Modified OMAPDSS for sharpness and lightning colors
OMAPDSS: Added variable clock rate and OPP - allows the screen to scale down power and voltage
lowmemkiller: Heavy modified for R/W Speed and efficient performance
ZCACHE, ZSMALLOC, XVMALLOC backported from 3.4, 3.7 and 3.10 (ZCACHE currently not in use)
Custom Voltage Support
IO-Schedulers: SIOPlus, Fifo, Row, VR, Noop, Deadline, CFQ, BFQ
ROW Scheduler is heavily tweaked to be the fastest scheduler ever!
CPU: More Governors
Deep Idle
ARM Topology
Many improvements in overall OMAP PM
SELinux permissive
GREAT performance!
battery life!
Support for Trickster Mod Kernel Control App (Download from Gplay)
*]Too much stuff to list here. See "Sources" below and check my Github
* HTC's Asynchronous Fsync and Dynamic Fsync:
Asynchronous fsync (called "afsync" or "async fsync") from HTC is ported into this kernel. By default it's enabled and dynamic fsync is disabled (and as well it isn't needed anymore).
The dynamic fsync toggle in Trickster Mod is now serving both functions - the dynamic fsync AND the asynchronous fsync! How? By default Dynamic Fsync is disabled, and Afsync is enabled. If you now enable Dynamic fsync using the toggle, Afsync will be automatically disabled, so both functions are not conflicting each other - and this way we have a working toggle for both of them.
CAUTION
This is a work in progress! Some of the current features are still not in final stat. If you are facing issues report back here and DON'T spam the threads of the rom you're using!
Be careful with some settings such like Voltage and Overclocking!!! If you aren't experienced with these things, dont play with 'em!
Click to expand...
Click to collapse
REQUIREMENTS
Rooted device
Must use a Kexec Rom (CM, AOKP, AOSP)
Recovery (BMM, SS)
REMOVE any kernel modules you used before
DEACTIVATE ANY CPU tweaks, onboot settings etc otherwise your phone may not boot!
CAUTION: The kernel needs a clean setup related to CPU tweaks / Settings, etc...Keep your device as clean as possible regarding to Tweaks, CPU special settings, etc. The Kernel brings its own CPU settings and after you can boot it succesfully, you can set it like you want!
Some roms may use CPU tweaks. This can cause issues like reboots and freezes. Check the init.d folder for any CPU related stuff and Kernel modules - then remove it. E.g. Remove any scripts which include "insmod" commands.
The best setting is to have stock CPU settings set
This kernel may not work on all roms! Check and report.
TO DO LIST
- Fix bugs
- Fix compile warnings
- More features.
INSTRUCTIONS
NOTE: CLICK here for a detailled Installation Guide (about the Aroma Installer, the features to select and more)
Download zip file from below
Reboot into recovery
Flash the kernel (BMM users: DON'T use the "Flash Kernel" Option! This is a usual zip file!)
Reboot
Download Trickster Mod App from Gplay! Read the FAQ to learn about playing with kernel features!
Enjoy!
EMERGENCY RESTORE
If you have tried a Nightly build and you phone is acting crazy, you can follow these steps:
Check the thread or ask for the latest stable kernel build
NO WIPES!
Flash the Rom (Yes, again! That one you're currently using.)
Flash Gapps
Flash Kernel
Reboot
DOWNLOAD
JBX-Kernel 3.0.8 Versions:
0.8.x ==> Android 4.2.2
1.x == > Android 4.3
2.x == > Android 4.4
JBX-Kernel 3.0.31 Versions:
3.x == > Android 4.4
TEST BUILDs
Test builds are potential prerelease builds which need some more testing before pushing to all users.
CAUTION: Should be stable mostly! But use at your own risk though!!
---> TEST BUILDS [CF] <---
XPERIMENTAL BUILDs
These builds include features without promises to work.
CAUTION: There is no promise that these version are stable/working/whatever! Use at your own risk!!
---> XPERIMENTAL Builds [Dev-Host] <---
---> XPERIMENTAL Builds [CF] <---
Click to expand...
Click to collapse
Something went wrong?
If you think you have set wrong "on-boot-values" in Trickster Mod flash this:
TRICKSTER RESET: http://dtrailer.de/kernel/trickster_reset.zip
FAQ
CAUTION: This FAQ and the whole OP, additional informations about Governors, IO Schedulers and detailed informations about the usage of Trickster Mod and this kernel can be viewed in the awesome Kernel Guide by Placca!
Kernel Guide 1.8
PDF: http://www.mediafire.com/download/7zaddcmvtxfk9ry/JBX+Kernel+Guide_v1.8.pdf
CHM: http://www.mediafire.com/download/g3ck1bf1k3a3j38/JBX+Kernel+Guide_v1.8.chm
CLICK HERE TO OPEN THE FAQ
Please check the following points if you don't know how to use the features of the kernel or you are facing any kind of issues.
INDEX
1. Kernel Features
1.1 Smartreflex (Turn ON/OFF, adjust min/max range)
1.2 Live OC (Realtime Overclocking)
1.3 Custom Voltage (EMIF)
1.4 GPU Overclock
1.5 Gamma Control
1.6 Battery Friend
1.8 IVA Overclock
1.9 DPLL Cascading (Currently not in use)
1.10 HDMI toggle
1.11 Intelli-Plug
2. Issues
1.1 How can I change the smartreflex minimum/maximum voltage
What is Smartreflex?
SR is compareable with an CPU governor but not for scaling frequencies but for voltages. That means SR has a fixed range of voltage (min/max) and calculates the optimal voltage for each CPU frequency. In example on light use of the CPU it scales down to lower voltage - on heavy use it can sclae to higher voltage. This is an efficient system to save power! Compared to EMIF which uses the hardcoded voltages it saves more power because it's variable. EMIF cannot vary between the values.
This interface has a hardcoded range of 830mV min to 1450mV max. Usually there is no need to adjust these values but irt can be usefull in example when using high overclocked frequencies above 1,5ghz! Usually SR cannot handle frequencies above 1,5ghz and I have hardcoded the maximum range of 1,45mV which should allow SR to handle it. In prior times the users had to turn off SR when OCing above 1,5ghz which causes the CPU to eat more power. But you can try around and report your results.
CAUTION: Don't raise the maximum SR voltage too high! It can burn your board = no phone anymore! I recommend to not use higher values than 1490mV! As already mentioned: THe default value should be enough!
ANd also: USUALLY THERE IS NO NEED TO CHANGE ANYTHING ON SR! IF YOU DON'T KNOW WHAT YOU'RE DOING, PLEASE LEAVE IT ALONE!
Ok, now let's see how to do this:
Turn ON/OFF SR
1. Open Trickster Mod
2. Head to the "Specific section"
3. Scroll down to "Smartreflex"
4. You can toggle ON/OFF SR for each component (IVA, CORE, MPU)
Usually I recommend to keep SR ON because it saves power! But in some cases when overclocking the CPU (MPU) the device could freeze - whether you OCed too much or SR couldn't handle the frequency! In this case you can try to raise the vmax value of SR a little bit (CAREFULLY!) and try again. If it sitll freezes and you're sure that you didn't OC too much, turn SR OFF at least for MPU!
Maximum Voltage
Currently there is no app which supports the feature of adjusting the SR vmax value, because I wrote this feature some days ago.
But in the next Trickster Mod version this option will be supported!
example:
# To read the current vmax value. Replace XXX with one of the following:
sc_core - for core max sr voltage
sr_iva - for iva max sr voltage
sr_mpu - for mpu max sr voltage (mpu is most related for CPU scaling)
cat /sys/kernel/debug/smartreflex/XXX/vmax
# You will get an output, e.g. for mpu = 1450000 (1450mV)
# To set a new value, do the following command (replace XXX with a value like above - BE CAREFUL! USUALLY THE DEFAULT VALUE ENOUGH AND YOU CAN LEAVE IT UNTOUCHED!)
echo XXX > /sys/kernel/debug/smartreflex/XXX/vmax
Minimum Voltage
It's easy because Trickster Mod supports it!
1. Open Trickster Mod
2. Head to the "Specific section"
3. Scroll down to "Smartreflex"
4. Below each SR component (IVA, CORE, MPU) there is displayed a value (usually 830 default) which means this is the lowest scalable voltage for this component. You can try to decrease this value for the case you want to UV a bit more - or raise it a bit for the case you think that the set range is too low and causes freezes on your device.
1.2 How do I use Live OC (Live OVerclock)?
This feature allows you to overclock the CPU in realtime. It works with a multiplier value set by the user. The default multplier value is "100", which means: No OC! If you want to raise the OC frerquency, just raise this value step by step.
FOr my device the maximum working OC value is "111" which means the maximum frequency is running at 1498mhz!
NOTE: Keep in mind that you tunr Smartreflex OFF for higher freqs than 1500mhz - or raise the maximum SR voltage range for "MPU" a little bit and test if it works.
Ok, how to use Live oC in action:
Open Trickster Mod App and swipe to the tab "Specific". There you will find something like this:
Code:
MPU OC [100]
DON'T TOUCH THE "CORE OC" SECTION, IT WILL CAUSE FREEZES!
Now slowly increase the value "100" to something higher, e.g. "105". Tap the hook in the right upper corner to confirm. To see your new set of frequencies you can now whether close and restart Trickster Mod or just use any monitoring app like Cool Tool which will show your frequencies in real time. That's it!
CAUTION: You can damage your phone forever!!!! This feature allows you to set very high frequencies (also up to 2,0ghz...) - That DOESN'T mean that your phone can run these frequencies!
If your phone freezes or crashes you have probably set too high OC - or your voltage is too low.
1.3 How do I use Custom Voltage (EMIF)?
NOTE: This only adjusts the fixed voltage! When you have Smartreflex ON it can still vary! You have to see the bigger picture: This voltage value sets the "middle point" for voltages. Smartreflex is still able to increase or decrease the voltage. When Smartreflex is OFF the CPU will stay on this voltage you set here and probably eats also more power.
How does EMIF works together with Smartreflex:
Code:
-------
| CPU |
-------
|
------------------ ------------------
|Voltage 1015 mV | ---->| SMARTREFLEX ON| = 1015mV +/- "vmax"/"vmin"
------------------ -------------------
|
--------------------
|SMARTREFLEX OFF| ----> 1015mV FIXED! No changes!
-------------------
Thi smeans if you change the voltage for a scaling step (OPP) while SR is ON, SR will adjust the voltage from this value, means: mV-Value +/- SR vmin/vmax. WHen SR is OFF it will stay on this mV as a fixed value.
How to adjust the voltage?
Well, this feature can be used with all generic apps which are supporting voltage settings. But we are prepared well, you can adjust voltages also with the "Trickster Mod App".
When you open the app, head to the tab "Specific" and below the "Live OC Section" you will find your voltage table, which looks like this:
Code:
<-->
1200 [1398]
1000 [1388]
900 [1371]
...
..
..
Now just tap the arrows in the right upper above the first voltage value and just type or tap (per direction) a value, e.g. "-25". To apply it, confirm by tapping the hook in the right upper corner of your screen. That's it, your new voltage values are now set and applied. And also mind here: If your phone freezes you porbably have set it too low.
CAUTION: NEVER SET HIGHER VOLTAGE THAN 1490mv here!!!!! Or you might damage your phone FOREVER!
This voltage is not the same like Smartreflex! But it's still voltage! Just be carefull!!
1.4 How can I use GPU OC and GPU Governor?
GPU Overclock doesn't work like Live OC! You cannot really set custom frequencies for the GPU, but you can select and set the maximum frequency from a hardcoded range!
For the GPU there are the following available frequencies:
154mhz (FIXED!)
307mhz
384mhz
416mhz
The minimum frequency of 154 is FIXED! This means you cannot change it because the GPU needs a minimum speed to run with. But the kernel allows you to select the maximum speed. This can be usefull for playing games and also for saving power . In example when not playing games you don't need the GPU to run at 416mhz! Set it to 307mhz in this case and save power.
When you open Trcikster Mod and head to the "specific section tab", you will find "GPU MAX FREQUENCY" and it's currently set maximum frequency. Tap on it to select your preferred one:
- 154 Mhz
- 307 MHz
- 384 MHz
That's it. The new setting will be your new maximum GPU frequency.
Below there's another option called "GPU Governor". Just tap on it and select your prefered one.
NOTE: If you want to track current GPU frequencies and watch governor's behavior, just switch to Trickster's "Informations" - Tab and watch the frequencies clock.
1.5 How can I use Gamma Control?
What is gamma? The gamma setting sets the color range for the screen. You can compare it to the contrast. We all know that the touchscreen eats most of the power compaerd to all other components in a smartphone! A lower brightness causes less power consumption and a lower gamma or contrast range alos helps a little bit to save power.
In this kernel you can choose from a range of "5 - 10" while "5" is very bright while "10" is very dark. The default setting is "5" BUT CAUTION: Trickster Mod will display a range of "0" to "10" and the default setting will be shown as "0". This is caused by the fact that this feature was ported from the Gnex device where you can choose from a higher range. The only sideeffect is that the values "0" - "5" won't show any difference.
How to set the gamma value?
Well, once again open Trickster Mod and swipe to the tab on the right end. Just select your preferred value by using the slider.
Alternately you can use sysfs by terminal or adb:
OMAP Gamma interface:
echo i > /sys/devices/platform/omapdss/manager0/gamma
Replace i with 0-10 of your choice.
1.6 What is "Battery Friend and how to use it?
Battery Friend is a simple toggle (ON/OFF) which sets your device into a battery friendly mode without the need to play with all settings in Trickster Mod /sysfs until you find a good setting. In fact it does the job for you.
What does it affect?
NOTE: Doesn't lock anyx frequencies anymore!
locks dynamic Fsync enabled
locks Fsync disabled
Doesn't allow any OC (Live OC will not have any effect, Core OC is not allowed in this kernel)
Increases the dirty ratio interval to 90% (starts working at this value)
Enables Dynamic Hotplug: This doesn't allow hotplugging during device is active - and it will always turn CPU1 OFF during suspend! It also prevents from conflicts when user uses a hotplug governor (which isn't a good idea though) - but hotplug governors are causing higher battery drain!
Dynamic Page-writeback always enabled
How to toggle Battery Friend:
For now the only way is via terminal, adb shell or root explorer (text editor)
For terminal and adb:
Code:
echo 1 > sys/kernel/battery_friend/battery_friend_active /* Enable */
echo 0 > sys/kernel/battery_friend/battery_friend_active /* Disable */
For Root Explorer
Open Root Explorer
Navigate to sys/kernel/battery_friend/
Open "battery_friend_active" with Text Editor
Change "0" to "1" and safe the file to enable
Change "1" to "0" and safe the file to disable
1.7 Suspend Governor Control (CURRENTLY DISABLED)
Suspend Governor Control is a kernel module written by me. You can use it to set your preferred Screen-Off-governor.
For now it's only supported by sysfs (Trickster Mod will support all my current and upcoming features as soon as it gets updated with its new UI mode!
How to set suspend governor
Open a terminal or use adb shell
Code:
su
echo "x" > /sys/kernel/suspend_gov/suspend_gov
Replace x with one of these values:
0 = Ondemand
1 = Ktoonservative
2 = Conservative
3 = OndemandX
NOTE: No matter what governor you use for suspend mode, if Battery Friend is enabled the second core will be turned off during suspend!
1.8 IVA Overclock
What is IVA OC?
IVA OPPs are controlling the CPU load for sound events. It could be useful (in some cases) when you get sound related laggs. Just set the maximum frequency to highspeed. This will allow more CPU power for sound events but also will cause higher battery consumption.
How to use IVA OC?
If you want to check the current IVA frequency. Just type in Terminal or ADB:
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/iva_clock
You will get an output like this:
Code:
132 Mhz
2. You can whether enable IVA highspeed: 130 - 430 Mhz ["1"] or enable IVA normal speed: 130 - 332 Mhz ["0"]
320 Mhz max: echo "0" > sys/devices/system/cpu/cpu0/cpufreq/iva_freq_oc
430 Mhz max: echo "1" > sys/devices/system/cpu/cpu0/cpufreq/iva_freq_oc
1.9 DPLL Cascading
DPLL: Davis–Putnam–Logemann–Loveland (DPLL) algorithm
To get more info about this please see wiki
But to sum it up shortly: It helps to use/stream media (music) in a low power mode.
NOTE: DPLL Cascading will be available to be switched easily via Trickster Mod App soon!
How to switch DPLL?
DPLL is ENABLED by default!
Open Trickster Mod -> Speicific Tab --> DPLL (soon)
sysfs:
Turn off:
Code:
echo 0 > /sys/kernel/dpll/dpll_active
Turn on:
Code:
echo 1 > /sys/kernel/dpll/dpll_active
1.10 HDMI toggle
Some users are facing a RAZR-sepcific problem: HDMI cable is detected, even though there is no cable plugged!
Therefor I included a toggle to switch HDMI wether ON or OFF. Additinally there's an init.d script included within the AROMA Installer you can select during the installation of JBX-Kernel.
To enable/disable HDMI on-the-fy:
sysfs:
Turn off:
Code:
echo 0 > /sys/kernel/hdmi/hdmi_active
Turn on:
Code:
echo 1 > /sys/kernel/hdmi/hdmi_active
1.11 Intelli-Plug
For intelli-plug hotplugging is now only allowed when the device enters sleep.
To enable hotplugging universally just change the value of the following entry whether to 1 (on) or 0 (off):
Code:
sys/module/intelli-plug/parameters/int_hotplug
*Unfortunately I don't have enough space in the OP to write all this into the FAQ, that's why the I only added the sysfs path, but the description is simply here
2. If anyone has the following issues:
Issue
Media Process FC
No SD-Card in File Explorer
My CPU Settings (frequencies, etc) won't be saved (it sets itself back to Kernel default after screen off)
My phone freezes/reboots always when I try to set options in Trickster Mod
The device is lagging very hard
Solution
Media FC: Open App settings, head to "Download Manager" and "Media Storage" and hit the "delete data" button. Reboot. Now it shouldn't give any FCs anymore and after a little bit of waiting it will find all Media (Pictures, Videos, etc..)
No SD-Card: Reboot into recovery, go to "Mounts & Storage", tick "mount int" or "mount ext".
USB: Make sure the screen is ON while plugging the cable in.
CPU Settings: This is a bug which cannot be solved at the moment. Temporary solution: In Trickster Mod just activate the "Frequency Lock" and your settings will persist.
Trickster Mod:: Open App settings, Trickster Mod and select "uninstal updates". Now it should work.
Crashes, Freezes, lagging, something doesn't work, etc
There are too many reasons which could cause crashes! So here is a checklist for you to look for. Check each point and try the following workaround:
- Your rom has CPU tweaks (e.g. Kernel modules, init.d folder, etc)
- You have set custom CPU settings (e.g. custom frequencies with apps like No-Frills CPU Control, Set-CPU, Antutu, etc...)
- You have undervolted too low
- You have overclocked too high
- You have applied higher "Core OC" value in Trickster Mod App
- You are running any other kernel tweaks which are regarding to the CPU and/or performance (e.g. Kernel modules by Whirleyes eventually set by init.d, etc..)
- After setting some settings (e.g. in Trickster Mod) your device doesn't boot anymore
- adb doesn't work / shows only "device offline"
- You are facing hard lagging
If any point here matches your setting, please revert from it:
- Remove any CPU init.d script from /System/etc/init.d
- Uninstall any CPU controling app (e.g. Set-CPU, No-Frills, etc..)
- Remove all extra kernel modules from system/lib/modules (e.g. cpu_control.ko, cpufreq_smartass2.ko, etc..)
- Unset any custom settings from any other kernel / CPU - tweaking app which is NOT Trickster Mod
- Maybe your governor causes issues. Hotplug is know for bugs at the moment...I'm going to fix it..
- NEVER set your CPU Settings (e.g. in Trickster Mod App) on boot!!!! - before you aren't sure that your settings are safe!!!
- You may flash the kernel again after reverting related settings
- to make adb work / show device online, download latest SDK platform-tools and confirm access on device (4.2 security feature of Android)
- Don't use any task killers, memory killers, seeder apps! They may conflict with the kernel/Rom settings.
If none of these suggestions work for you your rom may be incompatible. Please report it here that I can add the rom to the list of imcompatible roms
If you have any issue, please read this:
First check:
- is it really a kernel issue?
- did I see this bug with the roms original kernel?
- what are the people in the rom thread saying?
- what are the people in the kernel thread saying?
- can I find this issue on a bug list?
- how about my settings? Is it my fault it crashed?
- can I find something useful in the kernel FAQ?
- Is it maybe a well known issue and can be solved
withing seconds? Just like wifical.sh?
- Where to repeat that issue? Rom or kernel?
I know it's sometimes difficult to track the issues, and we can't know for sure if it's caused by the rom or by the kernel, but if you try at least to get some information you might find an answer sometimes. If you are able to understand logs, you may report whatever you find.
All this helps to keep the threads more clear. Thank you.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
DONATE
If you like my work and want to support me, I'd enjoy a little beer or coffee. You can find my beer mug below my username
SOURCE
3.0.8 Base:
JBX-Kernel 4.2.2
JBX-Kernel 4.3
CREDITS
Kholk & [mbm] - Kexec inital Release
Hashcode & Dhacker - Making Kexec stable and initiating compatible kernels
Motorola - 3.0.8 Kernel Source
Surdu_Petru - Sharing Knowledge and helping with problems
nithubhaskar - Hints and answering my questions
Ezekeel, Imoseyon - Custom Voltage, Live OC, Temp Control, Gamma Control Source Code
faux123 - Some features, like Intelli-Plug, Intellidemand, Intelliactive
bigeyes0x0 - Trickster Mod App
Team Trickster - Great support and adding new features from my suggestions
Placca - Awesome kernel guide
Click to expand...
Click to collapse
3.0.8 / 3.0.31
There is the classic JBX 3.0.8 Kernel (a hybrid of 3.0.8, 3.0.21, 3.4, 3.7, 3.8, 3.10, 3.11, mostly backports from these versions)
And now there is also JBX 3.0.31 (also a hybrdig including the above backports, but also from 3.0.101)
I won't list the whole version history, too long
3.0.31 first TEST-BUILD now coming!
- also reserved -
And it arrives...
Many thanks man...
Really appreciate you doing this...
---------------------------------------------------
May the -Mass times Acceleration-be with You...
I need the internal storage mount points from someone with stock kernel, please. I saw something about mmcblk0 - int ? Please anyone check the /mnt partitions and tell where the internal and external sdcards are mounted. thx
Edit: nevermind, I didn't know this device doesn't include an internal storage. Now I need to know if USB mount works on Devesh's Rom ports.
Used Stock ICS Based ROM on System 1 with BMM , and Mobile Terminal .
hope its ok .
Wow !
I see some awesomeness coming to our A2s *Respect*
All is set up. Everything works, so I will now build the first test kernel for you guys.
First test kernel in NIGHTLIES folder. Please test and report. Keep in mind that you have to be on one of Devesh's Rom Ports!
Edit: Sorry, forgot something! Please wait 5 mins...
Edit: Done!
Dirty flashed, liquid smooth slot 6 oc1350 running good.
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2
JB leak?
Sorry for asking dummy question. Can i flash it on the JB leak because we still need JB leak for installing kexec room right? So if I want to try what possibly would happen?
dtrail1 said:
First test kernel in NIGHTLIES folder. Please test and report. Keep in mind that you have to be on one of Devesh's Rom Ports!
Edit: Sorry, forgot something! Please wait 5 mins...
Edit: Done!
Click to expand...
Click to collapse
Man! You really are damn energetic and enthusiastic, aren't you? Really glad to have you around.. Thanks again.. :thumbup:
Sent from my MB865 using Tapatalk 2
amynjimmy said:
Dirty flashed, liquid smooth slot 6 oc1350 running good.
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2
Click to expand...
Click to collapse
How did you OC ? i just can't get the phone to Overclock properly with this trickster app ..
afeeq said:
Sorry for asking dummy question. Can i flash it on the JB leak because we still need JB leak for installing kexec room right? So if I want to try what possibly would happen?
Click to expand...
Click to collapse
You cannot. It needs a kexec Rom. So flash it first
M.o.t.o.r.o.l.a.R.a.z.r - JBX-Kernel 0.6 - Tapatalk4
New nightly online with fixed CPU and live oc! @Brantuck84
Edit: sorry, wrong thread!
But ne nighty comes here too in 5 mins
M.o.t.o.r.o.l.a.R.a.z.r - JBX-Kernel 0.6 - Tapatalk4
So with the current version there is a bug with OC ? ( i don't see TEST2 for Atrix like with the Razr version).
Yes, device starts lagging when OC too high (over oc value of ~107). But new release comes with fixes - OC up to 1,5ghz possible without any problems (Mine crashes when OC higher than 1,498mhz, each silicon is different).
I think I will push it as a release (not NIGHLTY) - only thing left to be fixed is the random black screen while booting. But that's not that important as long as the kernel works well when booted successful.
Edit. done!
Great can't wait to boot 1498mz!
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2
Not boot, just set it after boot - and if you're sure you have it running stable, set the "Apply on boot" function in Trickster Mod with a delay of ~90 sec - just to be safe!
RELEASE for Atrix 2
CHANGELOG JBX-kernel 0.6 Hybrid
This version includes fixes for performance and stability
CPU: Set bootup policy to static frequency
CPU: Revert some accidently failed cleanups
CPU: Reset CPU delay on tickless
CPU: Changed margins and sr settings for some OPPs
CPU: Default trimmed dpll mpu
CPU: Added Uilization
SR: Fixed SR return value check
Decreased RCZ_CPU_STALL_TIMEOUT to 60
emif, lpddr: Re-added 466mhz timings
USB: Change ehci performance mode to static scaling freq
Disabled PM_DEBUG for performance
Reduced RW READAHEAD Buffer to 1024
OMAP, CPU, RCU: Re-enabled watchdog
Universal performance invreased
dtrail1 said:
Not boot, just set it after boot - and if you're sure you have it running stable, set the "Apply on boot" function in Trickster Mod with a delay of ~90 sec - just to be safe!
RELEASE for Atrix 2
CHANGELOG JBX-kernel 0.6 Hybrid
This version includes fixes for performance and stability
CPU: Set bootup policy to static frequency
CPU: Revert some accidently failed cleanups
CPU: Reset CPU delay on tickless
CPU: Changed margins and sr settings for some OPPs
CPU: Default trimmed dpll mpu
CPU: Added Uilization
SR: Fixed SR return value check
Decreased RCZ_CPU_STALL_TIMEOUT to 60
emif, lpddr: Re-added 466mhz timings
USB: Change ehci performance mode to static scaling freq
Disabled PM_DEBUG for performance
Reduced RW READAHEAD Buffer to 1024
OMAP, CPU, RCU: Re-enabled watchdog
Universal performance invreased
Click to expand...
Click to collapse
Is his gonna allow then use of 1498 then.
MB865/ATT/BMM
1. Stock 4.0.4
2. Miui 4.0.4
3. Pac man 4.2.2 (6/3)nonkexec
4. Mt
5. MT
6. Cm 10.1 4.2.2 (6/7)kexec
Can I get a wohooo for the A2

[GUIDE] Advanced Interactive Governor Tweaks; Buttery smooth and insane battery life!

The Introduction
I'm about to tell you how to get buttery smooth, lag free performance with insanely good battery life, using an old school governor featured in practically every kernel... This tweak is applicable to every phone with any ROM or kernel--stock or custom--that provides the Interactive Governor.
Yeah, yeah... everyone promises good battery with great performance, but who actually delivers? Maybe it isn't as smooth as you want, or maybe it requires something your kernel or ROM don't support. Or maybe the battery life promises just aren't what you expected. There's always some awful compromise. Not here!
This isn't a guide to get 36 hour battery life... provided you never use your phone. That's deep sleep optimization, which is lovely and all, but what good is the phone if you can never use it?! And with the new Marshmallow Doze feature, this strategy is becoming a think of the past. What I'm talking about is 7-14 hour screen on, actual hands-on usage times! Without compromising anything, you can get 7-8 hour screen on usage with regular, no-compromise usage habits: daytime visible screen brightness, both radios on, sync on, network location on, all the regular usage features, the whole kit and kaboodle... all smooth as a baby's butt and snappy as a Slim Jim! (Up to 14+ hours if you can stand minimum brightness and WiFi-only with a custom ROM and other stuff turned off! And this is with stock voltages and full frequency range--you'll likely get even more if you choose to optimize those as well!)
However, it should be noted that this does not apply to gaming, heavy camera use, etc. Anything that is an automatic battery killer in and of itself. There's nothing that can be done about anything that forces the phone to utilize its maximum resources all the time. But you should know that by now. Further, this guide is about optimizing the CPU as much as possible. It does not cover things like eliminating wakelocks so your phone sleeps well, removing unnecessary and battery draining stock apps, keeping your screen brightness down*, and all that stuff that's been covered in other posts ad infinitum. Those optimizations are up to you.
*At least on the Mi4i, you shouldn't be turning your screen brightness above about 50%. It should be more than viewable in sunlight at that brightness, and keep in mind that the brightness power requirements increase exponentially, so a 100% bright LCD screen will use about 3.5-4.5x more power than a 60% bright screen. I don't see that fact brought up often, so I thought I'd mention it here.
After a bit of tweaking and experimenting, I developed some settings that provide absolutely incredible battery life, buttery smooth performance, and a lag free experience. And you don't need a fancy governor, or a custom kernel, custom clock rates, or even a Mi4i. This will work on any ROOTed phone with the Interactive governor!
The Nitty Gritty
Before I lay out all the settings so you can blindly enter them into your governor control, I should to explain some of the principals I employed to get the results I did. The primary thing to understand before I do is: little might you know, the settings in the Interactive governor can be tweaked on a clock range basis. That is to say, you can finely control how the governor responds at a variety of clock rates, thus better dictating how it should operate under various loads. This is integral to the configuration, because it means the difference between jumping from the slowest speed to the highest speed under load and sustaining lower clock speeds for tasks that don't really require higher clock speeds.
By default, the Interactive governor will jump from lowest speed to a "nominal" speed under load, and then scale up from that speed as load is sustained. That is lovely, but still too twitchy to provide serious efficiency and power savings. It spends most of its time at 2 or 3 clock speeds and barely hits other clock speeds that are ideal for other tasks or usage patterns.
Instead, what we want to do is configure it to handle different types of loads in different ways. A load suited for scrolling through a webpage is not the same as a load suited for downloading/processing streaming video is not the same as a load suited for snappy loading of an app is not the same as a load suited for high performance gaming. Every kind of load has different tolerances at which their minimal speed is indistinguishable from their maximal speed.
Nominal Clock Rates
Nominal clock rates are the minimum CPU clock rates that perform a given task smoothly and without stuttering or lag. To find the nominal clock rate for a given task, turn on only the first CPU using the Performance governor and turn them both down incrementally until you find the minimum clock rate that works best for what you're trying to do, without introducing hiccups. (If you have a CPU or kernel that hotplugs individual cores, multiply that clock speed by your number of cores.) Keep the 2nd CPU on the Powersave governor with the lowest frequency your kernel supports. (Or turn it off completely if hotplugging allows.)
(Note: If your device supports per-core hotplugging, you might be better off using the old guide to determine your nominal clock rates. The Mi4i and all current kernels only support hotplugging entire CPUs, so your results may vary if you use any other device.)
For example, on my Mi4i, scrolling (not loading, simply scrolling) through a large webpage smoothly will occur when the second CPU clock rates are no less than 460Mhz. (This is on mine without background tasks taking any CPU. Yours may be different depending on services running, the browser you use, your ROM, kernel, etc.) Thus, the nominal clock rate for scrolling a webpage on my Mi4i is 460Mhz.
To understand what's best under a variety of tasks, we have to identify two types of load profiles: nominal clock rates and efficient clock rates.
Efficient Clock Rates
Efficient clock rates are CPU clock rates that are unique in that they are the most optimal frequency given the range of voltage requirements. If you map out the frequency jump and the voltage requirement jump between each of the available clock rates, you will find that occasionally the voltage requirement will jump significantly without the frequency jumping proportionally to the previous differentials. For example, using stock voltages, the EvoLTE's msm8960 chipset clock/voltage ratios jump significantly higher from 702Mhz to 810Mhz than the ratios from 594Mhz to 702Mhz.
This section is INCOMPLETE! If you know the voltages, please post and I can update this guide to include the Mi4i's Efficient Clock Rates.
Clock Rate Biases
Using the information provided above, figure out both your nominal clock rates for the tasks you perform most often and your efficient clock rates depending on your kernel/custom voltage settings. For me, since I cannot determine the efficient clock rates, I use the nominal clock rates listed above. For the tasks I generally perform on my phone, my nominal clock rates are as follows:
Idle - 345Mhz
Page Scrolling - 533Mhz
Video -800Mhz
App Loading - 960Mhz
High Load Processing - 1612Mhz
(Note that you must calculate the values that are optimal for your phone for best battery and performance! Each phone is different because of the ROM, kernel, background tasks, etc!)
With this done, you will want to start the fine tuning phase! Correlate the efficient clock rates with their closest nominal clock rates, similar to below:
(This section of the guide is INCOMPLETE because I do not know the clock rate voltages for the Mi4i. If you know these, please post in the comments and I will update the guide!)
Idle - ???Mhz efficient / 345Mhz nominal
Page Scrolling - ???Mhz efficient / 533Mhz nominal
Video - ???Mhz efficient / 800Mhz nominal
App Loading - ???Mhz efficient / 960Mhz nominal
High Load - ???Mhz efficient / 1651Mhz nominal
Keep these handy, as they're going to be necessary for...
The Set Up
Now that we know what are the most efficient nominal clock rates we want to focus on and what the most optimal are for what we want to do, we will start low and scale up as necessary. It's always better to begin with underperforming and tweak the settings upward until we're satisfied with the performance of our target tasks.
In its default state, the Interactive governor has a hair trigger that will raise and lower the clock rates, which means it spends too much time at unnecessary clock speeds, wasting power, and scales down too quickly, leading to stuttering performance. We will take advantage of a seldom used feature of the Interactive governor. Specifically, that with which it determines when it is okay to scale up to each higher clock rate, on a frequency by frequency basis.
We have two primary goals: respond as quickly as possible to each load request for a lag free experience and exceed the desired clock rate for a given task as little as possible. To do this, we will instruct the Interactive governor to trigger certain clock rates in different ways depending on our expected load.
I won't explain all of the settings of the Interactive governor--there are plenty of summaries all around. (Go search now if you don't know what any of the settings for Interactive governor do. I'll wait here.) However, I will explain an incredibly powerful feature of the Interactive governor that is rarely included in those summaries: multiple frequency adjustments.
The above_highspeed_delay setting, for example, defines how long the governor should wait before escalating the clock rate beyond what's set in highspeed_freq. However, you can define multiple different delays that the governor should use for any specified frequency.
For example, we want the above_highspeed_delay as low as possible to get the CPU out of the idle state as quickly as possible when a significant load is applied. However, we don't want it to jump immediately to the fastest clock rate once it's gotten out of idle, as that may be overkill for the current task. Our target trigger (which you will later adjust to suit your system and usage profile), will begin at 20000μs. That means 20,000μs (or 20ms) after our idle max load has been reached, we want to assume idle has been broken and we want to perform an actual task. (We want this value as low as possible without false positives, because it is one of a few factors that determine how snappy and lag free the CPU's response is.)
But at this point we're not ready to take on a full processing load. We may just be briefly scrolling a webpage and don't need the full power of the CPU now that we've allowed it to break out of idle. So we need it to reach a particular frequency and then hold it there again until we're sure the load is justified before we allow it to push the frequency even higher. To do that, rather than just setting
above_highspeed_delay - 20000​
we will instead use the format "frequency:delay" to set
above_highspeed_delay - 20000 460000:60000 600000:20000​
"Waaaait... What does that do?!"
This tells the Interactive governor to hold out 20ms after our target load when it's at our highspeed_freq (which we're actually using as our idle frequency--not a burst frequency as originally intended), but then it tells the governor to hold for 60ms after it's reached 460Mhz. Once it has exceeded 460Mhz, it then has free reign to scale up without limitation. (This will be optimized with the target_loads setting in a minute. And if you don't know what I'm talking about when I say "highspeed_freq" then you didn't go search for the basic Interactive governor settings and read about it! Go do that before you read any further, because I will not explain the basics of this governor!)
These settings are among the most important, because they limit the phone's clock rates when you are not interacting with it. If it needs to do something in the background, chances are it does not need to run full throttle! Background and idle tasks should be limited to the lowest reasonable clock rate. Generally speaking, if you're just looking at your phone (to read something, for example), you want the phone to use as little CPU power as possible. This includes checking in with Google to report your location or fetching some pull data or... whatever. Things that you don't need performance for.
So now that we know how to specify different settings for different frequency ranges, let's finish it all up with...
What About Touchboost?
Touchboost is a nifty feature in a lot of kernels (including stock on Mi4i) that jumps up the frequency so that you experience minimal lag. However, with all the above settings, touchboost is usally detrimental to the efficiency of the device!
We generally want to keep the CPU on the lowest possible frequency as much as possible, and touchboost interferes with that. Further, because we've set up the maximal and minimal efficient clock rates, as well as burst processing from the 1st CPU core, we don't need touchboost!
If your kernel allows you to shut it off, try to do so and see if the responsiveness of your device is acceptable. On the Mi4i, touchboost adds no perceptual performance gain and only hurts efficiency and battery life. If your kernel doesn't allow you to turn off touchboost, try another one, like the excellent Sensei.
Your battery life will thank you!
The Setup
In the "CPU" section, turn off "Touchboost". (This is crucial!! YOU MUST TURN OFF TOUCHBOOST OR ELSE YOU WILL NOT SEE ANY BATTERY SAVINGS!!!) Make sure the "Max CPU Frequency" is set to the maximum possible value for each CPU. Make sure the "Min CPU Frequency" is set to the minimum possible value for each CPU. Under "CPU Boost", set "input boost milliseconds" to "0". Then set the following values for each CPU under "Governor options" for each CPU respectively:
CPU #1 (aka "Big", aka "has 4 cores", aka "maxes out at 1665Mhz")
target_loads - 1 960000:80 1113600:85 1344000:90
timer_slack - 80000
hispeed_freq - 1113600
timer_rate - 20000
above_hispeed_delay - 20000 1113600:50000
go_hispeed_load - 85
min_sample_time - 50000
CPU #2 (aka "little", aka "has 4 cores", aka "maxes out at 1113Mhz")
target_loads - 1 800000:80
timer_slack - 80000
hispeed_freq - 998400
timer_rate - 40000
above_hispeed_delay - 10000
go_hispeed_load - 90
min_sample_time - 40000
The Conclusion
I have achieved unprecedented performance, smoothness, snappiness, and battery life with the default settings I outlined above. However, your mileage may vary, as every phone, ROM, kernel, installed applications, etc are different. This is a very sensitive governor profile and must be tweaked to just meet the requirements of your system and your usage patterns!
If it is not optimally tuned, performance and battery life will suffer! If you're not seeing buttery smooth, snappy performance, you have not correctly tuned it for your system!! However, if you do have superb performance (and you tweaked the values conservatively and not in large steps), then you will also get the aforementioned battery life.
I will be happy to answer any questions, or provide any guidance I can. However:
You must otherwise optimize your phone first! This will not "fix" a poorly optimized system and will, in fact, reduce performance and battery life without further optimization and proper tweaking.
I will not answer questions about "what is a governor?" There are plenty of resources available already, so search for them.
I will not answer questions about "how can I tweak [some other] governor?" This is about the Interactive governor only.
I will not respond to "nuh uh! show proof!" posts. The fact that I spent 12 hours writing this up should be proof enough that I am satisfied with the results. You can take it or leave it; makes no difference to me. The default settings should work with any fully optimized Mi4i running any kernel, so just try them on your own. If you're not absolutely satisfied (and trust me, either it'll work out-of-the-box with flying colors and you'll know it works for your system, or it'll be an awful experience which means you must tweak it), then you haven't adequately adjusted the settings to suit your system.
Lemme know what you think, and good luck!
Thanks to @soniCron for the original thread here : http://forum.xda-developers.com/nexus-5x/general/guide-advanced-interactive-governor-t3269557
Woah, Will try it soon. Thanks for the awesome thread and work.
The interactive governor from your Sensei kernel already had all these settings tuned.
I will come back in 24-48 hours with results.
One question that I have is: will something like Amplify (deals with wakelocks) interfere with this?
mandarin91 said:
The interactive governor from your Sensei kernel already had all these settings tuned.
I will come back in 24-48 hours with results.
One question that I have is: will something like Amplify (deals with wakelocks) interfere with this?
Click to expand...
Click to collapse
I've dealt with a few wakelocks in the kernel, Amplify won't disturb anything I guess.. Also this is just for future refs for users who are either on stock or any other kernel...
How exactly does this target load list work - why the loads are not progressive, but 85 - 90 - 80? set target to 90% load at 1.1ghz, but then we want 80% at 1.3ghz? Shouldn't the target loads only go up?
target_loads - 1 960000:85 1113600:90 1344000:80
are you sure that above_highspeed_delay for CPU#2 is correct?
danb1974 said:
How exactly does this target load list work - why the loads are not progressive, but 85 - 90 - 80? set target to 90% load at 1.1ghz, but then we want 80% at 1.3ghz? Shouldn't the target loads only go up?
target_loads - 1 960000:85 1113600:90 1344000:80
Click to expand...
Click to collapse
Exactly. And where are the lower frequencies?
The lower frequencies are left untouched. I've been testing this for some time now. Look at the screenshots.
mandarin91 said:
Exactly. And where are the lower frequencies?
The lower frequencies are left untouched. I've been testing this for some time now. Look at the screenshots.
Click to expand...
Click to collapse
bump (?)
Will we get an answer?
I've fixed the settings, target load will now go up rather than up-up-down... Also these settigs are a WIP, right now this is the optimal settings I have that will provide battery life and performance. I will update the settings each time an improvement is made.
Lower frequencies aren't doing much fr me but I'll try to include them into the formula...
haikalizz said:
Lower frequencies aren't doing much fr me but I'll try to include them into the formula...
Click to expand...
Click to collapse
I am talking about these:
Idle - 345Mhz
Page Scrolling - 533Mhz
Video -800Mhz
App Loading - 960Mhz
High Load Processing - 1612Mhz
Click to expand...
Click to collapse
If these "aren't doing much" then there will be only five frequencies: 200, 960, 1113, 1344, and 1651.
And most of the time is spent on 200 or 960. Won't the frequencies between 200 and 960 give better battery life?
How can an awesome thread like this die?
mandarin91 said:
I am talking about these:
If these "aren't doing much" then there will be only five frequencies: 200, 960, 1113, 1344, and 1651.
And most of the time is spent on 200 or 960. Won't the frequencies between 200 and 960 give better battery life?
Click to expand...
Click to collapse
no it doesnt quite work that way. not all lower frequencies will give better battery life. it also depends on the SOC in question and the nature of the SOC. I think hakalizz has mentioned previously of several optimized voltages and frequencies which we don't know for the snapdragon 615. let's use the 615 and some hypothetical values
200mhz - 650mv
400mhz - 650mv
you would have thought that 200mhz would give better battery savings but that isnt the case over here. even though the 400mhz would use more power (even though it is rated the same as 200mhz), technically you get battery savings because 400mhz gets the job done in well, twice the speed of the 200mhz. So you need to either figure out which of your frequencies are optimized in such a way that it can take advantage of the race to idle factor too.
for now i'm still on zzmoove but only to a point where i figure out how to optimize interactive for my own usage (with hotplugging etc)
just to further the point on this advance interactive tweaks - theory-wise and practicality-wise it is sound, you use the best frequencies(Bare minimum that you can stand) and you enjoy battery savings as well. the only issue I see is if you use your phoen differently from the OP. that's why haikalizz says you need to tweak and adjust it on your own
davtse said:
no it doesnt quite work that way. not all lower frequencies will give better battery life. it also depends on the SOC in question and the nature of the SOC. I think hakalizz has mentioned previously of several optimized voltages and frequencies which we don't know for the snapdragon 615. let's use the 615 and some hypothetical values
200mhz - 650mv
400mhz - 650mv
you would have thought that 200mhz would give better battery savings but that isnt the case over here. even though the 400mhz would use more power (even though it is rated the same as 200mhz), technically you get battery savings because 400mhz gets the job done in well, twice the speed of the 200mhz. So you need to either figure out which of your frequencies are optimized in such a way that it can take advantage of the race to idle factor too.
for now i'm still on zzmoove but only to a point where i figure out how to optimize interactive for my own usage (with hotplugging etc)
just to further the point on this advance interactive tweaks - theory-wise and practicality-wise it is sound, you use the best frequencies(Bare minimum that you can stand) and you enjoy battery savings as well. the only issue I see is if you use your phoen differently from the OP. that's why haikalizz says you need to tweak and adjust it on your own
Click to expand...
Click to collapse
Dude, haikalizz mentioned those frequencies in the post but never implemented them in the settings. That is what I'm saying.
Idle - 345Mhz
Page Scrolling - 533Mhz
Video -800Mhz
App Loading - 960Mhz
High Load Processing - 1612Mhz
mandarin91 said:
Dude, haikalizz mentioned those frequencies in the post but never implemented them in the settings. That is what I'm saying.
Idle - 345Mhz
Page Scrolling - 533Mhz
Video -800Mhz
App Loading - 960Mhz
High Load Processing - 1612Mhz
Click to expand...
Click to collapse
dude, i was responding to your question, should these freq inbetween give better battery life
You must otherwise optimize your phone first! This will not "fix" a poorly optimized system and will, in fact, reduce performance and battery life without further optimization and proper tweaking.
Please tell me how to optimize my phone ?
rmusa06 said:
You must otherwise optimize your phone first! This will not "fix" a poorly optimized system and will, in fact, reduce performance and battery life without further optimization and proper tweaking.
Please tell me how to optimize my phone ?
Click to expand...
Click to collapse
Debloat, amplify, things like that...
haikalizz said:
Debloat, amplify, things like that...
Click to expand...
Click to collapse
Thank you sir
What app are you using to implement the changes?
Well I got some nice results applying this technique and have overall 1/2 hours more sot using interactive gov. The only profile that works and follows the normal rules is the Ghostpepper profile. I have a moto x play with the same soc so it should work for the mi4i to. First you must calculate the max and min target loads before you can do something power efficient using this technique.
My advice is try to translate the nexus5x ghostpepper profile and replace your min and max target_loads with the ones in the original profile.
And why is this thread just copied and pasted from the original nexus5 thread and only replaced some words with "mi4i". You also forgot the most important part: calculating the min and max target_loads.

[Kernel][Tuneable][STOCK/CM] SmoothMod Kernel for SM-T311

SmoothMod Kernel (SMK) for Samsung Galaxy Tab 3 8.0 3G (SM-T311), also may work on WiFi version (SM-T310), all stock and CM ROMs.
Development discontinued, read reason here.
This kernel is developed to give you more smoothness and stability than you can have on stock kernel and others.
Warning. Kernel may work on your device/ROM and may not. For me it works at all ROMs and for many people (on 4PDA.RU forum) it works too. Some people say (or said before kernel worked, this also can be) it doesn't work. So do a kernel backup please before you flash it first time. I've never had boot or usage problems with SMK, but it could be because i'm its developer (though it can not be the reason for that I'm always successfully boot it..). So it seems that our devices of the same model might be different. Be careful as I can not help you.
Features:
- Kernel version updated up to 3.2.26 and keeps updating
- Safe CPU overclock to 1.9 GHz with CPU-Boost kernel driver developed also by myself
- Custom (and only here) governor Smooth that is made to give both good battery saving and absolute smoothness. Uses GPU load and io_wait to additionally increase frequency at the right time.
- Kernel has a custom Android service smkd that controls all its features and provides many tweakable settings that you can change very simply: through terminal command "smkd" (instructions below) or "by hands" at folder "/smk" (like usual linux kernel settings at "/proc/sys/{kernel|vm|net}"). The program is written in C language, not as a script, for performance (shell-scripts are very slow when comparing with optimized C-programs).
- Tweak Menu that can be found if you type 'smkd' in your terminal.
- SmoothnessControl - one of smkd's functions that tries to guarantee UI smoothness to your tablet even if there are very CPU-hungry (but not I/O) apps/programs running like android.process.media and others. By default disabled. To enable, type this: 'su -c "scd --enable"' in terminal emulator. To disable, type 'scd --disable'.
- CPU Undervolt controlled through smkd.
- DynBS program (also developed by me) used by smkd to improve battery saving by 40% and more.
- Boeffla Sound Engine with custom settings, not working with Boeffla Sound Control app because smkd controls them (it's needed because smkd fixes engine's sound effects bug). Settings are stored folder "/smk" in files beginning with "boeffla.".
- Cron scheduler configured from file /sdcard/cron/root.
- All the custom tweakable settings described upper are reloading instantly after you change them or on delete (cron schedule file is also under the same watch).
- Kernel is compiled with optimized HYPER-TOOLCHAIN with gcc version 6.0 and maximally optimized compiler configuration.
Customizing kernel:
There is now nothing that needs to be explained, as customizing is pretty simple! Just type command 'smkd' (without quotes) and go through the menu (by entering appropriate symbols) as you want, changing parameters as you need.
Ask, if you have questions
If you have questions or suggestions about my kernel, feel free to write about that here and I will try to answer.
F.A.Q.:
Q.: Do I need to wipe Dalvik/ART cache before/after flashing this kernel?
A.: It is even not useful to wipe caches because they are used by Android only, not by kernel. So, it's not needed.
Q.: The kernel does not boot! What do I have to do to boot it?
A.: Write a message in this thread providing info about what ROM do you use, what Android version it is and what kernel build (kk/lp/mm) and version you are trying to boot. I will reply to that message and try to fix that problem.
Author: me, igoryan94
Download from Google Drive
Before flashing this kernel please do a backup yours first!
Warning! If you have a Jellybean/Kitkat rom, then download the smoothmod-kernel-kk-... build. If you use Lollipop (CM12), then your build to download will be ...-lp.... If it is a Marshmallow (CM13), then download mm build.
Other choice will cause your device to not be able to boot!
(Sorry for my (maybe )bad english)
Plans:
-
Developing now:
-
Changelogs (old*):
1.2.1/1.2.2:
- Returned possibility to load a profile from command line (command 'smkd --load [name]' or 'smkd ld [name]')
- Added custom setting for apps CPU time, now it has two groups: idle and high.
Idle group gives an app very small amount of CPU time, use for hungry apps that you don't need.
High group grants an app a 95% of all CPU time. Use to speed up some apps or games.
It is all very similar to Greenify and others, excepting that this is not battery saving solution, only to smooth up your Android, as Greenify disables an app and CGroup lowers app's CPU execution time available to it.
- I/O settings fully rebalanced for smoothness for system processes and apps processes
- Also added control group for I/O that does like one for CPU, but for I/O and developed its correct (for Android) behavior.
- Current configuration name in smkd menu now correctly saves and loads after reboot.
- Default LMK level changed to 125
XDA->SMK:
1.2:
- Got a smoother UI with better CGroup tweaking
- In case of some situations smkd will notify user with drawing a small square of some color at the left upper screen edge (portrait orientation). For overheat the color is red. When SmoothnessControl gets to work, color is light blue/cyan. If device's load is too high, the color will be blue.
"Notification" will blink when screen updates because the framebuffer devices are not support this method of screen drawing. But it works for now and I think that it is very useful to know the reasons of device's lags and freezes.
- Menu now immediately reacts to input, instead of pressing some characters and then Enter. Modified all menus that way so the interface is now much better.
- When exiting menu, parameters are automatically saved to default profile. No need to care about it anymore...
- Added Quick settings also to RAM and I/O
- Main menu: moved all "p)" menu elements to main menu level, it is quicker to access now
- Some more Quick settings options added
- Added Quick settings to my menu templates, so I will add this to most of the new menus in the future
- Main Quick settings colors changed to blue, additional are still white
- Overclock to 1920 MHz lowered to 1800 MHz because 1800 is much more stable (1920 causes reboots on Marshmallow on my tablet)
- Device now reboots when charging speed is too bad. By default this is disabled. Also added setting "Charge cycle time" and Quick settings for that so you can quickly set up to what charge speed you need (reboots are helpful but not very good for users that want to play device when it charges).
- 'Boost' feature disabled so now DynBS will work as always even when device is laggy
Previous:
1.1.22:
- CPU, Boeffla Sound and Network setting menus in smkd now have the Quick settings feature that helps to configure them by one click instead of tweaking them each
1.1.21.1:
- DynBS updated: now it uses frequencies from 350 to 700 MHz too, so more battery can be saved.
1.1.21:
- smkd now has menu interface which opens by default by command 'smkd' without options.
- All setting commands are removed. Use menu instead.
- In Cyanogenmod ROMs SystemUI is restarted every time when screen becomes disabled, so you may never see it lags or freezes again.
- PCS renamed to SC (SmoothnessControl).
- Overclock enables when device is laggy even when it is disabled in settings
- Redone temperature control: now smkd monitors a device temperature instead of CPU. It leads to better smoothness. Also overheat situations disable some functions like I/O readahead, ZRam, KSM.
- Overheat prevention function fully removed
- Governor Smooth now enables both cores on gestures with two or more fingers instead of simple tap.
1.1.20:
- Added charging compensation: now when battery charging is too slow, CPU Topology and voltage will be changed appropriately for quicker charge.
- Touch boost changed from 1400 to 1000 MHz, but it also boosts busfreq to 400 instead of 267 MHz. Results in better reaction on screen touch.
- Governor Smooth's default sampling_rate changed from 27000 to 16000 for quicker reaction
1.1.19:
- Added ARM CPU Topology for better multithread scheduling
- Some CPU Scheduler changes for smoothness or power saving (tweakable)
- Improved smkd UI code
1.1.18.1:
- Fixed performance/smoothness problems.
1.1.18:
- Added new default configuration "throughput"
- GPU acceleration is now forced for all apps and it is changeable from smkd.
- I/O scheduler SIOPlus added.
- DynBS is returned (one user asked for it as it really saves battery, as he said).
1.1.17:
- User profiles are no more exist, replaced with default configurations" instead. They are: smooth, battery, ram and cool. After each launch of smkd (mostly on reboot) configurations are removed and recreated to always be fresh and up to date.
- Added ability to create, rename and delete profiles by normal way, but default profiles cannot be replaced, deleted or renamed through smkd (only "by hands").
- GPU settings: composition and forced GPU-acceleration from Android settings for developers.
- Tripndroid and Zen I/O schedulers are added.
1.1.16.1:
- Configurations loading is now be always successful (but only if appropriate file exists), without that annoying errors "try again later, please..."
- Small tweaks optimization
1.1.16:
- Overclock now disabled by default, as it was on 1.1.14 and before, for battery saving (overclock eats too much battery). Can be enabled with command 'smkd -c -o 1'. Temperature control is now optimized for both CPU overclock and hardware maximal frequency modes.
- smkd interface improved a little.
- KSM functionality added with some fixes for Mali GPU driver bugs in userspace.
- Default temperature limit is now 64 C (before it was 67 C). This is done for more stability when the weather is hot.
- Some changes for smoothness and stability...
1.1.15:
- Overclock is enabled now for any time when screen is enabled (no more boost).
- Developed overheat preventing functions that cool device when temperature is between 90% of threshold and higher. CPU frequency will be set according to temperature for the moment (for every 2% will be a different frequency). Function can be disabled but it is not recommended.
- All cooling functions now control voltage too to be more effective.
- Governor Smooth tweaked for more balance (oc_nr_run_threshold->6)
- Governor Smooth: changed logic: half-overclock (to 1.7 GHz) will occur if number of processes running is a half of oc_nr_run_threshold tunable.
- smkd now controls I/O scheduler and I/O readahead settings, they are tweakable with smkd command. Profiles change this parameters too.
1.1.14:
- smkd tweaker program fully translated to english and comes now in two languages. Now it uses Android's property 'persist.sys.language'.
If your device configured for any language excepting russian, then program will be in english for you. At the other case it will print out text and messages in russian.
- Improved custom configurations in smkd. Now it loads profiles synchronous with service (by using mutex) instead of relaunching it with shell stop/start (it was too slow and even buggy to do that).
- DynBS will not be in kernel anymore, it is not so effective as needed. Instead, I've added a profile tweaks for my governor Smooth, that tweaks easily changeable from smkd (cmd. "smkd -c -s [0-2]").
1.1.13:
- Cron scheduler now works correctly (i'm happy ), doing exactly what was scheduled by the user at the exact times.
- I don't remember what was in this version because forgot this as I worked on 1.1.14 intensively.
-----
* Newer versions contain changelogs in install archive itself.
Very good kernel. Use [5.1.1] Resurrection Remix 5.5.9 + SMK 1.0.20.1 lp.
Nerovinger said:
Very good kernel.
Click to expand...
Click to collapse
Thanks
stuck at bootanimation..
Sent from my SM-T311 using XDA-Developers mobile app
so.hell said:
stuck at bootanimation..
Sent from my SM-T311 using XDA-Developers mobile app
Click to expand...
Click to collapse
What ROM do you use? Android version, SMK version?
AICP BY GR8NOLE.
SMK V-1.1.12
i try dirty flash n clean flash.stuck at bootamination..
Sent from my SM-T311 using XDA-Developers mobile app
so.hell said:
AICP BY GR8NOLE.
SMK V-1.1.12
i try dirty flash n clean flash.stuck at bootamination..
Sent from my SM-T311 using XDA-Developers mobile app
Click to expand...
Click to collapse
Looks like it will not work on AICP ROM, on Cyanogenmod 13 and ResurrectionRemix kernel works fine (I've tested that)... Sorry The reason for that I can not fix this problem is that I do not know (even cannot know) how to make an init.rc (this file starts all Android services on boot) file universal (to support absolutely all ROMs at one time). This is also the reason for three builds of kernel: kk, lp and mm...
Nice kernel. But can you please make a version of your kernel work with the T310 (WiFi)?
Stuck at Bootanimation
ROM: Resurrection Remix 5.6.9 by powermetza
Android Version:6.0.1
SMK version 1.1.12
pawas99 said:
Stuck at Bootanimation
ROM: Resurrection Remix 5.6.9 by powermetza
Android Version:6.0.1
SMK version 1.1.12
Click to expand...
Click to collapse
Try to flash on a clean ROM (with backup of cource)... All fine for me on RR.
Luis_0 said:
Nice kernel. But can you please make a version of your kernel work with the T310 (WiFi)?
Click to expand...
Click to collapse
I can't as i don't know much about modding in '/init.rc' script and also about what differences it has in kernels for T310, T311 and T315... Sorry.
There are too much incompatibilities with builds that are now (they must work everywhere but they don't)...
Ok. Added one question to poll. There are three variants for ROM and two for working or not (six at all), for me all works fine, so I voted for the first three answers.
Version 1.1.14 developer testing ends now, smkd fully translated to english. I will now build the kernel and then begin uploading it to Google Drive.
(sorry for my incorrect english)
igoryan94 said:
Try to flash on a clean ROM (with backup of cource)... All fine for me on RR.
Click to expand...
Click to collapse
Stuck at bootanimation even after flashing on a clean ROM.
waiting for update..
Hey @igoryan94,
Thanks a lot for making this great kernel!
I've flashed the KK version along with the stock ROM http://forum.xda-developers.com/showthread.php?t=2789510. It works very nicely. Would you please show an instruction (or a specific terminal command for newbies like me) of how to overclock CPU to 1.9GHz? Currently the max speed is 1.5Ghz according to kernel audit.
Thanks again
Hey I cant change the cpu frequent through kernel adiutor. As soon as i change the freq to 1920 it changes back to 1500.
igoryan94 said:
I can't as i don't know much about modding in '/init.rc' script and also about what differences it has in kernels for T310, T311 and T315... Sorry.
Click to expand...
Click to collapse
@gr8nole could help him in this?
xdaSEx10 said:
Hey @igoryan94,
Thanks a lot for making this great kernel!
I've flashed the KK version along with the stock ROM http://forum.xda-developers.com/showthread.php?t=2789510. It works very nicely. Would you please show an instruction (or a specific terminal command for newbies like me) of how to overclock CPU to 1.9GHz? Currently the max speed is 1.5Ghz according to kernel audit.
Thanks again
Click to expand...
Click to collapse
CPU frequency is automatically changed to 1920 MHz when special conditions are met (they are: "blocked" processes and waiting for I/O).. Version 1.1.5 will have full 1920 MHz CPU frequency.
I will now upload "developer" version of kernel 1.1.15_dev for KitKat users. If you want, test that) It is not fully contains all changes that i've done, but I'm not at home now and cannot compile new build... For now it has smooth overheat prevention and overclock fully enabled.
Hunter97 said:
Hey I cant change the cpu frequent through kernel adiutor. As soon as i change the freq to 1920 it changes back to 1500.
Click to expand...
Click to collapse
Please wait for SMK version 1.1.15, it will use 1920 MHz as a default frequency always excepting overheat moments (that will disapear very quickly) and governor's battery saver mode.
You can also use a developer version 1.1.15_dev if you use JellyBean/KitKat as your ROM.
Ok, "dev" version released for testing.
When I will return home, I will release another testing version that has an I/O scheduler change functionality, optional Overheat Prevention and changing min_freq to minimal (50 MHz) when temperature event occurs. Maybe it will have even more features (I have smkd code with me, PC is only needed for compiling kernel and ramdisk).
on NoleKat.T310. v1.1 KK 4.4.2 not boot. on CM13 it's ok, but, for me, the best android versioni for this tablet is kk stock and i install NoleKat.T310. v1.1.
jamax80 said:
on NoleKat.T310. v1.1 KK 4.4.2 not boot. on CM13 it's ok, but, for me, the best android versioni for this tablet is kk stock and i install NoleKat.T310. v1.1.
Click to expand...
Click to collapse
SMK will not boot on T310. Only T311.

Best setup anyone ahould prefer!

So, firstly i will say best setup from my side on MIUI GLOBAL . My english is so bad i think you can manage. Lets get started, this will be a beat setup which will give you smother performance than default setting on miui u need to be rooted.
Requirements-
Custom Recovery
Magisk manager
And modules you need-
Ainur sauron
Audio modification library
Busybox
Dolby digital plus(not present in downloads section u have to install externally)
FDE. AI
Youtube Vanced.
And stoned mod v3 (flash through custom recovery u can find it on mod section poco f1 development)
Extreme kernal or any other which supports overclocking
Ex kernal manager
........................................................
Ex kernal manager setup-
Open app
On right side click on 3 dots u will find setting
After setting go to advance settin under power amd performance one!
Than set max cpu frequency to 784mhz under powersave mode
Turn big cluster option to disable
Max gpu frequency to 675mhz
...............................................................
Performance setup
Max cpu frequency
1766mhz
Max cpu freqency(big cluster)
2649mhz
Min cpu freqency
1766mhz
Gpu governer and even big cluster
Keep to performance
Max gpu to
710mhz
Save the options
.....................
Now go to status bar icons and press edit
Add 2 tiles from ex kernal manager i.e performance and power save
.........
Now thats all switch them according to situations
Powersave will save huge amount of battery
Performance gives u high mhz which will be awesome but device may be heatup if heavy games played..
I hope this will help you alot. This is my personal settings for miui 10 with butter smooth performance!:laugh:

Categories

Resources