[MOD] BlackenedMod v2.0 (Pixel 3a / Pixel 3a XL) - Google Pixel 3a ROMs, Kernels, Recoveries, & Other

Introduction:
Hello everyone!
The idea to this 'project' did blossom after having an conversation with @pkgnex in the past about the general idea of creating something else that follows what he started with his PK's Tuning Script for Pixel 2 (XL) but with a twist, mainly as a complement to his own thread that you can find here, but also with a completely different vision and focus on what the script itself should achieve (and deliver) for kind of results for myself and for all of you personally, of course, that wants to try it out and use it as a "daily driver".
Shortly explained.
This script is created with the goal of improving both battery life and performance on our Pixel 3a (XL) devices, and after a whole range of configurations and various set-ups, I've come up with something that, in my eyes, is worth sharing with all of you so that you can try it out yourself and judge on your own, with constructive feedback on what can be improved or added in future releases - if desired. My philosophy is, and will always be, this:
If something can be improved or altered in a positive way so the average user can feel and see a difference, then go for it. Non stop.
The latest release can be found here.
Disclaimer:
This is presented as "what if". If this modification screws up or breaks anything for you, I am not the one to be held responsible. It's a free will to try out this kind of changes/modifications/addons/tweaks, just don't blame the inventors for eventual bad results and/or screw-ups.
Note: This script is not recommended to be modified or customized by the user.
Features:
Reduced battery consumption
Device specific enhancements for best possible balance between battery life & performance
Enabled, and fully configured, Boeffla generic kernel wakelock blocker
Disabled a lot of useless stuff at kernel level (Improves battery life as well as performance)
CPUSet improvements & optimizations
Power efficiency enhancements
Wide IO block tuning (Reduces the possibility of hiccups, lags and overhead)
Possibly other miscellaneous things I've forgotten to write down here, both big and small.
Requirements/what you need for getting this script fully working:
An unlocked bootloader
Your own specific choice of kernel
Latest possible version of Magisk
Busybox for Android NDK Magisk Module by @osm0sis
Patience
Installation/How-To use & abuse:
1) Download the attached ZIP
2) Extract the script
3) Move the script to the following location;
/data/adb/service.d and give it the following & needed file permissions (0775)
4) Reboot your phone, let Android boot to the launcher and let Magisk boot service do its crucial magic (takes a few seconds before the scripts is fully up and running around behind the scenes)
5) Enjoy!
Note: If you still are unsure how to do for making my kernel configuration / modification work & be up and running behind the scenes, then please read @Phalanx7621 phenomenal guide here or check out @Phalanx7621 in-depth video here. The installation method is the same for all generations of released Pixels!
Credits:
@franciscofranco for all the information on which kernel wakelocks that is safe to block
@Phalanx7621 for his phenomenal how-to guide
@Lord Boeffla for his awesome generic kernel wakelock blocker
@pkgnex for inspiring me walking into this partially unknown territory.
@flar2 for his excellent EXKM application and ElementalX Kernel
@osm0sis for his Magisk Busybox module
Everyone that I've forgotten to mention here
Telegram:
If you want to try out betas / previews of my script before they are officially released, or just hangout and chat a little, then join the official Telegram group here
To-Do list:
Optimize and properly tune things even further for best possible balance between battery life, system responsivness and performance
Contributors:
@xFirefly93
Created: 2019-07-06
Last updated: 2019-11-15

Update!
Note: It is recommended that you reboot your phone after you have applied v1.0 so the customized changes / improvements takes full effect and is fully up & running as intended.
Version v1.0 (Initial release):
- Initial test release for Google Pixel 3a (XL)
- Enabled, and tuned, Boefflas wakelock blocker
- Enabled the backlight dimmer per default
- Disabled some useless kernel stuff for less overhead
- Some additional high quality customizations & improvements
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

very nice, thank you so much!!!
Sent from my Pixel 3a using Tapatalk

Tiebe said:
very nice, thank you so much!!!
Click to expand...
Click to collapse
You're so damn welcome, and cheers!

Update!
Note: It is recommended that you reboot your phone after you have applied v1.1 so the customized changes / improvements takes full effect and is fully up & running as intended.
Version v1.1 (Semi-major release):
- Adjusted the task scheduler for better system responsivness
- Added my own Schedutil governor profile for a better balance between performance and battery life through the whole day
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

So glad to see you working on sargo releases as well! Really excited to try it out, and what a great time to release this as you are working on BM for Q on wahoo/taimen.

catharsis724 said:
So glad to see you working on sargo releases as well! Really excited to try it out, and what a great time to release this as you are working on BM for Q on wahoo/taimen.
Click to expand...
Click to collapse
The Q exclusive release of BM for Wahoo will be domination deluxe, just wait!
:highfive:

Thank you! Instructions are great but they are confusing because theyre different. I ended up using the ones written here instead of the video or tutorial post.

xFirefly93 said:
- Enabled the backlight dimmer per default
Click to expand...
Click to collapse
These devices are OLED and have no backlight, what does that do in this case? Thx...

duh1 said:
These devices are OLED and have no backlight, what does that do in this case? Thx...
Click to expand...
Click to collapse
Reduces screen brightness a little bit (which is a good thing during the nights and what not).

I was looking through the script and it appears to mainly be kernel customizations. Instead of being an init script, isn't it possible for this to be set up as a custom settings file to be imported to one of the kernel managers, or perhaps you already have a settings file we could test?

duh1 said:
I was looking through the script and it appears to mainly be kernel customizations. Instead of being an init script, isn't it possible for this to be set up as a custom settings file to be imported to one of the kernel managers, or perhaps you already have a settings file we could test?
Click to expand...
Click to collapse
I prefer to let it being applied straight through the service.d folder as a part of the Magisk boot service myself.
It's pretty much a lot easier for everyone that way.

Just for fun, I loaded this script on my Pixel C tablet. Remember that? Lol
It's an old janky Pixel abandoned by Google when Oreo ended. It's now on a custom Pie rom with a custom kernel so why not? The script installed and ran successfully. Proof was in the Magisk log. But not just that, this tablet now flys! No stutter scrolling, slightly slower battery drain and smoother transitions. Most importantly to me were the improvements in Chrome. Chrome would bog way down with just a few tabs open. Scrolling through articles and web pages was painful. The stutter was trerible especially compared to my Pixel 3a.
All I have say is thank you!
12

12paq said:
Just for fun, I loaded this script on my Pixel C tablet. Remember that? Lol
It's an old janky Pixel abandoned by Google when Oreo ended. It's now on a custom Pie rom with a custom kernel so why not? The script installed and ran successfully. Proof was in the Magisk log. But not just that, this tablet now flys! No stutter scrolling, slightly slower battery drain and smoother transitions. Most importantly to me were the improvements in Chrome. Chrome would bog way down with just a few tabs open. Scrolling through articles and web pages was painful. The stutter was trerible especially compared to my Pixel 3a.
All I have say is thank you!
12
Click to expand...
Click to collapse
Haha, holy crap. That was kind of unexpected, and surprising that I actually have created such a monster to be honest.
Or wait..
Wait until v1.2 is complete - it will make both your P3a and Pixel C fly higher than a (Snap)dragon ever is able to do!
:highfive:

xFirefly93 said:
Haha, holy crap. That was kind of unexpected, and surprising that I actually have created such a monster to be honest.
Or wait..
Wait until v1.2 is complete - it will make both your P3a and Pixel C fly higher than a (Snap)dragon ever is able to do!
:highfive:
Click to expand...
Click to collapse
Awesome! And thanks!

Update!
Note: It is recommended that you reboot your phone after you have applied v1.2 so the customized changes / improvements takes full effect and is fully up & running as intended.
Be aware that you have to flash the Busybox Magisk module by @osm0sis for getting the newest enhancements, that is featured / included on v1.2, up and running as intended!
Version v1.2 (Major release):
- Added a few crucial filesystem tweaks for improved performance (Credits goes to @pkgnex for this contribution. Be aware that you have to flash the Busybox Magisk module for getting those modifications up and running as fully intended)
- Fully removed all of the alternative task scheduler values / settings (they was only causing random freezes and lagspikes)
- Slightly adjusted the default stock CPUSet values for hopefully improved power efficiency as well as system responsivness
- Cleaned up the script on a few minor typos and what not
- Disabled a few minor CPU related loggers (experimental)
- Reduced suspend latency by enabling console_suspend
- Added a few tweaks for overall better network performance
- Shifted to Westwood TCP congestion algorithm per default
- Disabled the useless Adreno GPU frequency throttling tunable
- Disabled RCU expedited and 'replaced' it with RCU normal for improved real-time latency, CPU utilization and energy efficiency
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Enjoy!

12paq said:
Awesome! And thanks!
Click to expand...
Click to collapse
You should actually try out the latest Blackened release in the post here above on both your P3a as well as on your Pixel C.
You won't regret it, I promise.
:highfive:

xFirefly93 said:
You should actually try out the latest Blackened release in the post here above on both your P3a as well as on your Pixel C.
You won't regret it, I promise.
:highfive:
Click to expand...
Click to collapse
Sorry, I see very little difference on the P3a, it could just be me. Ex Kernel runs great for me. I'll give your mod some more time to test.
However, on my the 3 yr old Pixel C, it is very much improved. Impressive!

12paq said:
Sorry, I see very little difference on the P3a, it could just be me. Ex Kernel runs great for me. I'll give your mod some more time to test.
However, on my the 3 yr old Pixel C, it is very much improved. Impressive!
Click to expand...
Click to collapse
Have you flashed the Buxybox Magisk module on your P3a?

xFirefly93 said:
Have you flashed the Buxybox Magisk module on your P3a?
Click to expand...
Click to collapse
Yes.

Related

[KERNEL] [OnePlus2] [OOS3/OOS2] Boeffla-Kernel (18-12-2017)

