• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[10.04.2021][Systemless-Rom-Mod][V2][WW-17.0240.2103.75 ] Armoury Crate - Unleashed

Search This thread

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
5,282
17,109
1618061585334.png



Hello everyone,

I´m sure everybody that is using a ROG Phone 2 has explored the possibilities Armoury Crate provides for gaming. It yields a pleathora of settings and tweaks especially in the hardcore tuning mode.
Some of you might be more familiar and some might be less familiar with the tweaks that can be done.

But did you ever think about taking Armoury Crate to the next level? The options armoury crate provides are not only useful for gamers. In fact, Armoury Crate has the power to create a power/performance profile for apps that are regularly used as well.


Does Netflix, Amazon Prime Video or Youtube really need to run at 120FPS, while watching a video that was recorded at 30FPS or 60FPS.
Is it necessary that your navigation app runs at 120HZ and full unlocked CPU-Power?
Does your fitness tracking/navigation app need to run at 120HZ and full unlocked CPU-Power.
Is it possible to save a significant amount of battery life during video-calling by restricting CPU-Freqs for the Video-Calling app of your choice?
Might it be possible to not use the power-hungry prime core when using navigation or videocalling apps?
Might it be possible to run the currently displayed app only on the little cores?

Some might have already experimented in that direction. But it quickly becomes apparent that Armoury Crate in its current form is meant for games and this is not possible without facing major drawbacks.
As soon as an App is added to Armoury Crate there is a necessity for doing a double swipe to trigger a back gesture. This also works only on the right side of the phone.
The left side triggers Game Genie, the Game Assistant.
Unfortunately the same restriction applies to the home-gesture. Each time you want to trigger the home gesture- triggering the gesture a second time is mandatory.

The Conclusion:
Adding apps to Armoury Crate that are regularly used, is not convenient during day to day usage.


The solution to this problem is this Systemless-Rom-Mod (SRM) called Armoury Crate - Unleashed.
Since Magisk has grown to a full root and modding solution for Android, it also provides developers the possibility to replace only certain parts of a ROM in a systemless way via Magisk Modules. That means during boot certain parts of the stock firmware are systemlessly replaced, with parts that are modded by me. That means by flashing this Magisk Module your firmware is not altered, and you can just remove the module in Magisk Manager in case you want to return to stock.

Armoury Crate - Unleashed will allow you to use your phone and navigation gestures normally, when adding apps to armoury crate. It will also extend the possible settings in armoury crate.

Features this Systemless-Rom-Mod brings to you:

- remove the necessity for double swipe back gesture once an app is added to armoury crate
- remove the necessity for double home gesture once an app is added to armoury crate:
- remove game genie trigger from the left side of the screen once an app is added to armoury crate (it can still be accessed via the notification in the notification drawer)
- extend cpuset capabilities from armoury crate (you´ll find a more detailed explanation in the second post)



Download: https://www.androidfilehost.com/?w=files&flid=324531

Requirements:
- quickswitch magisk module installed with lawnchair launcher set as recent provider, if you prefer navigation gestures or asus launcher if you prefer button navigation. ( you can still use asus launcher as your launcher with navigation gestures or vice verda)
- working magisk environment
- a ROG 2 running stock firmware WW-17.0240.2103.75

Instructions:

1. Make sure you´re running exactly the firmware this mod is made for.
Do either 2a or 2b:
2a. If you want to use Navigation Gestures:
Flash quickswitch module in magisk manager, install lawnchair and set lawnchair as your default recents provider.
2b. If you want to use button Navigation:
Flash quickswitch module in magisk manager and set Asus launcher as your default recents provider.
3. Download Armoury Crate Unleashed Magisk Module from the download section above
4. Flash Armoury Crate Unleashed Magisk Module in Magisk Manager App
5. Reboot
6. Profit

Changelog:
v2 initial release


For additional information or some possibilities this mod opens up be sure to take a look at post #2.
I´ll also try to explain some of the tunables found in the hardcore tuning mode, so they´re easier to understand.



Credits:
@topjohnwu for Magisk
@mikalovtch for advice
@j to the 4n for advice
@deadlyindian for the banner!
Asus for the ROG Phone 2 and givig me the opportunity to develop on the device!
 
Last edited:

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
5,282
17,109
Useful strategies on how to use this Mod

