Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fails with write only pwm file #338

Open
symphorien opened this issue Jan 27, 2025 · 1 comment
Open

Fails with write only pwm file #338

symphorien opened this issue Jan 27, 2025 · 1 comment
Labels
bug Something isn't working

Comments

@symphorien
Copy link

Describe the bug
on my system the fan speed can be set but not read:

echo 255 > /sys/devices/platform/dell_smm_hwmon/hwmon/hwmon6/pwm1
# works, fan goes full speed
cat /sys/devices/platform/dell_smm_hwmon/hwmon/hwmon6/pwm1
cat: /sys/devices/platform/dell_smm_hwmon/hwmon/hwmon6/pwm1: Invalid argument

fan2go seems to not like this situation at all.

To Reproduce
Steps to reproduce the behavior:

write this configuration file:

fans:
  - id: cpu_fan
    hwmon:
      platform: dell_smm-isa-0000
      rpmChannel: 1
    curve: cpu_curve
sensors:
  - id: cpu_sensor
    hwmon:
      platform: dell_smm-isa-0000
      index: 1
curves:
  - id: cpu_curve
    linear:
      sensor: cpu_sensor
      steps:
        - 50: 0
        - 60: 70
        - 70: 128
        - 80: 255

run fan2go:

#  fan2go -c fan2go.yaml
███████  █████  ███    ██ ██████   ██████   ██████  
██      ██   ██ ████   ██      ██ ██       ██    ██ 
█████   ███████ ██ ██  ██  █████  ██   ███ ██    ██ 
██      ██   ██ ██  ██ ██ ██      ██    ██ ██    ██ 
██      ██   ██ ██   ████ ███████  ██████   ██████  

 INFO  Version: dev
 INFO  Using configuration file at: fan2go.yaml
 WARNING  Cannot read pwm value of cpu_fan
 INFO  Gathering sensor data for cpu_fan...
 INFO  Loading fan curve data for fan 'cpu_fan'...
 WARNING  Fan 'cpu_fan' has not yet been analyzed, starting initialization sequence...
 INFO  Computing pwm map...
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 WARNING  Error reading PWM value of fan cpu_fan: read /sys/class/hwmon/hwmon6/pwm1: invalid argument
 INFO  Measuring RPM curve...
  ERROR   Fan cpu_fan: Unable to measure current PWM
 INFO  Fan controller for fan cpu_fan stopped.
  ERROR   Error sending notification: exit status 1
panic: read /sys/class/hwmon/hwmon6/pwm1: invalid argument

goroutine 165 [running]:
github.com/markusressel/fan2go/internal.RunDaemon.func7()
	github.com/markusressel/fan2go/internal/backend.go:139 +0x16b
github.com/oklog/run.(*Group).Run.func1({0xc00014a0c0?, 0xc000158570?})
	github.com/oklog/[email protected]/group.go:38 +0x29
created by github.com/oklog/run.(*Group).Run in goroutine 1
	github.com/oklog/[email protected]/group.go:37 +0x5a

fan2go exits after about a second.

Expected behavior
fan2go only writes to /sys/class/hwmon/hwmon6/pwm1 depending on sensor readings

Desktop (please complete the following information):

  • Distro: NixOS 24.11
  • uname -a: Linux uqbar 6.12.9 #1-NixOS SMP PREEMPT_DYNAMIC Thu Jan 9 12:33:55 UTC 2025 x86_64 GNU/Linux
  • sensors -v: sensors version 3.6.0 with libsensors version 3.6.0
  • fan2go version: 0.9.0

Additional context
this is distinct from #229 On my system pwm_enable does not even exist, and writing pwm1 works without any preparation.

@symphorien symphorien added the bug Something isn't working label Jan 27, 2025
@symphorien
Copy link
Author

Note that current fan speed is available as:

/sys/devices/platform/dell_smm_hwmon/hwmon/hwmon6/fan1_input
3624

this is what the sensors command displays.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant