# [solved] lm_sensor missing with ryzen cpu

## Elleni

I enabled every single kerneloption as module in hardware monitoring section of kernel, and sensors-detect says: 

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

Just press ENTER to continue: y

Driver `to-be-written':

  * ISA bus, address 0x290

    Chip `ITE IT8655E Super IO Sensors' (confidence: 9)

Note: there is no driver for ITE IT8655E Super IO Sensors yet.

Check http://www.lm-sensors.org/wiki/Devices for updates.

No modules to load, skipping modules configuration.

How can I enable temperature and fan control for my ryzen 5 on a asus prime b350 plus mainboard?

Only gpu temp and fanspeed shows up in sensors.

Do I have to do it like described here ? Is this the correct way to implement ?

https://linuxconfig.org/monitor-amd-ryzen-temperatures-in-linux-with-latest-kernel-modulesLast edited by Elleni on Thu Feb 01, 2018 7:15 pm; edited 4 times in total

----------

## Chiitoo

The correct way, in my opinion, is that it would just work as expected.  :]

It seems like the 'it87' driver included in the kernel is not new enough to have the support it does upstream.

See: github.com/groeck/it87 - Add support for IT8655E #11

So while 'sensors-detect' won't be of help, just plain 'sensors' should give out a reading, as long as a recent enough version of the 'it87' driver has been loaded up successfully.

Your post actually made me finally look more deeply into this, since my Asus Prime X370-A has the same chip, and I've been unable to get it to work myself.  So thank you!

I just built the module from upstream, and it does do something:

```
it8655-isa-0290

Adapter: ISA adapter

in0:          +1.01 V  (min =  +1.38 V, max =  +1.11 V)  ALARM

in1:          +2.51 V  (min =  +2.08 V, max =  +1.82 V)  ALARM

in2:          +2.02 V  (min =  +1.91 V, max =  +2.38 V)

in3:          +2.02 V  (min =  +1.89 V, max =  +2.63 V)

in4:          +2.01 V  (min =  +2.68 V, max =  +1.49 V)  ALARM

in5:          +1.93 V  (min =  +0.22 V, max =  +2.69 V)

in6:          +2.02 V  (min =  +2.57 V, max =  +2.02 V)  ALARM

3VSB:         +3.33 V  (min =  +1.77 V, max =  +1.94 V)  ALARM

Vbat:         +3.27 V  

+3.3V:        +3.36 V  

fan1:        1144 RPM  (min =   12 RPM)

fan2:           0 RPM  (min =   42 RPM)  ALARM

fan3:           0 RPM  (min =   20 RPM)  ALARM

temp1:        +36.0°C  (low  = -110.0°C, high = +125.0°C)

temp2:        +29.0°C  (low  = +115.0°C, high = -17.0°C)  ALARM  sensor = thermistor

temp3:        +37.0°C  (low  = +127.0°C, high = -45.0°C)  ALARM  sensor = thermistor

intrusion0:  ALARM

```

Them voltages seem a bit 'alarming', if accurate (could require scaling, though there is a user reporting no need for it any longer).  Would not be surprising though, considering the issues I've been having, and the PSU's age (the 5-year warranty came to an end not too long ago).

----------

## Elleni

I tried that module from the link and with that one it works. I have just to modprobe the module myself, as it is aparently not loaded automatically by udev. Thanks for confirmation. I was thinking too, that this should work out of the box, as kernel contains this module. But this workaround works.

----------

## wrc1944

Elleni,

Try putting  *Quote:*   

> modules_4_14_12_gentoo="it87"

  in your /etc/conf.d/modules file, and it should load at boot automatically.

Of course you will be using the particular kernel you are using. lsmod should confirm it was loaded. You can have as many kernels as you wish listed, but each will need its own module line.

I've always liked GKrellM monitor for the sensors (and many other items) graphical readout- extremely configurable, and really nice to keep track of things in those long compiles. Once you enable the sensors, they generally work accurately with no fiddling around with any odd offsets   :Smile: 

----------

## Elleni

Hi, I managed to let it autoload adding it to /etc/modules-load.d/it87.conf following the instructions on 

https://linuxconfig.org/monitor-amd-ryzen-temperatures-in-linux-with-latest-kernel-modules

But not adding the option options it87 force_id=0x8622 in  /etc/modprobe.d/it87.conf

