Fan speed control
Introduction
When a computer works it gets warm, when it works hard it may get hot. Too hot is not good for the electronics of a computer. Therefore most computers need active cooling, through fans or in some cases water. In x86 type of systems the speed of the fans is typically controlled by the BIOS, but it may be possible to control the fan speed with the linux kernel and userspace utilities.
Gentoo supports various of those userspace utilities, e.g. fancontrol, and Thinkfan.
Reasons for wanting to deviate from BIOS controlled fans could be that the BIOS makes them spin too much (resulting in too much noise), or too slow (resulting in too high temperatures).
It is generally considered more safe to have the BIOS or dedicated hardware control the fans.
There are two risks when manually controlling fan speeds:
- What if the program controlling the fans fails? The computer could overheat and parts could be destroyed.
- Higher temperatures cause more wear on the electronics, resulting in a shorter lifespan.
Requirements
Controlling fan speed is not supported on all computers. The computer needs to have:
- A BIOS that allows users to control the fan speed
- A motherboard capable of regulating fan speeds
- Fans that allow their speed to be controlled
Sensors
Specific hardware may have specific needs with respect to kernel configuration. See Lm_sensors for generic details.
Fans
Fans have 2, 3, or 4 wires:
- ground
- fan voltage
- tacho
- PWM
Fans with 2 or 3 wires may have voltage regulation: higher voltage (typically up to 12 Volt) results in higher rotation per minute (RPM). Fans with 4 wires are controlled through pulse width modulation (PWM), in theory a more efficient way of controlling the fan speed. The third wire provides feedback on the actual RPM of the fan.