GA401QE: Custom fan curves are not reapplied after AC power event despite remaining enabled
System
- Laptop: ASUS ROG Zephyrus G14 (GA401QE)
- BIOS: GA401QE.415
- BIOS Release Date: 08/11/2023
- OS: Omarchy Linux
- Also reproduced on: CachyOS
- Kernel: Linux 7.0.10.arch1-1
- asusctl: 6.3.7-1
- asusd: 6.3.7
- supergfxctl: 5.2.7-2
Description
Custom fan curves work correctly after manually enabling them with:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves true
However, after unplugging or plugging in the AC adapter (or any platform profile refresh), the custom fan curve is no longer applied to the embedded controller (EC).
The configuration still reports that the fan curves are enabled, but the fans stop following them until the above command is executed again.
This behavior is reproducible every time.
Steps to reproduce
- Configure custom fan curves.
- Enable them:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves true
- Verify that the fans start spinning according to the custom fan curve.
- Plug or unplug the AC adapter.
- Observe that the custom fan curve is no longer applied.
- Run the same command again.
- The custom fan curve is immediately applied and the fans start spinning again.
Expected behavior
After an AC power event or platform profile refresh, the previously saved custom fan curves should automatically be reapplied.
Actual behavior
After the AC event:
asusctl fan-curve --get-enabled
still reports:
CPU: enabled: true
GPU: enabled: true
The saved configuration also still contains:
for both CPU and GPU.
However, the fan curve is no longer active until:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves true
is executed again.
Immediately after running that command, both fans begin spinning again.
Current profile
Active profile: Quiet
AC profile Quiet
Battery profile Quiet
Linux platform profile:
powerprofilesctl: power-saver
platform_profile: quiet
Sensor output after the issue occurs
asus-isa-000a
cpu_fan: 0 RPM
gpu_fan: 0 RPM
At the same time:
asusctl fan-curve --get-enabled
CPU: enabled: true, 35c:5%,41c:22%,54c:25%,58c:26%,58c:27%,60c:27%,66c:39%,99c:70%
GPU: enabled: true, 53c:7%,56c:11%,56c:11%,59c:17%,59c:17%,63c:26%,67c:30%,98c:38%
Relevant logs
After unplugging/replugging AC:
[DEBUG asusd::ctrl_platform] Setting Quiet before EPP
[INFO asusd::ctrl_platform] ThrottlePolicy setting EPP
[DEBUG asusd::ctrl_fancurves] watch_platform_profile changed
[DEBUG asusd::ctrl_platform] Platform: watch_platform_profile changed
No corresponding:
write_profile_curve_to_platform
messages are logged.
After manually running:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves true
the daemon immediately logs:
[DEBUG rog_profiles] write_profile_curve_to_platform: writing profile:(quiet), CurveData { fan: CPU, ..., enabled: true }
[DEBUG rog_profiles] write_profile_curve_to_platform: writing profile:(quiet), CurveData { fan: GPU, ..., enabled: true }
and both fans immediately start spinning.
Configuration
/etc/asusd/fan_curves.ron correctly stores:
quiet: [
(
fan: CPU,
enabled: true,
...
),
(
fan: GPU,
enabled: true,
...
)
]
The configuration persists correctly across reboots.
Additional observations
asusctl fan-curve --get-enabled always reports the fan curves as enabled, even after the issue occurs.
/etc/asusd/fan_curves.ron still contains enabled: true for both fans.
- The issue is reproducible every time.
- The same behavior occurs on both Omarchy and CachyOS, so it does not appear to be distribution-specific.``
GA401QE: Custom fan curves are not reapplied after AC power event despite remaining enabled
System
Description
Custom fan curves work correctly after manually enabling them with:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves trueHowever, after unplugging or plugging in the AC adapter (or any platform profile refresh), the custom fan curve is no longer applied to the embedded controller (EC).
The configuration still reports that the fan curves are enabled, but the fans stop following them until the above command is executed again.
This behavior is reproducible every time.
Steps to reproduce
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves trueExpected behavior
After an AC power event or platform profile refresh, the previously saved custom fan curves should automatically be reapplied.
Actual behavior
After the AC event:
still reports:
The saved configuration also still contains:
for both CPU and GPU.
However, the fan curve is no longer active until:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves trueis executed again.
Immediately after running that command, both fans begin spinning again.
Current profile
Linux platform profile:
Sensor output after the issue occurs
At the same time:
Relevant logs
After unplugging/replugging AC:
No corresponding:
messages are logged.
After manually running:
sudo asusctl fan-curve --mod-profile Quiet --enable-fan-curves truethe daemon immediately logs:
and both fans immediately start spinning.
Configuration
/etc/asusd/fan_curves.roncorrectly stores:The configuration persists correctly across reboots.
Additional observations
asusctl fan-curve --get-enabledalways reports the fan curves as enabled, even after the issue occurs./etc/asusd/fan_curves.ronstill containsenabled: truefor both fans.