Hi all,
I’m running Bazzite (F44.20260515) on an ASUS ROG Zephyrus G14 (GA402RK) and having an issue where fan curves set through ROG Control Center are being ignored by the EC firmware.
System specs:
- Model: ROG Zephyrus G14 GA402RK
- BIOS: GA402RK.319 (latest)
- Kernel: 6.19.14-ogc5.1.fc44.x86_64 (Bazzite gaming kernel)
- CPU: AMD Ryzen 9 6900HS (Rembrandt)
- dGPU: AMD Radeon RX 6800S (Navi 23) — amdgpu driver
- iGPU: AMD Radeon 680M (Rembrandt)
- DE: KDE Plasma 6 (Wayland)
- asusd: v6.3.7 (from ublue-asusctl)
- rog-control-center: from linuxbrew
The problem:
I previously ran CachyOS and other Arch-based distros where fan curves set via ROG Control Center worked perfectly — quiet, balanced, and performance profiles each had their own custom curves and the fans responded accordingly.
On Bazzite, the fan curves appear to be ignored by the EC:
asusdcorrectly writes the curves to theasus_armourykernel module (confirmed via logs)throttle_thermal_policyswitches correctly between profiles- CPU EPP switches correctly (Performance/BalancePower/Power)
- But fan RPMs don’t match the curves — they’re capped at ~3000 RPM even on performance mode with 100% CPU load across all 16 cores
- CPU reaches 75–91°C with fans at mid-speed instead of ramping to full blast (~6000 RPM)
pwm_enableonasus_custom_fan_curvereverts to2(EC auto) even afterasusdsets it to1(manual)
What I’ve verified:
fw-fanctrl(Framework fan control) is installed but masked/inactive — not the causethermaldfailed at boot (“unsupported CPU”) — not runningtunedwiththroughput-performance-bazziteprofile only sets CPU governor, not fans- Fan curve data IS stored on the EC (
auto_pointvalues match whatasusdwrote) - Writing directly to
hwmon8 auto_pointvalues has no effect — EC revertspwm_enableto2
What works on Arch but not on Bazzite:
On CachyOS with the same hardware, I used asusctl + ROG Control Center to set custom fan curves per profile, and fans would ramp up aggressively on performance mode.
The same setup on Bazzite produces capped, conservative fan behavior.
Key difference:
Bazzite ships with the asus_armoury kernel module (recently upstreamed into 6.14+), while older distros used the asus-wmi fan curve driver.
It seems the EC firmware on this unit doesn’t honor the curves written through the asus_armoury code path.
Questions:
- Has anyone else experienced fan curves being ignored on ROG laptops with Bazzite?
- Is there a way to use the older
asus-wmifan curve driver instead ofasus_armoury? - Could the
asus_armourymodule be using a different ACPI method that this BIOS version doesn’t support? - Any known workarounds to get proper fan control on GA402RK?
Happy to provide any additional logs or run diagnostic commands. This is the only issue I have with Bazzite — everything else works great.
Thanks!