Skip to content

Duplicate nct6798 controllers get mixed up during hwmon migration #54

Description

@robinofe

FanCtrl Plus 2 version: 1.8.3
Mainboard: ASRock Z590 PG Velocita
Unraid: 7.3.2

I have two separate Nuvoton hwmon instances on this board. Both report the same chip name:

/sys/class/hwmon/hwmon4 : nct6798
/sys/class/hwmon/hwmon5 : nct6798

They are actually different platform devices:

/sys/devices/platform/nct6775.672
/sys/devices/platform/nct6775.2576

This causes FanCtrl Plus 2 to mix up PWM controllers.

Example

The following fans are connected to nct6775.672:

pwm2 = CPU fan
pwm4 = rear case fans
pwm5 = SSD fan
pwm7 = HDD front fan

The second controller, nct6775.2576, has:

pwm1 = MOS/VRM 3010 fan
pwm2 = VRM fan

After configuring the fans correctly in the GUI, FanCtrl Plus 2 changed the saved controller paths to the second controller.

For example:

controller="/sys/devices/platform/nct6775.2576/hwmon/hwmon5/pwm7"

instead of:

controller="/sys/devices/platform/nct6775.672/hwmon/hwmon4/pwm7"

The same happened with pwm4 and pwm5.

pwm_labels.cfg also ended up with conflicting entries, for example:

/sys/devices/platform/nct6775.2576/hwmon/hwmon5/pwm2=CPU-Lüfter
/sys/devices/platform/nct6775.2576/hwmon/hwmon5/pwm2=VRM-Lüfter

These are physically two different fans on two different controllers.

Possible fix

The platform device could be included in the key, for example:

nct6798@nct6775.672:pwm2
nct6798@nct6775.2576:pwm2

The platform path seems suitable here because it stays independent of changing hwmonX numbers.

It would also be useful to show this distinction in the PWM dropdown. Currently both entries appear simply as:

nct6798 - pwm2
nct6798 - pwm2

Something like this would make them unambiguous:

nct6798 [nct6775.672] - pwm2
nct6798 [nct6775.2576] - pwm2

I can reproduce the issue consistently on this system.

please fix - otherwise its not working for systems like mine,
thx!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions