Lost two of my 4 sensors

I am running KDE/Tumbleweed fully updated today and sensors-detect seems to work and shows the summary:-


Now follows a summary of the probes I have just done.
Just press ENTER to continue: 

Driver `k10temp' (autoloaded):
  * Chip `AMD Family 10h thermal sensors' (confidence: 9)

Driver `w83627ehf':
  * ISA bus, address 0x290
    Chip `Nuvoton W83677HG-I (NCT5572D/NCT6771F/NCT6772F/NCT6775F) Super IO Sensors' (confidence: 9)

Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no): yes
Unloading i2c-dev... OK
Unloading cpuid... OK


however using the Thermal Monitor widget I now only have PCI and Radeon showing as temperatures, the two others which worked prior to updating today no longer appear, they were SYSTIN and CPUTIN which I think were the main board and CPU temps. I tried adding acpi_enforce_resources=lax to grub via Yast but does not seem to have made any difference after a reboot.

Anyone any suggestions please?

Stuart

Hi
So if you run the sensors command in a terminal are the required outputs there?

Trouble is I cannot remember what was there before as I set it up ages ago. I’ll take a look at the full output and see if I can work it out.

Stuart

Hi
That happens :wink: Can you check if there was a file added to /etc/modprobe.d/ for the super i/o sensor options eg adding device hex code etc?

All the file dates in modprobe.d are from way before the last update, in fact as I update every week they are all older than the past 2 or 3 updates. Only one file is dated 5th April and that is firewalld-sysctls.conf but that has nothing to do with this issue.

Stuart