Hi all,
some of you know me from the OnePlus One or the Samsung devices area, where I provide my kernels already for more than two years to Galaxy S5, S3 and Note 10.1 users for all sort of platforms (Samsung, Cyanogenmod, Omnirom etc.)
Finally I got an OnePlus Two a few weeks ago and decided to start a kernel also for this device.
Please note:
I am not heading to have as many features as possible implemented, this is not my design goal. If you are more into that, move on to other, good existing kernels. If you are searching for a good mix of improvements and new functions while not sacrificing stability, you are welcome here (see below the history section for more info).
Compatibility
Important: This kernel is only meant to be compatible with official OnePlus OOS and nothing else.
So when the kernel does not run on custom rom XYZ, do not even bother me with it or ask hundred times in the thread for compatibility.
I could not care less about it !!
Important notes
When using new anykernel concept Boeffla-Kernel: Flash stock kernel of rom first !
This kernel is ONLY compatible to OxygenOs stock 2.x or 3.x, nothing else !!!
If you are using a custom rom that bases on OxygenOs, it might work. However, if it does not work, do not expect me to do tweak to make the kernel running with your favorite rom. I would not do it - my one and only reference is OxygenOs stock.
It is not supposed to be compatible to LineageOS, CM, HydrogenOS etc.
Also note: You have to use Boeffla-Config app which I provide on my homepage to tweak the kernel. 3rd party apps will not be able to unleash the full power of the kernel.
Support
First read the FAQ section on the Homepage !!!
Click here to learn about all possible kernel settings in the config app (outdated at the moment).
Click here to learn about using the config app (outdated at the moment).
I will refuse to give support if you do any undervolting and experience freezes or hot reboots.
I will also not provide any support if you do not use Boeffla-Config app to tweak the kernel, other 3rd party tweaking apps are known (and intended) to cause issues.
I will refuse to give support if you have xposed framework installed and reporting any kind of weird issues. My opinion to xposed it quite clear: too powerful for >90% of the users that just mess up their system with it.
Otherwise, you can get in touch with me via the support e-mail address: [email protected]
Please provide kernel version, rom version, a detailed issue description and ideally supporting screenshots or log files.
Change logs
(you can also access them directly in Boeffla-Config V2 by pressing menu and selecting "change log...")
Change log for OxygenOS 3.x kernel - Click here
Change log for OxygenOS 2.x kernel - Click here
Features
Support of anykernel concept (only latest kernels) - flash stock kernel before flashing Boeffla
Full integration with Boeffla-Config V2 (you need at least version 2.2.42 or higher !!!) configuration app
(get it from http://www.boeffla.de) to configure all kernel settings
The two CPUs (big and little cpu) can be configured completely separate in terms of min/max frequencies, governors and hotplug profiles
Additional governors: Impulse, zzmoove, elementalx, conservative, ondemand
Additional schedulers: fiops, bfq, sio und zen
Hotplugging done by using stock core_ctl method
Many Hotplug tweak profiles (default are: little CPU always runs on 4 cores, big CPU runs on between 2 and 4 cores based on load)
Notification LED control (fading, speed, brightness)
Boeffla-Sound engine (Headphones volume configurable only)
Dynamic FSync (activated if screen on, deactived if screen off), configurable
Input boost frequencies and duration configurable, input boost switch
No CPU and GPU overclocking yet
No CPU and GPU voltage interface (will probably never come to save me support work)
GPU underclocking to 27 MHz possible
msm_adreno_tz and simple_ondemand tweaked to better utilize low frequencies
Show CPU frequency usage per CPU and frequency in Boeffla-Config
Show GPU frequency usage per frequency in Boeffla-Config
KCal V2 Color control
Display backlight limits configurable (to avoid display brightness gets too low in some situations)
Display backlight dimmer
Swipe2wake gestures
Swipe2sleep gestures
Boeffla generic wakelock blocker V1.1.0 (documentation)
Vibration control
Haptic feedback control for gestures
BCL (battery current limit) driver switchable (default is on)
SD card read ahead buffer configurable (default increased to 1024 kB)
Ext4 File system tweaks (default to on, can be disabled)
Thermal engine profiles (in system Tweaks section)
Kernel logger (dmesg) configurable
Boeffla charge analysis (display of charger type and charge current in Boeffla-Config app in real time)
Boeffla touchkey LED control (LEDs fully off, LED on screen touch, configurable duration)
USB charge rate bumped up to 900 mA
CIFS support (module, do not mount inside /data, if you rooted with Chainfire SuperSu, make sure you uncheck the namespace separation in SuperSu app)
NFS support (module)
NTFS support (module)
XBox support (module)
OTG-Ethernet support (module)
TCP Congestion changed to Westwood
Many additional TCP congestion algorithms activated to be used
init.d support (in /system/etc/init.d - set correct permissions!)
Automatic EFS backup
Integrated full busybox 1.27.2 (own compilation)
Kernel initialisation log file (with history of 3 log files)
Emergency reset script automatically placed into /boeffla-kernel-data folder of your internal memory
Google gcc 4.9 toolchain (64 bit) used for best stability
Always using latest Oxygen OS Initramfs
Device tree build from kernel sources for future options on frequencies and voltages
Always based on latest Oxygen OS kernel sources (https://github.com/OnePlusOSS/android_kernel_oneplus_msm8994)
Download
For all information and downloads (stable AND testing versions), visit the Boeffla-Kernel homepage:
www.boeffla.de
History and design targets
Basically I created my first Boeffla-Kernel in 2012 as there was no kernel for the Samsung Galaxy S3 around that had exactly the mix of functionalities that I wanted. I wanted to have full flexibility in undervolting and charge rates for instance, but did not like the sharpness and/or brightness tweaks many kernels have implemented as per default.
Hence, I began to create my own kernel after a while, adding all the features I like. This is the result of my work, which in the end I decided to share with you. I hope you like it as much as I do.
The objective of this kernel is to have a kernel for daily use. It does not aim for best battery life, or best smoothness or best benchmark scores. Also it does not aim to have the broadest feature set available everywhere.
It aims more for a good mix of all, not sacrificing stability and functionality in the end.
And - most important: It aims to stay quite close to stock !!!
These design targets are also valid for the OnePlus kernel here!!!
This said, I will definitely NEVER implement:
things I do personally not need
things I do not like
things that are in any way dangerous
anything which is highly experimental
f2fs - it is known to cause various issues and compatibility problems
a CAF based kernel
anykernel method to use the ramdisk of the installed rom
anything that requires upstreaming of kernel parts to a higher kernel major version
So do not even ask for it if it falls into the listed categories. Everything else I am happy to check and decide.
And: I do not really care about benchmark numbers, they say almost nothing as long as something is not completely wrong. Important for me is the feel-good factor.
I am also not interested in gaming at all, so never expect a gamer kernel. It will just not happen...
Compatibility
To reiterate it again: Flash the kernel only if you are running a compatible rom !!!
Configuration of the kernel
To tweak and configure the kernel, manually load and install the app "Boeffla-Config V2" from the downloads section on www.boeffla.de.
You need at least version 2.2.03 or higher for the OnePlus Two Boeffla Kernels.
Donation
If you like my work, feel free to donate: Donation-Link
If you donate at least 2,49 EUR (to be in line with the donation app prices on Google Play store), you will receive a personal donation code which unlocks some nice little comfort functions in Boeffla-Config V2 on top.
Source code
All sources can be found in my Github repository: http://github.com/andip71
Credits to developers
Of course, I had never been able to create all that by my own. So I want to give credits to the really good developers around, that have given me all the inspiration and from which I cherry picked lots of the implemented functionalities:
* ZaneZam
* Ak
* Yank555
* Hardcore
* Chainfire
* Netarchy
* Gokhanmoral
* Simone201
* Entropy512
* Faux
* Savoca
... I just hope I did not forget someone. If so, please let me know and I will add you of course.
Thanks to all of you for your great work !!!
Special thanks
Also I want to thank xda user @magnamentis for the ongoing testing to iron out the stability issues of the first alphas. He was doing that always taking the risk to "ffy" his brand new OP2.
Special thanks as well to @ZaneZam to pinpoint the issue during my absence as I was on business trips most of the time in the past weeks.
Disclaimer
*** As always - Flash on our own risk! ***
Make sure you flash the correct version depending on your firmware version!
I can and will not take any responsibility for bricked phones or lost data.
It is generally recommended to run a complete Nandroid backup in your custom recovery and safely store your personal data before you flash a new kernel.
Cheers and enjoy
Andi
Latest change log:
OOS3.0.x
http://kernel.boeffla.de/oneplus2/boeffla-kernel-oos/oos3xx/changelog.htm
Configuration and profile thread
http://forum.xda-developers.com/oneplus-2/general/unofficial-boeffla-kernel-profiles-t3289395
*** You want my support? Then stick to my rules ***
Guys, I am receiving more and more completely useless support requests in different threads. Useless because people provide nothing to be able to help, not even the minimal possible information they could give.
Hence, I will now remind anyone again on the support guide lines stated here:
http://boeffla.de/index.php/support/support
Also you need to ensure you follow the installation guide lines incl. trouble-shooting stated here:
http://boeffla.de/index.php/support/installation-how-to
And to cut a long story short: If you do not at least provide what I request in the support guide lines, I will IGNORE YOUR REQUESTS IN FUTURE.
Straight and simple. I have enough of people wasting my time just because they are too lazy to write details.
Period.
Also as a reminder:
you use xposed? -> no support, everything is your own issue
you use a custom rom and not the official stock or CM one? -> good luck, you are on your own
you undervolt or overclock? -> have fun, but without my support
Sorry, this might sound harsh (and it is meant to sound harsh), but you cannot imagine about how crappy support requests can be. Stating something does not work is just not enough.
Please consider that!!!
Andi
I am just waiting for the source code push to github to finish.
Then I will officially open up the thread and release the first beta to all of you.
Andi
Online
Hi all,
kernel is now officially released in version 1.0-beta1.
Download link, as always, on the kernel homepage.
Some notes again:
Make sure you have latest Boeffla-Config app running -> 2.02.03 !!!
This is the very very very first kernel version, so expect bugs or issues
Please be nice when you have an issue, this OP2 kernel costed me more grey hairs already than all other kernels I ever built together
Let the fun begin.
Andi
Awesome!! As stated there's no gpu over clocking, however I don't play games on my phone, will I be able to downclock the gpu?
Finally will try and report if any bug welcome to the opt forums andi i was waiting for you (really)
Alvin Vesper said:
Awesome!! As stated there's no gpu over clocking, however I don't play games on my phone, will I be able to downclock the gpu?
Click to expand...
Click to collapse
Downclock should work, yes.
Andi
Thanks a lot Andi!Had an awesome experience with the test kernel.Gonna flash this soon
Tapped from my ❶+❷
Downloading noww
I'm excited to finally try out this kernel. I've always stumbled upon threads that mentioned this kernel and since I've had my Nexus 6, I never got the chance to try this kernel out. But now that I joined the OnePlus 2 family, I can finally see what this kernel is all about!
Crackdroid said:
I'm excited to finally try out this kernel. I've always stumbled upon threads that mentioned this kernel and since I've had my Nexus 6, I never got the chance to try this kernel out. But now that I joined the OnePlus 2 family, I can finally see what this kernel is all about!
Click to expand...
Click to collapse
Sure, just for expectation management: Do not expect too much for the start now.
The msm8994 soc development is quite fresh, as well as the device.
So I am not really far where I want to be in future in terms of features etc.
But stuff will come over the time, as it was with the OPO kernels and the S5, S3, Tab 10.1 kernels etc.
Andi
Lord Boeffla said:
Sure, just for expectation management: Do not expect too much for the start now.
The msm8994 soc development is quite fresh, as well as the device.
So I am not really far where I want to be in future in terms of features etc.
But stuff will come over the time, as it was with the OPO kernels and the S5, S3, Tab 10.1 kernels etc.
Andi
Click to expand...
Click to collapse
That's definitely understandable and patience is key so there's no rush at all. Thanks for your hard work thus far!
I flashed it fine but there is no apk in the config V-2 download, its just a zip. am I missing something?
Crackdroid said:
That's definitely understandable and patience is key so there's no rush at all. Thanks for your hard work thus far!
Click to expand...
Click to collapse
Absolutely.
For future projection, the functionalities should be pretty much what I have in my OPO and S5 kernels one day. This is my goal.
Andi
Quizo said:
I flashed it fine but there is no apk in the config V-2 download, its just a zip. am I missing something?
Click to expand...
Click to collapse
You need to download the app from here:
http://boeffla.df-kunde.de/bc/
(note, it MUST be an apk. if you download a zip, your browser does not interpret the mime headers correctly and you might use another browser)
Save it on your phone, install it manually.
Andi
@Lord Boeffla
Is it possible (in future of course) to control more paramters of audio chip? (Like in your kernel for i9300 for example)
rascal0pl said:
@Lord Boeffla
Is it possible (in future of course) to control more paramters of audio chip? (Like in your kernel for i9300 for example)
Click to expand...
Click to collapse
Most likely no.
See question 2 in FAQ section:
http://www.boeffla-kernel.de/index.php/faq
Andi
Deleted
great... any possibility to add charging control to increase charging speed.. the only downside of this darn phone.. it feels like it takes for ever to charge... !!

[EOL][KERNEL] [OnePlus2] [Lineage14/CM13] Boeffla-Kernel (27-03-2018)

** Note: This kernel is end-of-life and will no more be maintained. There will be no LineageOS 15.1 or newer kernel be available anymore **
Hi all,
some of you know me from the other OnePlus (One and X) or Samsung devices areas, where I provide my kernels already for more than two years to OnePlus One, OnePlus Two, Galaxy S5, S3 and Note 10.1 users for all sort of platforms (Samsung, LineageOS, Cyanogenmod, Omnirom etc.)
Please note:
I am not heading to have as many features as possible implemented, this is not my design goal. If you are more into that, move on to other kernels. If you are searching for a good mix of improvements and new functions while not sacrificing stability, you are welcome here (see below the history section for more info).
Important notes
When using new anykernel concept Boeffla-Kernel: Flash stock kernel of rom first !
Make sure you flash the correct kernel version, depending on whether you really use LineageOS/CM or a different OS !!!
Also note: You have to use Boeffla-Config app which I provide on my homepage to tweak the kernel. 3rd party apps will not be able to unleash the full power of the kernel.
Compatibility
Important: This kernel is only meant to be compatible with official LineageOS and nothing else.
It is reported to NOT work fine specifically on Resurrection Remix roms, also some Seraph based roms are not compatible.
So when the kernel does not run on custom rom XYZ, do not even bother me with it or ask hundred times in the thread for compatibility.
I could not care less about it !!
Support
First read the FAQ section on the Homepage !!!
Click here to learn about all possible kernel settings in the config app (quite outdated, as it is focused on S3 still).
Click here to learn about using the config app (quite outdated, as it is focused on S3 still).
I will refuse to give support if you do any undervolting and experience freezes or hot reboots.
I will also not provide any support if you do not use Boeffla-Config app to tweak the kernel, other 3rd party tweaking apps are known (and intended) to cause issues.
I will refuse to give support if you have xposed framework installed and reporting any kind of weird issues. My opinion to xposed it quite clear: too powerful for >90% of the users that just mess up their system with it.
Otherwise, you can get in touch with me via the support e-mail address: [email protected]
Please provide kernel version, rom version, a detailed issue description and ideally supporting screenshots or log files.
Change logs
(you can also access them directly in Boeffla-Config V2 by pressing menu and selecting "change log...")
Change log for LineageOS 14 kernel - Click here
Change log for CM13 kernel - Click here
Features
Support of anykernel concept (only latest kernels) - flash stock kernel before flashing Boeffla
Full integration with Boeffla-Config V2 (you need at least version 2.4.50 or higher !!!) configuration app (get it from http://www.boeffla.de) to configure all kernel settings
The two CPUs (big and little cpu) can be configured completely separate in terms of min/max frequencies, governors and hotplug profiles
Additional governors: Impulse, zzmoove, elementalx, conservative, ondemand
Additional schedulers: fiops, bfq, sio und zen
Hotplugging done by using stock core_ctl method
Many Hotplug tweak profiles (default are: little CPU always runs on 4 cores, big CPU runs on between 2 and 4 cores based on load)
Notification LED control (fading, speed, brightness)
Boeffla-Sound engine (Headphones volume configurable only)
Dynamic FSync (activated if screen on, deactived if screen off), configurable
Input boost frequencies and duration configurable, input boost switch
No CPU and GPU overclocking (also not planned)
No CPU and GPU voltage interface (also not planned)
GPU underclocking to 27 MHz possible
GPU boost implemented (4 levels)
msm_adreno_tz and simple_ondemand tweaked to better utilize low frequencies
Show CPU frequency usage per CPU and frequency in Boeffla-Config
Show GPU frequency usage per frequency in Boeffla-Config
KCal V2 Color control
Display backlight limits configurable (to avoid display brightness gets too low in some situations)
Display backlight dimmer
Swipe2wake gestures
Swipe2sleep gestures
Boeffla generic wakelock blocker V1.1.0 (documentation)
BCL (battery current limit) driver switchable (default is on)
SD card read ahead buffer configurable (default increased to 1024 kB)
Ext4 File system tweaks (default to on, can be disabled)
Thermal engine profiles (in system Tweaks section)
Kernel logger (dmesg) configurable
Boeffla charge analysis (display of charger type and charge current in Boeffla-Config app in real time)
USB charge rate bumped up to 900 mA
CIFS support (module, do not mount inside /data, if you rooted with Chainfire SuperSu, make sure you uncheck the namespace separation in SuperSu app)
NFS support (module)
NTFS support (module)
XBox support (module)
OTG-Ethernet support (module)
TCP Congestion changed to Westwood
Many additional TCP congestion algorithms activated to be used
Entropy values configurable
Hardware touch keys locked as long as screen is in use (touched) for better usability (default, but configurable)
init.d support (in /system/etc/init.d - set correct permissions!)
Automatic EFS backup
Integrated full busybox 1.27.2 (own compilation)
Safetynet: verifiedbootstate + additional flags removed
Kernel initialisation log file (with history of 3 log files)
Emergency reset script automatically placed into /boeffla-kernel-data folder of your internal memory
Rom flash survival mode configurable in Boeffla-Config
Google gcc 4.9 toolchain (64 bit) used for best stability
Always using latest CM13 Initramfs
Always based on latest CM13 kernel sources (http://github.com/CyanogenMod/android_kernel_oneplus_msm8994)
Download
For all information and downloads (stable AND testing versions), visit the Boeffla-Kernel homepage:
www.boeffla.de
History and design targets
Basically I created my first Boeffla-Kernel in 2012 as there was no kernel for the Samsung Galaxy S3 around that had exactly the mix of functionalities that I wanted. I wanted to have full flexibility in undervolting and charge rates for instance, but did not like the sharpness and/or brightness tweaks many kernels have implemented as per default.
Hence, I began to create my own kernel after a while, adding all the features I like. This is the result of my work, which in the end I decided to share with you. I hope you like it as much as I do.
The objective of this kernel is to have a kernel for daily use. It does not aim for best battery life, or best smoothness or best benchmark scores. Also it does not aim to have the broadest feature set available everywhere.
It aims more for a good mix of all, not sacrificing stability and functionality in the end.
And - most important: It aims to stay quite close to stock !!!
These design targets are also valid for the OnePlus kernel here!!!
This said, I will definitely NEVER implement:
things I do personally not need
things I do not like
things that are in any way dangerous
anything which is highly experimental
f2fs - it is known to cause various issues and compatibility problems
custom hotplugging algorithms
a CAF based kernel
anything that requires upstreaming of kernel parts to a higher kernel major version
So do not even ask for it if it falls into the listed categories. Everything else I am happy to check and decide.
And: I do not really care about benchmark numbers, they say almost nothing as long as something is not completely wrong. Important for me is the feel-good factor.
I am also not interested in gaming at all, so never expect a gamer kernel. It will just not happen...
Compatibility
To reiterate it again: Flash the correct kernel depending on whether you are using LineageOS/CM or another rom !!!
Configuration of the kernel
To tweak and configure the kernel, manually load and install the app "Boeffla-Config V2" from the downloads section on www.boeffla.de.
You need at least version 2.4.50 or higher for the OnePlus 2 Boeffla Kernels.
Donation
If you like my work, feel free to donate: Donation-Link
If you donate at least 2,49 EUR (to be in line with the donation app prices on Google Play store), you will receive a personal donation code which unlocks some nice little comfort functions in Boeffla-Config V2 on top.
Source code
All sources can be found in my Github repository: http://github.com/andip71
Credits to developers
Of course, I had never been able to create all that by my own. So I want to give credits to the really good developers around, that have given me all the inspiration and from which I cherry picked lots of the implemented functionalities:
* ZaneZam
* flar2
* Grarak
* Yank555
* Hardcore
* Chainfire
* AndreiLux
* Netarchy
* Gokhanmoral
* Simone201
* Mialwe
* Entropy512
* Faux
* Harunjo
* FranciscoFranco
* Ak
... I just hope I did not forget someone. If so, please let me know and I will add you of course.
Thanks to all of you for your great work !!!
Disclaimer
*** As always - Flash on our own risk! ***
Make sure you flash the correct version depending on your firmware version!
I can and will not take any responsibility for bricked phones or lost data.
It is generally recommended to run a complete Nandroid backup in your custom recovery and safely store your personal data before you flash a new kernel.
Cheers and enjoy
Andi
Last change logs:
LineageOS 14.1
http://kernel.boeffla.de/oneplus2/boeffla-kernel-cm/cm14.0/changelog.htm
CM13
http://kernel.boeffla.de/oneplus2/boeffla-kernel-cm/cm13.0/changelog.htm
Configuration and profile thread
http://forum.xda-developers.com/oneplus-2/general/unofficial-boeffla-kernel-profiles-t3289395
*** You want my support? Then stick to my rules ***
Guys, I am receiving more and more completely useless support requests in different threads. Useless because people provide nothing to be able to help, not even the minimal possible information they could give.
Hence, I will now remind anyone again on the support guide lines stated here:
http://boeffla.de/index.php/support/support
Also you need to ensure you follow the installation guide lines incl. trouble-shooting stated here:
http://boeffla.de/index.php/support/installation-how-to
And to cut a long story short: If you do not at least provide what I request in the support guide lines, I will IGNORE YOUR REQUESTS IN FUTURE.
Straight and simple. I have enough of people wasting my time just because they are too lazy to write details.
Period.
Also as a reminder:
you use xposed? -> no support, everything is your own issue
you use a custom rom and not the official stock or CM one? -> good luck, you are on your own
you undervolt or overclock? -> have fun, but without my support
Sorry, this might sound harsh (and it is meant to sound harsh), but you cannot imagine about how crappy support requests can be. Stating something does not work is just not enough.
Please consider that!!!
Andi
.... And its here! Finally landed for cm13 for our beloved op2. Thanks a ton @Lord Boeffla
Sent from my ONE A2003 using Tapatalk
Wohooo...
It's party time for op2 users
Awesome! Will shift to CM13 soon to just try this kernel.
Wooohoo. Awesome.
If only my BSNL allowed me to download that right now ???*
Beer time! :highfive:
3FN59977869854618
Fantastic! Waiting for this day!
I have not found any issue in Kernel but a typo in OP. You've mentioned OPX instead of OP2 in temporary alpha notice
Sent from my Amazing OnePlus 2
mido25 said:
I have not found any issue in Kernel but a typo in OP. You've mentioned OPX instead of OP2 in temporary alpha notice
Sent from my Amazing OnePlus 2
Click to expand...
Click to collapse
Good catch, and easy to correct. Thanks for spotting.
Andi
Since this is alpha will your config app not offer updates for the kernel? (The "Pro" version that is )
djsubterrain said:
Since this is alpha will your config app not offer updates for the kernel?
Click to expand...
Click to collapse
It will in future. Once I want to push a new release, the app does it of course.
Why do you ask? Any evidence or only curious?
Andi
Lord Boeffla said:
It will in future. Once I want to push a new release, the app does it of course.
Why do you ask? Any evidence or only curious?
Andi
Click to expand...
Click to collapse
Just curious and because everyone seems to want "deltas" now, lazy folk
fantastic news this release. finally we can openly talk about it and share it.
ps. @Lord Boeffla does it still need the pro version off your app?
Dinjesk said:
fantastic news this release. finally we can openly talk about it and share it.
ps. @Lord Boeffla does it still need the pro version off your app?
Click to expand...
Click to collapse
No, it is a public alpha, so all limitations of closed alpha are obsolete for it.
Andi
Dinjesk said:
fantastic news this release. finally we can openly talk about it and share it.
ps. @Lord Boeffla does it still need the pro version off your app?
Click to expand...
Click to collapse
You need pro version to use tunables in governors. I bet profiles will be up soon in next few days.
Sent from my Amazing OnePlus 2
mido25 said:
You need pro version to use tunables in governors. I bet profiles will be up soon in next few days.
Sent from my Amazing OnePlus 2
Click to expand...
Click to collapse
you can still use old profiles, i am using this one since the alpha1 test
http://forum.xda-developers.com/showpost.php?p=65968195&postcount=422
Does this mean OOS 3.0 version is coming soon?
alexferdean said:
Does this mean OOS 3.0 version is coming soon?
Click to expand...
Click to collapse
not before oneplus will release kernel sources.
question has been asked to much!!

[Oct 31] [Machinex][MarkOneHundred][KERNEL][TW][5.0.1][I9505]

Machinex
MarkOneHundred
Sheer will .
This is machinex.
This is machinex. I have been working on this kernel for over a year now, and am finally comfortable with its release to the public. This kernel builds on the great work of those who have made this device the powerhouse that it is. There are elements here that you have experienced on every GS4 kernel to date, as well as other devices.
The goal I had for this project was upstreaming/updating/experimentally upgrading as much as I possibly could. I have done so, and will continue to do so.
This kernel is ONLY for TW-based, 5.0.1 roms for the I9505!!! NO I WILL NOT DEVELOP FOR DEVICES I DO NOT OWN, SAVE YOUR BREATH!
OBLIGATORY DISCLAIMER:
THIS KERNEL COULD VERY WELL DESTROY YOUR PHONE, YOUR LIFE, YOUR MARRIAGE, Etc. YOU INSTALL AT YOUR OWN RISK!! XDA AND I ACCEPT NO LIABILITY FOR YOUR DECISION TO USE THIS KERNEL!!For noobs: assume that installing this kernel will cause your phone to grow arms and punch you in the face.
PLEASE READ AND UNDERSTAND THIS OP BEFORE LEAVING USELESS "IT DOESN'T WORK" COMMENTS!
Issues that aren't answered here will be dealt with on a case-by-case basis.
SEE POST #2 FOR UPDATES, CHANGELOGS, and FIXES
SEE POST #3 FOR BATTERY/PERFORMANCE INFO
SEE POST #4 FOR A SHORT SYNAPSE BRIEFING
LOGS OR IT DIDN'T HAPPEN! Context helps too. What were your Synapse Settings?
KNOWN ISSUES Wifi issue is fixed! After a fresh rom install, all you need to do is reboot and the appropriate files are created in /data enjoy! HOTSPOT IS FIXED!!!! Finally! I AM AWARE OF AND WORKING ON LOCKSCREEN PIN BUGS!!
FEATURES:
- Linux 3.4.113 + a LOT of upstreamed subsystem code.
- Automatic Busybox Installation, Version 1.25.1.
- Cpufreq core backported ENTIRELY from mainline 4.13. All Cores operate independantly. Their governors and tunables can all be different.
- Govorners: Due to a highly upstreamed cpufreq core api, not many custom governors for now except for Interactive, Intelliactive, and the *NEW* Schedutil governor, described in the documentation like so:
The "schedutil" governor aims at better integration with the Linux
kernel scheduler. Load estimation is achieved through the scheduler's
Per-Entity Load Tracking (PELT) mechanism, which also provides
information about the recent load [1]. This governor currently does
load based DVFS only for tasks managed by CFS. RT and DL scheduler tasks
are always run at the highest frequency. Unlike all the other
governors, the code is located under the kernel/sched/ directory.
Sysfs files:
* rate_limit_us:
This contains a value in microseconds. The governor waits for
rate_limit_us time before reevaluating the load again, after it has
evaluated the load once.
For a great, comprehensive blog regarding the specifics of each governor, as well as the settings found below, please check out the link I've referenced in post #3.
- HARDLIMIT and THERMAL: Incorporated Yank555's CPU Limiting solution, Hardlimit. ALL hardlimits, cpu boost limits, and thermal limits are now PER CORE. I have included it directly in the core cpufreq code, and it is the primary controller for THERMAL, INPUT BOOST and user controlled hardlimits. Thermal overrides both user-selected and input-boost limits, and you can monitor the limiting in real time. Also, the thermal driver now accounts for each core's temperature, and saves time/lock-contention by skipping core control if the temps are below the frequency limiting value.
-CPU HARDPLUG: A driver I built that hooks into the main cpu hotplug API and allows you to disable any core you want, configurable for screen on/off.
- Hotplugs: MX Hotplug, personally built from scratch and uses a real-time kthread for its calculation work. Intelliplug 15.8 (Personally Updated), Alucard Hotplug, MSM_sleeper, Lazyplug, Blu Plug, and Bricked hotplug.
Hotplug Notes: I changed the names of certain functions in the Alucard and MSM Sleeper hotplugs, so that their tunables could be streamlined in Synapse. Synapse is cleaner and simpler than ever, but if you use a third party app, Alucard and MSM Sleeper's max cores and max cores during suspend settings will not be tunable. So anyone who uses a third party app with this kernel let me know and I'll devise a workaround. Mpdecision removed entirely. The "mpdecision" in our sysfs is actually bricked hotplug.
-GPU:Machinactive, Interactive, Conservative, Ondemand, Performance and Powersave GPU Governors, GPU touchboost (fixed suspend issue), ability to lock the min/max freqs, and more!
-Updated version of fauxsound (5.4) (flar2, alesaiko, me). I limited the options in the code to the 4 controls that actually work for our device, and you'll notice a significant stability improvement. Slimbus:Golden-ratio-based operation is pristine. Sound quality is hardware-perfected. The version number is largely arbitrary and I increment when I make any significant improvements. NO MORE USERSPACE CALCULATIONS NEEDED!!!
-A gamot of colour, brightness, and panel options that I frankly didn't think would be feasible for our device, but it's working! MDNIE HIJACK selection, KCAL, and Cyanogen's generic PCC colour control are implemented in Synapse. Note that MDNIE/KCAL stuff is a battery thief, and I've not tested PCC colour control enough for power consumption to give you a definitive statement on it. Note: PCC values are from 1000 (safety limit) to 32768 (or a number close to that), meaning your tuning control is as FINELY GRAINED as possible for this device. I can't believe Synapse actually supports its ridiculous number of steps (and well, I might add). Faux's generic "colour control presets' are in there and they actually work! The stock colours much more vivid, and lower brightness settings benefit from them as I have modified top brightness to my liking.
-HBM:Qualcomm High Brightness Mode: unlocked! This can be controlled via a checkbox in Synapse, but you can also use flar2's HBM widget from the play store. I tried it before and HBM would flicker, but i pulled off a VERY hacky way of making it userspace controllable. Be careful! Though it doesn't seem to drain the battery or overheat the device, it's purely experimental and could cause Chuck Norris to come to your house and personally smash your phone. Now SEPARATE from autobrightness! "SCREEN FLICKER FIX" on PAGE 2
- Completely upstreamed and overhauled cpu, power, scheduling...you name it. Updated Powersuspend to the point where I had to rename it, because it is now closely integrated with the core suspend/power api. Introducing: Prometheus. The driver now calls suspend directly when you turn the screen off, unless a) music is playing, b) the phone is plugged in or c) you choose to disable the feature.
-All the TCPIP tweaks etc, updates to random/frandom, android-specific autogrouping, limited but significant LMK/OOM updates.
-BACKPORTED "codel" fair-queueing net-scheduler, for a faster/more consistent networking experience.
-persistent ram, kexec-support, fast-charge, etc. Drop Caches button in Synapse is useful.
-Utilizing Qualcomm's built-in QRNGD (qualcomm random number generator daemon) with randomness optimized in the kernel = entropy for days.
-BOOTLOADER: Officially only 5.0.1 Bootloaders are supported. Unofficially, someone tried it with a KK bootloader and it worked fine for him so what do I know?
-COMPLETE Synapse support. Download, update, AND install Busybox On Rails from the PlayStore before you install the kernel for best compatibility and support. UPDATE: FULL Busybox installation is now included in machinex installer script. If you have any issues, still feel free to install Busybox on Rails. Upon kernel installation, you'll find Synapse installed in your system apps. If you want to get rid of it, just remove it from /system/priv-app with your file manager.
-CPU and GPU VOLTAGE Control: Both in Synapse. I DO NOT SUPPORT ISSUES IF YOU CHANGE VOLTAGE. YOU ARE ON YOUR OWN.
MENTIONS:
To those listed here, I cannot express how grateful I am for your assistence, patience, and kindness towards me as I badgered you throughout my journey. Though saying "thank you" doesn't feel like enough, thank you all. If I missed someone here, please tell me.
Thankyou:
friedrich420
Slim80
Tkkg1994
flar2
osm0sis
alesaiko
HybridMax
Kushan
Alucard24
Ausdim
Ktoonsez
neobuddy89
javelinanddart
Andreilux
theHacker911
UpInTheAir
Pafcholini
Placiano
Dorimanx
faux123 (seriously like the godfather of s4 kernel hax)
jcadduono
FransiscoFranco
Cyanogen
Meticulus
Eliminator74
Matthew-333 (moonshine kernel)
klabit87
apbaxel
yank555
ion-storm
yseras
PDesireAudio
lsswizard
arter97
Grarek
mrg666
showp1984
gsstudios
Lord Boeffla (andip)
Chainfire
TeamTrickster
tommygreenus
Andycar (For being the best bloody coding buddy I could ask for)
The Machinex Testing Team! - AMAZING folks, just amazing.
My Awesome Testers from this thread.
Again, I'm sure there's tons more.
On to the fun part then
INSTALLATION INSTRUCTIONS:More importantly, the uninstallation instructions. The install pretty much takes care of itself.
There are two links below that you must download in order to safely have an install/uninstall solution for this kernel. The one labelled "machinex-MarkOneHundred.zip" is the kernel. UPDATE: Busybox On Rails isn't required anymore. The second zip is crucial for uninstalling, aptly named "machinex-uninstaller-Jan12.zip." When this kernel is installed (and everytime it boots), it will rename mpdecision, thermald, thermal-engine, and power.default.so with an appended "-bak" suffix, because they all interfere with the updated power/cpu code in the kernel. If you switch to a different kernel, I INSIST that you flash the uninstaller (or take a look at the scripts yourself and do the stuff manually). ATTENTION: SLIM80'S KERNEL CLEANING SCRIPT IS NO LONGER NECESSARY WHEN FLASHING THIS KERNEL!!!!!! I HAVE INTEGRATED MY OWN CLEANUP PROCESS IN THE INSTALLER!!!!!!!!!!
TLDR: NO NEED FOR BUSYBOX ON RAILS, flash zip. use uninstaller zip to uninstall.
DOWNLOADS:
!!!JANUARY 12, 2017:UPDATE!! NEW UNINSTALLER for EVERY VERSION!!!!
DO NOT MIRROR THESE ELSEWHERE. DO NOT INCLUDE THEM IN YOUR ROM WITHOUT ASKING MY PERMISSION FIRST. I AM HAPPY TO COLLABORATE, NOT TO BE ON THE RECEIVING END OF BUG REPORTS CAUSED BY THIRD PARTY DOWNLOADERS.
UNINSTALLER-JAN12: https://www.androidfilehost.com/?fid=385035244224412313
md5: 295ac70bbb17ad2e5dc59e4ca1288e79
MarkOneHundred
INSTALLER: https://www.androidfilehost.com/?fid=745849072291685412
md5: 03af9cfc399d3eda3141254291668563
SOURCE: https://www.github.com/robcore/machinex
(be gentle on my ridiculous commit history, my git skills are shoddy at best).
So keep in mind this a development thread, blah blah blah, but if we all have good discussions (let's TRY to keep it on topic), I'm more than happy to have some fellow nerd friends to talk about my passion with. Heck, I want to use this thread as a chance to meet some other developers who wanna work on stuff together, exchange ideas, learn, and teach me how to get better at git.
Enjoy!
XDA:DevDB Information
Machinex, Kernel for the Samsung Galaxy S4
Contributors
robcore
Source Code: https://www.github.com/robcore/machinex
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: MarkOneHundred
Stable Release Date: 2017-10-31
Created 2016-09-05
Last Updated 2017-10-31
Reserved
UPDATES NOTICE:
Reset your fuelguage (in Synapse) after every install! WIping your cache and dalvik-cache can be helpful for stubborn apps, as well as wiping the cache of any specific app giving you trouble!
-------------------------------------------------------------------------
UPDATES - MarkOneHundred - October 31, 2017
CHANGELOG:
- Updated memory management to roughly linux 4.4.
- Modified Cpufreq in various ways. Per-Cpu frequency touchboost, per-cpu thermal core tracking and limiting, and governors can now be changed if a cpu core is offline. The governor selected will be applied to the core once it comes back online.
- Implemented Omniboost, a generic touchboost interface that can be used for any driver, so long as driver has an external function that the booster can use.
- Built a new hotplug driver from scratch, mx_hotplug. The driver chooses to on/offline cores based on a combination of system load and current number of scheduler requests (and touch of course). What separates this hotplug driver from others is that it uses a real-time kthread in order to give it an "interactive" type calculation.
- Speaking of which, found and fixed the issues with google's most recent interactive governor, and have added it back. Due to it working perfectly now, I forward-ported Intelliactive as well.
- Updated Hardplug to be more efficient.
- Built a little userspace hotplug driver from scratch for those who just need manual core adjustments.
- Tons of other little fixes and updates, to the kernel itself and to Synapse. Please explore around Synapse for some of the updated features.
- Found and fixed any of the user reported bugs i could.
- Continued with the various core updates to 4.14.
- Updated to my own toolchain, 7.1.1 hardfloat, cortex-A15 optimized (it is similiar enough to krait to give us an edge).
- I will update this if i think of anything else.
Sticky: Kernel base is now pretty much somewhere between 3.16-3.18, however I will keep the versioning at 3.4 for certain functions that depend on kernel_version conditionals. Wifi hotspot disconnect issue still persists, but i'd like to think that one day it will be solved...
Can be found in MachineX Rom by the awesome @Andycar found here: https://forum.xda-developers.com/ga...m-machinex-debloated-nogapps-s6-apps-t3573009
See my poorly formatted wiki for older updates:
https://github.com/robcore/machinex/wiki
-----------------------------------------------------------------------
LOGS
In Synapse, under 'LOGS AND PROFILES,' you will find a button that says ALL LOGS. Please press this button IMMEDIATELY after a bug appears that you would like to report, or after a boot if you get a kernel panic (RR).
From now on, without these logs present, I am no longer able to respond to the issues brought up by users.
FIXES
The following fixes involve sqlite and the "Setting Storage" application, also known as Settings Provider, or "com.android.providers.settings package" You will be working with a file named settings.db, and the 'system' table within.
Synapse Cancelled Fix: Get rid of the init.d scripts that are conflicting with UCI service startup. Also check the SuperSU section below...
Sound Fix: Either don't use an audio mod, or don't use Faux Sound Engine. That's all she wrote.
ScreenFlickerFix: Using an SQLITE DB Editor of your choice (from playstore), navigate to the "system" table and change values for "dim_screen" and "intelligent_screen_mode" to 0. *UPDATE* NOW AVAILABLE IN SYNAPSE UNDER THE "EXTRAS TAB"
ChargingTweak: Same as above but change "adaptive_fast_charging" to 0. This is only IF you are having issues which kernel driver-level fast charge. *UPDATE* NOW AVAILABLE IN SYNAPSE UNDER THE "EXTRAS TAB"
MASSIVE THANKYOU to @Andycar for making the above two fixes possible via Synapse!
SuperSU: I'm seeing a lot of permisison errors. Make sure, when using custom roms and kernels, that SuperSU is set to be as permissive as possible so you don't get knox blocked. Here are the crucial settings:
- ENABLE SU during boot
- DISABLE (untick) Mount namespaces separation
- Install SuperSU into /system
- ENABLE Trust System User
- Though I know many have security issues with the idea of allowing apps by default, doing so will make your experience way faster and provide you with less interuptions. At the very least I would set allow by default for Synapse.
These SU settings are kinda par for the course when it comes to android modding.
build.prop: Here is a list of property removals/changes recommended for our device:
REMOVE(lines containing):
ANYTHING with "fps/FPS" in it.
persist.sys.NV_FPSLIMIT
persist.sys.NV_POWERMODE
persist.sys.NV_PROFVER
persist.sys.NV_STEREOCTR
persist.sys.NV_STEREOSEPCHG
persist.sys.NV_STEREOSEP
persist.af.resampler.quality
af.resample
persist.af.resample
ro.telephony.default_network
telephony.lteOnCdmaDevice
dalvik.vm.dexopt-flags
ro.media.enc.jpeg.quality
ro.media.enc.hprof.vid.fps
ro.ril.power_collapse
ro.ril.sensor.sleep.control
pm.sleep_mode
power.saving.mode
persist.cust.tel.eons
persist.sys.dalvik.hyperthreading
boot.fps
shutdown.fps
debug.egl.profiler
hw2d.force
hw3d.force
video.accelerate.hw
debug.mdpcomp.maxlayer
debug.egl.buffercount
debug.enabletr
ro.hwui.renderer.disable_opaque
persist.sys.media.use-awesome (this is default anyway, and is controlled via the nuplayer checkbox in developer settings, so it's unneccesary)
CHANGE:
persist.sys.storage_preload=0 to persist.sys.storage_preload=1
tunnel.decode=false to tunnel.decode=true
af.resampler.quality=4 (or anything else) to af.resampler.quality=255
ro.config.dha_ils_enable=false to ro.config.dha_ils_enable=true
#ro.config.dha_cached_max=4 (remove the #)
#ro.config.dha_empty_max=36 (remove the #)
#ro.config.dha_lmk_scale=0.594 (remove the #)
sys.config.samp_spcm_enable=false to sys.config.samp_spcm_enable=true
sys.config.spcm_preload_enable=false to sys.config.spcm_preload_enable=true
ro.security.mdpp.ux=Disabled to ro.security.mdpp.ux=Enabled
For those having gaming issues, try removing them if you have them or adding them if you don't:
debug.performance.tuning=1
persist.sys.ui.hw=1
This might solve some issues for some folks.
---------------------------------------------------------------------------
INSTALLATION NOTE: Your first boot will probably take longer than usual, because this kernel makes significant (but safe, and auto-backed-up) changes to your core operating system.
This kernel includes drivers that TW has been compatible with since JB (I checked),
but didn't update the kernel drivers for (the best example of this is Autosleep). That said, there are userspace controllers like thermald and mpdecision (a binary linked to kernel code)
that interfere with custom governors, hotplug drivers, etc, so I've made the decision to back them up in the kernel script, and have them disabled while using this kernel.
The UNINSTALLER restores everything to the state it was in before flashing machinex, which is why I so strongly emphasize its use.
PERFORMANCE AND POWER-SAVING
Regarding the age-old performance/battery-life settings questions floating around, I'm gonna go ahead and suggest the following website created by a very dedicated fella who started out with the exact line of questioning, and built a genius guide for users of custom kernels. Heck, it's useful for developers too.
His username here is @gsstudios and he is a recognized developer here on XDA. Deserves it too
http://androidmodguide.blogspot.ca/
and on XDA:
http://forum.xda-developers.com/general/general/ref-to-date-guide-cpu-governors-o-t3048957
I encourage you to rate that thread 5 stars, as it is the most comprehensive guide to kernel tunables you ever did see.
Note that I *probably* don't incorporate feature requests, as I have enough on my plate with bringing up the subsystems to a point where I can call this a stable release thread. Don't like it? YOU try backporting linux 3.9 scheduling code to a Samsung 3.4 base
On that note, if anyone here is savvy regarding kernel, C and (not "or") git development, I welcome coding partners because working with a team means better quality, better time management, and a better chance of incorporating fancy tweaks.
Cheers.
SYNAPSE:
Synapse has a default "warning" that comes up the first time you open it.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
The initial warning is just a bug in the app because it's just been installed.
It's a design flaw in the app itself.
Synapse bases its stability check on whether the device is rebooted within 2 mins of being turned on.
Synapse does this on first boot for every single kernel that uses it,
because it has no previous internal boot settings to base its decision on,
and also because the app expects saved defaults when none have been established yet.
It is nothing to worry about.
Untick the option in settings called "stability check" going forward.
Breathe.
Does it work?
I'm on imperium kernel on Thor s7 rom, I was wondering if your kernel works with m919, tmo gs4, I was looking forward to trying out your rom.
Thank you
-jeff
Hey Jeff,
The answer is...maybe/probably. I know that's probably not what you want to hear, but let me explain.
My device is actually an i337m (which is why i included it in the thread title), but I've been using the international kernels and roms without *major* issues ever since I've owned it. This is built from international sources, and it is running well on Albe's awesome 9.0 rom, so I imagine it will perform well for the ported/upgraded roms for our phones.
So if you've been using the international roms/kernels without problems, I see no reason why this wouldn't work for you other than the bugs/current issues listed in the op.
Sent from my GT-I9505 using XDA Forums
Can you create kernel for cm 13?
Wysłane z mojego GT-I9505 przy użyciu Tapatalka
Welcome to s4 community Bro.
Congratulations . Downloading. ......
Sounds nice bro, good Job! Try this Kernel later as soon as possible on my GT-I9505 with THOR S7 v1.5!
Sent from my SM-G935F using XDA-Developers mobile app
r2089 said:
Can you create kernel for cm 13?
Wysłane z mojego GT-I9505 przy użyciu Tapatalka
Click to expand...
Click to collapse
Sorry man, but CM is not on my list of priorities.
NAROUTO said:
Welcome to s4 community Bro.
Congratulations . Downloading. ......
Click to expand...
Click to collapse
Thanks! Though I've been around here for a while
xell75 said:
Sounds nice bro, good Job! Try this Kernel later as soon as possible on my GT-I9505 with THOR S7 v1.5!
Sent from my SM-G935F using XDA-Developers mobile app
Click to expand...
Click to collapse
Thanks! I hope you enjoy!
Everyone who uses this, feel free to provide feedback to help me assess what's needed for MarkTwo!
@robcore.
Im gonna try this to imperium rom v15.
So what is the best settings for more battery life ?
Playing clash of clans a few times a day browsing tapatalk and using youtube all day.
I want my device to run cool. Lol
Update:
Got a random reboot from the first initial setup.
==========
Will let it run for a couple of days with the preset default settings.
I will use my old 2600mah for now and later on swap my 7500mah once i get some good battery stats.
droidblitz said:
@robcore.
Im gonna try this to imperium rom v15.
So what is the best settings for more battery life ?
Playing clash of clans a few times a day browsing tapatalk and using youtube all day.
I want my device to run cool. Lol
Update:
Got a random reboot from the first initial setup.
Click to expand...
Click to collapse
Msm sleeper is a pretty sold hotplug for battery. I've noticed power efficient workqueues tend to slow things down/eat battery. Honestly I would try out msm sleeper for battery savings. Just note that games+youtube by design will eat into battery life. I will add some more power conscious governors soon. Also the usual stuff, the power your screen brightness the better, and turning off vibration/haptic will help.
robcore said:
Everyone who uses this, feel free to provide feedback to help me assess what's needed for MarkTwo!
Click to expand...
Click to collapse
I'm using this Kernel now on my GT-I9505 with THOR S7 v1.5 and so far a stable Kernel for me, many settings and alot settings I had never seen before as I like, very good! Just one thing til yet, Trying to set "Hellsactive" as CPU governor causes a freeze and a full reboot. Otherwise Kernel seems stable, using "Stockdemand" CPU Governor now. Keep going your work!
Sent from my SM-G935F using XDA-Developers mobile app
xell75 said:
I'm using this Kernel now on my GT-I9505 with THOR S7 v1.5 and so far a stable Kernel for me, many settings and alot settings I had never seen before as I like, very good! Just one thing til yet, Trying to set "Hellsactive" as CPU governor causes a freeze and a full reboot. Otherwise Kernel seems stable, using "Stockdemand" CPU Governor now. Keep going your work!
Click to expand...
Click to collapse
You know what, the interactive-based governors gave me trouble for the longest time. But I have found the issues in a great patchset, and am working on a fix that should be ready in a couple of hours. Until then EVERYONE STICK TO ONDEMAND-BASED GOVS!!!!
droidblitz said:
@robcore.
Im gonna try this to imperium rom v15.
So what is the best settings for more battery life ?
Playing clash of clans a few times a day browsing tapatalk and using youtube all day.
I want my device to run cool. Lol
Update:
Got a random reboot from the first initial setup.
==========
Will let it run for a couple of days with the preset default settings.
I will use my old 2600mah for now and later on swap my 7500mah once i get some good battery stats.
Click to expand...
Click to collapse
I'm guessing interactive based gov? If so, see my post above, MarkTwo is coming tonight.
robcore said:
You know what, the interactive-based governors gave me trouble for the longest time. But I have found the issues in a great patchset, and am working on a fix that should be ready in a couple of hours. Until then EVERYONE STICK TO ONDEMAND-BASED GOVS!!!!
Click to expand...
Click to collapse
Nice mate that's ok, thanks for the information! I'm looking forward for your new version!
Sent from my SM-G935F using XDA-Developers mobile app
xell75 said:
Nice mate that's ok, thanks for the information! I'm looking forward for your new version!
Click to expand...
Click to collapse
Dude thank YOU. I can't tell you how much I appreciate you and the others for testing this out and helping me iron out the remaining bugs, and being so understanding that "interactive based govs are broken" which is super embarrassing. Lol.
droidblitz said:
@robcore.
Im gonna try this to imperium rom v15.
So what is the best settings for more battery life ?
Playing clash of clans a few times a day browsing tapatalk and using youtube all day.
I want my device to run cool. Lol
Update:
Got a random reboot from the first initial setup.
==========
Will let it run for a couple of days with the preset default settings.
I will use my old 2600mah for now and later on swap my 7500mah once i get some good battery stats.
Click to expand...
Click to collapse
Update: simple gpu gov is snappy at stock settings and sooooo much better for battery consumption.
Also if memory serves me correctly, aren't you a cm kinda guy ; )
robcore said:
I'm guessing interactive based gov? If so, see my post above, MarkTwo is coming tonight.
Click to expand...
Click to collapse
Nope havent touched anything
There was a failed message when i booted the synapse app.
Something link kernel image failed but not sure should have taken a screencapture and the log.
Either way its working now.
robcore said:
Update: simple gpu gov is snappy at stock settings and sooooo much better for battery consumption.
Also if memory serves me correctly, aren't you a cm kinda guy ; )
Click to expand...
Click to collapse
More into like AOSP rom but had to use Tw for camera/video
I just noticed something.
My display colors somewhat changed? I think in a good way. Lol
simple gpu gov in marktwo?
droidblitz said:
Nope havent touched anything
There was a failed message when i booted the synapse app.
Something link kernel image failed but not sure should have taken a screencapture and the log.
Either way its working now.
More into like AOSP rom but had to use Tw for camera/video
I just noticed something.
My display colors somewhat changed? I think in a good way. Lol
simple gpu gov in marktwo?
Click to expand...
Click to collapse
Well it's great to see you here man! Lol with screen colour I made some fixes and changes to sammy's mdnie code. Upon checking the code against their roms, it turns out they've never bothered to fix discrepancies between the values in settings and the driver itself! "Standard" and "dynamic" have been switched this whole time. Also "auto" has been a placebo all along, they have had the backend in place all along but never initialized it in the list of available screen modes. On that note, for even cooler stuff check out the "video_mode" scenario in synapse. It's AWFUL for battery life, but sharpens everything to a crisp. I'm pretty sure kcal helped with color too(?).
As for simple gpu gov, works just fine on MarkOne! Franco's simplification to it made it a freakin' powerhouse while being better for battery somehow.
Building MarkTwo as we speak, then I'll test it and it's out! I'm working on the gov settings in synapse while building too. The tunable settings are ticking me off.

[MOD] BlackenedMod v11.2 (Pixel 2 / Pixel 2 XL)

Introduction:
Hello everyone!
The idea to this 'project' did blossom after having an conversation with @pkgnex about the general idea of creating something else that follows what he started with his PK's Tuning Script but with a twist, mainly as a complement to his own thread that you can find here, but also with a completely different vision and focus on what the script itself should achieve (and deliver) for kind of results for myself and for all of you personally, of course, that wants to try it out and use it as a "daily driver".
Shortly explained.
This script is created with the goal of improving both the battery life and performance of our Pixel 2 (XL) devices, and after a whole range of configurations and various set-ups, I've come up with something that, in my eyes, is worth sharing with you so that you can try it out yourself and judge on your own, with constructive feedback on what can be improved or added in future releases - if desired. My philosophy is, and will always be, this:
If something can be improved or altered in a positive way so the average user can feel and see a difference, then go for it. Non stop.
The latest release can be found here.
Disclaimer:
This is presented as "what if". If this modification screws up or breaks anything for you, I am not the one to be held responsible. It's a free will to try out this kind of changes/modifications/addons/tweaks, just don't blame the inventors for eventual bad results and/or screw-ups.
Note: This script is not recommended to be modified or customized by the user.
Features:
Reduced battery consumption
Device specific enhancements for best possible balance between battery life & performance
Enabled, and fully configured, Boeffla generic kernel wakelock blocker
Disabled a lot of useless stuff at kernel level (Improves battery life as well as performance)
CPUSet improvements & optimizations
Schedtune tweaks (Improves responsivness)
Power efficiency enhancements
Wide IO block tuning (Reduces the possibility of hiccups, lags and overhead)
Possibly other miscellaneous things I've forgotten to write down here, both big and small.
Requirements/what you need for getting this script fully working:
An unlocked bootloader
Your own specific choice of kernel
Latest possible version of Magisk
Busybox for Android NDK (by @osm0sis) and SQLite for ARM aarch64 devices (by @ianmacd) Magisk Modules
Patience
Installation/How-To use & abuse:
1) Download the attached ZIP
2) Extract the scripts
3) Move both scripts to the following location;
/data/adb/service.d and give both of them the following permissions (0775)
4) Reboot your phone, let Android boot to the launcher and let Magisk boot service do its crucial magic (takes a few seconds before the scripts is fully up and running around behind the scenes)
5) Enjoy!
Note: If you still are unsure how to do for making my kernel configuration / modification work & be up and running behind the scenes, then please read @Phalanx7621 phenomenal guide here or check out @Phalanx7621 in-depth video here. The installation method is the same for both the first generation as well as the second generation of Pixels!
Credits:
@nathanchance for his contributions with his Flash Kernel
@franciscofranco for all the information on which kernel wakelocks that is safe to block
@Phalanx7621 for his phenomenal how-to guide
@Lord Boeffla for his awesome generic kernel wakelock blocker
@pkgnex for inspiring me walking into this partially unknown territory.
@flar2 for his excellent EXKM application and ElementalX Kernel
@osm0sis for his Magisk Busybox module
Everyone that I've forgotten to mention here
Telegram:
If you want to try out betas / previews of my script before they are officially released, or just hangout and chat a little, then join the official Telegram group here
To-Do list:
Port this project to all of my additional devices
Include kernel specific scripts for every released P2(XL) custom kernel Done
- Even for stock kernel with SafetyNet patch by @iissmart Done
Optimize and properly tune things even further for best possible balance between battery life, system responsivness and performance Done
Sidenote:
If you optionally want to donate a beer or five as a way to show your appreciation for all the dedicated hours and work that I am putting into this mod on a daily rate - then this link is the way to go!
Contributors:
@xFirefly93
Created: 2018-09-18
Last updated: 2019-11-04
EDIT: My changelog dedicated post have exceeded 30000 characters, so I have decided that the changelog will only be included in the respective update posts from now on!
So you all know how the situation is.
xFirefly93 said:
Changelog:
Note: This version is only tuned for Flash kernel. Next release/update will contain more scripts, specially tuned for each of the released kernels for the whole Pixel 2 line-up.
v1.0 (Initial testing & feedback release):
- Initial release.
Click to expand...
Click to collapse
Nice addition my friend. Cya at telegram
Nice work!
:good:
Short note
If you have any kind of specific wishes or suggestions on changes and/or tweaks, either kernel specific or universal across the whole released kernel line-up for Pixel 2 (XL), that the pretty soon up-coming v1.1 should include (can be something that you have read about somewhere else or it is maybe something that I've missed) - send me a personal message asap and I'll take a deep look into it and see what's possible to do and achieve.
Or leave a comment here in the thread about it, if you prefer it that way.
Can we have this running along with PK's tuning script? I mean can we install both...
ram4ufriends said:
Can we have this running along with PK's tuning script? I mean can we install both...
Click to expand...
Click to collapse
It is nothing that I am recommending because I am using a lot of settings that is tuned to deliver the opposite to what @pkgnex is using in his script. It can cause conflicts or issues down the road, in a worst case scenario, like battery life regressions or reduced performance because of an uneven mix of settings.
Some of my tweaks will be overridden by his, and naturally the opposite. Just for making it simple for you:
As I and pkgnex discussed a couple of days ago through PM regarding this "situation"..
- If you want a strict cutting edge performance boost, then use his script.
- If you want a balanced boost that enhances both performance and battery life as far as possible, then use my script.
But not both of them at the same time, because of the reason mentioned here above.
Nice to see! Kudos
xFirefly93 said:
Changelog:
Note: This version is only tuned for Flash kernel. Next release/update will contain more scripts, specially tuned for each one of the released kernels for the whole Pixel 2 line-up.
v1.0 (Initial testing & feedback release):
- Initial release.
Click to expand...
Click to collapse
Hi, Please help me how to go location where we have to move tweaks file.
pushpendrayadav said:
Hi, Please help me how to go location where we have to move tweaks file.
Click to expand...
Click to collapse
Move 01tweaks to the following location;
/sbin/.core/img/.core/service.d and give it the following permissions (0755)
I would recommend you to use the awesome FX Filebrowser with the root addon for this, just don't forget to enable so you can show hidden folders.
See attached screenshot for how to do it.
xFirefly93 said:
*]3) Move 01tweaks to the following location;
/sbin/.core/img/.core/service.d and give it the following permissions (0755)
I would recommend you to use the awesome FX Filebrowser with the root addon for this, just don't forget to enable so you can show hidden folders.
See attached screenshot how to do it.
Click to expand...
Click to collapse
Thanks for quick reply, I will try and revert if any thing required.
xFirefly93 said:
Changelog:
Note: This version is only tuned for Flash kernel. Next release/update will contain more scripts, specially tuned for each one of the released kernels for the whole Pixel 2 line-up.
v1.0 (Initial testing & feedback release):
- Initial release.
Click to expand...
Click to collapse
Can i use this on flash v2.58 since I'm still on Oreo?
Sent from my Google Pixel 2 XL using XDA Labs
Prattham said:
Can i use this on flash v2.58 since I'm still on Oreo?
Sent from my Google Pixel 2 XL using XDA Labs
Click to expand...
Click to collapse
I have only tuned this for Pie/9.0 builds of Flash kernel.
You can always try it out and see if it works with the same (or better) results on Oreo 8.1, just don't hold me responsible if something gets screwed up in any kind of way(s).
EDIT: See my 'Disclaimer' note in the OP, @Prattham.
Prattham said:
Can i use this on flash v2.58 since I'm still on Oreo?
Sent from my Google Pixel 2 XL using XDA Labs
Click to expand...
Click to collapse
It should work... you should try it and report back.
If it doesn't, I know the script in my thread works on Oreo and Flash Kernel. This script and mine aren't that different... yet.
---------- Post added at 07:22 AM ---------- Previous post was at 07:17 AM ----------
ram4ufriends said:
Can we have this running along with PK's tuning script? I mean can we install both...
Click to expand...
Click to collapse
You can, but the way the scripts are numbered will mean that my script will over-write a few of the values tuned by this script. It should still be OK, and it might even work great, but it hasn't really been tested by either of us. It would better to try both and pick the one that you like best for your usage case and personal preferences.
As @xFirefly93 has stated, we have slightly different goals with our scripts. But, in truth, there is still a lot of commonality so finding a drastic difference between them is still unlikely.
Update!
v1.1 First major release
- Initial releases for every released custom Pixel 2 kernel.
- Added a few additional settings for further battery life, as well as, performance improvements.
- Shortened a few lines which explains what the parameters changes does.
- Packed everything into a single ZIP file with specific names for each kernel tuning script.
- See attached script below (and in the OP)
Enjoy!
Is there anyway to check if the script is running in the background? Also, I'm assuming we don't need to do anything after a kernel update.
praveen6585 said:
Is there anyway to check if the script is running in the background? Also, I'm assuming we don't need to do anything after a kernel update.
Click to expand...
Click to collapse
I'll include a minor fix, that creates/pushes an output file to the internal storage after the script have been executed and is up and running, with v1.2.
Until then, you can always go to (for taking an example) the /proc/sys/fs/dir-notify-enable path and see so the parameter is set to 0, which is the value that I've set it to. Just as an easy & simple "fail safe".
Out of curiosity. What will happen if i don't have busybox?
Should my screen be super dim and not really adjust to ambient light anymore?
arvylas said:
Out of curiosity. What will happen if i don't have busybox?
Click to expand...
Click to collapse
Some parts of the script won't execute at all without it.
jbarcus81 said:
Should my screen be super dim and not really adjust to ambient light anymore?
Click to expand...
Click to collapse
I have enabled, and tuned, backlight dimmer for kernels that includes it. That's why the screen is a little bit dimmer/darker.

