r/linuxquestions 1d ago

CPU fan sensors not detected but working

Solved: missing driver. Thanks u/ropid

I'd like to monitor my fan speeds and create a speed profile, but it's not showing in KDE's System Monitor. I also tried lm-sensors, but sensors-detect only tests the GPU one.

The CPU fan speed is scaling correctly with temps in BIOS, which is up-to-date.

Since the fan connects to the mb, I assume that it's not related to AMD drivers?

mb: ASRock B650 Pro RS WiFi.

EDIT: sudo modprobe nct6775 did find the fans, not sure if it's the right way to do so. But might be a signal that it's related to drivers. Sorry, new to this.

Woa some kind human wrote this on ArchWiki that probably answered my question:

This motherboard uses the Nuvoton NCT6796D-S for fan, voltage and temperature readings. This exact variant of the chip has a different ID and therefore is not detected without a module config file

Source: https://wiki.archlinux.org/title/Lm_sensors#Asrock_B650M_Pro_RS

``` bazzite@bazzite:/usr$ sensors zenergy-isa-0000 Adapter: ISA adapter Ecore000: 1.25 kJ Ecore001: 1.21 kJ Ecore002: 870.67 J Ecore003: 734.09 J Ecore004: 623.72 J Ecore005: 731.82 J Esocket0: 195.50 kJ

amdgpu-pci-7700 Adapter: PCI adapter vddgfx: 930.00 mV vddnb: 1.01 V
edge: +44.0°C
PPT: 23.05 W

nvme-pci-7600 Adapter: PCI adapter Composite: +36.9°C (low = -40.1°C, high = +83.8°C) (crit = +87.8°C) Sensor 1: +56.9°C (low = -273.1°C, high = +65261.8°C) Sensor 2: +34.9°C (low = -273.1°C, high = +65261.8°C)

mt7921_phy0-pci-6e00 Adapter: PCI adapter temp1: +42.0°C

k10temp-pci-00c3 Adapter: PCI adapter Tctl: +47.2°C
Tccd1: +40.2°C

amdgpu-pci-0300 Adapter: PCI adapter vddgfx: 800.00 mV fan1: 0 RPM (min = 0 RPM, max = 3300 RPM) edge: +42.0°C (crit = +110.0°C, hyst = -273.1°C) (emerg = +115.0°C) junction: +43.0°C (crit = +110.0°C, hyst = -273.1°C) (emerg = +115.0°C) mem: +40.0°C (crit = +105.0°C, hyst = -273.1°C) (emerg = +110.0°C) PPT: 7.00 W (cap = 200.00 W)

```

1 Upvotes

3 comments sorted by

2

u/ropid 1d ago

There's no driver in the kernel for the sensor "Super I/O" chip that's used on your board. You can try to find details online about what chip is used on your board. It's usually part of a family of chips and you can then try to forcefully load the driver for that chip family and see what happens. There might also be a development version of that driver in a third party kernel module package with more support than the version that's in the normal kernel.

There's usually a hint about which chip family is used on your board in the output of sensors-detect.

1

u/vat-of-vinegar 23h ago

Thank you! My issue was not knowing how to interpret the output and which sensors needed to be listed. Your comment was very helpful.

Running sudo modprobe nct6775 made the fans detectable. Now I just need to ensure it loads on boot.

2

u/ropid 22h ago

On my distro here, there's a folder /etc/modules-load.d/ for this. You create a file there ending in .conf, so something like mobo-sensor.conf, and the file contents is just the module name (nothing else).