Skip to content

Thinkfan-Ex v1.3.1

Choose a tag to compare

@VexFlint VexFlint released this 04 Sep 23:05
· 68 commits to main since this release

The companion tools now live on PATH, and the curve no longer takes orders from
your Wi-Fi chip.

Neither 1.2.1 nor 1.3 was left standing as its own release, so everything below is
what has landed since v1.2.

Added — 1.3

The companion tools install to /usr/local/bin. Previously only the
thinkfan-ex daemon went on PATH, so the four tools ran solely as ./name.sh
from inside the clone — which the README's command tables never said, making
sudo ./powerwatch.sh from anywhere else fail with command not found. They are
now installed alongside the daemon:

Tool Installed as
powerwatch.sh powerwatch
sensors.sh thermalsensors
fanbench.sh fanbench
chargewatch.sh chargewatch

sensors.sh becomes thermalsensors, not sensors: /usr/local/bin precedes
/usr/bin on PATH, so a binary called sensors there would shadow lm_sensors.

thinkfan-ex -uninstall removes all four, so nothing is orphaned. The tools stay
standalone — the daemon never calls them, and they still run straight from the
clone if you would rather install nothing.

Added — 1.2.1

  • SENSOR_PATTERNS, honoured by both the control loop and -probe. The curve
    was driven by the hottest reading across every hwmon in the system, so an
    unrelated device — Wi-Fi, NVMe, PCH — could command a CPU fan. The default is now
    the CPU package and cores only.

Fixed — 1.2.1

  • Entering and leaving disengaged had no deadband, so a temperature resting on
    CRITICAL_TEMP toggled it every few seconds. It now uses the same HYSTERESIS
    as every other level.

Changed — 1.2.1

  • Default thresholds re-spaced so the fan starts at 51 °C and stops at 45 °C,
    keeping a full HYSTERESIS deadband at the bottom of the ladder.

Documentation — 1.3.1

  • Installation covers installing from a release as well as from a clone, including
    the tarball URL and the directory name GitHub produces (Thinkfan-Ex-1.3.1 — the
    leading v is stripped).
  • The clone URL and chargewatch.sh's header comment pointed at
    BrunoGrande/Thinkfan-Ex, which resolves only through GitHub's rename redirect.
    Both now point at VexFlint/Thinkfan-Ex directly.

Upgrading

curl -LO https://github.com/VexFlint/Thinkfan-Ex/archive/refs/tags/v1.3.1.tar.gz
tar xf v1.3.1.tar.gz
cd Thinkfan-Ex-1.3.1
chmod +x *.sh
sudo ./thinkfan-extreme.sh
sudo reboot

Re-running the installer is safe: it detects the modprobe.d line and boot
parameter already being present, and restarts the service rather than leaving an
old daemon running from memory. No reboot needed if you rebooted for 1.2.

Note

The thinkfan-extreme.sh attached below is handy for reading the installer before
you trust it with your fan, but running that file alone installs the daemon
only
. It copies the companion tools just if they sit beside it, so a single-file
download logs Skipping powerwatch.sh: not found next to this installer four
times and leaves nothing on PATH but thinkfan-ex. Take the tarball or the
clone if you want powerwatch, thermalsensors, fanbench and chargewatch.