Nach meinen letzten Texten über den Pi im Wohnwagen und die Satellitenanlage haben sich einige Änderungen ergeben. Gerade im Urlaub ist nicht-lineares Fernsehen eine Wohltat, so daß sich schnell auch TVHeadend auf dem Pi einfand. Da erwies sich der Pi3 wegen der langsamen Netzwerkschnittstelle als ungeeignet, so daß ich auf einen Pi4 umgerüstet habe. Gespeist aus der Wohnwagenbatterie über einen 5V-Wandler mit externer Festplatte in einem UGREEN Festplattengehäuse erwies sich diese Lösung als stabil. Lediglich ein formschönes Gehäuse fehlte noch. Für den Pi5 gibt es inzwischen viele passende Gehäuse, die Lüfter und NVME-SSD enthalten. Für den Pi4 sieht das anders aus. Das Geekworm X825-C8 Gehäuse wäre groß genug, auch noch den Spannungswandler mit einzubauen. Leider ist die nötige Adapterplatine für eine SSD mit 30€ doch reicht teuer. Also alles selber umbauen, was bei dem Preis des Gehäuses kein großes Risiko ist.
Montage des Pi4 und des Lüfters
Der mitgelieferte Lüfter ist ungeregelt und solo eigentlich nicht laut. Wenn er aber durch die kleinen Schlitze des Deckels seine Luft ansaugt, kommt es zu unschönen Geräuschen durch den Luftstrom. Ich hatte noch einen 80er Lüfter (Thermalright TL-8015) herumliegen. Ohne die Adapterplatte für die SSD läßt sich der Pi nicht montieren. Also muß man zunächst drei passende Löcher in den Boden bohren und die Platine über Abstandsbolzen befestigen. Wenn man das vordere rechte Montageloch frei läßt, kann man den Lüfter auf dem Boden montieren, hierzu ebenfall passende Löcher bohren. Der Lüfter hat passenderweise ein Gummiauflage am Rahmen in alle Ecken. Bevor man ihn festschraubt muß man noch mit einem Cuttermesser den Rahmen an den Stellen beschneiden, die an den Befestigungslöchern des Gehäuses aufliegen. Hier muß nämlich später ein Schraubenkopf vorbeigleiten können.
Verdrahtung
Zum Anschluß der Stromversorgung, des Lüfters und des Tasters reicht eine 20-polige Buchsenleiste aus. Um den Strom etwas zu verteilen, habe ich die Pins 2 & 4 für +5Volt und die Pins 6 & 14 an Masse über kurze Kabelstücke parallel angeschlossen.
Echtzeituhr
Ich wollte bei der Gelegenheit gleich eine Echzeituhr installieren. Diese belegt die Pins 1, 3, 5 und 9 und wird später oberhalb des Pis mit einem kleinen Winkel befestigt, so daß sich die Pufferbatterie leicht wechseln läßt. Folgende Zeile muß in /boot/firmware/config.txt ergänzt werden:
# Echtzeituhr:
dtoverlay=i2c-rtc,ds3231
Taster zum Herunterfahren und als Aktivitätsanzeige
Der beigelegte Taster funktioniert nur mit einer weiteren Zusatzplatine. Man könnte ihn natürlich als Attrappe belassen, aber schließlich ist er bezahlt. Wenn man die Kabel abzieht, sieht man auf der Rückseite die Beschriftung für die Taster und die LED. Diese hat einen Vorwiderstand für eine Versorgung mit 12-24V, direkte Speisung über einen GPIO-Pin funktioniert also nicht. Zwischen die Anschlüße paßt aber problemlos eine kleine Lochrasterplatine mit einem Logik-MOSFET aus der Bastelkiste. Den Lüfteranschluß hatte ich schon in den Zwischenraum hinter dem Lüfter verstaut, von dort legt man die 12V an den Taster und weiter zur Eingangsbuchse.
Wie allgemein bekannt muß man nur noch zwei Zeilen in /boot/firmware/config.txt ergänzen, damit der Taster funktioniert:
# Shutdown per Taster:
dtoverlay=gpio-shutdown,gpio_pin=24, active_low=1,gpio_pull=up
# Taster LED:
dtoverlay=act-led,gpio=23
Lüftersteuerung über Homeassistant
Für die Geschwindigkeitsregelung des Lüfters gibt es verschiedene Lösungen, zumeist mit einem Batch- oder Pythonscript, das regelmäßig aufgerufen wird. Mir erschien es einfacher, diese Funktion über Homeassistant mit zu erledigen. Man braucht eine Library, die eine PWM-Steuerung über einen GPIO-Pin ermöglicht:
sudo apt-get install pigpio
sudo systemctl start pigpiod
sudo systemctl enable pigpiod
rainer@wohnwagen:~ $ sudo systemctl status pigpiod
● pigpiod.service - Daemon required to control GPIO pins via pigpio
Loaded: loaded (/lib/systemd/system/pigpiod.service; enabled; preset: enabled)
Active: active (running) since Sun 2025-05-25 17:09:10 CEST; 1min 45s ago
Process: 9028 ExecStart=/usr/bin/pigpiod -l (code=exited, status=0/SUCCESS)
Main PID: 9029 (pigpiod)
Tasks: 4 (limit: 3914)
CPU: 6.359s
CGroup: /system.slice/pigpiod.service
└─9029 /usr/bin/pigpiod -l
Der HA Container muß mit privileged: true gestartet werden, um auf die Hardware zugreifen zu können! Dann über HACS die “Home Assistant Raspberry Pi GPIO custom integration” installieren und HA neustarten. Für die Lüftersteuerung habe ich mir mehrere einfache Automatisierungen erstellt, die in 5°-Schritten den Lüfter zwischen 0 und 100% einstellen:
alias: Temperatur Pi 40-45
description: ""
triggers:
- type: temperature
device_id: 638bf321afe9cdd8775afb8b387f6aa0
entity_id: a6a80420e801cfba33bdb14ec38b7677
domain: sensor
trigger: device
above: 40
below: 45
conditions: []
actions:
- action: fan.set_percentage
metadata: {}
data:
percentage: 20
target:
entity_id: fan.gehauselufter
mode: single
Drehzahlauswertung und Anzeige in Homeassistant
Diesen Teil hatte ich bereits beschrieben:
Ob sich der Aufwand lohnt, darüber läßt sich trefflich streiten. Der Stromverbrauch einschließlich der Festplatte und mit laufendem, unhörbarem Lüfter liegt nur bei 3,2 Watt. Der Empfang mit Bluetooth Low Energie mit dem externen Bluetooth-USB-Stick ist hervorragend und reicht bequem für alle Sensoren aus, selbst für das Thermometer im Kühlschrank oder den räumlich entfernten Victron-Lader. Der Pi5 zu Hause ist da selbst mit externem Stick absolut taub, ohne Bluetooth-WLAN Gateways über die Shellys läuft nichts.