Wetterstation Reloaded

Wir haben die Konsole der Wetterstation WS 3080 durch einen DVB-T USB-Stick ersetzt, der direkt am Raspberry Pi USB-Port steckt und die Funksignale der Außenstation empfängt.
15.03.2025

Jens, Suhler Sternfreunde

Motivation

Die Konsole der Wetterstation WS 3080 (und ähnliche) hat in der Vergangenheit regelmäßig alle 2 Tage den USB-Stack zum Absturz gebracht. Dieses Verhalten wird in vielen Diskussionsforen beschrieben3. Um den USB-Port wieder zum mitarbeiten zu überreden, mußte man die gesamte Konsole stromlos machen und neu starten. Da wir die Daten über USB auf einem Raspberry Pi einlesen und weiterverarbeiten, war dieser seit Jahren bekannter Bug ein großes Ärgernis. Auch eine neu gekaufte Wetterstation ähnlicher Bauart (ELV WS 3080) zeigt dieses Verhalten, und dass obwohl das Problem dem Hersteller der Konsole (nicht ELV) seit Jahren bekannt sein muß. Ich vermute, dass der USB-Stack, also das Stück Hardware in der Konsole, welches USB bereitstellt, über all die Jahre unverändert von einem Hersteller zum nächsten übernommen wurde.

Ersatz der Konsole durch einen DVB-T USB-Stick

Da die Daten auf 433 Mhz gesendet werden und findige Bastler das Protokoll der Wetterstation dekodierten, habe ich die Konsole der Wetterstation komplett ersetzt durch einen DVB-T USB-Stick, der direkt am Raspberry Pi USB-Port steckt und die Daten der Außeneinheit empfängt. Eine Software1 auf dem Raspi dekodiert die Signale und die weewx-Wettersoftware speichert die Wetterdaten in ihrer Datenbank. Dazu gibt es für die weewx-Software bereits ein vorgefertigtes Modul, welches nur bereitgestellt und konfiguriert werden muß. Das Zauberwort heißt: SDR.

Vorher:

Raspberry Pi mit angeschlossener Konsole der Funkwetetrstation WX 3080
Raspberry Pi mit Wetterkonsole WS 3080 am USB-Port

Nachher:

Raspberry Pi mit angeschlossenem DVB-T USB-Stick
Raspberry Pi mit einem DVB-T USB-Stick

Luftdruck, Innentemperatur und Luftfeuchtigkeit innen

Der Luftdruck wird nicht an der Außeneinheit der Wetterstation gemessen, sondern durch einen Sensor in der Konsole. Dadurch müssen wir uns jetzt nach dem Abbau der Konsole selbst um die Erfassung des Luftdrucks kümmern. Zusätzlich wurde von der Konsole auch noch Temperatur und Luftfeuchtigkeit innen bereitgestellt.

Ein kleiner Sensor2 für diese Daten, an den IO-Ports des Raspberry Pi angeschlossen, liefert uns die fehlenden Daten. Ein selbstgeschriebenes Modul für weewx liest diese Daten aus und fügt sie den Daten des SDR-Moduls hinzu.

Fazit

Die Sensordaten werden seit ein paar Tagen ausschließlich über das SDR-Modul der weewx Software eingelesen. Es kommt immer mal zu Aussetzern bei der Funkübertragung, weshalb dann kurzzeitig einige Daten fehlen, zB die Außentemperatur. Das ist aber nicht so gravierend und hat keine Auswirkungen auf die Gesamtübersicht der Tageswerte. Die Konsolen der Wetterstationen WS 3080 – egal welcher Hersteller – hingegen haben diese Daten regelmäßig so verfälscht, dass manchmal 80°C als Tagestemperatur am Raspberry Pi ankam. Man kann solche Ausreißer zwar mit weewx aussortieren, aber nur als absolute Werte. Wenn es im Winter normal unter Null Grad hat und die Konsole plötzlich 30°C liefert, kann man das nicht erkennen und aussortieren. Wohlgemerkt betrifft das nur die Daten, die über USB gesendet werden, nicht die Anzeigedaten der Konsolen selber.

Durch Verbesserung der Empfangsleistung – bspw. durch eine bessere Antenne mit einem richtigen Dipol für 433Mhz – kann die Empfangsqualität der Daten sicher weiter verbessert werden.

Ob sich diese Lösung auf Dauer bewährt, muß erst noch beobachtet werden.

Verweise

1) rtl_433

2) BME680

3https://www.wetterstationsforum.info/viewtopic.php?t=1360

Neuen Kommentar hinzufügen

Sie können einen Kommentar abgeben, indem Sie das unten stehende Formular ausfüllen. Nur Text. Kommentare werden moderiert.