NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@SBorg wie sind die einzelnen Anzeige bzw. Texte bei Wetter_Trend und Wetter_aktuell.
Meine irgendwo das mal gelesen zu haben aber ich finde es nicht mehr.
Hintergrund, anhand dessen ein passendes Bild anzeigen zu lassen. -
@SBorg wie sind die einzelnen Anzeige bzw. Texte bei Wetter_Trend und Wetter_aktuell.
Meine irgendwo das mal gelesen zu haben aber ich finde es nicht mehr.
Hintergrund, anhand dessen ein passendes Bild anzeigen zu lassen.@Nashra in der
wetterstation.subsind diese hinterlegt -
@crunchip sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@Nashra in der
wetterstation.subsind diese hinterlegtJow :man-facepalming: :+1:
-
Das ganze entstand aus diesem Thread.
Damit ist es möglich mit einem Linux-Client die Daten einer WLAN-Wetterstation und/oder mit Hilfe eines Gateways und Zusatzsensoren zu empfangen, aufzubereiten und im ioBroker zur Verfügung zu stellen. Optional können die Daten auch bei AWEKAS.at, OpenSenseMap, Windy und wetter.com zur Verfügung gestellt werden.
Mein Dank geht an @Latzi für das testen in der Entwicklungsphase und dessen Unterstützung bei der Verfassung der WiKi-Artikel.
Aktuelle Version auf GitHub:
Neue Versionen im Thread sind ab V2.15.0 (Juli 2022) unterschiedlich farblich gekennzeichnet:- Beta-Releases haben dann eine rote Versionsnummer
- stabile Releases haben dann eine grüne Versionsnummer
Projektseite (inkl. WiKi): https://sborg2014.github.io/WLAN-Wetterstation/
Da es sich um keinen Adapter handelt, ist dies eine "Vorschaltseite" von GitHub. Nicht das wer auf die Idee kommt von der URL im ioBroker installieren zu wollen ;)
Zum Download/WiKi geht es dann weiter per View on GitHubBisher geteste Stationen:
- BRESSER
- WLAN Farb-Wetter Center mit 5-in-1 Profi-Sensor V (1) @pandor
- WLAN Comfort Wetterstation mit 7-in-1 Profi-Sensor (1)
- ChiliTec Funk Wetterstation 12in1 @tege0
- DNT Weatherscreen PRO @Petersilie
- Ecowitt
- GW1000
- GW2000A
- GW3000A @MartyBr
- WS2910 @Nashra
- WS3800A @hoschi2007
- WS3900 @Mike77
- ELV WS980WiFi @sonystar
- Eurochron EFWS2900 @Latzi, @ilovegym, @SBorg (baugleich mit Ambient Weather WS-2902, Chilitec CTW-902, Sainlogic 10 in 1)
- Froggit
- Gateway/USB-Dongle DP1500/DP2000 @Boronsbruder
- HP1000SE Pro @Stormbringer
- WH3000 SE @ToxSox, @crunchip
- WH4000 SE @unltdnetworx, @Glasfaser, @Negalein, @Boronsbruder
- WH6000 Pro @Mugel80
- Renkforce WH2600
- Sainlogic
- Ventus W830 @CiroCool, @Rushmed
(1) Abfrage per DNS-Server wie bspw. PiHole oder dnsmasq
Bisher unterstütze Zusatzsensoren per Station oder mittels DP1500/DP2000/GW1000/GW2000A - Gateway:
- bis zu 8 Stück DP35/WN34 Wassertemperatur-Sensoren
- ein DP40/WH32 (bzw. WH26) Außentemperatur- und Luftfeuchtigkeitssensor
- bis zu 8 Stück DP50/WH31 Temperatur-/Luftfeuchtigkeit-Sensoren
- ein DP60/WH57 Blitzsensor
- bis zu 4 Stück DP70/WH55 Wasserleckage-Sensoren
- bis zu 16 Stück DP100/WH51 Bodenfeuchte-Sensoren
- bis zu 4 Stück DP200/WH43 PM2.5 Feinstaub-Sensoren
- ein DP250/WH45 5-In-1 CO2 / PM2.5 / PM10 / Temperatur / Luftfeuchte Innenraumsensor
- ein DP300/WS68 Solarunterstütztes Anemometer mit UV-Lichtsensor
- ein WH31 (bzw. WH25) Sensor
- ein WH40H Sensor
- ein WS80 Sensor
- ein WS90 "Wittboy" Sensor
- BRESSER (1)
- bis zu 4 Stück(2) BRESSER Thermo-/Hygro-Sensor 7 Kanal #7009999
Für den WFC01 hat @Rand nun hier und folgende ein kleines Javascript gebaut, um diesen auch auslesen zu können.
(1) nicht alle Bresser-Stationen unterstützen Zusatzsensoren! siehe hier
(2) durch das verwendete Wunderground-Protokoll limitiertDie mögliche Anzahl der Zusatzsensoren ist nicht durch das Skript begrenzt, sondern wird vom Display und/oder Gateway bestimmt.
Es besteht ferner auch die Möglichkeit Stationen (wie bspw. Sainlogic Profi Wlan Wetterstation FT0300) einzubinden die nicht per WS View[+] App konfiguriert werden können und nur ein Web-Interface bieten, dass keine Angabe eines eigenen Wetterdienst-Servers zulässt. Hierfür kann man den Umweg eines eigenen DNS-Servers wie dnsmasq oder Pi-hole gehen. Für Pi-hole hat @XxJooO freundlicherweise hier im Forum eine ausführliche Doku erstellt: klick mich
Wäre schön wenn sich weitere User mit entsprechenden Modellen melden bei denen es funktioniert (auch wenn es baugleiche sein sollten, so ist man sich wenigstens sicher ;) )
Update von einer Vorgängerversion (bei Nutzung per systemd):
Im Installationsverzeichnis
./ws_updater.shausführen.
Alternativ (falls die aktuell installierte Version kleiner als V2.12.0 ist): im Installationsverzeichnisbash <(curl -s https://raw.githubusercontent.com/SBorg2014/WLAN-Wetterstation/master/ws_updater.sh)ausführenUpdate von einer Vorgängerversion (bei Nutzung als cronjob):
Am besten das laufende Skript mit
pkill -9 wetterstation.shstoppen, wetterstation.sh und -.sub ersetzen (-.conf und -.js nur nach Aufforderung nötig; conf dann neu konfigurieren / js ersetzen und einmalig ausführen), dann entweder- direkt am Linux-Client
./wetterstation.sh & - oder per Putty oä.
nohup ./wetterstation.sh &(erzeugt dabei eine Datei nohup.out) - oder reboot des Systemes (Skript wird dann per cronjob wieder gestartet)
jeweils im Installationsverzeichnis ausführen. Sonst befindet sich ggf. noch das alte Skript im RAM und läuft munter bis zum nächsten Reboot weiter ;)
Beispiele einer grafischen Umsetzung:
@Glasfaser: View / zum Beitrag

@crunchip: Grafana / zum Beitrag

Wetterstation-Statistik (JS-Addon)
Statistikmodul als Javascript. Liefert diverse Statistiken:

Javascript für eine HTML-Tabelle vorheriger Monatswerte ( @liv-in-sky ) :


zum ThreadNeues Projekt PimpMyStation (14.11.2020)
Kein Support per PM/Chat !
@SBorg Bei mir laufen zwei Froggit WH3000 ( ohne SE ) . Die können nur (Android) über die App "WS tool" konfiguriert werden "WS View" funktioniert leider nicht. In WS tool kann kein custimized server angegeben werden. Im Thread habe ich dazu nichts finden können.
Gibt es dennoch einen Weg Dein Script zu verwenden ?(edit)
Im FHEM Forum habe ich das gefunden:Für alle Leidgeplagten die eine Wetterstation mit WU Anbindung besitzen bei der man außer den Zugangsdaten nichts einstellen kann, hier meine (fast) Lösung des Problems: Da die Station stur an rtupdate.wunderground.com auf Port 80 sendet, waren ein paar Klimmzüge nötig um diese Übertragung zu übernehmen. Split DNS- Konfiguration auf dem eigenen Router: rtupdate.wunderground.com auf die IP Adresse von FHEM zeigen lassen. (bei mir OpenWRT -> /etc/hosts ändern und dnsmasq neu starten) Wetterstation mit dem HP1000 Modul definieren Die neue FHEMWEB-Instanz muss auf Port 80 hören. Dazu kann man entweder eine lokale Portredirection einrichten (iptables in Linux), oder wenn FHEM als root läuft kann man die fhem.cfg editieren und den Port auf 80 umstellen. FHEM neu starten, oder die config neu laden.Könnte das eine Lösung sein ?
-
Ich habe heute mal an meinem ersten VIS fürs IPad gebastelt - das mit den IFrames zu begreifen, wie die sich wann überhaupt mit Grafana aktualisieren, war für mich nicht ohne - aber irgendwann flutschte es :-) Falls nötig, bekomme ich da auch noch Platz für die Sonnenstunden ;-)
Hier und dort muss noch etwas Feinkosmetik gemacht werden...

-
@SBorg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@Nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Wenn sich zwei streiten freut sich der Dritte :joy:
Wir geigen uns nur die Meinung :sunglasses:
Und ich spiel Gitarre, machen wir ne Band auf :grin:
Aber bei dir ist alles iO. Es taucht schon 2x auf, da eins das "Hauptprogramm" ist und das andere quasi ein "Helfer".
Ok wenn Du das sagst, du bist der Profi :grinning:
Korrekt erkennen kann man es mittels
ps -aux | grep wetter
@Nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Und ich spiel Gitarre, machen wir ne Band auf
:grinning: Schlagzeug. Noten lesen würde wahrscheinlich mittlerweile zu lange dauern + Schlagzeugnotation kriege ich überhaupt nicht mehr hin. Ist ja auch nur rund 40 Jahre her...
Aber solange die beiden Zahlen unter "grep" (4128 bei dir) identisch sind läuft es nur einmal :)@HAL Sollte eigentlich funktionieren. Du musst ein neues WLAN spannen zB. mittels eines PI oder USB-WLAN-Sticks. Darauf dann mit dem Handy verbinden und die Wetterstation in dieses WLAN verbinden lassen. Dazu ist dann ein DHCP-Server und DNS (bei Linux bspw. dnsmasq) nötig. Dieser "biegt" dann Anfragen an rtupdate.wunderground.com auf den lokalen Rechner um auf dem dann das Skript läuft.
-
Ich habe heute mal an meinem ersten VIS fürs IPad gebastelt - das mit den IFrames zu begreifen, wie die sich wann überhaupt mit Grafana aktualisieren, war für mich nicht ohne - aber irgendwann flutschte es :-) Falls nötig, bekomme ich da auch noch Platz für die Sonnenstunden ;-)
Hier und dort muss noch etwas Feinkosmetik gemacht werden...

@lemuba sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Falls nötig, bekomme ich da auch noch Platz für die Sonnenstunden

Bin mir nur noch nicht über die weitere Vorgehensweise im Klaren. Mit Sekunden lässt sich zwar einfach rechnen, sind aber nicht gerade aussagekräftig. Muss also wohl doch zwischenspeichern, da es sich direkt mit Stunden/Minuten etc. schlecht rechnet bzgl. Wochen-/Monats- u. Jahreswerte... -
Sieht gut aus, auch wenn da noch ein Leerzeichen fehlt...

...und paar Minuten später

zwischenzeitlich gefixt und würde sagen funktioniert 8)

-
Sieht gut aus, auch wenn da noch ein Leerzeichen fehlt...

...und paar Minuten später

zwischenzeitlich gefixt und würde sagen funktioniert 8)

@SBorg voller Vorfreude, nachdem der Himmel Wasser gelassen hat...
und nun die bittere Enttäuschung,
das bisschen Regen wurde nicht mal erkannt:slightly_frowning_face: obwohl es zumindest so viel war, das der Boden nass ist.
Edit: aber jetzt:+1:

-
@SBorg voller Vorfreude, nachdem der Himmel Wasser gelassen hat...
und nun die bittere Enttäuschung,
das bisschen Regen wurde nicht mal erkannt:slightly_frowning_face: obwohl es zumindest so viel war, das der Boden nass ist.
Edit: aber jetzt:+1:

@crunchip sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Edit: aber jetzt
Noch schnell mit der Gießkanne raus geflitzt... :innocent: :grin:
Dann müssten es bei mir morgen 132.4mm sein, obwohl es schon 3x oder 4x funktioniert hat:

Sonnenscheindauer ist auch so gut wie fertig, muss nur noch einen Reset für die Tages-, Wochen- und Monatswerte einbauen:

(ich sammle erst seit heute Mittag ;) )Macht aber "String" überhaupt Sinn? In der VIS sicherlich, aber in Grafana könnte man es nur als Text darstellen.
-
Ich werte immer grob mein Messintervall per Bockly aus.

Das lief auch alles gut aber nun hat das aus irgendeinem Grund nur bis zum Tagesende am 12.04. funktioniert.

Was kann da passiert sein? -
Ich werte immer grob mein Messintervall per Bockly aus.

Das lief auch alles gut aber nun hat das aus irgendeinem Grund nur bis zum Tagesende am 12.04. funktioniert.

Was kann da passiert sein?@Rushmed Da du um 01:23 Uhr noch einen Zeitstempel erhalten hast steht zumindest die Kommunikation noch. Da die Anzeige in Grafana auch noch geht scheidet influx/MySQL auch aus.
Ev. hat sich dein Blockly einfach aufgehängt oder der JS-Adapter zickt rum?
-
@Rushmed Da du um 01:23 Uhr noch einen Zeitstempel erhalten hast steht zumindest die Kommunikation noch. Da die Anzeige in Grafana auch noch geht scheidet influx/MySQL auch aus.
Ev. hat sich dein Blockly einfach aufgehängt oder der JS-Adapter zickt rum?
@SBorg
Das Script hab ich neu gestartet und der Fehler bleibt.
Der Fehler betriift auch nur meine Berechnung. Dein Script läuft.
Ich glaube es geligt Blockly nichtmehr den Wert von Letzte Messung als Zeit zu verarbeiten.
Kann das etwas mit einem node Update zu tun haben? -
@SBorg
Das Script hab ich neu gestartet und der Fehler bleibt.
Der Fehler betriift auch nur meine Berechnung. Dein Script läuft.
Ich glaube es geligt Blockly nichtmehr den Wert von Letzte Messung als Zeit zu verarbeiten.
Kann das etwas mit einem node Update zu tun haben?@Rushmed Ziemlich eindeutig:

Dürfte also am Node-Update liegen.
Da du den Wert aber nicht explizit brauchst, genügt auch die letzte Aktualisierung. Die ist identisch mit dem eigentlichen Wert. Dann geht es wieder:

-
Bedeuted das dass beim node Update etwas schiefgegangen ist? Warum geht es bei dir auch nicht?
Mich wundert auch warum es genau bis 24 Uhr lief, ich denke nicht dass ich genau da upgedated habe.
Sorry wenn zu weit OT. -
Bedeuted das dass beim node Update etwas schiefgegangen ist? Warum geht es bei dir auch nicht?
Mich wundert auch warum es genau bis 24 Uhr lief, ich denke nicht dass ich genau da upgedated habe.
Sorry wenn zu weit OT.@all
INFO :
Hier im Thread Material Design Widgets: Wetter View hat @Scrounger eine sehr schöne View entwickelt .
Hier werden auch die Daten von weatherunderground abgerufen , wo ja sowieso unsere Wetterstation drann hängt .
Hier ein Ausschnitt von der View :

-
@crunchip sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Edit: aber jetzt
Noch schnell mit der Gießkanne raus geflitzt... :innocent: :grin:
Dann müssten es bei mir morgen 132.4mm sein, obwohl es schon 3x oder 4x funktioniert hat:

Sonnenscheindauer ist auch so gut wie fertig, muss nur noch einen Reset für die Tages-, Wochen- und Monatswerte einbauen:

(ich sammle erst seit heute Mittag ;) )Macht aber "String" überhaupt Sinn? In der VIS sicherlich, aber in Grafana könnte man es nur als Text darstellen.
@SBorg Regenjahresmenge funktioniert, es durften ganze 9 mm dazu addiert werden👌
-
@crunchip sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Edit: aber jetzt
Noch schnell mit der Gießkanne raus geflitzt... :innocent: :grin:
Dann müssten es bei mir morgen 132.4mm sein, obwohl es schon 3x oder 4x funktioniert hat:

Sonnenscheindauer ist auch so gut wie fertig, muss nur noch einen Reset für die Tages-, Wochen- und Monatswerte einbauen:

(ich sammle erst seit heute Mittag ;) )Macht aber "String" überhaupt Sinn? In der VIS sicherlich, aber in Grafana könnte man es nur als Text darstellen.
@SBorg said in [Linux Shell-Skript] WLAN-Wetterstation:
Macht aber "String" überhaupt Sinn? In der VIS sicherlich, aber in Grafana könnte man es nur als Text darstellen.
Also ich denke auch es sollte eine Zahl sein und kein String... Vor allen Dingen wenn man die Werte mal weiterberechnen, bzw. analysieren möchte. Oder spielt das dann keine Rolle?
-
@all
INFO :
Hier im Thread Material Design Widgets: Wetter View hat @Scrounger eine sehr schöne View entwickelt .
Hier werden auch die Daten von weatherunderground abgerufen , wo ja sowieso unsere Wetterstation drann hängt .
Hier ein Ausschnitt von der View :

@Glasfaser said in [Linux Shell-Skript] WLAN-Wetterstation:
@all
INFO :
Hier im Thread Material Design Widgets: Wetter View hat @Scrounger eine sehr schöne View entwickelt .
Fett! vielleicht schaue ich mir das nochmal im Detail an. Aktuell habe ich aber „noch“ die Krätze gegen VIS. Mein erster Entwurf war letztendlich fürn Ars.... In meinem Fall war es keine gute Idee die über 20 Grafana Widgets in über 20 Vis Iframes zu packen. Selbst am potenten PC braucht es für den Erstaufbau der Seite mind. 20-30 Sek. Nicht akzeptabel... Am Ipad Pro schmierte es letztendlich ab - Seite nicht darstellbar nach dem zweiten Ladeversuch.
Habe mir nun ne Grafana Seite für unseren Samsung TV Internet Browser zusammengepackt und als Startseite definiert. Das gefällt mir. Kurz „Internet“ in der Fernbedienung gesprochen und die Wetteransicht ist da und auch schnell aufgebaut. Mal sehen ob ich das später noch mit Alexa und dem Samsung Adapter verknüpft bekomme. Aber auch hier Einschränkungen. Die Bildansicht am Samsung Browser ist nach dem Start immer 125%, also muss man die Ansicht nach dieser Grösse planen/bauen. Der Samsung Browser ist nicht in der Lage z.B. die 3D Gauges darzustellen, Windrose würde gehen.
Und leider ist Grafana auch ein Platzverschwender in der Standarddarstellung . Viel zu grosse Rahmen, nicht konfigurierbar - die Krücke Vis/Iframes letztendlich aus oben genannten Gründen nicht praktikabel.
Edit - noch einen Tip für eine mögliche Wettercam in Grafana...
In Grafana funktioniert das Ajax Panel super dafür:

Problem 1 war, dass meine an für sich gute Jidetech Dom Kamera nur einen RSTP Stream kann und diesen auch teilweise authorisiert, bzw. für Ajax ein html Stream benötigt wird. Bin dann auf das Schweizer Messer MotionEye aufmerksam geworden. Dies konnte ich fix unter meiner Dietpi Instanz unter Software nachinstallieren.
Problem 2 war dann, dass in Motioneye der RTSP Stream kein Bild brachte. Der Stream läuft fest über Port 8081, der im Standard aber auf der gleichen Instanz schon vom Iobroker Admin Port belegt ist... Diesen dann auf einen freien Port verschoben...:
(Edit: Später festgestellt, man kann auch in Motioneye den Streaming Port ändern und den Iobroker auf dem Standarport belassen!)

Nun lief es auch mit der Cam in Motioneye und letztendlich im Ajax Plugin :-)
Motioneye läuft 1A auf der Dietpi VM/Diskstation 718+ - verbraucht im Streaming auf http kaum Resourcen...


Das "Lifebild" wird auch sauber auf dem Samsung Browser gestreamt...
-
Bedeuted das dass beim node Update etwas schiefgegangen ist? Warum geht es bei dir auch nicht?
Mich wundert auch warum es genau bis 24 Uhr lief, ich denke nicht dass ich genau da upgedated habe.
Sorry wenn zu weit OT.@Rushmed sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bedeuted das dass beim node Update etwas schiefgegangen ist? Warum geht es bei dir auch nicht?
Mich wundert auch warum es genau bis 24 Uhr lief, ich denke nicht dass ich genau da upgedated habe.
Sorry wenn zu weit OT.Das liegt am Node-Update an sich. Ich habe dadurch noch andere Fehler. Da hilft nur auf ein Update warten, wieder downgraden oder das Blockly umstellen.
@crunchip sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Regenjahresmenge funktioniert, es durften ganze 9 mm dazu addiert werden
Dank eigener Station war der Fehler auch schnell gefunden :grin:
@lemuba sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Also ich denke auch es sollte eine Zahl sein und kein String... Vor allen Dingen wenn man die Werte mal weiterberechnen, bzw. analysieren möchte. Oder spielt das dann keine Rolle?
"String" lässt sich schön lesen und anzeigen, aber damit weiterarbeiten ist ein "würg hoch 10". Ich werde einfach beides anbieten ;)

Tagesreset geht auch schon.