|
|
|
|
Strumenti |
20-07-2008, 17:15 | #1 |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
[Ubuntu] Controllo ventole
Cerco un programma che mi permetta di controllare la velocità della ventola del mio notebook.Non che mi permetta di variare la velocità della cpu (e di conseguenza temperature),quello lo uso gia (cpu frequency scaling o qualcosa del genere); ma proprio un programma che mi permetta di impostare una temperatura minima sotto la quale le ventole si fermino.
Questo perchè noto che nonostante la temperatura dei core sia bassa (39°) la ventola gira sempre a 3000 rpm e mi risulta fastidiosa se sto lavorando in silenzio.Invece appena acceso la ventola è ferma,per cominciare a girare a 1700 rpm a 30 gradi e portarsi a 3000 rpm a 35 gradi.Vorrei ad esempio impostare 55° come temperatura limite oltre la quale parta,mentre sotto quella temperatura stia ferma. Esiste qualcosa di simile? Da qualche parte avevo letto di si... Grazie |
20-07-2008, 18:14 | #2 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
In lm-sensors puoi trovare
I device necessari sono quelli relativi ai sensori di temperatura, voltaggio, velocità rotazione, ecc... presenti sulla scheda madre. Sempre nel pacchetto lm-sensors si trovano:
Se non hai letture e sensors-detect fallisce, l'unica soluzione è fare reverse-engineering del/i chip dei sensori... o sperare che qualcuno con il tuo stesso pc lo faccia... Se i sensori sono riconosciuti e sono utilizzabili potrebbe non esserlo l'interfaccia con la ventola. Purtroppo non c'è uno standard ed i produttori forniscono raramente documentazione decente su queste cose, soprattutto nei portatili, quindi ci sono molte incognite. |
20-07-2008, 18:32 | #3 |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
|
20-07-2008, 19:04 | #4 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Ultima modifica di Gimli[2BV!2B] : 20-07-2008 alle 19:08. |
20-07-2008, 19:08 | #5 |
Senior Member
Iscritto dal: Jan 2005
Città: ichnusa
Messaggi: 17339
|
Prova da console,o da terminale.. Inizia con sudo sensors-detect,e poi dai gli altri comandi.
|
20-07-2008, 19:14 | #6 | |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Quote:
"Loading configuration from /etc/fancontrol ... egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory egrep: /etc/fancontrol: Nessun file o directory Some mandatory settings missing, please check your config file!" Devo dedurre che non posso agire sulla ventola? EDIT: durante il pwmconfig mi da questo messaggio: "Failed to set hwmon0/device/pwm1 to full speed Something's wrong, check your fans!" Ultima modifica di Burke : 20-07-2008 alle 19:19. |
|
20-07-2008, 19:27 | #7 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Posta tutto l'output di pwmconfig, prima delle due righe che hai messo ci dovrebbero essere i dettagli.
|
20-07-2008, 19:40 | #8 | |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Quote:
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 thinkpad hwmon1/device is coretemp hwmon2/device is coretemp Found the following PWM controls: hwmon0/device/pwm1 hwmon0/device/pwm1_enable stuck to 2 Failed to set hwmon0/device/pwm1 to full speed Something's wrong, check your fans! |
|
20-07-2008, 20:07 | #9 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
hwmon0/device/pwm1_enable stuck to 2
Purtroppo sembra che il controllo della ventola non si comporti come si aspetta pwmconfig (non risponde al suo "interruttore" pwm1_enable). Proviamo a dare un'occhiata ai valori attualmente impostati: for I in `ls /sys/class/hwmon/hwmon0/device/pwm*`; do echo $I; cat $I; echo; done Ultima modifica di Gimli[2BV!2B] : 20-07-2008 alle 20:15. |
20-07-2008, 20:23 | #10 | |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Quote:
/sys/class/hwmon/hwmon0/device/pwm1 255 /sys/class/hwmon/hwmon0/device/pwm1_enable 2 |
|
20-07-2008, 20:38 | #11 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Esatto, è un ciclo.
Mmmh, pochi file... Vediamo, quel che hai postato prima mi ha dato un'altra traccia. Si tratta di un Thinkpad, vero? O lo ha riconosciuto male? Ecco la documentazione ufficiale del kernel 2.6.25 del modulo thinkpad-acpi, che sembra permetta di fare molte cose, tranne controllare automaticamente la velocità delle ventole in alcuni modelli... Poi c'è questo: "NOTE NOTE NOTE: fan control operations are disabled by default for safety reasons. To enable them, the module parameter "fan_control=1" must be given to thinkpad-acpi." Quindi puoi provare a rimuovere il modulo ed a riattivarlo con il parametro che serve: sudo rmmod thinkpad_acpi sudo modprobe thinkpad_acpi fan_control=1 Fatto questo riprova la procedura. P.S. controlla se hai installato il pacchetto acpi-support che dovrebbe contenere un file /etc/modprobe.d/thinkpad_acpi.modprobe, è meglio dare un'occhiata a cosa contiene prima di farne di nuovi, come ho suggerito qui sotto. [Se funziona potrai rendere definitiva la cosa creando il file thinkpad-acpi ed inserendoci il parametro: sudo touch /etc/modprobe.d/thinkpad_acpi sudo echo "options thinkpad_acpi fan_control=1" > /etc/modprobe.d/thinkpad_acpi] Ultima modifica di Gimli[2BV!2B] : 20-07-2008 alle 20:46. |
20-07-2008, 20:49 | #12 | |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Quote:
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)? y What should be the path to your fancontrol config file (/etc/fancontrol)? Che devo fare? |
|
20-07-2008, 20:56 | #13 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Premi Invio in modo che metta il file nella directory di default /etc/fancontrol.
|
20-07-2008, 21:00 | #14 | |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Quote:
Select fan output to configure, or other action: 1) hwmon0/device/pwm1 3) Just quit 5) Show configuration 2) Change INTERVAL 4) Save and quit select (1-n): Come procedo? |
|
20-07-2008, 21:03 | #15 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Direi 1, visto che la ventola ha reagito.
|
20-07-2008, 21:04 | #16 |
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Alla pressione di 1-invio,ricevo questo messaggio.
hwmon0/device is thinkpad hwmon1/device is coretemp hwmon2/device is coretemp Current temperature readings are as follows: hwmon0/device/temp1_input 44 hwmon0/device/temp2_input 36 cat: hwmon0/device/temp3_input: Nessun device o indirizzo /usr/sbin/pwmconfig: line 640: let: S= / 1000: syntax error: operand expected (error token is "/ 1000") hwmon0/device/temp3_input cat: hwmon0/device/temp4_input: Nessun device o indirizzo /usr/sbin/pwmconfig: line 640: let: S= / 1000: syntax error: operand expected (error token is "/ 1000") hwmon0/device/temp4_input hwmon0/device/temp5_input 33 cat: hwmon0/device/temp6_input: Nessun device o indirizzo /usr/sbin/pwmconfig: line 640: let: S= / 1000: syntax error: operand expected (error token is "/ 1000") hwmon0/device/temp6_input hwmon0/device/temp7_input 31 cat: hwmon0/device/temp8_input: Nessun device o indirizzo /usr/sbin/pwmconfig: line 640: let: S= / 1000: syntax error: operand expected (error token is "/ 1000") hwmon0/device/temp8_input hwmon0/device/temp9_input 35 hwmon1/device/temp1_input 40 hwmon2/device/temp1_input 37 Select a temperature sensor as source for hwmon0/device/pwm1: 1) hwmon0/device/temp1_input 2) hwmon0/device/temp2_input 3) hwmon0/device/temp3_input 4) hwmon0/device/temp4_input 5) hwmon0/device/temp5_input 6) hwmon0/device/temp6_input 7) hwmon0/device/temp7_input 8) hwmon0/device/temp8_input 9) hwmon0/device/temp9_input 10) hwmon1/device/temp1_input 11) hwmon2/device/temp1_input 12) None (Do not affect this PWM output) select (1-n): |
20-07-2008, 21:15 | #17 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Questo è il punto importante: devi capire quale sensore misura la temperatura della CPU, con cui quindi determinare a che velocità è necessario che giri la ventola.
Direi che le due opzioni più probabili sono la 10 e la 11, visto il precedente output: hwmon0/device is thinkpad hwmon1/device is coretemp hwmon2/device is coretemp Prova a controllare che valore hanno con cat /sys/class/hwmon/hwmon1/device/temp1_input cat /sys/class/hwmon/hwmon2/device/temp1_input Prova a farlo con diversi livelli di carico della CPU. Ipotizzerei che uno sia la CPU mentre l'altro il sensore della scheda madre, quindi quello con temperatura più alta dovrebbe essere quello giusto. Per scrupolo prova a vedere che valore hanno anche gli altri con il solito for I in `ls /sys/class/hwmon/hwmon0/device/temp*_input`; do echo $I; cat $I; echo; done |
20-07-2008, 21:20 | #18 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Tra l'altro ecco un simpatico bachetto dello script:
/usr/sbin/pwmconfig: line 640: let: S= / 1000: syntax error: operand expected (error token is "/ 1000") Speriamo si limiti a quell'output piuttosto inutile. Mi sembra di capire che alcuni dei device elencati non esistano realmente... |
20-07-2008, 21:22 | #19 | ||
Senior Member
Iscritto dal: Jun 2008
Messaggi: 1535
|
Quote:
Quote:
/sys/class/hwmon/hwmon0/device/temp10_input /sys/class/hwmon/hwmon0/device/temp11_input /sys/class/hwmon/hwmon0/device/temp12_input /sys/class/hwmon/hwmon0/device/temp13_input /sys/class/hwmon/hwmon0/device/temp14_input /sys/class/hwmon/hwmon0/device/temp15_input /sys/class/hwmon/hwmon0/device/temp16_input /sys/class/hwmon/hwmon0/device/temp1_input /sys/class/hwmon/hwmon0/device/temp2_input /sys/class/hwmon/hwmon0/device/temp3_input /sys/class/hwmon/hwmon0/device/temp4_input /sys/class/hwmon/hwmon0/device/temp5_input /sys/class/hwmon/hwmon0/device/temp6_input /sys/class/hwmon/hwmon0/device/temp7_input /sys/class/hwmon/hwmon0/device/temp8_input /sys/class/hwmon/hwmon0/device/temp9_input |
||
20-07-2008, 21:25 | #20 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Però nell'output venuto male dello script ho visto che la prima voce è la più alta:
hwmon0/device/temp1_input 44 Prova a tenere d'occhio quella mentre vari il carico con watch cat /sys/class/hwmon/hwmon0/device/temp1_input |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:49.