I’m just wondering if Bug 1163206](https://bugzilla.opensuse.org/show_bug.cgi?id=1163206) - hwmon/k10temp might have a bearing on this as it seems like there has been quite a lot of work there and I think this should be the driver which provides the information I’m looking for. I hope they have not dropped support for my hardware which is a few years old now, maybe it has just been messed up. Sensors-detect does find my h/w


AMD Family 10h thermal sensors...                           Success!
    (driver `k10temp')


but the monitor does not show any values I’d expect.

Stuart

Hi
What does the output from the command sensors show… ignore some gui tool for the moment…


sensors
radeon-pci-0100
Adapter: PCI adapter
temp1:        +53.5°C  (crit = +120.0°C, hyst = +90.0°C)

k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +24.5°C  (high = +70.0°C)


Stuart

Hi
So it is the w83627ehf (NCT) that is not working, maybe a regression in the kernel module…

Is the module loaded?


lsmod | grep w83627ehf
<if not>
modprobe w83627ehf 
sensors

Have a look at this thread;
https://forums.opensuse.org/showthread.php/519270

Modeprobe gives


modprobe: ERROR: could not insert 'w83627ehf': No such device

Looking in YAST software mgmt I think it should be part of the kernel.

Stuart

Hi
It is;


/sbin/modinfo w83627ehf

filename:       /lib/modules/5.6.2-1-default/kernel/drivers/hwmon/w83627ehf.ko.xz

What about a nct module


lsmod | grep nct
<if none>
modprobe nct6775

After adding NCT6775 I now see


sensors
nct6775-isa-0290
Adapter: ISA adapter
Vcore:           1.05 V  (min =  +0.00 V, max =  +1.74 V)
in1:             1.87 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
AVCC:            3.36 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
+3.3V:           3.36 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in4:            48.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:             1.68 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:            48.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
3VSB:            3.44 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
Vbat:            3.39 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
fan1:             0 RPM  (min =    0 RPM, div = 16)
fan2:          3590 RPM  (min =    0 RPM, div = 4)
fan3:             0 RPM  (min =    0 RPM, div = 16)
SYSTIN:         +45.0°C  (high =  +0.0°C, hyst =  +0.0°C)  ALARM  sensor = thermistor
CPUTIN:         +40.5°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
AUXTIN:        +127.5°C  (high = +114.0°C, hyst = +114.0°C)  ALARM  sensor = thermistor
PCH_CHIP_TEMP:   +0.0°C  
PCH_CPU_TEMP:    +0.0°C  
PCH_MCH_TEMP:    +0.0°C  
intrusion0:    ALARM
beep_enable:   disabled

radeon-pci-0100
Adapter: PCI adapter
temp1:        +51.5°C  (crit = +120.0°C, hyst = +90.0°C)

k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +24.0°C  (high = +70.0°C)


so it looks better but why does it not add this automatically?

Stuart

Hi
Is the module in /etc/sysconfig/lm_sensors?

I have;


cat /etc/sysconfig/lm_sensors

# Generated by sensors-detect on Sun Feb  9 17:19:13 2020
## Path: Hardware/Sensors
## Description:         Defines the modules to used
## Type:                string
## ServiceRestart:      lm_sensors
## Default:             ""
#
# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded.
#
# The format of this file is a shell script that simply defines variables:
# HWMON_MODULES for hardware monitoring driver modules, and optionally
# BUS_MODULES for any required bus driver module (for example for I2C or SPI).

HWMON_MODULES="coretemp nct6775"

I then reconfigure mine with a custom config for a nct6776 (configure labels etc from the output of sensors -u)…


cat /etc/sensors.d/01-dq77mk.conf 

chip "nct6776-isa-*"
   label in0 "Vcore"
   set in0_min 1.1 * 0.9
   set in0_max 1.1 * 1.15
   label in1 "+12V"
   compute in1 @ * 12, @ / 12
   set in1_min 12 * 0.95
   set in1_max 12 * 1.1
   label in2 "AVCC"
   set in2_min 3.3 * 0.95
   set in2_max 3.3 * 1.1
   label in3 "+3.3V"
   set in3_min 3.3 * 0.95
   set in3_max 3.3 * 1.1
   label in4 "+5V"
   compute in4 @ * 5, @ / 5
   set in4_min 5 * 0.95
   set in4_max 5 * 1.1
   ignore in5
   ignore in6
   label in7 "3VSB"
   set in7_min 3.3 * 0.95
   set in7_max 3.3 * 1.1
   label in8 "Vbat"
   set in8_min 3.3 * 0.95
   set in8_max 3.3 * 1.1
   label fan1 "Front Top Fan"
   label fan2 "CPU Fan"
   label fan3 "Front Bottom Fan"
   label temp1 "Motherboard - SYSTEM"
   label temp2 "Motherboard - CPU"
   label temp7 "Motherboard - PECI Agent 0"
   label temp8 "Motherboard - Intel Q77"
   #label temp9 "Motherboard - PECI Agent 1"
   ignore temp9
   ignore temp10
   ignore cpu0_vid
   ignore intrusion0
   ignore intrusion1
   ignore beep_enable

chip "coretemp-isa-000"
   label temp1 "CPU Package Temperature"
   label temp2 "CPU Core 0 Temperature"
   label temp3 "CPU Core 1 Temperature"
   label temp4 "CPU Core 2 Temperature"
   label temp5 "CPU Core 3 Temperature"

Thanks for this information. I am having a play with what you’ve given here. However my question remains why do I have to do this? There is a bug somewhere but where, is it in sensors-detect? Should I raise a bug for this?

Stuart

Hi
Have you run rpmconfigcheck lately? Hard to say, it may be a change in the kernel module or sensors-detect. Check the config command first.

Just run it


rpmconfigcheck
Searching for unresolved configuration files
Please check the following files (see /var/adm/rpmconfigcheck):
    /etc/apache2/default-server.conf.rpmnew
    /etc/apache2/listen.conf.rpmnew
    /etc/chrony.conf.rpmnew
    /etc/default/grub.rpmnew
    /etc/hostname.rpmnew
    /etc/hosts.rpmnew
    /etc/mime.types.rpmsave
    /etc/nsswitch.conf.rpmnew
    /etc/php7/apache2/php.ini.rpmnew
    /etc/php7/cli/php.ini.rpmnew
    /etc/plymouth/plymouthd.conf.rpmnew
    /etc/postfix/main.cf.rpmnew
    /etc/postfix/master.cf.rpmnew
    /etc/pulse/client.conf.d/50-system.conf.rpmsave
    /etc/samba/lmhosts.rpmnew
    /etc/samba/smb.conf.rpmnew
    /etc/sddm.conf.rpmnew
    /etc/speech-dispatcher/speechd.conf.rpmnew
    /etc/ssh/ssh_config.rpmnew
    /etc/ssh/sshd_config.rpmnew
    /etc/sysctl.conf.rpmnew
    /etc/vsftpd.conf.rpmnew


to me it does not look like any are relevant to this.

Do you know of anywhere which documents what sensors are actually valid for my m/board and processor? It is an ASRock 890FX Deluxe 5 with a Phenom X4 840 processor. I guess it’s a bit old now. I’ve not found anything on the ASRock site.

Stuart

Hi
Likely all a bug with sensors-detect and your module, if I remove mine and rerun sensors-detect it finds mine…


cat /etc/sysconfig/lm_sensors

# Generated by sensors-detect on Mon Apr 13 07:53:06 2020
## Path: Hardware/Sensors
## Description:         Defines the modules to used
## Type:                string
## ServiceRestart:      lm_sensors
## Default:             ""
#
# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded.
#
# The format of this file is a shell script that simply defines variables:
# HWMON_MODULES for hardware monitoring driver modules, and optionally
# BUS_MODULES for any required bus driver module (for example for I2C or SPI).

HWMON_MODULES="coretemp nct6775"

mv /etc/sysconfig/lm_sensors .
cat /etc/sysconfig/lm_sensors
cat: /etc/sysconfig/lm_sensors: No such file or directory

sensors-detect --auto
....
....
Now follows a summary of the probes I have just done.

Driver `coretemp':
  * Chip `Intel digital thermal sensor' (confidence: 9)

Driver `nct6775':
  * ISA bus, address 0xa00
    Chip `Nuvoton NCT5573D/NCT5577D/NCT6776F Super IO Sensors' (confidence: 9)

Do you want to generate /etc/sysconfig/lm_sensors? (YES/no): 
Unloading i2c-dev... OK
Unloading cpuid... OK

cat /etc/sysconfig/lm_sensors
# Generated by sensors-detect on Mon Apr 13 07:54:27 2020
## Path: Hardware/Sensors
## Description:         Defines the modules to used
## Type:                string
## ServiceRestart:      lm_sensors
## Default:             ""
#
# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded.
#
# The format of this file is a shell script that simply defines variables:
# HWMON_MODULES for hardware monitoring driver modules, and optionally
# BUS_MODULES for any required bus driver module (for example for I2C or SPI).

HWMON_MODULES="coretemp nct6775"

Run through the above on your system and if it doesn’t populate the config with your sensors, then it would be a bug…

Well I did all that but sensor-detect loads the wrong driver see below


sensors-detect --auto
# sensors-detect version 3.6.0
# Board: ASRock 890FX Deluxe5
# Kernel: 5.6.2-1-default x86_64
# Processor: AMD Phenom(tm) II X4 840 Processor (16/5/3)

Running in automatic mode, default answers to all questions
are assumed.

Some south bridges, CPUs or memory controllers contain embedded sensors.
Do you want to scan for them? This is totally safe. (YES/no): 
Module cpuid loaded successfully.
Silicon Integrated Systems SIS5595...                       No
VIA VT82C686 Integrated Sensors...                          No
VIA VT8231 Integrated Sensors...                            No
AMD K8 thermal sensors...                                   No
AMD Family 10h thermal sensors...                           Success!
    (driver `k10temp')
AMD Family 11h thermal sensors...                           No
AMD Family 12h and 14h thermal sensors...                   No
AMD Family 15h thermal sensors...                           No
AMD Family 16h thermal sensors...                           No
AMD Family 17h thermal sensors...                           No
AMD Family 15h power sensors...                             No
AMD Family 16h power sensors...                             No
Hygon Family 18h thermal sensors...                         No
Intel digital thermal sensor...                             No
Intel AMB FB-DIMM thermal sensor...                         No
Intel 5500/5520/X58 thermal sensor...                       No
VIA C7 thermal sensor...                                    No
VIA Nano thermal sensor...                                  No

Some Super I/O chips contain embedded sensors. We have to write to
standard I/O ports to probe them. This is usually safe.
Do you want to scan for Super I/O sensors? (YES/no): 
Probing for Super-I/O at 0x2e/0x2f
Trying family `National Semiconductor/ITE'...               No
Trying family `SMSC'...                                     No
Trying family `VIA/Winbond/Nuvoton/Fintek'...               Yes
Found `Nuvoton W83677HG-I (NCT5572D/NCT6771F/NCT6772F/NCT6775F) Super IO Sensors'Success!
    (address 0x290, driver `w83627ehf')
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor/ITE'...               No
Trying family `SMSC'...                                     No
Trying family `VIA/Winbond/Nuvoton/Fintek'...               No
Trying family `ITE'...                                      No

Some systems (mainly servers) implement IPMI, a set of common interfaces
through which system health data may be retrieved, amongst other things.
We first try to get the information from SMBIOS. If we don't find it
there, we have to read from arbitrary I/O ports to probe for such
interfaces. This is normally safe. Do you want to scan for IPMI
interfaces? (YES/no): 
Probing for `IPMI BMC KCS' at 0xca0...                      No
Probing for `IPMI BMC SMIC' at 0xca8...                     No

Some hardware monitoring chips are accessible through the ISA I/O ports.
We have to write to arbitrary I/O ports to probe them. This is usually
safe though. Yes, you do have ISA I/O ports even if you do not have any
ISA slots! Do you want to scan the ISA I/O ports? (yes/NO): 

Lastly, we can probe the I2C/SMBus adapters for connected hardware
monitoring devices. This is the most risky part, and while it works
reasonably well on most systems, it has been reported to cause trouble
on some systems.
Do you want to probe the I2C/SMBus adapters now? (YES/no): 
Using driver `i2c-piix4' for device 0000:00:14.0: ATI Technologies Inc SB600/SB700/SB800 SMBus
Module i2c-dev loaded successfully.

Next adapter: Radeon i2c bit bus 0x90 (i2c-0)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x91 (i2c-1)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x92 (i2c-2)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x93 (i2c-3)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x94 (i2c-4)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x95 (i2c-5)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x96 (i2c-6)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: Radeon i2c bit bus 0x97 (i2c-7)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: SMBus PIIX4 adapter port 0 at 0b00 (i2c-8)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: SMBus PIIX4 adapter port 2 at 0b00 (i2c-9)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: SMBus PIIX4 adapter port 3 at 0b00 (i2c-10)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: SMBus PIIX4 adapter port 4 at 0b00 (i2c-11)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: SMBus PIIX4 adapter port 1 at 0b20 (i2c-12)
Do you want to scan it? (yes/NO/selectively): 

Next adapter: saa7133[0] (i2c-13)
Do you want to scan it? (yes/NO/selectively): 


Now follows a summary of the probes I have just done.

Driver `w83627ehf':
  * ISA bus, address 0x290
    Chip `Nuvoton W83677HG-I (NCT5572D/NCT6771F/NCT6772F/NCT6775F) Super IO Sensors' (confidence: 9)

Driver `k10temp' (autoloaded):
  * Chip `AMD Family 10h thermal sensors' (confidence: 9)

Do you want to generate /etc/sysconfig/lm_sensors? (YES/no): 
Unloading i2c-dev... OK
Unloading cpuid... OK

Tumbleweed:/home/stuart # cat /etc/sysconfig/lm_sensors
# Generated by sensors-detect on Mon Apr 13 14:05:40 2020
## Path: Hardware/Sensors
## Description:         Defines the modules to used
## Type:                string
## ServiceRestart:      lm_sensors
## Default:             ""
#
# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded.
#
# The format of this file is a shell script that simply defines variables:
# HWMON_MODULES for hardware monitoring driver modules, and optionally
# BUS_MODULES for any required bus driver module (for example for I2C or SPI).

HWMON_MODULES="w83627ehf"


I think it should load NCT6775.

Stuart

Hi
So you need to raise a bug report with lm sensors, I’m guessing a kernel change…

Submitted Bug 1169316 for this issue, hopefully to the right place.

Stuart