MangoHUD uses the wrong CPU temperature sensor on CachyOS (Ryzen 9 3900)
📝 Issue description
Since updating to MangoHUD 0.8.1-1, I’ve noticed that the CPU temperature is either not shown correctly or uses the wrong sensor. The system correctly detects all sensors, but MangoHUD ignores the proper one (k10temp-pci-00c3) and instead reads from asusec-isa-000a, which reports the motherboard or chipset temperature, not the actual CPU temperature.
🖥️ System information
OS: CachyOS (Arch Linux)
Kernel: (output of uname -r)
CPU: AMD Ryzen 9 3900
GPU: NVIDIA RTX 4070 Ti
MangoHUD version: 0.8.1-1+
Graphics driver: (e.g. NVIDIA 555.xx or Mesa 24.xx)
🧾 Observed behavior
The sensors command shows:
asusec-isa-000a CPU: +37.0°C ... k10temp-pci-00c3 Tctl: +46.0°C Tccd1: +46.5°C Tccd2: +37.5°C
However, MangoHUD seems to read from asusec-isa-000a instead of k10temp-pci-00c3, which leads to an incorrect CPU temperature being displayed.
Even forcing the sensor in the configuration:
cpu_temp=1 cpu_temp_sensor=k10temp
does not fix the issue — MangoHUD continues to use the wrong source. This suggests that MangoHUD either fails to recognize k10temp as a valid sensor or does not properly apply the manual override.
⚙️ Steps to reproduce
On a CachyOS or Arch Linux system with a Ryzen CPU (e.g., 3900X or 3900), install MangoHUD 0.8.1.
Verify that both asusec and k10temp sensors are visible with sensors.
Launch any game or app with:
DXVK_ASYNC=1 DXVK_HUD=0 gamemoderun mangohud %command%
Observe that the CPU temperature displayed by MangoHUD does not match the k10temp readings.
✅ Expected behavior
MangoHUD should read the temperature from the k10temp sensor (e.g., Tctl) or allow users to manually select it with the cpu_temp_sensor configuration option.
cpu_temp_sensor option does not exist
Can you provide logs with MANGOHUD_LOG_LEVEL=debug set?
Hi,
I’m experiencing the same issue with MangoHUD 0.8.1 on my Ryzen 9 3900 CPU. It seems that MangoHUD always uses the asusec sensor instead of k10temp, so the CPU temperature displayed is incorrect.
I tried forcing cpu_temp_sensor=k10temp in my MangoHud.conf, but this option no longer exists in 0.8.x and is ignored.
I’ve attached a debug log generated with MANGOHUD_LOG_LEVEL=debug:
[Attach your file: ~/mangohud_debug.log]
System info from the log:
CPU: AMD Ryzen 9 3900 12-Core Processor
Kernel: 6.17.3-2-cachyos
OS: CachyOS
GPU: NVIDIA GeForce RTX 4070 Ti
Please let me know if you need any additional information to help debug this issue.
Thanks!
Details:
The module k10temp is loaded and active (lsmod confirms this).
Running sensors shows the Tctl temperature correctly, but there are errors reading subfeatures (temp3_min/max).
MangoHUD 0.7.1 tries to use k10temp, but due to these errors it falls back to another sensor (asusec).
In MangoHUD 0.8.x, the option cpu_temp_sensor no longer exists, so there is no way to force the correct sensor.
Attached:
Debug log generated with MANGOHUD_LOG_LEVEL=debug.
Conclusion:
This seems to be caused by how kernel 6.17 exposes Ryzen sensors, breaking MangoHUD’s ability to read k10temp properly.
Yes this is a bug in mangohud, we need to refine the logic of how we pick hwmon sensors
Thank you very much for your time and support. I really appreciate your help in resolving this issue!
Hello again!
I tested MangoHUD on CachyOS LTS (kernel 6.12.52-2-cachyos-lts) and can confirm that the issue is no longer present. The CPU temperature from k10temp is now detected correctly, and the overlay displays it as expected.
It seems the problem was related to newer kernels (6.13+), where the hwmon logic for k10temp behaves differently and caused MangoHUD to fall back to asusec.
Thank you very much for your help and quick response — your explanation about improving the hwmon sensor selection logic was spot-on!