Raspberry 4 – Temperaturgesteuerte Lüfterregelung – Teil 3

Ich habe mir ein Raspberry Pi 4 Komplettset (Werbung) zugelegt, da mir der Raspi 3 als NAS doch etwas zu langsam war.

Da der dazugehörige Lüfter auf Dauer doch etwas laut ist, habe ich mir eine temperaturgesteuerte Lüfterregelung eingerichtet.

Im dritten Teil zeige ich, wie man das Script zur Steuerung des Lüfters beim Booten des Raspi automatisch startet.

Nachdem ich in Teil 1 die Hardware der Lüftersteuerung und in Teil 2 das Pyhthon-Script, das den Lüfter ansteuert, vorgestellt habe, richten wir uns das Script nun so ein, dass es als Dienst automatisch beim Booten des Raspberry Pi gestartet wird.

3. Einrichtung des Scripts als Systemdienst

Hierzu müssen wir eine Datei anlegen und bearbeiten sowie ein paar Kommandos auf der Konsole ausführen:

  1. sudo nano /etc/systemd/system/fancontrol.service
  2. Nun wird folgender Text im nano-„Fenster“ eingefügt:

    [Unit]
    Description=Fan Control
    After=network.target

    [Service]
    ExecStart=/usr/bin/python -u fancontrolpwm.py
    WorkingDirectory=/home/pi/scripts
    StandardOutput=inherit
    StandardError=inherit
    Restart=always
    User=pi

    [Install]
    WantedBy=multi-user.target


    Im Anschluss wieder speichern und nano beenden (STRG+x, dann y und schließlich ENTER)
  3. Der Dienst ist jetzt angelegt, aber in der Systemverwaltung noch nicht aktiviert. Bevor wir dies tun, probieren wir erst einmal, ob alles passt, indem wir ihn manuell starten:
    sudo systemctl start fancontrol.service
    Jetzt sollte die Dienstverwaltung unser Python-Script starten, sodass der Lüfter für drei Sekunden eingeschaltet wird (bei höherer Temperatur der CPU gegebenenfalls auch für länger).
  4. Hat das funktioniert, stoppen wir den Dienst erst einmal wieder mit:
    sudo systemctl stop fancontrol.service
  5. Danach weisen wir die Dienstverwaltung an, unseren neuen Dienst zu aktivieren und automatisch zu starten:
    sudo systemctl enable fancontrol.service
  6. Nach einem anschließenden Neustart des Raspi über
    sudo reboot
    sollte der Dienst automatisch gestartet werden. Das hört man daran, dass der Lüfter wieder für mindestens drei Sekunden anläuft.
  7. Zum Abschluss können wir die CPU mit
    stress-ng -c 4
    nochmals beschäftigen. Funktioniert alles wie es soll, sollte der Lüfter nach einiger Zeit anlaufen und wahrscheinlich erst kurz nach Abbrechen von stress-ng wieder langsamer laufen und schließlich stoppen. Und damit sind wir auch schon fertig!

Hinweis: Ihr könnt noch ein wenig mit den Temperaturen und PWM-Werten im Script fancontrolpwm.py spielen, um Laufzeiten und/oder Geräuschpegel des Lüfters zu optimieren.

Aber nur, wenn ihr einigermaßen wisst, was ihr da tut! Bei ungünstigen oder fehlerhaften Werten kann es unter Umständen passieren, dass der Lüfter gar nicht mehr anläuft und der Raspberry Pi irgendwann den Hitzetod stirbt! Sagt nicht, ich hätte euch nicht gewarnt…

Wenn euch mein kleines dreiteiliges Tutorial gefallen hat oder ihr es nützlich findet, würde ich mich freuen, wenn ihr mir einen netten Kommentar hinterlasst und vielleicht auch mal auf einen der Affiliate-Links zu Amazon hier klickt ;-). Falls es euch nicht gefallen hat, reicht mir auch nur der Klick 😀 😛