[Kernel][Overclocked] No Gravity [2023-08-28] [ProtonClang]

Search This thread


Oct 14, 2022
Just flash the kernel. You may need to be decrypted on F1 for it to boot properly.

The clean kernel flash procedure doesnt remove any app. Its not a rom clesn flash. You dont wipe data nor system
Thanks for your fast response.
I read in a previous post from @Retrial that "NGK working fine in crDroid encrypted (no root) which is also based on los." works fine - will this also be in the future? I'm not so familiar with encryption / decryption therefore I would prefer to keep it as it is, just install your kernel.

Alias X

Senior Member
Jan 25, 2016
Thanks for your fast response.
I read in a previous post from @Retrial that "NGK working fine in crDroid encrypted (no root) which is also based on los." works fine - will this also be in the future? I'm not so familiar with encryption / decryption therefore I would prefer to keep it as it is, just install your kernel.
Currently it works by just flashing it while encrypted, not just with TWRP but even with CR recovery. Gwolfu the CRD Dev has made no statement that this would change in the near future.

Only thing to mention is that I think you should boot with stock kernel first after an update (?), then reflash NGK. But Pierre can correct me on that if it's wrong.


Recognized Developer
Oct 25, 2015
Moto G
OnePlus 2
Currently it works by just flashing it while encrypted, not just with TWRP but even with CR recovery. Gwolfu the CRD Dev has made no statement that this would change in the near future.

Only thing to mention is that I think you should boot with stock kernel first after an update (?), then reflash NGK. But Pierre can correct me on that if it's wrong.
Doesnt matter I usually flash kernel directly before booting when updating roms. Only time I boot with stock kernel is when flashing a new rom where I want to make sure everything is running fine without ngk first. Then flash ngk.
  • Like
Reactions: Alias X

Alias X

Senior Member
Jan 25, 2016
Hey @Pierre2324 , remember my 2.4 Ghz wifi autoconnect bug? I have some more details about that. "Access point currently fully occupied" or something like that is what it displays under settings/wifi while not connected - as soon as I tab it it however immediately connects without any issues. As mentioned, same network 5ghz channel autoconnects after boot no issue if I set it up. When I afterwards go into network settings, there seems to be some weird delay until it finds and displays all the 2.4 Ghz networks in the area, so I think it does have something to do with the bands, even though back then I couldn't replicate the issue with a 2.4 Hotspot from another phone.

I attached a screenshot of the log filtered for "Wifi", maybe that shows something interesting, but I can of course record a full log later if you want. A certain "Wifi Health Monitor" seems to display a bunch of errors.


  • Screenshot_20230415-042520_MatLog.png
    366.5 KB · Views: 69
Last edited:
  • Like
Reactions: Retrial


Feb 22, 2022
I am currently using miui official 12.0.3 and the kernel is having frequent reboot at times.
This is going on for above 4.1.0 kernel version.

And also could NGK kernel be further enhanced for battery backup in upcoming version?

or could you recommend the the best battery backup version of NGK.

Thank You
  • Like
Reactions: EP21


New member
Dec 15, 2017
Can i dirty flash the latest NGK kernel to my old NGK kernel, and what to use SE or NSE, btw im on PE+ 11 ROM, and Magisk 23.0
And do i need to flash it with Franco Kernel Manager?
Last edited:


New member
May 22, 2023
I want to flash the Kernel on my Xiaomi Mi8. What is the difference between the SE and the NSE version?

Alias X

Senior Member
Jan 25, 2016
I want to flash the Kernel on my Xiaomi Mi8. What is the difference between the SE and the NSE version?
Just scroll up and look through the pages, or maybe the CRDroid thread, we discussed that like 3 times already. Oh, and this is the Beryllium thread, don't flash this on a random device.


Sep 1, 2014
I have a magisk issue.
One of the features of version 4.4.0 is kernelSU, so I installed the kernelSU app.
Root privileges are granted just fine, but I have a problem with the module.
Even when I install the module, it doesn't seem to work.
Is there any way to solve this?