[MOD] Pixel 2 (XL) Unified Kernel(s) Tuning Script (v1.1a)

Introduction:
Hello everyone!
The idea to this 'project' did blossom after having an conversation with @pkgnex about the general idea of creating something else that follows what he started with his PK's Tuning Script but with a twist, mainly as a complement to his own thread that you can find here, but also with a completely different vision and focus on what the script itself should achieve (and deliver) for kind of results for myself and for all of you personally, of course, that wants to try it out and use it as a "daily driver".
Shortly explained.
This script is created with the goal of improving both the battery life and performance of our Pixel 2 (XL) devices, and after a whole range of configurations and various set-ups, I've come up with something that, in my eyes, is worth sharing with you so that you can try it out yourself and judge on your own, with constructive feedback on what can be improved or added in future releases - if desired. My philosophy is, and will always be, this:
If something can be improved or altered in a positive way so the average user can feel and see a difference, then go for it. Non stop.
Latest releases can be found here:
Major release
Minor release
Disclaimer:
This is presented as "what if". If this modification screws up or breaks anything for you, I am not the one to be held responsible. It's a free will to try out this kind of changes/modifications/addons/tweaks, just don't blame the inventors for eventual bad results and/or screw-ups.
Note: This script is not recommended to be modified or customized by the user.
Features:
Reduced battery consumption
Enabled, and configured, Boeffla generic kernel wakelock blocker
Disabled a lot of stuff at both kernel and system level (Improves battery life and performance)
Schedtune tweaks (Improves system responsivness)
Power efficiency enhancements
Wide IO block tuning (Reduces the possibility of hiccups, lags and overhead)
Possibly other miscellaneous things I've forgotten to write down here, both big and small.
Requirements/what you need for getting this script fully working:
An unlocked bootloader
Latest Magisk
Busybox for Android NDK Magisk Module by @osm0sis
Patience
Installation/How-To use & abuse:
1) Download the attached ZIP
2) Extract the script
3) Move 01tweaks to the following location;
/sbin/.core/img/.core/service.d and give it the following permissions (0755)
4) Reboot your phone, let Android boot to the launcher and let Magisk boot service do its crucial magic (takes about 60-65 seconds before the script is fully up and running behind the scenes)
5) Enjoy!
Credits:
@nathanchance for his contributions with his Flash Kernel
@franciscofranco for all the information on which kernel wakelocks that is safe to block
@Lord Boeffla for his awesome generic kernel wakelock blocker
@pkgnex for inspiring me walking into this partially unknown territory.
@flar2 for his excellent EXKM application and ElementalX Kernel
@osm0sis for his Magisk Busybox module
Everyone that I've forgotten to mention here
To-Do list:
Port this project to all of my additional devices
Include kernel specific scripts for every released P2(XL) custom kernel Done
- Even for stock kernel with SafetyNet patch by @iissmart Done
Optimize and properly tune things even further for best balance between battery life, system responsivness and performance
Contributors:
@xFirefly93
Created: 2018-09-18
Last updated: 2018-09-19
Changelog:
v1.2a (Minor release)
- Disabled OOM_Kill_Allocating_Task for all kernels.
- Cleaned up the scripts on a couple of useless lines (results in a smaller ZIP package)
- Reverted icmp_echo_ignore_all back to stock setting (Needs more private testing before I am including it again)
- Disabled IOWait Boost in a attempt to fix the idle frequency scaling issue that some have reported about
(Public release only, it's still included & enabled in the maintainer release)
v1.2 (Major release)
- Altered a few tweaks (that should improve battery life even further along the road)
- Added a couple of networks tweaks that should improve network performance & reduce battery drain when being on a wifi connection.
- Added updated scripts for Sultan, Kiriskura and stock kernel (with SafetyNet patch)
- Added two versions into the ZIP file (Public & Maintainer release, see information below)
- Updated version numbering and configuration descriptions
- Reverted schedtune tweaks in a attempt to fix the bouncing CPU frequency scaling issues that some have experienced
Descriptions (now and for further releases);
Public release: Public release contains scripts for each Pixel 2 (XL) kernel, and which is closer to Google's (and the respective developer's) own kernel (with my own carefully selected modifications, of course, applied and running on top of that).
Maintainer release: This is the scripts that I am using on my Pixel 2. Literally. Use this one of did not have any CPU frequency scaling issues on the previous versions, or just want to use exactly what I am using as a daily driver.
v1.1b (Minor release)
Note:
- This version only adding fixes to my script, mainly for Flash Kernel and ElementalX.
- Enabled performance daemon back online again (should fix reported issues with CPU frequency scaling on LITTLE cluster)
- Lowered schedtune values (less battery drain w/o any real performance regressions + should fix how often the CPU scales to max frequency)
- Added back my wide IO block tuning script for Elementalx (this was not the cause for the CPU bouncing issue)
- Enabled OOM_Kill_Allocating_Task for ElementalX (Disabled for Flashkernel)
v1.1a (First minor release)
Note:
- This release is including an enhanced release of v1.1, suitable for Flashkernel.
- Changed some parameters for a slight performance and UI smoothness boost
- Disabled OOM_Kill_Allocating_Task (Better to let the OOM killer select a random task to kill for freeing up memory when needed
- Disabled Backlight dimmer (If you want it back, tell me and I will upload a userspecific release with it enabled & configured)
- Some additional lag reducing enhancements
v1.1 (First major release)
- Initial releases for every released custom Pixel 2 kernel.
- Added a few additional settings for further battery life, as well as, performance improvements.
- Shortened a few lines which explains what the parameters changes does.
- Packed everything into a single ZIP file with specific names for each kernel tuning script.
- See attached ZIP in the OP
v1.0 (Initial testing & feedback release)
- Initial release.
- Note: This version is only tuned for Flash kernel. Next release/update will contain more scripts, specially tuned for each one of the released kernels across the whole Pixel 2 line-up.
Short note
If you have any kind of specific wishes or suggestions on changes and/or tweaks, either kernel specific or universal across the whole released kernel line-up for Pixel 2 (XL), that the pretty soon up-coming v1.1 should include (can be something that you have read about somewhere else or it is maybe something that I've missed) - send me a personal message asap and I'll take a deep look into it and see what's possible to do and achieve.
Or leave a comment here in the thread about it, if you prefer it that way.
Update!
v1.1 First major release
- Initial releases for every released custom Pixel 2 kernel.
- Added a few additional settings for further battery life, as well as, performance improvements.
- Shortened a few lines which explains what the parameters changes does.
- Packed everything into a single ZIP file with specific names for each kernel tuning script.
- See attached script below (and in the OP)
Enjoy!
Update!
v1.1a (Minor enhanced release)
Note:
- This release is including an enhanced release of v1.1, suitable for Flashkernel.
- Changed some parameters for a slight performance and UI smoothness boost
- Disabled OOM_Kill_Allocating_Task (Better to let the OOM killer select a random task to kill for freeing up memory when needed)
- Disabled Backlight dimmer (If you want it back, tell me and I will upload a userspecific release with it enabled & configured)
- Some additional lag reducing enhancements
Enjoy!
Update!
Note #1: I am moving all update posts and what not to my Pixel 2 XL thread instead. This one will just be used as an "notification updater" thread from now on, because jumping between and making sure both topics gets the same posts is a little bit.. timewasting.
Keep an eye on this topic from now on!
And enjoy!

Categories

Resources