

In disengaged mode, the embedded controller does not monitor the fan speed.
#Ideapad fancontrol manual
Manual speed levels 8-63 yield the same behavior as level 7, and the the ACPI DSDT uses level 7 for the emergency mode it enters upon critical CPU/GPU temperature, so apparently 7 is the real maximum level. In manual mode, the fan level is forced to the given value and the EC will auto-regulate the fan to maintain at a (roughly) constant RPM, which is model-dependent. The X40, for example, changes the profile of speeds the automatic mode should use depending on battery status. Note that the ACPI DSDT may supplement this in some models. In automatic mode, the embedded controller sets the fan speed automatically according to system temperatures and some unknown algorithm. This error can be intermittent and can prevent booting (Error 'Fan error') If the speed reported is 65335, then is typically due to a broken fan assembly. Beware: this is the same register used for brightness control in other models. On the X61/X61s, one must select through EC register 0x31 bit 0 which fan the tachometer registers will expose (Firmware 7M). Not much is know about the tachometer in earlier models, or even whether they had one or not. The embedded controller registers 0x84 (LSB), 0x85 (MSB) are the main fan tachometer, and report fan speed in RPM in everything since the A31 and maybe a little earlier. The HFSP register controls both fans at the same time in the X61/X61s. Later ThinkPad models seem to take at least 5s to start responding to a fan mode change, for example.Īfter boot, the HFSP register may not reflect the true state of the EC (on some models it reads 0x07 even though the EC is actually in automatic mode). , 7=max)Ĭhanging modes may not be immediate on all ThinkPads. It shares the same control register as the main fan (cannot be controlled separately), and exposes a second tachometer.ĪCPI DSDT register HFSP (8 bits, offset 0x2F in the EmbeddedController address space, accessed through the standard EC interface at IO ports 0圆2 and 0圆6) is read/writable and has the following meaning:Ġ 0 N N N N N N - manual (0.63 0=disable fan, 1=min. The ThinkPad X61s and X61 with WWAN have a second system fan.

Now you'll be able to use this program easily. You must add 'fan_control=1' as a module parameter to 'thinkpad-acpi'.įor example, in Debian Lenny (and Ubuntu 8.04), you must add the following You must also enable manual control for your fans. You are required to have the Linux kernel with 'thinkpad-acpi' patch. This program is written in C, using GTK GUI. This is program for controlling fans speed on IBM/Lenovo ThinkPads. Packages are available for debian based linux systems.Ī GTK GUI program (packaged for Ubuntu 7.10 and 8.04) may also help.Īutomated program - Simple ThinkPad Fan Control

There is an distro independent daemon ( ), written in python. For the default behavior, simply save tp-fancontrol ( download) as tp-fancontrol, make sure you've loaded thinkpad-acpi with the "fan_control=1" parameter, and run: It monitors the laptop's thermal sensors and sets the fan speed accordingly, according to customizable thresholds. # echo level disengaged | sudo tee /proc/acpi/ibm/fan (disengaged)Īn ACPI fan control script can be used to override the firmware's fan algorithm with gentler, quieter version. # echo level auto | sudo tee /proc/acpi/ibm/fan (automatic - default) # echo level 7 | sudo tee /proc/acpi/ibm/fan (maximum speed) # echo level 4 | sudo tee /proc/acpi/ibm/fan (medium speed) # echo level 2 | sudo tee /proc/acpi/ibm/fan (low speed) # echo level 0 | sudo tee /proc/acpi/ibm/fan (fan off) If you receive a PERMISSION DENIED error you can use the following command syntax instead as a work-around: # echo level disengaged > /proc/acpi/ibm/fan (disengaged) # echo level auto > /proc/acpi/ibm/fan (automatic - default) # echo level 7 > /proc/acpi/ibm/fan (maximum speed) # echo level 4 > /proc/acpi/ibm/fan (medium speed) # echo level 2 > /proc/acpi/ibm/fan (low speed) # echo level 0 > /proc/acpi/ibm/fan (fan off) Having done so, reboot and you can use the following commands to control fan speed:
#Ideapad fancontrol install
To enable fan control, the module parameter fan_control=1 must be given to thinkpad-acpi.įor example, in Ubuntu 8.04 (Hardy Heron), add the following to /etc/modprobe.d/options: options thinkpad_acpi fan_control=1įor Debian Squeeze (testing) create /etc/modprobe.d/thinkpad_nf with: options thinkpad_acpi fan_control=1 and install the package thinkfan Fan control operations are disabled by default for safety reasons.
