The only interface I've found for setting the fan speed with the thinkpad-acpi module, is setting pre-defined levels, 0-7. Example:

sudo su -c 'echo "level 2" > /proc/acpi/ibm/fan'

I would like to set the fan speed by RPM and not by pre-defined levels. Level 2 is 2000 RPM, and level 3 is 3500 RPM. I would like my fan to run at about 2500-3000 RPM (at a certain temperature level, of course). Does a RPM based interface exist?

3 Answers 3


Seems that it's dependent on the hardware's firmware. As the README page says:

Most ThinkPad fans work in "levels" at the firmware interface. Level 0 stops the fan. The higher the level, the higher the fan speed, although adjacent levels often map to the same fan speed. 7 is the highest level, where the fan reaches the maximum recommended speed.


On the X31 and X40 (and ONLY on those models), the fan speed can be controlled to a certain degree. Once the fan is running, it can be forced to run faster or slower with the following command:

echo 'speed <speed>' > /proc/acpi/ibm/fan

Thinkfan http://thinkfan.sourceforge.net/ seems to be commonly used (it's mentioned a lot in the lenovo forums) whilst it's not RPM based it does allow switching between the preset fan speed levels based on customisable temperatures.

Additional solutions are listed here:

  • 1
    As you say, Thinkfan essentially does echo "level 2" > /proc/acpi/ibm/fan too. I've already automated the changing of fan speeds, I just want level 2.5 :) Commented Nov 29, 2011 at 15:05

TPFancontrol supports fixed RPM:s, see TPFancontrol. It also supports variable fan RPM:s. I have used it on three different Thinkpads (X61s, T400s, T410s) works great.

  • The tag of question is Linux, this app is not Windows only. Commented Apr 7, 2018 at 6:42

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .