fan_speed reports as '0'
Kernel: 6.1.6-273-tkg-pds
GPU: Radeon 6800XT
amdfan is running correctly as a service and the output appears correct using amdfan --monitor however the fan_speed reports as zero.
➜ ~ amdfan --monitor
AMD Fan Control - ctrl-c to quit
amdgpu
┏━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Card ┃ fan_speed (RPM) ┃ gpu_temp ℃ ┃
┡━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ card0 │ 0 │ 28.0 │
└───────┴─────────────────┴────────────┘
Aborted!
➜ ~ systemctl status amdfan.service
● amdfan.service - amdfan controller
Loaded: loaded (/usr/lib/systemd/system/amdfan.service; enabled; preset: disabled)
Active: active (running) since Tue 2023-01-17 18:01:12 GMT; 1min 52s ago
Main PID: 642 (amdfan)
Tasks: 1 (limit: 38381)
Memory: 68.6M
CPU: 179ms
CGroup: /system.slice/amdfan.service
└─642 /usr/bin/python /usr/bin/amdfan --daemon
Jan 17 18:01:12 sff systemd[1]: Started amdfan controller.
Jan 17 18:01:13 sff amdfan[642]: [18:01:13] INFO Starting amdfan amdfan.py:217
Running manually via amdfan --daemon produces no errors.
My config file:
➜ ~ cat /etc/amdfan.yml
#Fan Control Matrix.
# [<Temp in C>,<Fanspeed in %>]
speed_matrix:
- [50, 4]
- [60, 70]
- [65, 75]
- [70, 85]
- [77, 95]
- [80, 100]
# Current Min supported value is 4 due to driver bug
#
# Optional configuration options
#
# Allows for some leeway +/- temp, as to not constantly change fan speed
threshold: 4
#
# Frequency will change how often we probe for the temp
frequency: 5
#
# While frequency and threshold are optional, I highly recommend finding
# settings that work for you. I've included the defaults I use above.
#
# cards:
# can be any card returned from `ls /sys/class/drm | grep "^card[[:digit:]]$"`
# - card0
Let me know if there is anything else I can provide to help diagnose this issue? It appears the fans themselves may still be running at the requested RPM but the monitoring just doesn't reflect that.
You may want to check that /sys/class/drm/card0/device/hwmon/hwmon1 is properly populated (card0/hwmon1 may be different for you).
Make sure that this directory has the relevant "temp1_input", "pwm1_max", "pwm1_min", "pwm1_enable", "pwm1", files in there.
I have a 6800xt as well running on 6.1.6-zen1 and it's correctly exporting my sysfs in there.
I believe everything that is required is in there:
➜ ~ ls -a /sys/class/drm/card0/device/hwmon/hwmon0/
. fan1_input freq1_input in0_input power1_average power1_cap_min pwm1_max temp1_crit_hyst temp2_crit temp2_label temp3_input
.. fan1_max freq1_label in0_label power1_cap power1_label pwm1_min temp1_emergency temp2_crit_hyst temp3_crit temp3_label
device fan1_min freq2_input name power1_cap_default pwm1 subsystem temp1_input temp2_emergency temp3_crit_hyst uevent
fan1_enable fan1_target freq2_label power power1_cap_max pwm1_enable temp1_crit temp1_label temp2_input temp3_emergency
Are you able to read/set the values either manually or with amdfan --manual? Do you get any permissions errors?
Sorry for the late reply.
I am able to set the values manually, no permission errors.