O cabeçalho ao qual o ventilador está conectado na placa-mãe pode não suportar a aceleração do ventilador. Eu tenho uma placa-mãe com 6 cabeçalhos de ventilador, 4 deles suportam controle de velocidade, os outros 2 não.
Meu sistema não reage ao escrever valores abaixo de 255 a / sys / class / hwmon / hwmon0 / device / pwm (2,3) que correspondem a ventiladores de gabinete de 3 fios conectados via M / B (ga-890gpa- ud3h) cabeçalhos. A ideia foi retirada do link
ls /sys/class/hwmon/hwmon0/device/
alarms fan1_min fan3_beep fan5_min in0_min in2_alarm in3_beep in4_beep in5_input in6_max in7_max power/ pwm2_auto_channels_temp pwm3_freq temp1_min temp2_min temp3_min
cpu0_vid fan2_alarm fan3_input hwmon/ in1_alarm in2_beep in3_input in4_input in5_max in6_min in7_min pwm1 pwm2_enable subsystem@ temp1_type temp2_type temp3_type
driver@ fan2_beep fan3_min in0_alarm in1_beep in2_input in3_label in4_max in5_min in7_alarm in8_input pwm1_auto_channels_temp pwm2_freq temp1_alarm temp2_alarm temp3_alarm uevent
fan1_alarm fan2_input fan5_alarm in0_beep in1_input in2_max in3_max in4_min in6_alarm in7_beep in8_label pwm1_enable pwm3 temp1_beep temp2_beep temp3_beep vrm
fan1_beep fan2_min fan5_beep in0_input in1_max in2_min in3_min in5_alarm in6_beep in7_input modalias pwm1_freq pwm3_auto_channels_temp temp1_input temp2_input temp3_input
fan1_input fan3_alarm fan5_input in0_max in1_min in3_alarm in4_alarm in5_beep in6_input in7_label name pwm2 pwm3_enable temp1_max temp2_max temp3_max
Na verdade, mostra a velocidade real:
cat /sys/class/hwmon/hwmon0/device/fan5_input
5769
Mas recusa-se a escrever para fanX_input: permissão negada (mesmo para o root).
Mais especificações: kernel 2.6.38.4, sensors
output is:
it8720-isa-0228
Adapter: ISA adapter
Eu não executo nenhum daemons para o controle do ventilador, mas suponha que a velocidade possa ser ajustada pelo controlador do kernel da CPU. Como parar um ventilador nessas condições sem fazer truques de hardware?
Upd : parte da saída do pwmconfig:
Dispositivos:
Found the following devices:
hwmon0/device is it8720
hwmon1/device is k10temp
Found the following PWM controls:
hwmon0/device/pwm1
hwmon0/device/pwm2
hwmon0/device/pwm2 is currently setup for automatic speed control.
In general, automatic mode is preferred over manual mode, as
it is more efficient and it reacts faster. Are you sure that
you want to setup this output for manual control? (n) y
hwmon0/device/pwm3
hwmon0/device/pwm3 is currently setup for automatic speed control.
In general, automatic mode is preferred over manual mode, as
it is more efficient and it reacts faster. Are you sure that
you want to setup this output for manual control? (n) y
Teste:
Warning!!! This program will stop your fans, one at a time,
for approximately 5 seconds each!!!
This may cause your processor temperature to rise!!!
If you do not want to do this hit control-C now!!!
Hit return to continue:
Testing pwm control hwmon0/device/pwm1 ...
hwmon0/device/fan1_input ... speed was 4326 now 2136
It appears that fan hwmon0/device/fan1_input
is controlled by pwm hwmon0/device/pwm1
Would you like to generate a detailed correlation (y)? y
Isso foi parar o ventilador da CPU. E:
hwmon0/device/fan3_input ... speed was 1997 now 1997
no correlation
hwmon0/device/fan5_input ... speed was 5720 now 5720
no correlation
Testing pwm control hwmon0/device/pwm2 ...
hwmon0/device/fan1_input ... speed was 4326 now 4383
no correlation
hwmon0/device/fan3_input ... speed was 1997 now 1997
no correlation
hwmon0/device/fan5_input ... speed was 5720 now 5720
no correlation
No correlations
OK, parece que os cabeçalhos de 3 pinos são totalmente incapazes de controlar a rotação, mas apenas reportam isso: veja link