NCT6775 & Dynamix System Temperature + Dynamix Auto Fan Control Support


Recommended Posts

I'm writing this not only for myself, as I had a to spend a couple of hours to get this to work, but also because I find others who still experience issues with getting temperature and fan readings out when they are using Dynamix System Temperature or Dynamix Auto Fan Control Support together with the NCT6775 driver for Nuvoton NCT5572D/NCT6771F/NCT6772F/NCT6775F/W83677HG-I and other chips.

 

The issue that most will experience is that only CPU temps are showing up, but none of the fan or other temperature sensors are showing up. There are a lot of instructions of solving the various issues, such as sensor detection, adding acpi_enforce_resources=lax to syslinux.cfg or just getting the driver to load, but there is no end-to-end guide!

 

Newer Asus motherboards, who are notorious for using Nuvoton sensors, will in the future have a different driver, read more here https://www.phoronix.com/forums/forum/hardware/motherboards-chipsets/1304134-new-asus-sensor-driver-for-linux-aims-for-greater-flexibility-faster-sensor-reading. However, for older boards such as my Asus Sabertooth X99 with the Nuvoton thermal sensors, enabling acpi_enforce_resources=lax has been advised in for several years.

 

This guide assumes you have a bit of experience with Unraid, but if you don't just post here and I'll try to help!

 

DISCLAIMER: Adding acpi_enforce_resources=lax to syslinux.cfg could/can cause adverse effects, read more here: https://bugzilla.kernel.org/show_bug.cgi?id=204807#c37  It would be strongly advise that should you need to do any firmware updates to boot into regular Unraid OS for the boot menu and not choose the default Unraid OS NCT6775 Workaround option.

 

Steps for workaround

  • Open the Unraid terminal
  • Type sensors-detect and accept everything
  • At the end of sensors-detect it will show you a list of the found drivers, write these down: in the below case it's "nct6775" and "coretemp"
    image.png.d1fe579bc89ffad563b9f10fb23b5214.png
  • On the Unraid flash drive edit the Go-file found in /boot/config (make sure to make a backup!) and add the lines referring to the drivers, and save the file
    modprobe nct6775
    modprobe coretemp
    /usr/bin/sensors -s
    image.png.adc58580b7126fe2ad6821bb391d3f47.png
  • Now go to the Unraid dashboards Main page and click on your flash drive
    image.png.daf6080f20dcbd94c1af9fedf3994b3d.png
  • Scroll down to the section Syslinux Configuration and on the right side click on "Menu View"
  • Add the label Unraid OS NCT6775 WORKAROUND under the label Unraid OS. The text you need to add is shown below.
    label Unraid OS NCT6775 WORKAROUND
      kernel /bzimage
      append initrd=/bzroot acpi_enforce_resources=lax
    image.png.8e64166d4649057aa6142a375bf55a6a.png
  • Once you've added the label click on the "Raw View" option on the right side and select the new Unraid OS NCT6775 WORKAROUND as default but clicking the little round radiobutton and then click "Apply"
    image.thumb.png.f1a098da22396b3464b47fbc20159678.png
  • Now reboot

 

All done and it should work, and you'll be able to configure the Dynamix System Temperature and Dynamix Auto Fan Control Support plugins

 

Proof that it does:

image.png.b85387e88d5a7b4f832b3983885c19ab.png

image.thumb.png.03ec3b6d5a3afa9626f12da372c097b4.png

 

Edited by PeterDB
Added quote from original NCT6775 dev and maintainer
  • Like 2
  • Thanks 2
Link to comment
2 hours ago, PeterDB said:

Unraid OS NCT6775FIX

I would rather call this workaround then a FIX since adding this:

2 hours ago, PeterDB said:

acpi_enforce_resources=lax

can lead to system instability, other weird behavior and can in certain cases damage your hardware.

 

You can find a good write up about what this option does here: Click

 

 

Please also keep in mind that this is only a friendly reminder and nothing that I want to criticize. :)

Link to comment
23 minutes ago, ich777 said:

I would rather call this workaround then a FIX since adding this:

can lead to system instability, other weird behavior and can in certain cases damage your hardware.

 

You can find a good write up about what this option does here: Click

 

 

Please also keep in mind that this is only a friendly reminder and nothing that I want to criticize. :)

 

@ich777Considering this is an issue for several people here, and considering your wealth of knowledge, do you have another suggestion? 

Link to comment
  • 5 months later...

Thanks for the excellent step-by-step guide, @PeterDB! 👍

 

My guess is that my worked without the workaround in 6.11.5 on my ASRock Z97 Extreme4, but after the first scan after a fresh boot all sensors are detected and then they disappear after selecting or scanning, not coming back after further unloads and rescans, but once again after a reboot of the server. 


So I applied the workaround, but it did not fix it in my case. 


It seems my problem has something to do with the Kraken X42 AIO CPU cooler I have installed, as the sensors command shows:

Linux 5.19.17-Unraid.
root@UPC:~# sensors
Error: File /etc/sensors.d/sensors.conf, line 25: Undeclared bus id referenced
Error: File /etc/sensors.d/sensors.conf, line 27: Undeclared bus id referenced
sensors_init: Can't parse bus name

and the content of /etc/sensors.d/sensors.conf shows: 

root@UPC:~# cat /etc/sensors.d/sensors.conf
# sensors

chip "nct6791-isa-0290"
ignore "temp8"
chip "nct6791-isa-0290"
ignore "temp9"
chip "nct6791-isa-0290"
ignore "temp10"
chip "nct6791-isa-0290"
ignore "fan1"
chip "nct6791-isa-0290"
ignore "fan5"
chip "nct6791-isa-0290"
ignore "fan6"
chip "coretemp-isa-0000"
label "temp1" "CPU Temp"
chip "nct6791-isa-0290"
label "temp1" "MB Temp"
chip "nct6791-isa-0290"
label "fan2" "Array Fan"
chip "nct6791-isa-0290"
label "fan3" "Array Fan"
chip "nct6791-isa-0290"
label "fan4" "Array Fan"
chip "kraken2-hid-3-6"
label "fan1" "Array Fan"
chip "kraken2-hid-3-6"
label "fan2" "Array Fan"

I don't know what this means or how it works, but any idea how to fix these "declarations" of "kraken2-hid-3-6" or where I can find a solution? 

Edited by Ymetro
Link to comment

It seems that it cannot load correctly due to the drivers for the Kraken not being part of the OS. Looking at others online, Kraken AIOs seems to be very sporadically supported on Linux and many opting for Windows VMs to control it. It seems there is a driver, but I cannot find any details on really how to install it. It might be an idea to reach out to the dev Jonas Malaco (https://jonasmalaco.com/) who created it and actually who wrote LiquidCTL.

 

Some posts:

https://www.kernel.org/doc/html/latest/hwmon/nzxt-kraken2.html

https://github.com/liquidctl/liquidctl

 

  • Thanks 1
Link to comment
  • 1 month later...

Thanks for this thread! I'm sure you saved me several hours of searching and digging through 100+ page "support" threads. :)

 

Just to help those searching in the future, I'm running an ASRock Z370 ITX motherboard and it is also using NCT6775. This tutorial got me up and running in minutes with temps and fan controls.

 

Also, thanks to @ich777 for the link to the details on the risks of enabling acpi_enforce_resources=lax. Its good to have some understanding of what this work around is actually doing.

Link to comment
  • 3 weeks later...

Just found out that when commenting out

# chip "kraken2-hid-3-6"
# label "fan1" "Array Fan"
# chip "kraken2-hid-3-6"
# label "fan2" "Array Fan"

in sensors.conf made everything working. Sjeez. 

 

Ánd it is showing the Kraken fans??


image.png.cb1b858e0ef2fa720270b0d2ca569a8f.png

Now to only make this persistent after boot it seems I have to edit the /boot/config/plugins/dynamix.system.temp/sensors.conf file. 

Alas I cannot reboot the system to test this as it is currently moving a lot of data from an emulated drive to the others atm, and it takes days. 

 

All the sensors are visible now after running the probes and "sensors -s" commands; temps and fans. 

 

Not sure if it is because an Unraid update, but it is working without using the "acpi_enforce_resources=lax" boot option. 

Edited by Ymetro
Link to comment
  • 1 month later...
  • 3 weeks later...

I have a Gigabyte  G33-DS3R. Would your tutorial be applicable to this motherboard?

Currently I can see under PWM controller:

it8718-pwm1

it8718-pwm2

it8718-pwm3

If I choose the first and click on detect under PWM FAN it fills it in with this text

/sys/devices/platform/it87.656/hwmon/hwmon1/fan1_input

I have three NORCO s500 cases plugged in the power sockets currently (4 in the system), each one of them has hard drives connected to the motherboard and hard disk connector cards.
Are those three above the fans of the NORCOs?
Would seem like the CPU fan is not detected.
I have not connected the two case fans yet to the motherboard, they are just hooked up to the power cable at the moment, will try connecting to the motherboard next

Link to comment

I doubt your issue has anything with the NCT6775 driver.

 

If you have a multiple PWM controllers, you need to test each own to find out which one is the main PWM controller. Although most of the times its the one ending in pwm1.

 

Unless you connect the NORCO s500 fans to the motherboard PWM/Fan headers, you won't get able to get any readouts from them. From what I read the NORCO s500 fan is internal in the unit and you only connect power and sata to the units, so unless you open it and connect the cable to the motherboard it's not going to be readout in Unraid. That means that it's the internal temp sensor in the NORCO s500 which controls the fan.

 

As for why the CPU fan isn't found, it's most likely the ict8718 controllers, if not, you'd need to use the sensors-detect to find which driver is missing.

 

However, i'll be honest the GA-G33-DS3R is quite old and you might not be able to find a lot of information out there.

 

 

Link to comment

Thanks PeterDB. I have plugged the rear two fans directly in the the fan sockets on the motherboard and they immediately started spinning way faster than before, so I hope this will improve the airflow through the case. 
I receive email warnings when HDD reaches temps of over 45C, I will monitor that to see if there are any changes.

Link to comment
  • 3 weeks later...
On 6/26/2023 at 5:23 PM, gnollo said:

Thanks PeterDB. I have plugged the rear two fans directly in the the fan sockets on the motherboard and they immediately started spinning way faster than before, so I hope this will improve the airflow through the case. 
I receive email warnings when HDD reaches temps of over 45C, I will monitor that to see if there are any changes.

Have not had a single warning since I plugged the rear fans in the motherboard. It has not been super hot but had a few warm days and it has held up well so far.

Link to comment
  • 2 months later...
  • 2 months later...
On 6/25/2023 at 10:36 AM, PeterDB said:

I doubt your issue has anything with the NCT6775 driver.

 

If you have a multiple PWM controllers, you need to test each own to find out which one is the main PWM controller. Although most of the times its the one ending in pwm1.

 

Unless you connect the NORCO s500 fans to the motherboard PWM/Fan headers, you won't get able to get any readouts from them. From what I read the NORCO s500 fan is internal in the unit and you only connect power and sata to the units, so unless you open it and connect the cable to the motherboard it's not going to be readout in Unraid. That means that it's the internal temp sensor in the NORCO s500 which controls the fan.

 

As for why the CPU fan isn't found, it's most likely the ict8718 controllers, if not, you'd need to use the sensors-detect to find which driver is missing.

 

However, i'll be honest the GA-G33-DS3R is quite old and you might not be able to find a lot of information out there.

 

 

Do the SS-500's have a temp sensor and fan control?  I have four SS-500's that are very old, but it seemed to me when I installed them so long ago that their fans always spun at 100%.  I ran the fans to the motherboard to gain some control.  

 

That said, it seems gnollo's fans ran faster when he did the same and his drives ran cooler.

 

Right now I am stuck having all four fans on one controller channel.  So one hard drive hot means all for POD fans spin up faster.  It's loud and annoying.

 

I may have to try connecting the fans back to each SS-500 and see what happens if I don't find an answer.

Edited by craigr
Link to comment
  • 2 weeks later...
  • 1 month later...

Hi,

 

I've been having issues getting the Minimum PWM Value to be detected, although the sensors and fan RPMs do largely show up (although it shows 4 when I have 5 fans). Given that the values are detected I'm guessing I don't need the acpi_enforce_resources=lax flag to be added and have a different (probably user related) problem?

 

Many thanks!

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.