Bonjour,
J'aimerais fortement pouvoir réguler la vitesse du ventilo qui refroidit mon CPU car il fait un bruit monstre.
Pour ça, j'ai suivi les explications que j'ai pu trouver pour utiliser fancontrol, mais je dois certainement mal m'y prendre car rien n'y fait.
D'après ce que j'ai compris, il y a 3 grandes étapes pour parvenir à varier la vitesse du ventilo.
- Détecter la vitesse du ventilo et la température du CPU à l'aide de lm_sensors
- Déterminer les extremums de température à l'aide de pwmconfig
- Lancer fancontrol pour enfin réguler la vitesse du ventilo
N'étant pas sur de la bonne marche à suivre, je vous refais toutes les manip' en direct live en essayant de n'omettre aucun détail...
Je commence par lancer sensors-detect en laissant le soin de laisser les choix par défaut, c'est-à-dire que je fais un scan de tous les capteurs proposés sauf pour les ports ISA I/O dont je ne sais même pas ce que c'est... (je regarde ça tout de suite après)
# sensors-detect
Stopping lm_sensors: [ OK ]
# sensors-detect revision 5946 (2011-03-23 11:54:44 +0100)
# System: To Be Filled By O.E.M. To Be Filled By O.E.M.
# Board: ASUSTeK Computer Inc. K8VSEDX
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... Success!
(driver `k8temp')
AMD Family 10h thermal sensors... No
AMD Family 11h thermal sensors... No
AMD Family 12h and 14h thermal sensors... No
Intel digital thermal sensor... No
Intel AMB FB-DIMM 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'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Nuvoton/Fintek'... Yes
Found `Winbond W83697HF/F/HG Super IO Sensors' Success!
(address 0x290, driver `w83627hf')
Probing for Super-I/O at 0x4e/0x4f
Trying family `National Semiconductor'... No
Trying family `SMSC'... No
Trying family `VIA/Winbond/Nuvoton/Fintek'... No
Trying family `ITE'... No
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):
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-viapro' for device 0000:00:11.0: VIA Technologies VT8237 South Bridge
Module i2c-dev loaded successfully.
Next adapter: SMBus Via Pro adapter at 0400 (i2c-0)
Do you want to scan it? (YES/no/selectively):
Client found at address 0x2f
Probing for `National Semiconductor LM78'... No
Probing for `National Semiconductor LM79'... No
Probing for `National Semiconductor LM80'... No
Probing for `Analog Devices ADT7470'... No
Probing for `Winbond W83781D'... No
Probing for `Winbond W83782D'... No
Probing for `Winbond W83791D'... No
Probing for `Winbond W83792D'... No
Probing for `Winbond W83793R/G'... No
Probing for `Nuvoton W83795G/ADG'... No
Probing for `Winbond W83627HF'... No
Probing for `Winbond W83627EHF'... No
Probing for `Winbond W83627DHG/W83667HG/W83677HG'... No
Probing for `Asus AS99127F (rev.1)'... No
Probing for `Asus AS99127F (rev.2)'... No
Probing for `Asus ASB100 Bach'... No
Probing for `Winbond W83L786NR/NG/R/G'... No
Probing for `Analog Devices ADM9240'... No
Probing for `Dallas Semiconductor DS1780'... No
Probing for `National Semiconductor LM81'... No
Probing for `Maxim MAX6639'... No
Probing for `Analog Devices ADM1029'... No
Probing for `ITE IT8712F'... No
Probing for `Fintek custom power control IC'... No
Probing for `Winbond W83791SD'... Yes
(confidence 3, not a hardware monitoring chip)
Client found at address 0x48
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'... No
Probing for `Analog Devices ADT7411'... No
Probing for `Dallas Semiconductor DS1621/DS1631'... No
Probing for `Maxim MAX6650/MAX6651'... 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 `SMSC EMC1023'... No
Probing for `SMSC EMC1043'... No
Probing for `SMSC EMC1053'... No
Probing for `SMSC EMC1063'... No
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'... No
Probing for `Dallas Semiconductor DS1621/DS1631'... 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 `SMSC EMC1023'... No
Probing for `SMSC EMC1043'... No
Probing for `SMSC EMC1053'... No
Probing for `SMSC EMC1063'... No
Client found at address 0x4a
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'... No
Probing for `Analog Devices ADT7411'... No
Probing for `Dallas Semiconductor DS1621/DS1631'... 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
Client found at address 0x50
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Probing for `EDID EEPROM'... No
Client found at address 0x51
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Client found at address 0x52
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Next adapter: NVIDIA i2c adapter (i2c-1)
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'... No
Probing for `Dallas Semiconductor DS1621/DS1631'... 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 `SMSC EMC1023'... No
Probing for `SMSC EMC1043'... No
Probing for `SMSC EMC1053'... No
Probing for `SMSC EMC1063'... No
Client found at address 0x50
Probing for `Analog Devices ADM1033'... No
Probing for `Analog Devices ADM1034'... No
Probing for `SPD EEPROM'... No
Probing for `EDID EEPROM'... Yes
(confidence 8, not a hardware monitoring chip)
Next adapter: NVIDIA i2c adapter (i2c-2)
Do you want to scan it? (YES/no/selectively):
Next adapter: NVIDIA i2c adapter (i2c-3)
Do you want to scan it? (YES/no/selectively):
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `w83627hf':
* ISA bus, address 0x290
Chip `Winbond W83697HF/F/HG Super IO Sensors' (confidence: 9)
Driver `k8temp' (autoloaded):
* Chip `AMD K8 thermal sensors' (confidence: 9)
Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no):
Starting lm_sensors: loading module w83627hf [ OK ]
Unloading i2c-dev... OK
Voici mon fichier /etc/sysconfig/lm_sensors après sa réécriture
# cat /etc/sysconfig/lm_sensors
# Generated by sensors-detect on Sat May 28 03:35:05 2011
# This file is sourced by /etc/init.d/lm_sensors and defines the modules to
# be loaded/unloaded.
#
# The format of this file is a shell script that simply defines variables:
# HWMON_MODULES for hardware monitoring driver modules, and optionally
# BUS_MODULES for any required bus driver module (for example for I2C or SPI).
HWMON_MODULES="w83627hf"
# For compatibility reasons, modules are also listed individually as variables
# MODULE_0, MODULE_1, MODULE_2, etc.
# You should use BUS_MODULES and HWMON_MODULES instead if possible.
MODULE_0=w83627hf
Voici maintenant ce que me retourne sensors
# sensors
k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp: +35.0°C
w83697hf-isa-0290
Adapter: ISA adapter
in0: +1.52 V (min = +1.04 V, max = +0.51 V) ALARM
in2: +3.30 V (min = +0.80 V, max = +0.00 V) ALARM
in3: +3.07 V (min = +0.51 V, max = +0.27 V) ALARM
in4: +2.82 V (min = +0.00 V, max = +0.26 V) ALARM
in5: +2.85 V (min = +2.11 V, max = +0.00 V) ALARM
in6: +4.08 V (min = +0.02 V, max = +1.79 V) ALARM
in7: +3.30 V (min = +0.00 V, max = +2.22 V) ALARM
in8: +3.28 V (min = +0.26 V, max = +1.57 V) ALARM
fan1: 1854 RPM (min = 5273 RPM, div = 4) ALARM
fan2: 2360 RPM (min = -1 RPM, div = 4) ALARM
temp1: +31.0°C (high = +1.0°C, hyst = +32.0°C) sensor = thermistor
temp2: +32.0°C (high = +80.0°C, hyst = +75.0°C) sensor = thermistor
beep_enable: enabled
Apparemment, il y a plein d'
ALARM donc je ne sais pas si je peux vraiment faire confiance à ces résultats...
D'après mon analyse, fan2 correspondrait au ventilateur du CPU et fan1 serait un de mes ventilos de châssis. (C'était mieux indiqué dans le BIOS 😉)
Quant à la température, je ne sais pas trop. Je dirais temp2 pour le CPU en gardant les mêmes "indices". Par contre à quoi correspond Core0 ?? J'imagine que c'est la température du Northbridge (Je retournerai faire un tour dans le BIOS au cas où j'aurais manqué quelque chose)
Après tout ça, je lance pwmconfig pour configurer le tout.
# pwmconfig
# pwmconfig revision 5857 (2010-08-22)
This program will search your sensors for pulse width modulation (pwm)
controls, and test each one to see if it controls a fan on
your motherboard. Note that many motherboards do not have pwm
circuitry installed, even if your sensor chip supports pwm.
We will attempt to briefly stop each fan using the pwm controls.
The program will attempt to restore each fan to full speed
after testing. However, it is ** very important ** that you
physically verify that the fans have been to full speed
after the program has completed.
Found the following devices:
hwmon0/device is k8temp
hwmon1/device is w83697hf
Found the following PWM controls:
hwmon1/device/pwm1
hwmon1/device/pwm2
hwmon1/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
Giving the fans some time to reach full speed...
Found the following fan sensors:
hwmon1/device/fan1_input current speed: 1844 RPM
hwmon1/device/fan2_input current speed: 2343 RPM
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 hwmon1/device/pwm1 ...
hwmon1/device/fan1_input ... speed was 1844 now 1844
no correlation
hwmon1/device/fan2_input ... speed was 2343 now 2360
no correlation
No correlations were detected.
There is either no fan connected to the output of hwmon1/device/pwm1,
or the connected fan has no rpm-signal connected to one of
the tested fan sensors. (Note: not all motherboards have
the pwm outputs connected to the fan connectors,
check out the hardware database on http://www.almico.com/forumindex.php)
Did you see/hear a fan stopping during the above test (n)?
Testing pwm control hwmon1/device/pwm2 ...
hwmon1/device/fan1_input ... speed was 1844 now 1844
no correlation
hwmon1/device/fan2_input ... speed was 2343 now 2376
no correlation
No correlations were detected.
There is either no fan connected to the output of hwmon1/device/pwm2,
or the connected fan has no rpm-signal connected to one of
the tested fan sensors. (Note: not all motherboards have
the pwm outputs connected to the fan connectors,
check out the hardware database on http://www.almico.com/forumindex.php)
Did you see/hear a fan stopping during the above test (n)? y
Testing is complete.
Please verify that all fans have returned to their normal speed.
The fancontrol script can automatically respond to temperature changes
of your system by changing fanspeeds.
Do you want to set up its configuration file now (y)?
What should be the path to your fancontrol config file (/etc/fancontrol)?
Loading configuration from /etc/fancontrol ...
Select fan output to configure, or other action:
1) hwmon1/device/pwm2 3) Just quit 5) Show configuration
2) Change INTERVAL 4) Save and quit
select (1-n): 5
Common Settings:
INTERVAL=10
Settings of hwmon1/device/pwm2:
Depends on hwmon1/device/temp2_input
Controls
MINTEMP=35
MAXTEMP=60
MINSTART=150
MINSTOP=0
MAXPWM=250
Select fan output to configure, or other action:
1) hwmon1/device/pwm2 3) Just quit 5) Show configuration
2) Change INTERVAL 4) Save and quit
select (1-n): 4
Saving configuration to /etc/fancontrol...
Configuration saved
En fait, lors de la configuration de fancontrol, le ventilateur ne s'arrête pas du tout, mais je réponds "oui" quand même au cas où ça tomberait en marche...
On peut remarquer que lorsque pwmconfig lance un test de contrôle des pwm, il y a d'indiqué "no correlation". Est-ce mauvais signe ?
Je vous donne le contenu de /etc/sysconfig/lm_sensors juste pour montrer que ça correspond bien à la config
# cat /etc/fancontrol
# Configuration file generated by pwmconfig, changes will be lost
INTERVAL=10
DEVPATH=hwmon1=devices/platform/w83627hf.656
DEVNAME=hwmon1=w83697hf
FCTEMPS=hwmon1/device/pwm2=hwmon1/device/temp2_input
FCFANS=hwmon1/device/pwm2=
MINTEMP=hwmon1/device/pwm2=35
MAXTEMP=hwmon1/device/pwm2=60
MINSTART=hwmon1/device/pwm2=150
MINSTOP=hwmon1/device/pwm2=0
MAXPWM=hwmon1/device/pwm2=250
Et enfin, je lance fancontrol !
# fancontrol
Loading configuration from /etc/fancontrol ...
Common settings:
INTERVAL=10
Settings for hwmon1/device/pwm2:
Depends on hwmon1/device/temp2_input
Controls
MINTEMP=35
MAXTEMP=60
MINSTART=150
MINSTOP=0
MINPWM=0
MAXPWM=250
Enabling PWM on fans...
Starting automatic fan control...
Et comme je vous le disais, rien ne se passe... 🙁
# sensors
k8temp-pci-00c3
Adapter: PCI adapter
Core0 Temp: +36.0°C
w83697hf-isa-0290
Adapter: ISA adapter
in0: +1.52 V (min = +1.04 V, max = +0.51 V) ALARM
in2: +3.30 V (min = +0.80 V, max = +0.00 V) ALARM
in3: +3.07 V (min = +0.51 V, max = +0.27 V) ALARM
in4: +2.86 V (min = +0.00 V, max = +0.26 V) ALARM
in5: +2.86 V (min = +2.11 V, max = +0.00 V) ALARM
in6: +4.08 V (min = +0.02 V, max = +1.79 V) ALARM
in7: +3.31 V (min = +0.00 V, max = +2.22 V) ALARM
in8: +3.28 V (min = +0.26 V, max = +1.57 V) ALARM
fan1: 1844 RPM (min = 5273 RPM, div = 4) ALARM
fan2: 2360 RPM (min = -1 RPM, div = 4) ALARM
temp1: +31.0°C (high = +1.0°C, hyst = +32.0°C) sensor = thermistor
temp2: +32.0°C (high = +80.0°C, hyst = +75.0°C) sensor = thermistor
beep_enable: enabled
La vitesse de fan2 est toujours identique. J'imagine que taper dessus n'arrangera rien...
Donc voici où j'en suis actuellement. Y a-t-il d'autres choses à faire ? Renseigner un driver ou autre à un endroit quelconque ?
J'espère que quelqu'un pourra me guider dans ce cheminement parce que je suis sûr que ce sera un vrai bonheur une fois que je n'aurais plus ce bourdonnement permanent au coin de l'oreille.
Je vous souhaite une bonne nuit et vous dis à bientôt !!