1

I've got fancontrol installed, and immediately after running pwmconfig, I get a Configuration appears to be outdated, please run pwmconfig again message.

This is a an old Dell PC (i5-2320) that I put Ubuntu 16.04 on. Some outputs:

$ sensors
coretemp-isa-0000  
Adapter: ISA adapter  
Physical id 0:  +35.0°C  (high = +80.0°C, crit = +99.0°C)  
Core 0:         +35.0°C  (high = +80.0°C, crit = +99.0°C)  
Core 1:         +26.0°C  (high = +80.0°C, crit = +99.0°C)  
Core 2:         +33.0°C  (high = +80.0°C, crit = +99.0°C)  
Core 3:         +31.0°C  (high = +80.0°C, crit = +99.0°C)  

dell_smm-virtual-0  
Adapter: Virtual device  
Processor Fan:   3193 RPM  
Motherboard Fan:    0 RPM  

$ sudo find /sys -name hwmon
/sys/devices/virtual/hwmon  
/sys/devices/platform/coretemp.0/hwmon  
/sys/class/hwmon  

$ sudo pwmconfig 
#pwmconfig revision 6243 (2014-03-20)
This program will search your sensors for pulse width modulation (pwm)
controls, and test each one to see if it controls a fan on
your motherboard. Note that many motherboards do not have pwm
circuitry installed, even if your sensor chip supports pwm.

We will attempt to briefly stop each fan using the pwm controls.
The program will attempt to restore each fan to full speed
after testing. However, it is ** very important ** that you
physically verify that the fans have been to full speed
after the program has completed.

Found the following devices:  
   hwmon0 is coretemp  
   hwmon1 is dell_smm  

Found the following PWM controls:  
   hwmon1/pwm1           current value: 255  
   hwmon1/pwm2           current value: 255  

Giving the fans some time to reach full speed...  
Found the following fan sensors:  
   hwmon1/fan1_input     current speed: 3191 RPM  
   hwmon1/fan2_input     current speed: 0 ... skipping!  

Warning!!! This program will stop your fans, one at a time,
for approximately 5 seconds each!!!
This may cause your processor temperature to rise!!!
If you do not want to do this hit control-C now!!!
Hit return to continue: 

Testing pwm control hwmon1/pwm1 ...  
  hwmon1/fan1_input ... speed was 3191 now 997  
    It appears that fan hwmon1/fan1_input  
    is controlled by pwm hwmon1/pwm1  
Would you like to generate a detailed correlation (y)? n  

Testing pwm control hwmon1/pwm2 ...  
  hwmon1/fan1_input ... speed was 3191 now 3202  
    no correlation  

No correlations were detected.
There is either no fan connected to the output of hwmon1/pwm2,
or the connected fan has no rpm-signal connected to one of
the tested fan sensors. (Note: not all motherboards have
the pwm outputs connected to the fan connectors,
check out the hardware database on http://www.almico.com/forumindex.php)

Did you see/hear a fan stopping during the above test (n)? n

Testing is complete.
Please verify that all fans have returned to their normal speed.

The fancontrol script can automatically respond to temperature changes
of your system by changing fanspeeds.
Do you want to set up its configuration file now (y)? n

$ more /etc/fancontrol  
# Configuration file generated by pwmconfig, changes will be lost  
INTERVAL=10  
DEVPATH=hwmon0=devices/platform/coretemp.0 hwmon1=*devices/virtual*  
DEVNAME=hwmon0=coretemp hwmon1=dell_smm  
FCTEMPS=hwmon1/pwm1=hwmon0/temp1_input  
FCFANS=hwmon1/pwm1=hwmon1/fan1_input  
MINTEMP=hwmon1/pwm1=30  
MAXTEMP=hwmon1/pwm1=60  
MINSTART=hwmon1/pwm1=150  
MINSTOP=hwmon1/pwm1=0  
MAXPWM= hwmon1/pwm1=255  

I started with an autogen config, but when I couldn't start fancontrol did a few things - removed all references to pwm2 because all I have is a single cpu fan I'm trying to control... and I added the value behind hwmon1 (in italics) myself because there was nothing there before. Even if I accept the values when running fan control I get

$ sudo fancontrol
Loading configuration from /etc/fancontrol ...  

Common settings:  
  INTERVAL=10  

Settings for hwmon1/pwm1:  
  Depends on hwmon0/temp1_input  
  Controls hwmon1/fan1_input  
  MINTEMP=30  
  MAXTEMP=60  
  MINSTART=150  
  MINSTOP=0  
  MINPWM=0  
  MAXPWM=255  

Device path of hwmon1 has changed  
Configuration appears to be outdated, please run pwmconfig again  

What is odd is that the detailed correlation in pwmconfig will change the fan speed, so it seems like it should have everything needed... but I still had to put values in DEVPATH for hwmon1. It seems like it should be comparing the DEVPATH values to something, but I cannot figure out what. Again, this problem is all in the same session, I haven't rebooted. Got any ideas?

Tejas Lotlikar
  • 2,945
  • 5
  • 17
  • 26
jds62f
  • 13

1 Answers1

0

The devices are located in /sys/devices/platform/. You don't actually need DEVPATH, you can put the full path with a wildcard if the hwmon number changes.

Locate where each device is /sys/devices/platform/<kernel_module>/hwmon/<hwmon#>

Edit /etc/fancontrol manually.

Remove DEVPATH and DEVNAME

Replace each entry with the full path from /sys/devices/platform/<kernel_module>/hwmon/hwmon[[:print:]]*

Your =hwmon0/temp1_input would become =/sys/devices/platform/coretemp.0/hwmon/hwmon[[:print:]]*, you just need to get the path for all the hwmon1 entries and replace it.

Once you have it working make a backup of the config in case it gets overwritten or if you update your OS. Here's a thread with some help for manual configuration of fancontrol: Cannot configure Fan Speed with pwmconfig!

rtaft
  • 1,825
  • in my case, there are no hwmon1 folders in /sys/devices/platform. The only drivers in there are the ones for coretemp and hwmon0, which I'm not getting an error for. I anticipated having to eventually use full paths, but need to get the fans working first. – jds62f Dec 31 '19 at 20:31
  • I haven't seen virtual before, but I expect it would work the same way using the full path. – rtaft Dec 31 '19 at 20:40
  • Marked as answer. Did not realize specifying full path bypasses the checks, which were giving me issue. thanks! – jds62f Jan 04 '20 at 02:26