NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
Hallo @Sborg,
ich hab heute ein ganz komisches Phänomen. Abgesehen, dass mein Außensensor keine Temperatur überträgt, den Rest schon, folgendes Problem:
das Wetterstationskript überträgt nicht an Iobroker. Den wetterstation-service gestoppt, skript im Debug laufen lassen, folgender output:
'bc' installiert: [✓] 'jq' installiert: [✓] 'nc' in der Openbsd-Variante installiert: [✓] 'netcat' in Openbsd-Variante aktiv, alles korrekt [✓] Connection to 192.168.178.92 8087 port [tcp/*] succeeded! Messwerteblock: 25.61 -5572.77 -5572.77 -5572.77 52 -9999 1.12 1.77 282 999.42 1013.61 0 0 2.3 18.1 0 605.93 5 17.06.2022%2015:59:51 EasyWeatherV1.6.4 Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)! Temperatur Innen : 25.61 °C Temperatur Aussen : -5572.77 °C Taupunkt : -5572.77 °C Gefühlte Temperatur : -5572.77 °C Luftfeuchte Innen : 52 % Luftfeuchte Aussen : -9999 % Windgeschwindkeit : 1.12 km/h Windböengeschwindigkeit : 1.77 km/h max. Windböe : km/h Windrichtung : 282 ° Windrichtung : WNW Luftdruck absolut : 999.42 hPa Luftdruck relativ : 1013.61 hPa Regenrate : 0 mm/h Regenstatus : kein Regen Regen seit Regenbeginn : mm Regen Stunde : mm Regen Tag : 0 mm Regen Woche : 2.3 mm Regen Monat : 18.1 mm Regen Jahr : 0 mm Regen Gesamt : mm Sonnenstrahlung : 605.93 W/m² UV-Index : 5 Zeitstempel : 17.06.2022 15:59:51 Firmware : EasyWeatherV1.6.4 Batteriestand: : Gateway-Modell : Zusatzsensoren: keine Datenstring für ioBroker: DATA von Wetterstation: GET /weatherstation/updateweatherstation.php?ID=xxxxxx&PASSWORD=xxxxxx&indoortempf=78.1&tempf=-9999&dewptf=-9999&windchillf=-9999&indoorhumidity=52&humidity=-9999&windspeedmph=0.7&windgustmph=1.1&winddir=282&absbaromin=29.513&baromin=29.932&rainin=0.000&dailyrainin=0.000&weeklyrainin=0.091&monthlyrainin=0.713&yearlyrainin=0&solarradiation=605.93&UV=5&dateutc=2022-06-17%2013:59:51&softwaretype=EasyWeatherV1.6.4&action=updateraw&realtime=1&rtfreq=5 HTTP/1.1 Debug VAR: Installationsverzeichnis: /home/iobroker/wetter IPP: 192.168.178.92:8087 WS_PORT: 8050 WS_POLL: 30 PRE_DP: javascript.0.Wetterstation WEB: HTTP WS_PROT: Wunderground DP35/40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 WH31: 0
Ich glaub, der String für den IoB fehlt. Hab V2.14.0 am Laufen.
Danke,
Kay -
@kaybau Keine Daten an den ioB ist da "Ok". Alles was eine Aussentemperatur unter dem absoluten Nullpunkt hat ist seitens der Wetterstation fehlerhaft und wird deswegen nicht an den ioB geschickt. Deine -9999°F sind da nur "geringfügig" drunter
Du hast ein Problem mit deiner Station:
- Display mal vom Strom nehmen (ggf. Batterien raus falls welche drin sind) und 10-20 Sek. warten, dann wieder alles rein/anstecken
- Batterien von der Außeneinheit sind OK? ggf. auch hier mal einen Reset durch entfernen der Batterie (kann aber fehlschlagen wenn der GoldCap der Solarzelle gut geladen ist )
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Batterien von der Außeneinheit sind OK?
zu 99% ist die Batterie schuld.
Als 1. steigt der Temp. Sensor aus (der hat die meiste Arbeit).ggf. auch hier mal einen Reset durch entfernen der Batterie (kann aber fehlschlagen wenn der GoldCap der Solarzelle gut geladen ist
für den Reset die Batterien raus und das Solarpanal für 48-72 Stunden abdecken (Lichtdicht).
-
@negalein @sborg
Danke für Eure Tipps zur Wetterstation. Reset und Batterietausch hatte ich schon vorgenommen. Werde aber mal Euren Hinweisen folgen.
Die Fehlwerte filter Sborg schon bereits per skript aus.
Ich hab mich vielleicht in meinem Hilferuf falsch ausgedrückt. Es kommen keine Werte im IoB an, auch nicht die real gemessenen Solar-UV, Innentemperatur-Werte, die das skript im debugging ausliest.VG,
Kay -
@kaybau sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ich hab mich vielleicht in meinem Hilferuf falsch ausgedrückt. Es kommen keine Werte im IoB an, auch nicht die real gemessenen Solar-UV, Innentemperatur-Werte, die das skript im debugging ausliest.
Doch, aber ev. habe ich es nicht ganz deutlich ausgedrückt
Solange deine Aussentemperatur unter -273°C liegt (und das sind deine -5572.77°C bzw. -9999°F) wird das kpl. Datenpaket verworfen und absolut gar nichts an den ioB geschickt (außer du deaktivierst den Temperaturfix in der conf) weil man dann den anderen Messwerten uU. auch nicht "trauen" kann (du hast bspw. noch drei andere exorbitante Ausreißer drin). Das steht (bzw. stünde ohne Temperaturfix) dann so auch in der Influx, Statistik etc. pp. -
@sborg ah, ok
Ich war der Meinung der Fix geht nur auf die Außeneinheit und deren Werte -
Neue Version des JavaScriptes Wetterstation-Statistik auf GitHub V1.1.2
- ~mögliche "Null"-Werte bei "Regenmenge Vortag" und "Windböe" gefixt (Fix Issue #35)
Wie immer zu finden im GitHub
Update nicht zwingend nötig. Behebt nur das Problem möglicher "Null"-Werte für obige DPs, falls wirklich Tags zuvor keinerlei Wind/Regen auftrat und man nicht zumindest beim Logging per Influx das schreiben eines Wertes pro Tag erzwingt.
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
"Regenmenge Vortag"
das prob hatte ich auch...
-
-
@kaybau
Allerdings fragt man sich dann auch warum der Wettermast einen Batteriestatus hat. Das die "Stromfresser" der Sensoren ohne Batterie nicht mehr funktionieren Ok, aber für eine Batteriewarnung sollte es zumindest reichen...
Mir ist dann mal wieder eine Idee gekommen (so von wegen wird keine großartigen neue Versionen mehr geben, ist ja alles drin [aber was interessiert mich denn auch mein vorheriges Gelaber...] )
Man sieht, frühe Beta. Bisher:
- Skript gestartet
- Mitternachtjobs durchgeführt
- unplausibler Messwert Aussentemperatur. Datenpaket verworfen.
Letzteres tritt dann bei Temperaturen unter -273°C auf und aktiviertem 'Tempfix' in der conf. Könnte man auch wieder zählen und bei Anzahl X dann eine Batteriewarnung ausgeben
Eigentlich sieht man ja auch an den diversen TS' ob das Skript noch lebt, trotzdem überlege ich gerade noch im Raster X ev. einen "Alive" zu senden. Meinungen, Wünsche ... -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Neue Version des JavaScriptes Wetterstation-Statistik auf GitHub V1.1.2
mit dieser Version bekomme ich in
0_userdata.0.Statistik.Wetter.VorTag
nur 'null'-Werte, ihr auch? -
-
@latzi sagte in [Linux Shell-Skript] WLAN-Wetterstation:
mit dieser Version bekomme ich in 0_userdata.0.Statistik.Wetter.VorTag nur 'null'-Werte, ihr auch?
passt bei mir auch
-
@da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:
11,22 °C Höchsttemperatur?
Hast du die Station in einer Höhle stehen? -
-
@latzi Nicht zwangsläufig. Influx V1 oder V2? Nach wie vor läuft offiziell alles nur unter V1. Falls du Änderungen für V2 vorgenommen hattest fehlen die in dieser Version
-
@negalein jetzt wo du es sagst... sültsam. schau da aber so gut wie nie rein.
gefindet. hab vergessen den quellpfad auszubessern. woodywetter lauft bei mir auch unter 0_userdata, nicht javascript. -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Falls du Änderungen für V2 vorgenommen hattest fehlen die in dieser Version
Ja, die Änderungen für die influx V2 hab ich nachgezogen, dabei dürfte etwas schief gegangen sein. Hab wieder auf die V1.1.1 zurückgestellt - läuft wieder. Das Thema muss ich mir nochmals in Ruhe geben, ich dachte mir, dass ich nur die beiden
sendto
- Statements ersetzen muss - hat aber offensichtlich nicht geklappt -
@latzi Klick mal bei GitHub auf die Versionsnummer vom Skript, dann siehst du die Änderungen v1.1.1 zu v1.1.2 (wichtig sind nur - und + Zeilen)
Das sind nur drei mickrige Zeilen (eine davon ist die Versionsnummer). Wenn du die änderst, hast du auch schon die V1.1.2*EDIT* Ok, vier Zeilen, habe den Kommentar vergessen...
-
Neue Beta-Version des Wetterstation WLAN-Skriptes auf GitHub V2.15.0
(Beta-Releases lassen sich nicht! über den ws_updater installieren, nur die *.conf lässt sich damit patchen [s.u.])
- + neuer DP "Meldungen"; für Status- und Fehlermeldungen
Wie immer zu finden im GitHub
Update-Routine:
- wetterstation.sh und wetterstation.sub ersetzen
- wetterstation.js muss ebenfalls im JavaScript-Adapter ersetzt und einmalig ausgeführt werden (neuer Datenpunkt ".Info.Meldungen")
- (wetterstation.conf verbleibt aktuell in der Beta noch bei V2.14.0 / keine Änderungen bzw. kein ws-updater.sh nötig)
- nun mittels
systemctl restart wetterstation
den Service neu starten
Neu sind nun Meldungen unter .Info.Meldungen
Diese lauten aktuell:möglicherweise Batterie des Wettermastes schwach Skript läuft... Skript gestartet Mitternachtjobs durchgeführt unplausibler Messwert Aussentemperatur. Datenpaket verworfen...
Dies bedeutet im Einzelnen:
- wenn mehr als 10x ein Datenpaket empfangen wurde dessen Aussentemperaturwert kleiner als -273°C ist (Indiz für schwache/leere Batterie des Wettermastes). Fehlerzähler ist dynamisch = korrekte Pakete reduzieren den Fehlerzähler wieder. Es muss also rund 5 Minuten am Stück kein einzig verwertbares Paket mit korrektem Temperaturwert eingetroffen sein. Gleichzeitig wird .Info.Station_Batteriestatus auf "1" gesetzt!
- zu jeder vollen Stunde
- beim starten des Skriptes
- gegen 23:58 Uhr wenn die täglichen Jobs abgearbeitet wurden
- immer wenn ein Datenpaket bei der Aussentemperatur einen Wert kleiner als -273°C enthielt [nur aktiv bei aktiviertem Temperaturfix in der wetterstation.conf!]