-
Notifications
You must be signed in to change notification settings - Fork 0
Fans on Linux
Getting fans to properly work on a Linux system can be a bit of a challenge
the MSI x379 Krait uses nct6795 which is supported by nct6775 modules
jc42
nct6775
nct6775-core
nct6775-i2c
more on nct6775 here https://docs.kernel.org/hwmon/nct6775.html
now run:
sensors-detect --auto
then run:
sensors | grep nct | xargs sensors
this should show a list of Adapter: Vcore: ... fan1: fan2: ....
if this page shows and fan are displayed this means pwm should work
reminder: also set the fans to PWM in the BIOS to assure steering works
FC is easiest to work with thinkfan but fancontrol can also work check if in the path /sys/class/hwmon there are hwmon0 ... hwmon[N]
under one hwmon[N] of this path there should befiles such as fan1_.... fan2_... and more importantly pwm1_... pwm4_...
now you can run pwmconfig in case you want to work with fancontrol, fancontrol is great but tiresome to configure
(assuming this is not on a thinkpad)
> To Know < ThinkFan will throw an error on a reset for HwmonFanDriver if pwm is not available,
which is why to load nct6775 etc
- add the path for the hwmon sensor which holds pwm1_... and many other files
- set the name like: name: nct6795
- NOTE: the module is nct6775 but the name is nct6795, for real
- set the indices like: indices: [1,2,3]
- best is to have to total number of indices equal to the count of temp[0-N]input where also pwm[0-N]...
define the indice to be equal to the unique count of temp*_
- best is to have to total number of indices equal to the count of temp[0-N]input where also pwm[0-N]...
for example:
- hwmon: /sys/class/hwmon
name: nct6795
indices: [1,2,3,4]
this is just a basic config, config for GPU and NVME should also be feasible
comment all other lines in the sensors: section this is just an approach to show things can work
comment out all entries except for the below config this should work for all systems using the nct6775 module(s)
- hwmon: /sys/class/hwmon
name: nct6795
indices: [1,2,3,4,5,6]
validate if the number of indices set matches the numbers of fans with the for mentioned sensors command
comment out the "level auto" and "level disengaged" lines,
these only work with the thinkpad_acpi module etc.
leave only this config, it is a start, customise for your use case
levels:
- [0, 0, 50]
- [50,50,150]
- [150,150,255]
this config is extremely basic and will use the highest temperature as a trigger
this configuration is much more granular and should be preferred
welcome to the blues, commandline.be at your service