Short overview of the ROG Phone 2´s SoC:


The ROG Phone 2´s SoC is the SD855/+. The CPU is a little.Big.PRIME setup.
There are 8 cores
4x Cortex-A55 @ 1.80GHz --> the little cores. Very efficient cores using very little power. Not as performant as the other cores. (cores 0-3 translated to cpusets)
3x Cortex-A76 @ 2.42GHz --> The Big cores. The working horses of the SoC. Not as power-hungry as the PRIME-core, but still very performant (cores 4-6 translated to cpusets)
1x Cortex-A76 @ up to 2.96GHz --> The PRIME core. Power-hungry, extreme performance, peak performance, short bursts (core 7 translated to cpusets)

This architecture layout will become important later so keep it in mind.


General information explaining powerful Armoury Crate options:

This is a rough guideline. How to setup your own phone is up to you. I give examples you can try, but I encourage everyone to experiment. You might find that restricting CPU-Frequencies too severely in a specific app leads to stutters. Or that changing cpusets leads to slowdowns in this app as well. It´s about balance, your own preference and having the freedom to do what you want!

FPS tuning:
If you´re using video calling apps, navigation apps or streaming apps such as Netflix, Prime Video or Youtube you might want to reduce FPS to 60 or 90 in armoury crate.
This will save battery life for one part and will have better colours and gamma levels for video playback, especially on low brightness.

CPU-Frequency Tuning:
Go to performance tuning section, advanced hardcore tuning mode. Apps, such as videocalling apps, navigation apps or streaming apps don´t need access to extremely high CPU frequencies. Especially not from the big cluster and prime core.
Now think back to the architecture of the SoC.
Try experimenting by restricting the max cpu frequencies for the big cluster ( cpu_max_freq 4-6) and the prime core (cpu_max_freq 7).
Restricting the max freq for the big cluster from 2,4ghz to 1,67ghz will essentially cut the power draw in half, if the phone ramps up to the respective allowed max freq.
The same applies to the Prime-Core!
As a side effect this will also reduce heat and of course performance.
But it can prolong your battery life and reduce the heat your phone produces. Good example are hot climates, generally in summer during extended navigation sessions with navigation apps.

Tuning the cpusets:
This might be one of the most powerful options in armoury crate. Yet I think not many understand the purpose let alone what the value of the sliders mean.
But here we come back to the architecture layout of the SoC and the cpusets I briefly explained above.
Two settings are of importance for us here.
"dev/cpuset/top-app/cpus" and "dev/cpuset/foreground/cpus"

Here´s the linux-kernel documentation about cpusets: https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v1/cpusets.html

From that documentation:
Cpusets provide a Linux kernel mechanism to constrain which CPUs and Memory Nodes are used by a process or set of processes.

Tasks from the "top-app" group include always the currently displayed app on Android. The option "dev/cpuset/top-app/cpus" in Armoury Crate allows us to define, which CPUs this app´s tasks get scheduled to.
This creates the possibility to run the currently displayed app entirely on the little cluster (0-3) for example. Or on all cores (0-7).
It´s an extremely powerful setting.

Unfortunately you don´t see the cpusets displayed as 0-3, 0-7 or 0-6 in Armoury Crate.
By default you have only limited options on Armoury Crate: 15, 240 and 255.
These are decimal values, that represent the cpusets I explained above. Unfortunately this restricts most people from making use of this feature without any form of explanation from Asus.
Here´s a small table that explains the values, also the values I added additionally to armoury crate:

Small reminder: 0-3 are the little cores, 4-6 the big cores and 7 the prime core

255= 0-7 utilize all cores -> default for top-app and forground!
1 = 0 use only one little core of the little cluster -> not recommended, extreme powersaving but phone will stutter
3= 0-1 use two small cores of the little cluster -> great powersaving at the cost of performance, phone will probably stutter, use with caution
15= 0-3 use the little cluster only -> great powersaving, while utilizing the cores that require the least amount of energy
127 = 0-6 utilize the little cluster plus the big cluster, but NOT the Prime core -> saves power, with only a small performance loss during peak performance scenarios
240= 4-7 utilize only the big cluster plus the prime core!

This can be very useful, when using a fitness app to track cycling for example. There might be no need for the prime core in that case.
Try to set dev/cpuset/top-app/cpus to 127 for this app (maybe additionally to restricting the max_freq for big and prime cluster below 2ghz). Use your phone and see what happens.
If you want to save more power try also setting dev/cpuset/foreground/cpus to the same value as you did for top-app.


This is it for now, but I might add more options to this write-up at a later point in time.


Other Tips and Tricks:

System-Apps and Armoury Crate:

Some apps, like Google Maps can´t be added to Armoury Crate, because Armoury Crate only allows adding apps installed by the user.
However there is a trick to this. Get the Magisk-Module "Debloater (Terminal Emulator)" from the Magisk Repo.
Now you can systemlessly remove Google Maps from your Phone. Do a reboot. Clear cache from Armoury-Crate and re-install Google Maps from the PlayStore.
You´re able to add Google Maps to Armoury Crate now.
 
Last edited:

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
5,282
17,109
FAQ:

Q: The mod is not working for me after flashing via Magisk Manager and doing a full reboot.
A: The mod modifies systemui. Make sure you´re not having systemui, focusapplistener, gamebroadcaster, asuslauncher or any other apps hidden in Magisk Manager. You shouldn´t hide those anyways.
If you´re not hiding those you´re probably using modules that alter the appearance of the phone, by modifying systemui. Remove those mods and reflash Armoury Crate - Unleashed.

Q: How can I remove this modification from my phone?
A: Remove the magisk module in magisk manager and reboot.

Q: Something is not working for me.
A: You´re most likely running other mods that might be conflicting.

Q: Does this work on CN firmware?
A: No it´s made for exactly the firmware that is mentioned in the first post.

Q: I´m using another mod that also modifies some X-Mode behaviour and there´s seemingly a conflict?
A: This mod replaces the X-Mode config files on every reboot systemlessly via magisk and overwrites other changes.

Q: How to access Game Genie, now that the left side swipe is mapped to the back gesture?
A: You can find the notification for Game Genie in the notification drawer. That will take you to the game genie settings.
 

ausaras

Senior Member
Sep 10, 2011
312
62
Taichung
This looks interesting!

I have a question about launcher.

I set Nova Launcher as the default launcher but still kept Asus Launcher because I need the recent screen. Although I chose to use Button Navigation, I disabled it via build.pro and used an app called "Edge Gestures" for gestural navigation. I did this because Nova cannot access the native gestural navigation function.

So, both the "2a" and "2b" steps in the instruction does not apply to me. Could you please advise what to do? Also, why is it important to QuickSwitch module?
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
5,282
17,109
This looks interesting!

I have a question about launcher.

I set Nova Launcher as the default launcher but still kept Asus Launcher because I need the recent screen. Although I chose to use Button Navigation, I disabled it via build.pro and used an app called "Edge Gestures" for gestural navigation. I did this because Nova cannot access the native gestural navigation function.

So, both the "2a" and "2b" steps in the instruction does not apply to me. Could you please advise what to do? Also, why is it important to QuickSwitch module?
It depends how the app "edge gestures" handles the navigation.
Try each option and see which one works for you. I guess if you selected button navigation go with that one. :)

Because of the way I smali edited the navigation gestures quickswitch is needed for now.
 
  • Like
Reactions: Arthuer

dEFLASH

Senior Member
Mar 30, 2019
56
13
How about to make a mod for air trigger settings?
I think it support split triggers like in rog phone 3 and 5, cuz it supports swipe in beta in rog 2...
 

gabi.ailincai

Senior Member
Mar 30, 2018
120
26
Iasi
Has anyone managed to add Facebook to Armoury Crate? I used the debloat Magisk module, as suggested, and also the de-bloater app from Fdroid to remove the Facebook app, but after reinstalling it from the Play Store, it still doesn't show up in Armoury Crate. I removed the additional apks like Facebook installer and whatnot, but it still didn't help. It worked for Messenger, but not the Facebook app.
 

Wagnelles

Senior Member
Feb 11, 2015
106
19
Useful strategies on how to use this Mod

Short overview of the ROG Phone 2´s SoC:


The ROG Phone 2´s SoC is the SD855/+. The CPU is a little.Big.PRIME setup.
There are 8 cores
4x Cortex-A55 @ 1.80GHz --> the little cores. Very efficient cores using very little power. Not as performant as the other cores. (cores 0-3 translated to cpusets)
3x Cortex-A76 @ 2.42GHz --> The Big cores. The working horses of the SoC. Not as power-hungry as the PRIME-core, but still very performant (cores 4-6 translated to cpusets)
1x Cortex-A76 @ up to 2.96GHz --> The PRIME core. Power-hungry, extreme performance, peak performance, short bursts (core 7 translated to cpusets)

This architecture layout will become important later so keep it in mind.


General information explaining powerful Armoury Crate options:

This is a rough guideline. How to setup your own phone is up to you. I give examples you can try, but I encourage everyone to experiment. You might find that restricting CPU-Frequencies too severely in a specific app leads to stutters. Or that changing cpusets leads to slowdowns in this app as well. It´s about balance, your own preference and having the freedom to do what you want!

FPS tuning:
If you´re using video calling apps, navigation apps or streaming apps such as Netflix, Prime Video or Youtube you might want to reduce FPS to 60 or 90 in armoury crate.
This will save battery life for one part and will have better colours and gamma levels for video playback, especially on low brightness.

CPU-Frequency Tuning:
Go to performance tuning section, advanced hardcore tuning mode. Apps, such as videocalling apps, navigation apps or streaming apps don´t need access to extremely high CPU frequencies. Especially not from the big cluster and prime core.
Now think back to the architecture of the SoC.
Try experimenting by restricting the max cpu frequencies for the big cluster ( cpu_max_freq 4-6) and the prime core (cpu_max_freq 7).
Restricting the max freq for the big cluster from 2,4ghz to 1,67ghz will essentially cut the power draw in half, if the phone ramps up to the respective allowed max freq.
The same applies to the Prime-Core!
As a side effect this will also reduce heat and of course performance.
But it can prolong your battery life and reduce the heat your phone produces. Good example are hot climates, generally in summer during extended navigation sessions with navigation apps.

Tuning the cpusets:
This might be one of the most powerful options in armoury crate. Yet I think not many understand the purpose let alone what the value of the sliders mean.
But here we come back to the architecture layout of the SoC and the cpusets I briefly explained above.
Two settings are of importance for us here.
"dev/cpuset/top-app/cpus" and "dev/cpuset/foreground/cpus"

Here´s the linux-kernel documentation about cpusets: https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v1/cpusets.html

From that documentation:
Cpusets provide a Linux kernel mechanism to constrain which CPUs and Memory Nodes are used by a process or set of processes.

Tasks from the "top-app" group include always the currently displayed app on Android. The option "dev/cpuset/top-app/cpus" in Armoury Crate allows us to define, which CPUs this app´s tasks get scheduled to.
This creates the possibility to run the currently displayed app entirely on the little cluster (0-3) for example. Or on all cores (0-7).
It´s an extremely powerful setting.

Unfortunately you don´t see the cpusets displayed as 0-3, 0-7 or 0-6 in Armoury Crate.
By default you have only limited options on Armoury Crate: 15, 240 and 255.
These are decimal values, that represent the cpusets I explained above. Unfortunately this restricts most people from making use of this feature without any form of explanation from Asus.
Here´s a small table that explains the values, also the values I added additionally to armoury crate:

Small reminder: 0-3 are the little cores, 4-6 the big cores and 7 the prime core

255= 0-7 utilize all cores -> default for top-app and forground!
1 = 0 use only one little core of the little cluster -> not recommended, extreme powersaving but phone will stutter
3= 0-1 use two small cores of the little cluster -> great powersaving at the cost of performance, phone will probably stutter, use with caution
15= 0-3 use the little cluster only -> great powersaving, while utilizing the cores that require the least amount of energy
127 = 0-6 utilize the little cluster plus the big cluster, but NOT the Prime core -> saves power, with only a small performance loss during peak performance scenarios
240= 4-7 utilize only the big cluster plus the prime core!

This can be very useful, when using a fitness app to track cycling for example. There might be no need for the prime core in that case.
Try to set dev/cpuset/top-app/cpus to 127 for this app (maybe additionally to restricting the max_freq for big and prime cluster below 2ghz). Use your phone and see what happens.
If you want to save more power try also setting dev/cpuset/foreground/cpus to the same value as you did for top-app.


This is it for now, but I might add more options to this write-up at a later point in time.


Other Tips and Tricks:

