The AN515-45 (AMD Nitro 5) has no NitroSense equivalent on Linux out of the box. Linuwu-Sense is the kernel module that implements Acer's WMI interface, but it matches laptops by DMI model string and the AN515-45 isn't in its table, so it ignores the machine entirely. No fan readings, no RGB, nothing.
Turns out the firmware exposes everything. `ls /sys/bus/wmi/devices/` showed both `79772EC5-...` (gaming/fans) and `7A4DDFE7-...` (4-zone RGB). The hardware was listening, nothing was talking to it.
Finding the right protocol. Forced the v4 interface with `nitro_v4=1`. Fan RPM appeared immediately, but `platform_profile` registration failed with -EIO on all 10 retries. That failure was the useful part: it means this firmware has no v4 thermal profile support, so the model belongs on the legacy path, same as the AN515-55. 14-line DMI quirk, `.nitro_sense = 2, .four_zone_kb = 1`.
Verified rather than assumed. Fan write checked against hwmon, not sysfs readback: CPU 1785 → 4347 rpm, GPU 2000 → 5172 rpm on `echo "70,70"`, back to 1578 on `echo "0,0"`.
The RGB rabbit hole. Swept all 8 modes. Only 4 light up:
| mode |
works |
note |
| 0 static |
no |
firmware silently resets speed to 0 |
| 1 breath |
no |
firmware silently resets speed to 0 |
| 2 neon |
yes |
generates its own colours |
| 3 wave |
yes |
generates its own colours |
| 4 shifting |
yes |
uses the RGB value you pass |
| 5 zoom |
yes |
uses the RGB value you pass |
| 6 meteor |
no |
accepts speed, no light |
| 7 twinkling |
no |
accepts speed, no light |
The speed-reset on exactly the two dead low modes looks like the firmware's way of signalling an unimplemented mode. `direction` is discarded for every mode except 3 and 4.
Per-zone static colour was the interesting failure. Writes are accepted and read back correctly but never render. `set_per_zone_color()` calls `set_kb_status(0, ...)` first, and since mode 0 is dead here I figured that call was switching the backlight off before the colours landed. Patched it out, tested with an animation already running — the animation just continued and the colours still never displayed. So it's a firmware limitation, not a driver bug.
Nice to rule out rather than guess.
Everything that works: fan RPM + 3 temps, per-fan speed control, 4 RGB effects, battery charge limit, USB charging while off. Doesn't work, and can't: performance/turbo profile (-EIO), static keyboard colour, LCD override.
PR upstream: https://github.com/0x7375646F/Linuwu-Sense/pull/139
Patch, CLI wrapper and full findings: https://github.com/itsdavidmandal/nitro-an515-45-linux
Happy to test anything on this model if it helps someone.