- Notifications
You must be signed in to change notification settings - Fork9
A zero-configuration fan daemon for ThinkPads.
License
cdown/zcfan
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Zero-configuration fan control daemon for ThinkPads.
- Extremely small (~250 lines), simple, and easy to understand code
- Sensible out of the box, configuration is optional (see "usage" below)
- Strong focus on stopping the fan as soon as safe to do so, without inducingthrottling
- Automatic temperature- and time-based hysteresis: no bouncing between fanlevels
- Watchdog support
- Minimal resource usage
- No dependencies
zcfan has the following default fan states:
Config name | thinkpad_acpi fan level | Default trip temperature (C) |
---|---|---|
max_temp | full-speed (or 7 if unsupported) | 90 |
med_temp | 4 | 80 |
low_temp | 1 | 70 |
If no trip temperature is reached, the fan will be turned off.
The fan will also only be reduced once the temperature is now at least 10Cbelow the trip temperature for the current fan state. This can be tuned withthe config parametertemp_hysteresis
.
To override these defaults, you can place a file at/etc/zcfan.conf
withupdated trip temperatures in degrees celsius and/or fan levels. As an example:
max_temp 85med_temp 70low_temp 55temp_hysteresis 20max_level full-speedmed_level 4low_level 1
We will only reduce the fan level again once:
- The temperature is now at least
temp_hysteresis
Celsius (default 10C)below the trip point, and - At least 3 seconds have elapsed since the initial trip.
This avoids unnecessary fluctuations in fan speed.
I wrote zcfan because I found thinkfan's configuration and code complexity toomuch for my tastes. Use whichever suits your needs.
Runmake
.
- Compile zcfan or install from theAURpackage
- Load your thinkpad_acpi module with
fan_control=1
- At runtime:
rmmod thinkpad_acpi && modprobe thinkpad_acpi fan_control=1
- By default:
echo options thinkpad_acpi fan_control=1 > /etc/modprobe.d/99-fancontrol.conf
- At runtime:
- Run
zcfan
as root (or use thezcfan
systemd service provided)
While the author uses this on their own machine, obviously there is no warrantywhatsoever.
About
A zero-configuration fan daemon for ThinkPads.