System-Apps and Armoury Crate:

Some apps, like Google Maps can´t be added to Armoury Crate, because Armoury Crate only allows adding apps installed by the user.
However there is a trick to this. Get the Magisk-Module "Debloater (Terminal Emulator)" from the Magisk Repo.
Now you can systemlessly remove Google Maps from your Phone. Do a reboot. Clear cache from Armoury-Crate and re-install Google Maps from the PlayStore.
You´re able to add Google Maps to Armoury Crate now.

Hey there friend. while I'm a ROG Phone 5 user that's not rooted and therefore I can't use your app, I was extremely grateful for your brief explanation on what some of the hardcore options do. There is a huge amount of possibilities available right from the gecko that Asus unexplainably didn't gave any information about.

For instance, based in your information I was able to tweak settings for some emulators that use the GPU much more than the CPU (as soon as you start raising the resolution). I set them to use only big and prime cores, set background stuff to run on the small cores only, and capped the clocks by almost half. That made the phone throttle much less and I was able to get much more consistent performance out of it.

Another thing I did was to severely limit Chrome's CPU resources available, in order to put that huge battery hog in check. Small cores only, and limited to around 60% of max clock speeds. I certainly worked, but I ran into the "double swipe" issue. I actually spent many hours trying to figure out a way to find a non-root alternative to solve this, and I did managed to come up with some interesting stuff (mainly with tasker), I can share more details on that if you wish.

For now, I wanted to ask if you have any plans of expanding your explanations to cover the other Armoury Crate options. Since such information simply aren't available, there no way someone that's not a dev very familiar with the phone's hardware can guess what some of those sliders change (If I'm wrong kindly direct me to where I can find more information). At least I couldn't, and I looked for it everywhere, I only found your tutorial because a fellow friend in the Telegram group directed me to here.

I'm not sure if the ROG Phone 5's Armoury Crate hardcore tweaks are the same as the current version of your app and the official AC app for the ROG Phone 2/3, so I'll leave a small video with the options available to me, but you may already know if the options are the same or not.


Most if not all of your described CPU options are all there, and the SD888 also uses the same little-big-prime setup, from what I checked. I know that by design, all of these options are safe to mess around, but without knowing what some of them do, there's no way to properly optimize it for each user's needs.

If you ever have the time to explain what the other options do, or are willing to do it as a small paid service, I'd consider sending you a small Paypal transfer for it. I mean, there are a huge ton of options there, it would certainly take time to write a bit on all of them, so I hope I'm not saying anything extraordinary here. Please think of this as a very friendly request, it's absolutely fine to just say no if you want.

Anyway, thanks again for explaining some of the CPU settings available, they definitely helped me and others to use more of the potential this amazing phone have.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 4
    1618061585334.png



    Hello everyone,

    I´m sure everybody that is using a ROG Phone 2 has explored the possibilities Armoury Crate provides for gaming. It yields a pleathora of settings and tweaks especially in the hardcore tuning mode.
    Some of you might be more familiar and some might be less familiar with the tweaks that can be done.

    But did you ever think about taking Armoury Crate to the next level? The options armoury crate provides are not only useful for gamers. In fact, Armoury Crate has the power to create a power/performance profile for apps that are regularly used as well.


    Does Netflix, Amazon Prime Video or Youtube really need to run at 120FPS, while watching a video that was recorded at 30FPS or 60FPS.
    Is it necessary that your navigation app runs at 120HZ and full unlocked CPU-Power?
    Does your fitness tracking/navigation app need to run at 120HZ and full unlocked CPU-Power.
    Is it possible to save a significant amount of battery life during video-calling by restricting CPU-Freqs for the Video-Calling app of your choice?
    Might it be possible to not use the power-hungry prime core when using navigation or videocalling apps?
    Might it be possible to run the currently displayed app only on the little cores?

    Some might have already experimented in that direction. But it quickly becomes apparent that Armoury Crate in its current form is meant for games and this is not possible without facing major drawbacks.
    As soon as an App is added to Armoury Crate there is a necessity for doing a double swipe to trigger a back gesture. This also works only on the right side of the phone.
    The left side triggers Game Genie, the Game Assistant.
    Unfortunately the same restriction applies to the home-gesture. Each time you want to trigger the home gesture- triggering the gesture a second time is mandatory.

    The Conclusion:
    Adding apps to Armoury Crate that are regularly used, is not convenient during day to day usage.


    The solution to this problem is this Systemless-Rom-Mod (SRM) called Armoury Crate - Unleashed.
    Since Magisk has grown to a full root and modding solution for Android, it also provides developers the possibility to replace only certain parts of a ROM in a systemless way via Magisk Modules. That means during boot certain parts of the stock firmware are systemlessly replaced, with parts that are modded by me. That means by flashing this Magisk Module your firmware is not altered, and you can just remove the module in Magisk Manager in case you want to return to stock.

    Armoury Crate - Unleashed will allow you to use your phone and navigation gestures normally, when adding apps to armoury crate. It will also extend the possible settings in armoury crate.

    Features this Systemless-Rom-Mod brings to you:

    - remove the necessity for double swipe back gesture once an app is added to armoury crate
    - remove the necessity for double home gesture once an app is added to armoury crate:
    - remove game genie trigger from the left side of the screen once an app is added to armoury crate (it can still be accessed via the notification in the notification drawer)
    - extend cpuset capabilities from armoury crate (you´ll find a more detailed explanation in the second post)



    Download: https://www.androidfilehost.com/?w=files&flid=324531

    Requirements:
    - quickswitch magisk module installed with lawnchair launcher set as recent provider, if you prefer navigation gestures or asus launcher if you prefer button navigation. ( you can still use asus launcher as your launcher with navigation gestures or vice verda)
    - working magisk environment
    - a ROG 2 running stock firmware WW-17.0240.2103.75

    Instructions:

    1. Make sure you´re running exactly the firmware this mod is made for.
    Do either 2a or 2b:
    2a. If you want to use Navigation Gestures:
    Flash quickswitch module in magisk manager, install lawnchair and set lawnchair as your default recents provider.
    2b. If you want to use button Navigation:
    Flash quickswitch module in magisk manager and set Asus launcher as your default recents provider.
    3. Download Armoury Crate Unleashed Magisk Module from the download section above
    4. Flash Armoury Crate Unleashed Magisk Module in Magisk Manager App
    5. Reboot
    6. Profit

    Changelog:
    v2 initial release


    For additional information or some possibilities this mod opens up be sure to take a look at post #2.
    I´ll also try to explain some of the tunables found in the hardcore tuning mode, so they´re easier to understand.



    Credits:
    @topjohnwu for Magisk
    @mikalovtch for advice
    @j to the 4n for advice
    @deadlyindian for the banner!
    Asus for the ROG Phone 2 and givig me the opportunity to develop on the device!
    2
    Useful strategies on how to use this Mod

    Short overview of the ROG Phone 2´s SoC:


    The ROG Phone 2´s SoC is the SD855/+. The CPU is a little.Big.PRIME setup.
    There are 8 cores
    4x Cortex-A55 @ 1.80GHz --> the little cores. Very efficient cores using very little power. Not as performant as the other cores. (cores 0-3 translated to cpusets)
    3x Cortex-A76 @ 2.42GHz --> The Big cores. The working horses of the SoC. Not as power-hungry as the PRIME-core, but still very performant (cores 4-6 translated to cpusets)
    1x Cortex-A76 @ up to 2.96GHz --> The PRIME core. Power-hungry, extreme performance, peak performance, short bursts (core 7 translated to cpusets)

    This architecture layout will become important later so keep it in mind.


    General information explaining powerful Armoury Crate options:

    This is a rough guideline. How to setup your own phone is up to you. I give examples you can try, but I encourage everyone to experiment. You might find that restricting CPU-Frequencies too severely in a specific app leads to stutters. Or that changing cpusets leads to slowdowns in this app as well. It´s about balance, your own preference and having the freedom to do what you want!

    FPS tuning:
    If you´re using video calling apps, navigation apps or streaming apps such as Netflix, Prime Video or Youtube you might want to reduce FPS to 60 or 90 in armoury crate.
    This will save battery life for one part and will have better colours and gamma levels for video playback, especially on low brightness.

    CPU-Frequency Tuning:
    Go to performance tuning section, advanced hardcore tuning mode. Apps, such as videocalling apps, navigation apps or streaming apps don´t need access to extremely high CPU frequencies. Especially not from the big cluster and prime core.
    Now think back to the architecture of the SoC.
    Try experimenting by restricting the max cpu frequencies for the big cluster ( cpu_max_freq 4-6) and the prime core (cpu_max_freq 7).
    Restricting the max freq for the big cluster from 2,4ghz to 1,67ghz will essentially cut the power draw in half, if the phone ramps up to the respective allowed max freq.
    The same applies to the Prime-Core!
    As a side effect this will also reduce heat and of course performance.
    But it can prolong your battery life and reduce the heat your phone produces. Good example are hot climates, generally in summer during extended navigation sessions with navigation apps.

    Tuning the cpusets:
    This might be one of the most powerful options in armoury crate. Yet I think not many understand the purpose let alone what the value of the sliders mean.
    But here we come back to the architecture layout of the SoC and the cpusets I briefly explained above.
    Two settings are of importance for us here.
    "dev/cpuset/top-app/cpus" and "dev/cpuset/foreground/cpus"

    Here´s the linux-kernel documentation about cpusets: https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v1/cpusets.html

    From that documentation:
    Cpusets provide a Linux kernel mechanism to constrain which CPUs and Memory Nodes are used by a process or set of processes.

    Tasks from the "top-app" group include always the currently displayed app on Android. The option "dev/cpuset/top-app/cpus" in Armoury Crate allows us to define, which CPUs this app´s tasks get scheduled to.
    This creates the possibility to run the currently displayed app entirely on the little cluster (0-3) for example. Or on all cores (0-7).
    It´s an extremely powerful setting.

    Unfortunately you don´t see the cpusets displayed as 0-3, 0-7 or 0-6 in Armoury Crate.
    By default you have only limited options on Armoury Crate: 15, 240 and 255.
    These are decimal values, that represent the cpusets I explained above. Unfortunately this restricts most people from making use of this feature without any form of explanation from Asus.
    Here´s a small table that explains the values, also the values I added additionally to armoury crate:

    Small reminder: 0-3 are the little cores, 4-6 the big cores and 7 the prime core

    255= 0-7 utilize all cores -> default for top-app and forground!
    1 = 0 use only one little core of the little cluster -> not recommended, extreme powersaving but phone will stutter
    3= 0-1 use two small cores of the little cluster -> great powersaving at the cost of performance, phone will probably stutter, use with caution
    15= 0-3 use the little cluster only -> great powersaving, while utilizing the cores that require the least amount of energy
    127 = 0-6 utilize the little cluster plus the big cluster, but NOT the Prime core -> saves power, with only a small performance loss during peak performance scenarios
    240= 4-7 utilize only the big cluster plus the prime core!

    This can be very useful, when using a fitness app to track cycling for example. There might be no need for the prime core in that case.
    Try to set dev/cpuset/top-app/cpus to 127 for this app (maybe additionally to restricting the max_freq for big and prime cluster below 2ghz). Use your phone and see what happens.
    If you want to save more power try also setting dev/cpuset/foreground/cpus to the same value as you did for top-app.


    This is it for now, but I might add more options to this write-up at a later point in time.


    Other Tips and Tricks:

    System-Apps and Armoury Crate:

    Some apps, like Google Maps can´t be added to Armoury Crate, because Armoury Crate only allows adding apps installed by the user.
    However there is a trick to this. Get the Magisk-Module "Debloater (Terminal Emulator)" from the Magisk Repo.
    Now you can systemlessly remove Google Maps from your Phone. Do a reboot. Clear cache from Armoury-Crate and re-install Google Maps from the PlayStore.
    You´re able to add Google Maps to Armoury Crate now.
    1
    thank you so much for do this man :coffee:
    1
    This looks interesting!

    I have a question about launcher.

    I set Nova Launcher as the default launcher but still kept Asus Launcher because I need the recent screen. Although I chose to use Button Navigation, I disabled it via build.pro and used an app called "Edge Gestures" for gestural navigation. I did this because Nova cannot access the native gestural navigation function.

    So, both the "2a" and "2b" steps in the instruction does not apply to me. Could you please advise what to do? Also, why is it important to QuickSwitch module?
    It depends how the app "edge gestures" handles the navigation.
    Try each option and see which one works for you. I guess if you selected button navigation go with that one. :)

    Because of the way I smali edited the navigation gestures quickswitch is needed for now.