Closed JurgenCruz closed 1 year ago
Hi,
Based on this page it seems that this motherboard uses Nuvoton NCT6796D-S Super IO chip.
Try to use sensor-detect
command to setup lm-sensors and usually the nct6775 kernel driver should support this SIO chip. To see any results (temperatures, voltages, fans) you should load that kernel module as well.
I hope it helps.
Cheers,
Peter
An additional comment: you can check the exact SIO chip on the motherboard yourself but you have to remove the cover for that.
Thanks! small problem though. it gives me an error: modprobe: ERROR: could not insert 'nct6775': No such device
any idea or suggestion?
You can ask the author of nct6775 module, Guenter Roeck [linux@roeck-us.net](mailto:linux%40roeck-us.net), if this SIO chip is supported at all, the -S
tag was not mentioned in the module documentation, it could be a new variant.
Any progress on this?
I asked the author. But after the initial response saying that they didn't know if the driver supported the -S variant and asking me for the output of sensors-detect, no more replies from them :cry:
You can send him the output of the sensor-detect and the error message on loading of the module.
I did send the output of sensor-detect, and the errors when loading the module. They also asked me if dmesg had any output but there wasn't any.
If can you see such a line in the output of sensor-detect:
Found unknown chip with ID 0xd352
then you can force the module to be loaded with this ID (your ID could be different) in /etc/modules.conf
:
options nct6775 force_id=0xd352
BTW, which kernel do you use? I assume a newer kernel would be needed for this.
Here is the output for sensors-detect:
# sensors-detect version 3.6.0+git # System: ASRock B650E Taichi [Default string] # Kernel: 6.3.1-arch1-1 x86_64 # Processor: AMD Ryzen 9 7900X 12-Core Processor (25/97/2)
This program will help you determine which kernel modules you need to load to use lm_sensors most effectively. It is generally safe and recommended to accept the default answers to all questions, unless you know what you're doing.
Some south bridges, CPUs or memory controllers contain embedded sensors.
Do you want to scan for them? This is totally safe. (YES/no):
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... No
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
AMD Family 19h 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 unknown chip with ID 0xd802
(logical device B has address 0x290, could be sensors)
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor/ITE'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Nuvoton/Fintek'... Yes
Found unknown chip with ID 0xd441
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):
Probing for `National Semiconductor LM78' at 0x290... No
Probing for `National Semiconductor LM79' at 0x290... No
Probing for `Winbond W83781D' at 0x290... No
Probing for `Winbond W83782D' at 0x290... 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: AMD KERNCZ SMBus
Next adapter: SMBus PIIX4 adapter port 0 at 0b00 (i2c-0)
Do you want to scan it? (YES/no/selectively):
Client found at address 0x49
Probing for `National Semiconductor LM75'... No
Probing for `National Semiconductor LM75A'... No
Probing for `Dallas Semiconductor DS75'... No
Probing for `National Semiconductor LM77'... No
Probing for `Analog Devices ADT7410/ADT7420'... No
Probing for `Maxim MAX6642'... No
Probing for `Texas Instruments TMP435'... No
Probing for `National Semiconductor LM73'... No
Probing for `National Semiconductor LM92'... No
Probing for `National Semiconductor LM76'... No
Probing for `Maxim MAX6633/MAX6634/MAX6635'... No
Probing for `NXP/Philips SA56004'... No
Probing for `SMSC EMC1023'... No
Probing for `SMSC EMC1043'... No
Probing for `SMSC EMC1053'... No
Probing for `SMSC EMC1063'... No
Client found at address 0x4b
Probing for `National Semiconductor LM75'... No
Probing for `National Semiconductor LM75A'... No
Probing for `Dallas Semiconductor DS75'... No
Probing for `National Semiconductor LM77'... No
Probing for `Analog Devices ADT7410/ADT7420'... No
Probing for `Analog Devices ADT7411'... No
Probing for `Maxim MAX6642'... No
Probing for `Texas Instruments TMP435'... No
Probing for `National Semiconductor LM92'... No
Probing for `National Semiconductor LM76'... No
Probing for `Maxim MAX6633/MAX6634/MAX6635'... No
Probing for `NXP/Philips SA56004'... No
Probing for `Analog Devices ADT7481'... No
Client found at address 0x51
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Client found at address 0x53
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Client found at address 0x73
Probing for `FSC Poseidon I'... No
Probing for `FSC Poseidon II'... No
Probing for `FSC Scylla'... No
Probing for `FSC Hermes'... No
Probing for `FSC Heimdal'... No
Probing for `FSC Heracles'... No
Probing for `FSC Hades'... No
Probing for `FSC Syleus'... No
Probing for `FTS Teutates'... No
Next adapter: SMBus PIIX4 adapter port 2 at 0b00 (i2c-1) Do you want to scan it? (YES/no/selectively):
Next adapter: SMBus PIIX4 adapter port 1 at 0b20 (i2c-2) Do you want to scan it? (YES/no/selectively):
Next adapter: AMDGPU SMU 0 (i2c-3) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU SMU 1 (i2c-4) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 0 (i2c-5) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 1 (i2c-6) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 2 (i2c-7) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 3 (i2c-8) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM aux hw bus 0 (i2c-9) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM aux hw bus 1 (i2c-10) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM aux hw bus 2 (i2c-11) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 0 (i2c-12) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 1 (i2c-13) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 2 (i2c-14) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM i2c hw bus 3 (i2c-15) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM aux hw bus 1 (i2c-16) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM aux hw bus 2 (i2c-17) Do you want to scan it? (yes/NO/selectively):
Next adapter: AMDGPU DM aux hw bus 3 (i2c-18) Do you want to scan it? (yes/NO/selectively):
Sorry, no sensors were detected. Either your system has no sensors, or they are not supported, or they are connected to an I2C or SMBus adapter that is not supported. If you find out what chips are on your board, check https://hwmon.wiki.kernel.org/device_support_status for driver status.
I see 2 IDs, which one should I use?
My linux kernel is linux 6.3.2.arch1-1
Your SIO chip is here:
Found unknown chip with ID 0xd441
You may try to force load it:
options nct6775 force_id=0xd441
I tried doing sudo modprobe nct6775 force_id=0xd441
but I get:
modprobe: ERROR: could not insert 'nct6775': No such device
Tried the same with 0xd802
but same error. Do you think if I do it with the config file instead it will work?
I read in arch wiki something about acpi_enforce_resources=lax
. Do I need this? and if so, how do I add this kernel flag?
Found this thread:
And it's continuation:
https://lore.kernel.org/linux-hwmon/b31ed9ec-3bd5-e032-ea03-b116ece4dac3@posteo.de/
seems like someone is also trying to make it work, but not sure what is missing.
No clue if acpi_enforce_resources=lax
is needed or not.
Read this wiki page about how to add this kernel parameter to grub config.
I would try to load the kernel module first. More info here: https://wiki.archlinux.org/title/Kernel_module
you have to load nct6775
module with this option options nct6775 force_id=0xd441
.
Then you can check the logs.
So I created a file in /etc/modules-load.d/nct6775.conf
with the contents:
nct6775
Then, I created a file in /etc/modprobe.d/nct6775.conf
with the contents:
options nct6775 force_id=0xd441
I then rebooted and tried a dmesg | grep -i "nct6775"
but found nothing.
BTW, I'm not using grub, I'm using systemd-boot with dracut. But from what I read, it is not super safe to use that kernel flag.
Does not sound great. I do not have any experience with dracut
. Any meaningful output from sensors
?
It would be nice to understand if the kernel module was loaded or not. You can also check this way:
# journalctl -b|grep nct67
BTW, you can also load the module this way:
sudo modprobe nct6775 force_id=0xd441
sensors does not see the device we want. her is the output:
amdgpu-pci-0300
Adapter: PCI adapter
vddgfx: 850.00 mV
fan1: 0 RPM (min = 0 RPM, max = 3300 RPM)
edge: +33.0°C (crit = +100.0°C, hyst = -273.1°C)
(emerg = +105.0°C)
junction: +37.0°C (crit = +110.0°C, hyst = -273.1°C)
(emerg = +115.0°C)
mem: +36.0°C (crit = +100.0°C, hyst = -273.1°C)
(emerg = +105.0°C)
PPT: 38.00 W (cap = 303.00 W)
k10temp-pci-00c3
Adapter: PCI adapter
Tctl: +44.9°C
Tccd1: +34.8°C
Tccd2: +34.6°C
nvme-pci-4700
Adapter: PCI adapter
Composite: +40.9°C
amdgpu-pci-5000
Adapter: PCI adapter
vddgfx: 1.34 V
vddnb: 1.15 V
edge: +40.0°C
PPT: 45.22 W
iwlwifi_1-virtual-0
Adapter: Virtual device
temp1: +28.0°C
nvme-pci-4f00
Adapter: PCI adapter
Composite: +35.9°C (low = -273.1°C, high = +81.8°C)
(crit = +84.8°C)
Sensor 1: +35.9°C (low = -273.1°C, high = +65261.8°C)
Sensor 2: +41.9°C (low = -273.1°C, high = +65261.8°C)
The journal returned this:
May 15 12:33:32 systemd-modules-load[736]: Failed to insert module 'nct6775': No such device
May 15 12:39:24 dbus-daemon[1333]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.95' (uid=0 pid=3498 comm="sudo modprobe --verbose nct6775 force_id=0xd441")
May 15 12:39:24 sudo[3498]: user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/usr/bin/modprobe --verbose nct6775 force_id=0xd441
May 15 12:39:30 dbus-daemon[1333]: [system] Activating via systemd: service name='org.freedesktop.home1' unit='dbus-org.freedesktop.home1.service' requested by ':1.96' (uid=0 pid=3501 comm="sudo modprobe --verbose nct6775 force_id=0xd802")
May 15 12:39:30 sudo[3501]: user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/usr/bin/modprobe --verbose nct6775 force_id=0xd802
Not sure if these are my manual attempts though.
BTW, you can also load the module this way:
sudo modprobe nct6775 force_id=0xd441
Yeah, that was the first thing I tried. it gives me the same error "No such device". That is when I found about the kernel flag, but not sure I want to run it with that flag.
I've got two things in my mind.
I think the one only way to identify your Nuvoton chip is if your remove the cooling covers and you will read the exact number on the chip.
I did the same thing the person in the patch did: Looked in the Mobo's manual. In the manual, in page 11 it has the block diagram:
https://download.asrock.com/Manual/B650E%20Taichi_English.pdf
And it says it is using both!
SIO NCT6796D-S and SIO NCT6686D. Not sure what to do with this information though.
If you see my motherboard (Asrock Z390 Taichi) it also employs two SIO chips.
In your case the situation is similar. Maybe your mobo has too many fan connectors and Asrock added a side SIO chip. Unfortunately the kernel modules cannot identify them properly today. I also had to wait sometime while the linux kernel was able to identify these SIO chips.
I guess that is all I can do today. Thanks for the help.
Hi,
I have the B650E Taichi Motherboard and I cannot see the fans with lm-sensors. I was wondering if you could point me in the right direction on how to contribute so I can get the config for this motherboard as well.
Thanks.