Take the 2-minute tour ×

How can I control fan speed? On windows there is wonderful program called speedfan.

share|improve this question
Now follows a summary of the probes I have just done. Just press ENTER to continue: y Driver k10temp' (autoloaded): * Chip AMD Family 11h thermal sensors' (confidence: 9) No modules to load, skipping modules configuration. Unloading i2c-dev... OK Unloading cpuid... OK This is what I get. How to load modules now?? Next I get this......... admin@Compaq-Presario-CQ45:~$ sudo 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 motherboard –  user136947 Mar 2 '13 at 12:54
add comment

3 Answers

up vote 37 down vote accepted

Note before starting:


  2. Configure lm-sensors

    3. run sudo /etc/init.d/module-init-tools restart This will read the changes you made to /etc/modules in step 3, and insert the new modules into the kernel.
  3. Configure fancontrol

    2. In my case I set interval to 2 seconds.
  4. Run fancontrol

    1. sudo fancontrol and leave it open in console,

In my case for CPU I used:

Settings for hwmon0/device/pwm2:  
Depends on hwmon0/device/temp2_input  
Controls hwmon0/device/fan2_input  
share|improve this answer
What to do if sudo sensors-detect doesn't come up with any sensors? --> Sorry, no sensors were detected. Either your system has no sensors, or they are not supported, or they are connected to an I2C or SMBus adapter that is not supported. If you find out what chips are on your board, check lm-sensors.org/wiki/Devices for driver status. –  arno Aug 1 '12 at 8:23
If you're having trouble, be sure to check your dmesg for error messages. In my case, recent kernel changes prevented me from loading the necessary driver, and I had to add acpi_enforce_resources=lax to my kernel options to get the old functionality back. See also: goo.gl/tUcr36 –  bukzor Dec 23 '13 at 17:49
show 3 more comments

Install and configure the lm-sensors [APT] and fancontrol [APT] packages. This is a function that is supposed to be provided by ACPI compliant bios, but it seems that most motherboard vendors don't bother to follow the standard.

share|improve this answer
You can find that in the man page, or at www.lm-sensors.org. –  psusi Jan 18 '11 at 16:39
add comment



Here's an easy step-by-step guide:


(which is basically a translated version of this German guide: http://thinkwiki.de/Thinkfan)

Relevant Information from Post:

Step 1. Install the thinkfan software and the sensors:

sudo apt-get install thinkfan lm-sensors


sudo nano /etc/modprobe.d/thinkfan.conf

by adding the following line:

options thinkpad_acpi fan_control=1


sudo nano /etc/default/thinkfan



Step 4. Detect your laptop's sensors:

sudo sensors-detect

and just choose YES whenever you're prompted.

Step 5. Load the new modules:

sudo service module-init-tools start

Step 6. Figure out which sensors are in use:



Step 7. Find out the full paths of these sensors:




sudo nano /etc/thinkfan.conf

There should already be a line like







sudo nano /etc/thinkfan.conf

The fan levels I use on my ThinkPad x201 are:

(0, 0, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767) 


For those people out there familiar with Mathematica, I wrote a short notebook to generate these fan speed values.


sudo thinkfan -n


sudo /etc/init.d/thinkfan stop

If you want to start the thinkfan daemon again, type:

sudo /etc/init.d/thinkfan start


# when they reach 55 °C.
# temperatures are read from the file.
# For example:
# http://www.thinkwiki.org/wiki/Thermal_Sensors to find out how much you may
# want to add to certain temperatures.

# Syntax:
# All numbers are integers.

# I use this on my T61p:

#(0, 0, 55)
#(1, 48, 60)
#(2, 50, 61)
#(3, 52, 63)
#(4, 56, 65)
#(5, 59, 66)
#(7, 63, 32767)

# My settings for my ThinkPad X201: (kris)


(0, 0, 51)
(1, 50, 52)
(2, 51, 55)
(3, 54, 58)
(4, 56, 63)
(5, 60, 70)
(6, 66, 79)
(7, 74, 92)
(127, 85, 32767)
share|improve this answer
add comment

protected by Community Jul 17 '13 at 14:13

