[ASUS ZenFone 8] Freak07:
Power and Performance (PnP) Tuner for Zenfone 8

Hello everyone,

Here´s a simple Magisk-Module that changes the behaviour of the so called "System modes" found in the battery section of settings.

View attachment 5399381

I think some of you might have wondered already what the different sections do.

Just below you will find an overview of the different modes and some of their consequences/settings on stock compared to after you flashed the magisk-module.

I´m pretty sure after seeing the overview you understand the reasoning behind some of those changes.

CPU Frequency values are sorted following this scheme: CPU-Frequences Values of Little Cluster/Big Cluster/Prime Core MHZ

Default	PnP-Tuner
High Performance	CPU Min 1401/1324/1305

CPU Max:1804/2419/2841

GPU Min 315 MHZ

GPU Max 840 MHZ	CPU Min 1612/2227/2496 MHZ

CPU Max 1804/2419/2841 MHZ

GPU Min 315 MHZ

GPU Max 840 MHZ
Dynamic	CPU Min 300/710/844

CPU Max 1804/2112/2592

GPU Min 315 MHZ

GPU Max 738 MHZ	CPU Min 300/710/844 MHZ

CPU Max 1612/1766/2035 MHZ

GPU Min 315 MHZ

GPU Max 738 MHZ
Durable	CPU Min 300/710/844

CPU Max 1497/2112/2592

GPU Min 315 MHZ

GPU Max 738MHZ	CPU Min 300/710/844 MHZ

CPU Max 1497/1440/1670 MHZ

GPU Min 315 MHZ

GPU Max 608 MHZ
Ultra Durable	CPU Min 300/710/844

CPU Max 1094/1209/1305

GPU Min 315 MHZ

GPU Max 608 MHZ	CPU Min 300/710/844 MHZ

CPU Max 1497/1440/1670 MHZ

GPU Min 315 MHZ

GPU Max 608 MHZ

Do not Schedule any foreground or top-app tasks to the prime-core to conserve even more battery
Advanced Low	CPU Min 1401/1324/1305

CPU Max 1804/2419/2841

GPU Min 315 MHZ

GPU Max 840 MHZ	CPU Min 300/710/844 MHZ

CPU Max 1708/2112/2496 MHZ

GPU Min 315 MHZ

GPU Max 738 MHZ
Advanced Medium	CPU Min 1497/1555/1785

CPU Max 1804/2419/2841

GPU Min 443MHZ

GPU Max 840 MHZ	CPU Min 300/710/844 MHZ

CPU Max 1804/2419/2841 MHZ

GPU Min 315 MHZ

GPU Max 840 MHZ
Advanced High	CPU Min 1612/1996/2265

CPU Max 1804/2419/2841

GPU Min 540 MHZ

GPU Max 840 MHZ	CPU Min 691/710/844 MHZ

CPU Max 1804/2419/2841 MHZ

GPU Min 315 MHZ

GPU Max 840 MHZ

Default QCOM configuration

So what do the limits mean. If the powerhal does not interfere or sets different values than those in this table, then this are the Min/Max CPU/GPU configurations the phone runs with in every mode.

For the default Dynamic mode this means the phone runs at maximal 1804/2112/2592MHZ for Little Cluster/Big Cluster/Prime Core when the powerhal decides there´s no reason to boost above these limits. (reasons to boost would be unlocking the device, opening apps, using camera, fling boosts, scroll boosts, drag boosts etc)

So after stumbling over a few reports that reported worse battery life when using the advanced mode a while ago, here is a simple explanation.

The three levels available to choose from in the advanced section resemble X-Mode from the ROG Phone series.

This mode raises the minfreqs to increase performance. The description of the advanced setting "flexible performance settings for all your needs" needs to be taken literally.

There´s only one thing advanced mode gives, even on its lowest level, and that is performance. At the beginning I thought setting the sliders to low would result in a battery saving mode, but it´s exactly the opposite.

I personally don´t see a need for this on a compact device that´s not made for gaming.

So I adjusted most of the modes a bit to my personal liking and created this magisk module.

There´s now only a single high performance mode and that is the high performance mode. It raises minfreqs and is no configuration you should run your phone on a daily basis. It´s primarily meant for benchmarks. There are more boosts in the configuration than those in the overview above, but the overview was large enough as it already is.

Dynamic Mode is now toned down a bit from stock. This is a very good configuration to run games, as the phone will get warm slower and in the end throttle slower if it will at all throttle.

Durable is now an excellent mode to save power if you only do light tasks and need the phone to survive as long as possible, but still want some performance.

Ultra durable is now well, the extreme power saving mode. You can see I raised the max freqs a bit compared to the stock configuration, however we use a small trick. No foreground or top-app tasks (those are usally the apps displayed at the top layer and other important performance hungry tasks) will be scheduled to the power-hungry prime core.

The advanced slider on low for CPU, will use the configuration from stock dynamic mode, which is excellent for day to day usage if you want performance.

It will also allow the Little Cluster to scale back to 300MHZ to save more power, although it´s not default qcom configuration.

The advanced slider on medium for CPU will use max CPU freqs, but still allow the little cluster to go to 300mhz.

The CPU slider on High in advanced mode will now run the phone in the default QCOM configuration for modern QCOM SoCs. That means 691/710/844 MHZ for Little Cluster/Big CLuster/Prime Core alongside the max freqs for each cluster/core.

In a soon to be released update for my kernel you can also combine these modes with the battery saver mode accessible via the CleanSlate config app, which also allows you to restrict the powerhal from boosting above the values predefined in Advanced Low CPU Slider (Level 1), Dynamic (Level 2) Durable (Level 3) and Ultra - Durable (Level 3). As of now the limits differ a little bit, but it can be still done this way.

Just enable the "Battery Saver"-Feature as well as "Battery Saver Touch Limiting" and set the desired level of saving like on the following screenshot:

View attachment 5399379

You can use Durable for example for extended navigation session, or even ultra durable to not engage the prime core while Google Maps is in foreground.

There´s a quicksettings toggle which can be added so I think those settings are really valuable, also to change on the fly more or less.

Anyway, I hope this clears some confusion around the system modes and their usefulness. Also for people that do not decide to unlock their devices.

Download:

Downloads for : -Android- Generic Device/Other | AndroidFileHost.com | Download GApps, Roms, Kernels, Themes, Firmware and more. Free file hosting for all Android developers.

Download GApps, Roms, Kernels, Themes, Firmware, and more. Free file hosting for all Android developers.

www.androidfilehost.com

Requirements:

unlocked zf8 running stock firmware

working magisk enviroment

Instructions:

1. Download the module and flash via Magisk Manager

2. Reboot

3. Profit

Donations:

Donations are not mandatory but very welcome if you want to support development or just buy me a coffee/tea :)

If you like my work: http://paypal.me/freak07