

Provides easy setup and monitoring through graphical GTK+ interface. Tp-fancontrol-basic ( download) tp-fan: Automatic daemon with GTK+ GUI It requires the patch for controlling fan speed or a recent kernel (>=2.6.19). The following is a simpler patch (without extra features like daemon mode and logging). Simple bash script with fine control over fan speed (requires kernel patch)

The list of temperature ranges used in this script is much more liberal than the rules used by the embedded controller firmware, and is derived mostly from anecdotal evidence, hunches and wishful thinking. This works only on certain Hitachi disks and requires kernel >= 2.6.19-rc1 or the ide driver, since it uses a non-standard method for reading the temperature without causing a head unload or spinup. The system hard disk temperature is monitored as well, using the hard disk's internal sensor.

The method of controlling fan speed is documented here. The script provides an (optional) daemon mode and logging to syslog. It also includes a workaround for the pulsing noise problem. The script computes the fan level needed by each sensor based on the configured range, and then sets the the actual fan level to the slowest that will satisfy all sensors (plus some hysteresis to avoid fluctiations). The code lets you define a temperature range for each thermal sensor. # sudo echo "options thinkpad_acpi experimental=1 fan_control=1" >/etc/modprobe.d/thinkpad_nf On Ubuntu > 10.04 or from kernel 2.6.32 onwards: To make the kernel module settings permanent and to make them be executed at boot run below command and reboot afterwards: In Linux 2.6.22 and higher you need to additionally pass fan_control=1 to the module thinkpad_acpi (e.g., # modprobe thinkpad-acpi experimental=1 fan_control=1) It requires the ibm-acpi module to be loaded with the experimental=1 module parameter (e.g., # modprobe ibm_acpi experimental=1). This script works with any recent Linux kernel (2.6.14 and higher). Note that the fan levels, thresholds and anti-pulsing hacks are system-specific, so you may need to adjust them.Ĭomprehensive bash script with fine control over fan speed In addition, they include a hack for preventing the annoying fan pulsing that occurs on some systems. The following scripts sets the fan speed according to the system's thermal sensors. The firmware doesn't update the sensors more than once every 2s, so care should be taken not to waste resources by reading them too often. Closed-loop fan control requires a thermal sensor sweep, which is an expensive operation.