Recognized Developer
Oct 25, 2015
Moto G
OnePlus 2
I have a magisk issue.
One of the features of version 4.4.0 is kernelSU, so I installed the kernelSU app.
Root privileges are granted just fine, but I have a problem with the module.
Even when I install the module, it doesn't seem to work.
Is there any way to solve this?
You can't use both ksu and magisk. Its one or the other. Ksu modules will work in next ngk update.
  • Like
Reactions: first_damned


Sep 1, 2014
You can't use both ksu and magisk. Its one or the other. Ksu modules will work in next ngk update.
I'm only using KSU, but I must have misspoken.
You told me what I wanted to know.
[Ksu modules will work in next ngk update.]
features state KernelSU support, I assumed the module would be supported as well.
I was stumped for a few days, but it was a simple fix.

Top Liked Posts

  • There are no posts matching your filters.
  • 143



    No Gravity Kernel 1.0.0 + 4.3 App Trailer

    Hey, NoGravity Kernel dev coming from the good old OnePlus 2 here! I'm a graduating student in computer science and I actually work as a programmer. I made a pretty solid kernel for that old Oneplus device and even added Energy Aware Scheduling (EAS) support to it backporting new features like Dynamic Schedtune Boosting to this old 3.10 kernel. With it being pretty much at its apogee, I need a new challenge on a newer kernel (4.9+) while keeping NGK's mindset of Performance/smoothness while getting decent battery life due to added battery oriented features.

    For those who want a to know more about my work here is the link to NoGravity Kernel for OnePlus 2.


    The Kernel will boot using stock (Pocophone F1) CPU & GPU frequencies that correspond to the Balance Profile when Magisk is present. Overclocked frequencies can be selected in any kernel manager app. Other profiles for battery, performance and gaming can be switched to in my app.


    To tweak the kernel easily, here's my No Gravity app! featuring custom profiles (Battery, Balanced, Performance and Gaming). My app offers some features that cant be found in other kernel tweaking apps. You can find them lower in the thread.)


    -No Gravity app! support
    -Android T (13) ready
    -Rebased to full CAF
    -Enforcing SELinux
    -KernelSU support
    -OxygenOS Ports support Please read compatibility section
    -9.1.24 & 10.3.7 Novatech Touchscreen Firmware
    -Updated, Cleaned up & Optimized NVT/FTS Touchscreen drivers for latency and responsiveness and reduced touch issues
    -The two CPUs (Silver and Gold) can be configured completely separate in terms of min/max frequencies and governors
    -Unlocked PUBG HDR+Extreme options (Disabled by default, enable it in app)
    -CPU Next frequency selection tunable (linear/expnential)
    -GPU Overclocked to 835 MHz (GPU overclock/underclock is possible)
    -GPU Underclocked to 160 MHz on idle
    -Updated energy model
    -Pixel Thermals support
    -Using Evaluation Thermals
    -Own Thermal Suspend API
    -Own Thermal Locking Mecanism (Mostly for using NGK thermals on MIUI)
    -NAP power saving state for Adreno 630 GPU
    -Dynamic Stune Boost
    -Devfreq boost and Cpu Boosting drivers
    -Disabled ZRAM by default
    -FSync Control (ON/OFF)
    -Faster Applications Opening speed
    -Slimbus Overclock
    -Added Fingerprint boost
    -Added WakeBoost module
    -Added and Using ZEN I/O Scheduler as default for app opening speed && overall Smoothness
    -Added Maple, SIO, FIOPS, BFQ, ANXIETY I/O Scheduler
    -Westwood(Default) & BBR TCP Algorithms
    -DTS Headphone X Software Drivers
    -Sound Control support
    -Vibration Control
    -Charging throttling removed
    -Maximum charge rate over USB 3.0
    -WireGuard support
    -USB Ethernet support
    -Controller support
    -DriveDroid support
    -HDR Video Playback support
    -KCAL support
    -K-Lapse 5.0 support
    -Network Guru app support
    -Blocked and tweaked wakelocks (Boeffla & more)
    -Fingerprint improvements
    -Caches optimisations
    -Compilation optimisations
    -F2FS Support with GC
    -Compile with Proton Clang + Polly + Thin LTO
    -Latest CAF Tags merged in
    -Always upstreamed to latest! (4.9.337)
    -And many more under the hood changes...


    -Injected sepolicies to work on Enforcing SELinux
    -Per-App Tweaks page to apply tweaks to specific apps
    -Kernel & App update checker (Direct install of kernel and app on Pocophone) + Selection between touch firmware versions
    -Balance(Default),Performance,Battery,Gaming & Gaming+ Profiles (QSTile available)
    -Custom Profile Creator Page that let's you create and share profiles with the NGK community (/SDCARD/NGK/PROFILES/)
    -Precise CPU temperature for both Clusters separately
    -CPU Page with following tunables:
    -CPU Governor
    -CPU Frequency Selection Algorithm (Linear/Exponential)
    -CPU Min/Max Frequencies
    -NGK Smart Throttling
    -NGK Stats Page showing last gaming session FPS+ Chart, throttling, battery drain, avg CPU temps & avg Battery temps, toggle for enabling NGK Stats Overlay displaying FPS and following optional features:
    -CPU Temps/Freqs
    -GPU Temps/Freqs
    -Battery Temps/Percentage
    -RAM usage
    -Kernel Page to let you control:
    -App optimization (ART) Button
    NoGravity (NGK’s default) || Battery || Stock one
    -PUBG HDR+Extreme config unlocker
    Battery Page to let you control:
    -Adaptive Charging
    -Charging rate limiter
    -Battery Thermal Throttling Removal:
    ON (NGK’s default) || OFF
    -GPU Page:
    -GPU Stats
    -Min/Max GPU Freq Selector
    -KLapse (Brightness and Daytime modes)
    -Backlight Dimmer
    -HDR ON/OFF toggle
    -Proximity Gestures Switch to pulse ambient dispay on Hand Wave
    -Pick-Up Gesture Switch to pulse ambient display when device is taken
    -Pixel 3 Flip to Shhh feature
    -DTS Eagle (Sound) Info Page
    -More will be added...


    -More features...
    -Let me know what you want and those may be added!


    This kernel should work on any ROM/Ports! Since I love OnePlus and I'm myself a OnePlus 2 user, I will do my best to fully support OOS ports.
    Reported to work on: OnePlus 6 Holi Edition, OnePlus 7 OB8 & OB8 Quince, Quarantine Edition. OxygenOS devs do not support custom kernels so if you face any issues with NGK don't post in their groups, post here instead. Latest OOS may have calling issues as reported by some users.


    -I recommend before coming to conclusion, give it at least 2 complete charge cycles and then raise any issue.
    -I recommend to use my app, franco app or EX Kernel Manager if you need to tweak the kernel further
    -CPUs since Snapdragon 845 can't be overclocked from kernel this is why it is removed


    -Flash No_Gravity_Kernel-vX.X.zip file in TWRP (Latest TWRP Recovery Recommanded)
    -(Optional) - Clear cache and Dalvik => if you do so, Use App Optimization button in NGK App.

    Download No gravity Kernel / Download No Gravity App

    Donate me! / Telegram Group /
    No Gravity App Changelog / No Gravity Kernel Changelog


    -The android community and to all my testers for using my kernel and your precious feedbacks and ideas!.
    -thanasxda for his experience/knowledge on the Pocophone
    - @[COLOR=#00b5d3]_undead[/COLOR] & @[COLOR=#00b5d3]Wmbruckner[/COLOR] for the crowdfunding
    -Followings for their donations!

    Source: https://github.com/Pierre2324/NGK_android_kernel_xiaomi_sdm845
    Version Information
    Current Version: 4.5.0
    Created: 2019-11-16
    Last Updated: 2023-05-28
    NoGravity Kernel v4.5.0 & App 6.5.0

    Previous Changelogs:

    NoGravity Kernel v4.4.0 & App 6.4.0

    NoGravity Kernel v4.3.1[/B]

    NoGravity Kernel v4.3.0 & App 6.3.0[/B]

    NoGravity Kernel v4.2.0 & App 6.2.0

    NoGravity Kernel v4.1.0 & App 6.1.0[/B]

    NoGravity Kernel v4.0.0 & App 6.0.0

    NoGravity Kernel v3.3.0 & App 5.3.0

    NoGravity Kernel v3.2.1 & App 5.2.1

    NoGravity Kernel v3.2.0 & App 5.2.0

    NoGravity Kernel v3.1.0 & App 5.1.0

    NoGravity Kernel v3.0.0 & App 5.0.0

    NoGravity Kernel v2.4.1
    -Pixel thermal fix
    -Upstreamed to 4.9.281

    NoGravity Kernel v2.4.0

    NoGravity Kernel v2.3.1
    changelog 2.3.1.png

    NoGravity Kernel v2.3

    changelog 2.3.png

    NoGravity Kernel v2.2:

    NoGravity Kernel App v4.2:

    NoGravity Kernel v2.1 / App v4.1:
    changelog 2.1_4.1.png

    NoGravity Kernel v2.0:

    NoGravity Kernel App v4.0:

    NoGravity Kernel v1.5.5:

    NoGravity Kernel App v3.5.5:

    NoGravity Kernel App v3.5.1:

    NoGravity Kernel App v3.5:

    NoGravity Kernel v1.5:

    NoGravity Kernel App v3.4.2:

    • Changelog/Update page is now scrollable in case of big changelogs to see download buttons
    • App now checks for update when app is resumed also (not just when app is launched)

    Pocophone F1-Mi8:
    • Fixed an issue where frequencies were shown over CPU and GPU labels when turning off respective temps in NGK Stats Overlay

    OnePlus 2:
    • Nothing specific to OP2 added

    NoGravity Kernel App v3.4.1:

    • Changed text of update checker button 'View changelog' to 'Download!' when an update is present
    • Other small fixes

    Pocophone F1-Mi8:
    • Updated NGK Stats Overlay UI
    • NGK Stats Overlay doesn't block input touches anymore
    • Better FPS Idling algorithm to prevent bad user's FPS stats when display isn't refreshed (e.g just looking at launcher)
    • Last session average FPS now updates right after toggling off the switch when in NGK app

    OnePlus 2:
    • Nothing specific to OP2 added

    1.4 Build:
    NoGravity Kernel App v3.4:

    • Updated Profiles
    • New App & Kernel Update checker
    • Small fixes

    • Modified NGK Thermals to fit NGK thermal locking mecanism
    • DT2W Toggle added to Kernel Page (mainly for OOS)
    • Updated Backlight Dimmer
    • New NGK stats page
      -Shows last session average FPS
      -NGK overlay service toggle to show FPS,CPU & GPU stats in real time on screen

    OnePlus 2:

    • nothing specific for oneplus 2 has been added

    Kernel 1.4:
    • NoGravity Thermal locking mecanism
    • OxygenOS Crack*
    • Add DT2W node for OxygenOS and enabled by default
    • Input boost driver cleanup
    • Touch drivers tweaks
    • GPU max stable overclock dropped to 800MHz (835MHz still available)
    • Rebased Techpack Drivers (Fixes Mi8 sound issue)
    • Updated profiles
    • Brought back updated Wireguard
    • Added back HDR playback feature
    • Removed old CPU governors
    • Network GURU app can now be opened
    • Merged latest CAF tag
    • Updated to latest Anykernel
    • Always upstreamed to latest (4.9.215)
    • And many more under the hood changes/optimisations

    • Now Kernel comes in Pie and Q versions only, if you are still on Pie blobs simply use Pie kernel
    • Kernel and app updates will now show up when they are released on main page of NoGravityKernel App along with device specific changelog and download buttons
    • NGK Thermal Locking Mecanism prevents ROMs from overriding a thermal selection (Mainly MIUI) (when NGK Thermals are ON only, when they're OFF, ROM will have it's default behavior)
    • NGK now boots on OxygenOS, OOS developers do not support custom kernels so if there are any issues do not report in their groups.

    1.3 Build: Welcome to Mi 8!

    NoGravity Kernel App v3.3:

    • Updated Profiles
    • Lowered Magisk Toast Messages*
    • Max GPU Freq Selector
    • Added an option to refresh GPU Stats
    • Updated descriptions

    • New GPU Page:
      -GPU Stats
      -KLapse (Brightness and Daytime modes)
      -Backlight Dimmer

    OnePlus 2:
    • DDR Input Boost Toggle

    Kernel 1.3:
    • Fixed Screen Freezes
    • Updated Profiles
    • GPU min 160MHz, GPU max 835MHz
    • GPU optimisations (Governor, Latency)
    • Better CPU idling
    • Optimised Schedutil Governor
    • Changes to EAS Energy model
    • Updated schedtune,devfreq boosts
    • Better app opening speed
    • Exposed a Dynamic Stune Boost Duration tunable to userspace (Now independent to input boost duration) -Small changes to input boost
    • Sched cleanup
    • Added FIOPS,BFQ,ANXIETY I/O Schedulers
    • Updated thermals
    • Brought back RCU 4.14 backport
    • Vibration Control
    • Compiled with DragonTC
    • Huge compilation optimisations for performance
    • POLLY Optimisations
    • Debloated even more
    • Now Permissive by default, Android 10 Q blobs don't seem ready yet
    • Always upstreamed to latest! (4.9.212)
    • And many more under the hood changes...

    • Max GPU frequency of 835MHz is only reachable manually as I don't consider it fully stable. On the other side, 820MHz Overclock is stable and is used in my profiles.
    • I wanted to use relatively longer dynamic schedtune boost duration compared to input boosts so made them separate in terms of length.
    • I would recommend turning off No Gravity app toast notifications from Magisk Manager app.

    1.2 Build:

    NoGravity Kernel App v3.2:

    • Updated Profiles
    • Auto-dismiss Apply on boot notification
    • Updated descriptions

    • New Kernel Page to let you control:
      Stock one || Evaluation (NGK’s default)
      -Thermal Suspend API:
      OFF || ON (NGK's default)
      -Battery Thermal Throttling Removal:
      OFF || ON (NGK’s default)
      -SELinux Switch:
      Enforcing (NGK’s default) || Permissive
    • New DTS Eagle (Sound) Page

    OnePlus 2:
    • Fixed App opening on AGK
    • Fixed EAS Dynamic Schedtune Bug

    Kernel 1.2:
    • Updated to latest Touch Firmware
    • Updated with Xiaomi Q Kernel Source (Touch,Sound,PSU,WLAN,GPU,etc)
    • Silver cluster will now ramp all the way down to 300MHz for better idle drain
    • Removed some GPU latency
    • Underclocked GPU on idle to 170MHz (from 180MHz)
    • 820MHz GPU frequncy step added between 710MHz & 835MHz
    • New Thermal Suspend API
    • FSync Control (ON/OFF)
    • DTS Eagle Software Driver
    • Bluetooth changes
    • Optimisations, Removed some bloat
    • Bluetooth Fixed
    • Wifi Speed Meter Fixed
    • Random Reboot Fixed
    • Blackscreen issue Fixed
    • SmartPack/Kernel Adiutor issue Fixed
    • Camera Fix for MIUI Q and ROMs with Q-Blobs (see separate build)
    • Updated AnyKernel3 changes (No Need to flash magisk after updating!)
    • Always upstreamed to latest! (4.9.210)
    • And many more under the hood changes...

    • Thermal Suspend API : This is a small API I’ve written in the kernel directly (to make sure no background services are running for it) that unsets NGK thermals when screen turns off and enables them back when screen is turned back on. (This fixes some issues on some specific ROMs where screen wouldn’t turn on or phone would random reboot while device sleeps or is charging)
    • There is now a camera fix version to fix camera on ROMs with Q-Blobs like MIUI Q, so if your camera isn't working flash this one.

    Kernel 1.1 Pie Edition:
    • NoGravity Kernel v1.1 now working on Pie ROMs
    • Using v1.0 Base

    • This kernel uses v1.0 base so will work on both Android Pie and Q ROMs/Ports/MIUI
    • From now on releases will be separate in 2 builds: [9] and [10]. People on Android 10 should use [10] builds since it is rebased to Full Q CAF sources even tho [9] build would still work.

    1.1 Build: Welcome to No Gravity Kernel App for Pocophone!

    NoGravity Kernel App v3.1:

    • Pocophone F1 support added
    • Balance(Default),Performance,Battery & Gaming Profiles*
    • Precise CPU temperature for both Clusters separately

    Kernel 1.1:
    • Rebased completely to full Q CAF (LineageOS Staging)
    • Removed CPU overclock*
    • Removed charging throttling*
    • Many Optimisations
    • F2FS updated with GC and changes
    • Debloated the Kernel
    • Westwood(Default) & BBR TCP Algorithms added
    • Using 2048kb read ahead
    • Fixed ZEN I/O Scheduler initialisation
    • Picked port of RCU's taken from 4.14
    • Updated SDFAT to EXFAT
    • Removed a CPU boosting driver that could conflict with another
    • Battery oriented tweaks
    • Tried to fix random reboots and other issues some people were getting
    • Always upstreamed to latest! (4.9.206)
    • And many more under the hood changes...

    • Profiles also have a QSTile for fast switching
    • If you didn’t already know it was only placebo/performance wouldn’t change, but don’t worry there are other ways to make performance better
    • If you want charging throttling, you can set it back on here by setting the value to N instead of Y: sys/modules//sys/module/smb_lib/parameters/skip_thermal
    • MIUI ROM/Port variants may have some issues but I didn't have much testers on those so please send logs if you have issues

    1.0 Build: Welcome to Android 10 & Pocophone!


    • Overclocked CPU (Silver 1.76->2.0Ghz, Gold 2.8-> 3.0Ghz) (Will boot with stock clocks)
    • Energy model modifications to fit NGK overclocked frequencies
    • GPU Overclocked to 835 MHz
    • GPU Underclocked to 180 MHz on idle
    • Using Evaluation Thermals (For now..)
    • NAP power saving state for Adreno 630 GPU
    • Added Adreno Idler
    • AdrenoBoost
    • Dynamic Stune Boost
    • Devfreq boost and Cpu Boosting drivers
    • Disabled ZRAM
    • Faster Applications Opening speed
    • Slimbus Overclock
    • Added Fingerprint boost
    • Added WakeBoost module
    • Added and Using ZEN I/O Scheduler as default for app opening speed && overall Smoothness
    • Added Maple, SIO and FIOPS I/O Scheduler
    • Power Efficient Workqueues
    • Sound Control support
    • Maximum charge rate over USB 3.0
    • WireGuard Support
    • KCAL Support
    • K-Lapse 5.0 Support
    • Blocked wakelock (Boeffla & more)
    • Fingerprint improvements
    • Caches optimisations
    • Compilation optimisations
    • Novatek touch firmware from
    • Always upstreamed to latest! (4.9.201)
    • Using Anykernel3
    • And many more under the hood changes...

    Kernel Update!

    Good news! :cool:

    NoGravity Kernel v1.1 for Android [9] Pie released! Please read changelog and notes.

    Releases from now on will be separated in 2 builds: Android [9] and Android [10].

    Differences between builds:
    [POCO][9]NoGravityKernel_x.x.x.zip builds:
    -Based on v1.0
    -Works any Pie ROMs/MIUI/Ports
    -Also works on Q but [10] is recommended for best performance and compatibility
    -Will do my best so it gets same features as [10] builds

    [POCO][10]NoGravityKernel_x.x.x.zip builds:
    -Rebased to full Q CAF since v1.1 (Best performance due to this)
    -Better support for Android [10]

    Happy holidays everyone here! Here's my gift to the community :cool: Hope you'll love it!

    See yall later:cool:
    Useful stuffs

    Clean flashing a kernel:
    1. Boot into recovery
    2. Wipe dalvik/art cache, cache, system and vendor(if recovery have this option)
    3. Reboot into recovery (only needed on some recoveries)
    4. Flash latest ROM zip
    (Optional) Flash other zips like GApps, DFE, etc depending on ROM and your preference
    5. Flash latest Magisk zip
    6. Reboot into system (yes boot with stock kernel first)
    7. Reboot into recovery
    8. Flash latest NGK Kernel zip
    9. Reboot and enjoy

    Not to be confused with a ROM clean flash!
    Do not wipe data or internal storage!

    Encryption fix

    For the ones who uses an encrypted device, those steps needs to be done to worl properly with NGK:

    To those who are facing screen flicker/bootloop upon flashing NGK on an encrypted device.

    1. Dirty flash your current ROM and boot into system.
    2. change your password to whatever you want then click on "No" when it shows "Secure Start-up".
    3. Boot into recovery then flash NGK. You will notice that it will not ask for a password even though you are encrypted.

    Taking logs

    Screen Freezes:
    -Connect phone to PC
    -Run following commands in terminal:
    [*]adb shell

    Random Reboots:
    -When the random reboot occurs press the TWRP button combo to got straight into TWRP
    -Send the pstore folder as a .zip file located in /sys/fs/

    Any runtime kernel/app related crashes that doesnt make the device reboot or freeze:
    -Use Matlog app on play store
    -Start recording before the issue
    -Stop recording after the issue
    -Send the .zip file created


    Okay lets break it down for yall.

    Every kernel on every device has WARM_TEMP and HOT_TEMP values which are usually always 45 and 50 respectively.

    When device reaches 40-42C charging rate will decrease more and more until it reaches about 45C where device will stop charging even if its plugged in for safety reasons. Battery must not charge when they are this hot.

    Battery thermal removal: this will prevent throttling before battery reaches about WARM_TEMP. Once battery reaches about 45C there is nothing in the world you can do. So yea battery thermal removal is still safe, just a matter of preference because if charging throttles before reaching 45C it will heat less then continue charging but if charging doesnt throttle yea it will charge charge faster under 45C but may heat more so you may hit 45C faster. So as in every other tweaks it depends on user.

    As per my tests I would get about those but that may vary for you:
    Battery temp (°C) - Charging rate (mA) tuples

    What else? oh yea here are some tips for you to lower temps (cause yes some of you charge while playing pubg..)

    Tips for lowering temps:
    -Turn off NGK thermals from NGK APP

    Right you all need to understand thermals first.. A lot of users are just asking best thermals, best this, best that.. there is no universal bests..

    Thermals will throttle performance depending on heat generated.. so yes there is a gain in performance when using NGK thermals because performance will throttle at higher temperatures. Why do I say it depends? Well someone living in a hot place and is getting high temps and throttling will use NGK thermals so he gets more performance for the same temperature point but there is always throttling else a phone would heat too much in the end and be really unsecure and all. That being said, if your device throttle with stock thermals then you go ngk thermals it will throttle at higher temps but in the end may still throttle and if you hit too high temps it will throttle even harder to keep temps low. For those people using normal thermals would be best since yea performance will throttle but it will prevent the phone from getting higher temps which could lead to more intense throttling. (Can also read about charging above you may want more aggressive thermals that will throttling performance to reduce heat so you can charge phone)

    So next tip:

    -Reduce Big cluster max frequency as this cluster is a hest generator
    -Use another profile than Gaming! (Performance for me is best because its less aggressive, some people prefer balance for gaming)

    All in all, try stuffs by yourself I think I did my part guiding you through all this, the best things you can do is the best things for yourself not necessarily the best for others.

    Touchscreen Tests (NGK v1.5.5):

    Spent a whole week with testers to just sit down and find the firmware to choose and then rebuild the drivers from the groud up.. but first here's an intro

    Small intro for everyone cause many people confuse many things..

    -Panels: We have 3 main panels:

    -Touch firmware: comes in kernel and also in ROMs but kernel will flash its inbuilt firmware if the kernel firmware checksum is different to the one already present in ROM

    -Touch Drivers: comes in kernel and those dont have numbers/versions its up to the kernel dev to make changes it those so stop asking for driver version no one can answer that precisely compared to firmware

    Alright now enough talking, the tests and results.

    For FTS panels, using stock xiaomi drivers was fine no touch issues seem to happen since those went out.
    For NVT panels, some had touch issues on rev1 and rev2 depending on firmware used while keeping xiaomi stock drivers so below tests were focusing on NVT mostly

    We tried 3 firmware and the ones who remained are 9.1.24 and 10.3.7 since other one gave issues

    So I did incremental test builds modifying drivers for both firmware

    For drivers, as said before I reverted all changes to xiaomi stock drivers from their source. Some issues were present for some on both firmware version and different issues on both panel revisions (rev1 and rev2)
    some issues was only related to latency and I knew latency was going to be better by optimizing the drivers later on
    -Touch issues:
    So based on that, I only took account of the issues present between firmware for each driver changes
    Part 1:
    Part 1 was updating novatech drivers from a CAF source that can be seen in my kernel source. So did that, compiled 2 versions again fixed some small issues here and there like firmware flashing wasnt working, touch didn't work at first and some bootup issues, anyway main thing is that novatech driver were updated a bit with less variable locking and such coding changes making the driver faster. Results after that were good it fixed some people's issues but latency wasnt perfect.
    Now was time to optimize the drivers and did for both NVT and FTS (most of those optimizations were seen in previous ngk versions) but needed to add them again and add some more and see how they impact (cause not every optimizations means better results, some optimizations introduced issues)

    So in the end if TLDR
    The conclusion was that issues were fixed after some driver changes as some optimizations made them worst, 9.1.24 firmware gave better touch (mostly under load or heat a.k.a for gamers) and didnt impact day to day users hence why NGK uses now 9.1.24 drivers.

    BUT that is based on the fact that I reviewed the drivers from official xiaomi source, then updating them, then doing specific optimizations, other kernels may have different results or different ways of doing tests, thats just how I did it.

    So yea for people who wont like touch, I will send this cause I did work on it to give better touch to most users and limiting the touch issues. I still dont think its possible to have perfect latency and perfect touch due to our phone but here's what has been done..
    Are we waiting for a new update? If we are going to be honest, of course we are but @Pierre2324 actually doesn't owe us anything.
    He'll release if when he feels like it, there should be no pressure from our part.
    Battery drain is not the main issue here, it depends on the rom you're using.
    What needs to be fixed is the screen freezes that occurs on any rom when the touch firmware doesn't fit your panel.
    But then again, this might not affect some people that already has the correct specific unit for that firmware version.
    How can this be fixed? Revert back to the 1.5 or release 2 variants of touch firmwares for the next update.

    Exactly, it takes time cause Im re-doing the app from scratch. There will be more features too. Sorry for the wait but it will be worth it. Im working on something for thermals too on kernel side so a lot of testing is done for that too. You are right and ngk 1.6 will come in 2 variants for people having touch issues on one of the firmware.

    To answer the other guy, cant blame kernel directly for battery drain issues. Why? Because most users dont face those. Unless it was a general issue where everyone would see worst drain then yea we could blame kernel for it but on my side I never really see my idle go above 0.9%/h on any profile even performance and I listen to music a lot screen off.

    Conclusion, dont worry yall Im still actively working on ngk + app, just that 1.6 is quite big and cant push an half baked update also quarantine is still present here but im no longer at home with a lot of time to spare on development Im back to work since a month so I work on android stuffs at night and on weekends + testing during the day.

    Thanks for your understanding. Stay safe guys and defy gravity?