Also emerged gkrellm  :Smile:  ty

----------

## Elleni

This module does not compile anymore with kernel-4.15. Is there a way to get it working with new kernel ? It built with every kernel from 4.9.66 up to 4.14.15   :Crying or Very sad: 

```
make -j5

  CC [M]  /root/ryzen/it87/it87.o

In file included from ./include/linux/list.h:9:0,

                 from ./include/linux/module.h:9,

                 from /root/ryzen/it87/it87.c:62:

./include/linux/kernel.h:6:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden

 #include <stdarg.h>

          ^~~~~~~~~~

Kompilierung beendet.

make[2]: *** [scripts/Makefile.build:323: /root/ryzen/it87/it87.o] Fehler 1

make[1]: *** [Makefile:1508: _module_/root/ryzen/it87] Fehler 2

make: *** [Makefile:55: modules] Fehler 2
```

Is there a way getting it87 for my box with new kernel back ?

Edit: On the other side, it worked with git-sources 4.15-rc9 before. Could it have something to do with the fact, that I updated to gcc 7.3 and binutils 2.30 followed by emerge -e world ?

----------

## wrc1944

I don't have it87 on my new AM4 system (had it on several AM3+ boards), but I just looked in my 4.15.0 source, and it's still right there in the kernel .config file, where it always has been for many years.    

# CONFIG_SENSORS_IT87 is not set

When you compile the 4.15.0 kernel just enable it as a module. Some AM4 board use it87, but others are using CONFIG_SENSORS_NCT6775=m.

Are you sure your board is using the it87 sensors chip? My ASrock boards (B350 and x370 models) are both using the Nuvoton NCT5577D/NCT6776F Super IO Sensors chip.

If you have easy access you could look on the motherboard to check what sensor chip it has.

EDIT:  Just realized after reading Chiitoo's post above that maybe the it87 code has changed in 4.15.0.  

I recall doing something like replacing ( the relevant file(s) in the new kernel with the same file(s) from a recent kernel that worked (for my wifi adapter), before compiling the new kernel that didn't work.  Worked like a charm. 

If nothing else works, might be worth a shot trying the same sort of thing with the it87, assuming that's the chip you actually have on the board.

Not sure about the gcc 7.3 and binutils 2.30 followed by emerge -e world.  Did you compile the kernel before or after the -e @world?

EDIT2:  I did check the /usr/src/linux-4.14.15-gentoo/drivers/hwmon/it87.c file in both 4.14.15 and 4.15.0, and they are both 104,147 in size, but 4.14.15 was modified jan. 28, 2018, and 4.14.15 modified nov. 12,2017 and  4.14.13 file was identical to 4.14.15

----------

## Elleni

Hello, 

the point is, yes it87 is in kernel but it is not in a new enough version aparently. See Chiitoo's post. Thus I had installed it87 from following link, which worked perfectly: 

https://linuxconfig.org/monitor-amd-ryzen-temperatures-in-linux-with-latest-kernel-modules

This still works - i come from trying - with 4.14 kernels and older. Even with actual system, compiled with gcc-7.3 and binutils-2.30 so those are not the source of the problem. 

I then retried with it87 compiled as  module in the version gentoo-sources deliver, and it is aparently still not recent enough it87 as 

modprobe it87 gives modprobe: ERROR: could not insert 'it87': No such device

Unfortunately the procedure linked above does not work anymore with new 4.15 kernel. Trying to build module for this kernel: 

```
make -j5

  CC [M]  /root/ryzen/it87/it87.o

In file included from ./include/linux/list.h:9:0,

                 from ./include/linux/module.h:9,

                 from /root/ryzen/it87/it87.c:62:

./include/linux/kernel.h:6:10: schwerwiegender Fehler: stdarg.h: Datei oder Verzeichnis nicht gefunden

 #include <stdarg.h>

          ^~~~~~~~~~

Kompilierung beendet.

make[2]: *** [scripts/Makefile.build:323: /root/ryzen/it87/it87.o] Fehler 1

make[1]: *** [Makefile:1508: _module_/root/ryzen/it87] Fehler 2

make: *** [Makefile:55: modules] Fehler 2
```

----------

## Elleni

After having seen, that the newest file on github are ~3 weeks old, I decided to delete source, I used for the last months and issued: 

git clone https://github.com/groeck/it87.git

to get newest source. And that did the trick. Now it compiles fine and I have my sensors back for 4.15 kernel. -> solved  :Very Happy: 

----------

## wrc1944

Nice job on fixing this one!.  So it87 in 4.15.rc9 works and 4.15.0 doesn't, and github version does?  Weird. Seems like nothing should have changed in one little sensor file from rc9.   :Rolling Eyes: 

----------

## Elleni

Exactly thats why I was not thinking about to need to update the sources I had downloaded some months ago. And yes, I had tested them on git-sources 4.15-rc9. I would appreciate to see them in main kernel sources but until that I can live with manual compile of this module. 

I just wanted to mail the maintainer of this, and then thought maybe just test with re-download sources first.

----------

## marcuse

In Kernel 4.15 the k10temp was updated to support Ryzen temperatures directly, no need for it87 et al.

----------

## Elleni

Well yes and no. Thanks for the pointer. I come from trying and indeed temperature works with k10temp. But still need it87 for Voltages. Then it reports 3 different temperatures whereas k10temp just shows one. And last but not least  it87 shows rpm of my 3 fans. Until I find inkernel alternatives, it87 is still usefull for me.  :Smile: 

----------

## Elleni

Sorry for digging out this old post, but I would like to know, what nowadays is used for monitoring Asus B350Plus Motherboard sensors with a first gen Ryzen 5 1600 cpu. Is k10temp the only thing available? With groek's it87 not being there anymore, I wonder if there are other ways to get more values out of my motherboard. Ex. fan speeds, maybe RAM temperature. My gpu (radeon rx580)  is monitored by amdgpu module. I did not test the it87 module in actual gentoo sources as in 4.15 times, the module did not work and one needed the version supported by groek which disappeared sometime ago. 

The reason I am asking, that I'd like to look into folding @home and having my cpu and ram slightly overclocked, I'd like to keep an eye on it's temperatures.

----------

## Ant P.

k10temp in kernel 5.6 is much more detailed with Zen chips, there's per-chiplet temperatures and two voltage/current pairs.

If you intend to run F@H then turn off all overclocking, including core boosting. F@H uses AVX-heavy code; on a Ryzen the vector units are independent of the logical cores and do not share their clocks, so all you'd be doing is wasting power.

----------

## Marlo

Now this works with the original kernel module from 5.6.2.

```
tux /etc/modprobe.d # cat it87.conf 

options it87 force_id=0x8622
```

https://linuxconfig.org/monitor-amd-ryzen-temperatures-in-linux-with-latest-kernel-modules/#h12-make-it-permanent

----------

## leandrolnh

Maybe you have more luck using the ASUS WMI sensors driver provided by Ed Brindley:

https://github.com/electrified/asus-wmi-sensors

It works fine for me on ASUS Crosshair VI Hero:

```
leandro@casa01 ~ $ sensors

asuswmisensors-isa-0000

Adapter: ISA adapter

CPU Core Voltage:         +0.96 V  

CPU SOC Voltage:          +1.09 V  

DRAM Voltage:             +1.37 V  

VDDP Voltage:             +1.07 V  

1.8V PLL Voltage:         +1.81 V  

+12V Voltage:            +11.90 V  

+5V Voltage:              +4.96 V  

3VSB Voltage:             +3.33 V  

VBAT Voltage:             +3.14 V  

AVCC3 Voltage:            +3.33 V  

SB 1.05V Voltage:         +1.04 V  

CPU Fan:                  938 RPM

Chassis Fan 1:           1074 RPM

Chassis Fan 2:           1247 RPM

Chassis Fan 3:           1173 RPM

AIO Pump:                1192 RPM

Water Pump:                 0 RPM

CPU OPT:                    0 RPM

Water Flow:                 0 RPM

CPU Temperature:          +52.0°C  

CPU Socket Temperature:   +39.0°C  

Motherboard Temperature:  +36.0°C  

Chipset Temperature:      +59.0°C  

Tsensor 1 Temperature:   +216.0°C  

CPU VRM Temperature:      +39.0°C  

Water In:                +216.0°C  

Water Out:               +216.0°C  

CPU VRM Output Current:   +4.00 A  

```

----------

## ipic

The github readme page points to an overlay with an ebuild. Unfortunately this ebuild uses vanilla-sources. So, if, like me, you use gentoo-sources, it doesn't help.

The generic instructions on the readme page didn't work for me, specifically, "make dkms" failed.

This is what worked for me to get the module compiled and installed (all run as root):

```

git clone https://github.com/electrified/asus-wmi-sensors.git

cd asus-wmi-sensors

make all

make install

```

I have only done this for a running kernel. I have no idea whether it will work for a new kernel. I guess I'll find with the next stable kernel release.

When the module is loaded on my system it logs this:

```
Apr  5 08:57:50 ian2 kernel: asus_wmi_sensors: loading out-of-tree module taints kernel.

Apr  5 08:57:50 ian2 kernel: asus_wmi_sensors: module verification failed: signature and/or required key missing - tainting kernel

Apr  5 08:57:51 ian2 kernel: asuswmisensors: Vendor: ASUSTeK COMPUTER INC. Board: ROG STRIX B450-F GAMING BIOS version: 2901 WMI version: 3

Apr  5 08:57:51 ian2 kernel: asuswmisensors: Supported board

Apr  5 08:57:51 ian2 kernel: asuswmisensors: ASUS WMI sensors driver loaded

```

What is the implication of a tainted kernel? Is there a way to avoid this?

And finally, what do people think are the chances that this will make it to the mainstream kernel tree?

Thanks

----------

## Hu

 *ipic wrote:*   

> The github readme page points to an overlay with an ebuild. Unfortunately this ebuild uses vanilla-sources. So, if, like me, you use gentoo-sources, it doesn't help.

 Why not just change the ebuild to allow gentoo-sources, or add vanilla-sources to package.provided? *ipic wrote:*   

> This is what worked for me to get the module compiled and installed (all run as root):
> 
> ```
> git clone https://github.com/electrified/asus-wmi-sensors.git
> 
> ...

 Only make install should need to be run as root.  None of the other steps should have been done as root.  More generally, I would advise against running make install as root for any checkout that was not pinned to a specific commit, because of the difficulty of later determining what commands actually ran.  If you don't know what ran, you don't know what cleanup you need to do later. *ipic wrote:*   

> When the module is loaded on my system it logs this:
> 
> ```
> Apr  5 08:57:50 ian2 kernel: asus_wmi_sensors: loading out-of-tree module taints kernel.
> 
> ...

 Whenever you report a kernel problem (panic, oops, BUG, some types of WARN), the first thing you will be asked to do is "Please reproduce the problem on an untainted kernel."

According to the message, you can avoid the taint by not loading an out-of-tree module and by not loading unsigned modules. *ipic wrote:*   

> And finally, what do people think are the chances that this will make it to the mainstream kernel tree?

 No comment.

----------

## Anon-E-moose

Finally got mine working, 3700x/Prime x570-pro

```
 $ sensors

nct6798-isa-0290

Adapter: ISA adapter

in0:                   984.00 mV (min =  +0.00 V, max =  +1.74 V)

in1:                   1000.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in2:                     3.38 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in3:                     3.28 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in4:                     1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in5:                   912.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in6:                   992.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in7:                     3.38 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in8:                     3.28 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in9:                   904.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in10:                  456.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in11:                  544.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in12:                    1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in13:                  976.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in14:                    1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

fan1:                  1422 RPM  (min =    0 RPM)

fan2:                   998 RPM  (min =    0 RPM)

fan3:                     0 RPM  (min =    0 RPM)

fan4:                  1391 RPM  (min =    0 RPM)

fan5:                     0 RPM  (min =    0 RPM)

fan6:                     0 RPM  (min =    0 RPM)

fan7:                     0 RPM  (min =    0 RPM)

SYSTIN:                 +31.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor

CPUTIN:                 +31.5°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor

AUXTIN0:                +26.0°C    sensor = thermistor

AUXTIN1:                +31.0°C    sensor = thermistor

AUXTIN2:                +21.0°C    sensor = thermistor

AUXTIN3:                +25.0°C    sensor = thermistor

PCH_CHIP_CPU_MAX_TEMP:   +0.0°C  

PCH_CHIP_TEMP:           +0.0°C  

PCH_CPU_TEMP:            +0.0°C  

PCH_MCH_TEMP:            +0.0°C  

intrusion0:            ALARM

intrusion1:            ALARM

beep_enable:           disabled

amdgpu-pci-0a00

Adapter: PCI adapter

vddgfx:      875.00 mV 

fan1:        1044 RPM  (min =    0 RPM, max = 3200 RPM)

edge:         +37.0°C  (crit = +94.0°C, hyst = -273.1°C)

power1:       14.13 W  (cap =  46.00 W)

nvme-pci-0100

Adapter: PCI adapter

Composite:    +41.9°C  (low  = -273.1°C, high = +84.8°C)

                       (crit = +84.8°C)

Sensor 1:     +41.9°C  (low  = -273.1°C, high = +65261.8°C)

Sensor 2:     +50.9°C  (low  = -273.1°C, high = +65261.8°C)

k10temp-pci-00c3

Adapter: PCI adapter

Vcore:         1.01 V  

Vsoc:          1.09 V  

CPU:          +32.5°C  

Tctl:         +32.5°C  

Tccd1:        +33.0°C  

Icore:         4.00 A  

Isoc:          7.50 A  
```

In my case,  I have the nct6775 io chip and it wasn't show, so I had to add acpi_enforce_resources=lax to the command line and now ...

I run the 5.5.15 kernel, but after a post in another thread, I pulled the latest hwmon stuff from 5.6.2 kernel (k10temp reporting)

Edit to add: had to change to acpi_enforce_resources=no as I was getting some weird interactions when running X.

Ok for now, long term testing (on my side to see if "no" is really the answer)

----------

## Chris1969

 *Marlo wrote:*   

> Now this works with the original kernel module from 5.6.2.
> 
> ```
> tux /etc/modprobe.d # cat it87.conf 
> 
> ...

 

I just realised strange behaviour related to the cited topic:

- the it87 is loaded on my system with the cited options id 0x8622; however the following id are shown:

```
dmesg | grep it87

[   11.501327] it87: Found IT8622E chip at 0x290, revision 6

[   11.501357] it87: Beeping is supported

[   11.501439] it87: Found IT8622E chip at 0xfff8, revision 15

[   11.501468] it87: Beeping is supported

```

- sensors-detect tells me:

```
Driver `to-be-written':

  * ISA bus, address 0x290

    Chip `ITE IT8655E Super IO Sensors' (confidence: 9)
```

- when I try the other ids 0x290 or 0xfff8 in the options the module it87 does not get loaded anymore because the chip is not found

I would love to get the fan speeds from the it87; so any help would be appreciated.

----------

## Marlo

Hi Chris1969,

the solution of Anon-E-moose is correct.

nct6798 does the job.

----------

## Chris1969

Hi Marlo

The sensor nct6798 is not part of my kernel config (5.10.27). I found CONFIG_SENSORS_NCT6775.

However the chip nct6775 does not show up and the module can't be loaded.

What is the solution of Anon-E-moose? To add acpi_enforce_resources=lax to the command line?

ThanksLast edited by Chris1969 on Sun May 16, 2021 11:03 am; edited 1 time in total

----------

## Marlo

The designations are a bit confusing. But it is what it is.

```

# sensors-detect

...

Trying family `VIA/Winbond/Nuvoton/Fintek'...               Yes

Found `Nuvoton NCT6798D Super IO Sensors'                   Success!

    (address 0x290, driver `nct6775')

Probing for Super-I/O at 0x4e/0x4f

...

```

```

 /etc/modules-load.d # cat lm_sensors.conf 

# Generated by sensors-detect on Sun May 16 11:15:12 2021

...

nct6775

...

```

```

# sensors

...

nct6798-isa-0290

Adapter: ISA adapter

in0:                   464.00 mV (min =  +0.00 V, max =  +1.74 V)

in1:                     1.69 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in2:                     3.44 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in3:                     3.31 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in4:                     1.82 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in5:                     1.20 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in6:                     1.35 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in7:                     3.44 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in8:                     3.30 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in9:                     1.66 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in10:                    1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM

in11:                  624.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in12:                  944.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in13:                  920.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

in14:                  912.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM

fan1:                     0 RPM  (min =    0 RPM)

fan2:                   970 RPM  (min =    0 RPM)

fan3:                     0 RPM  (min =    0 RPM)

fan4:                   632 RPM  (min =    0 RPM)

fan5:                   641 RPM  (min =    0 RPM)

fan6:                     0 RPM  (min =    0 RPM)

fan7:                     0 RPM  (min =    0 RPM)

SYSTIN:                 +43.0°C    sensor = thermistor

CPUTIN:                 +41.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor

AUXTIN0:                 +8.0°C    sensor = thermistor

AUXTIN1:                -62.0°C    sensor = thermistor

AUXTIN2:                +13.0°C    sensor = thermistor

AUXTIN3:                +31.0°C    sensor = thermistor

SMBUSMASTER 1:          +61.0°C  (high = +105.0°C, hyst = +95.0°C)

SMBUSMASTER 0:          +46.0°C  

PCH_CHIP_CPU_MAX_TEMP:   +0.0°C  

PCH_CHIP_TEMP:           +0.0°C  

intrusion0:            ALARM

intrusion1:            ALARM

beep_enable:           disabled

```

EDIT

```

 # lsmod | grep nct6775

nct6775                65536  0

hwmon_vid              16384  1 nct6775

```

----------

## ipic

 *Marlo wrote:*   

> The designations are a bit confusing. But it is what it is.
> 
> ```
> 
> # sensors-detect
> ...

 

I get this:

```
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'...               No

Trying family `ITE'...                                      Yes

Found `ITE IT8665E Super IO Sensors'                        Success!

    (address 0x290, driver `to-be-written')

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

```

So far ASUS WMI sensors driver provided by Ed Brindley (above) is only thing that gives me fan speeds from CPU and chassis.

----------

## Marlo

Thanks ipic,

there seems to be several solutions.

Maybe we should try with the gentoo-dist kernel first. There is the solution automatically.

----------

## ipic

Thanks, but I'm using gentoo-sources and don't want to move.

So, if the dist kernel does it, there must be kernel config options it uses? Or boot commands?

Just for reference:

```
ian2 ~ # modprobe nct6775

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

ian2 ~ # modinfo nct6775

filename:       /lib/modules/5.12.4-gentoo/kernel/drivers/hwmon/nct6775.ko

license:        GPL

description:    Driver for NCT6775F and compatible chips

author:         Guenter Roeck <linux@roeck-us.net>

srcversion:     6A2450AC2B674DB39C45313

depends:        hwmon-vid

retpoline:      Y

intree:         Y

name:           nct6775

vermagic:       5.12.4-gentoo SMP preempt mod_unload modversions 

sig_id:         PKCS#7

signer:         

sig_key:        

sig_hashalgo:   unknown

signature:      

parm:           force_id:Override the detected device ID (ushort)

parm:           fan_debounce:Enable debouncing for fan RPM signal (ushort)

ian2 ~ # 

```

And in my kernel config:

```
Symbol: SENSORS_NCT6775 [=m]                                            │  

  │ Type  : tristate                                                        │  

  │ Defined at drivers/hwmon/Kconfig:1433                                   │  

  │   Prompt: Nuvoton NCT6775F and compatibles                              │  

  │   Depends on: HWMON [=y] && !PPC                                        │  

  │   Location:                                                             │  

  │     -> Device Drivers                                                   │  

  │ (1)   -> Hardware Monitoring support (HWMON [=y])                       │  

  │ Selects: HWMON_VID [=m]             
```

I think that means I need to force the module to use the ITE IT8665E chip somehow. Not sure how a dist kernel would do that for me.

----------

## Marlo

 *ipic wrote:*   

> 
> 
> ```
> ian2 ~ # modprobe nct6775
> 
> ...

 

According to this, the module signature does not seem correct.

----------

## ipic

Sorry, beyond my expertise.

What's wrong with it?

----------

## Marlo

 *ipic wrote:*   

> What's wrong with it?

 

I don't know. 

Maybe see them here https://unix.stackexchange.com/questions/493170/how-to-verify-a-kernel-module-signature

----------

## ipic

Well that is simply that I have chosen not to sign my modules.

It isn't a pre-requisite for them working as far as I know - so red herring in this context I think.

----------

## Marlo

Okay, I'm out of the game.

----------

## Chris1969

okay thanks all.

It still does not work for me. I just tried the asus_wmi_sensors and this gives me

```
dmesg | grep asus

[   11.299356] asus_wmi_sensors: loading out-of-tree module taints kernel.

[   11.299736] asuswmisensors: Vendor: ASUSTeK COMPUTER INC. Board: PRIME B350-PLUS BIOS version: 4207 WMI version: 0

[   11.299736] asuswmisensors: Unsupported board
```

So maybe in the future....

----------

