NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@massiveattack sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@negalein
Ich hoffe dein Regen_Jahr ist nicht nur von Jänner 2025nö, von 2025 müsste ........_kumuliert sein. Sonst hätt ich schon Kiemen.
-
seit dem update von simple api auf v3.0 schreibt das log viele info messages:
simple-api.0 2025-03-10 09:56:56.750 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:56:56.325 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:56:24.372 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:56:23.934 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Monat" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:56:23.889 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:55:52.974 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:55:52.541 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:55:20.192 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:55:19.762 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Jahr" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:55:19.713 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:54:48.999 info State value to set for "javascript.0.Wetterstation.Sonnenstrahlung" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:54:48.924 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:54:48.485 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:54:16.274 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:54:15.842 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:54:15.798 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Tag" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:53:45.328 info State value to set for "javascript.0.Wetterstation.Sonnenstrahlung" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:53:45.249 info State value to set for "javascript.0.Wetterstation.Wind_max" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:53:44.810 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Monat" has to be type "number" but received type "string" simple-api.0 2025-03-10 09:53:44.761 info State value to set for "javascript.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string"
müsste hier etwas angepasst werden?
-
Das hab ich auch, denke die Prüfung des objects war vorher nicht da..
muss wohl im Script angepasst werden, wenn es kein Fehler vom Adapter ist.. -
Hallo.
ERLEDIGT
Nochmal alles geprüft und einen Schreibfehler gefunden.
Manchmal sieht man den Wald vor lauter Bäumen nicht.@SBorg ich hoffe du kannst mir helfen.
Ich habe InfluxDB dieser Tag auf 2.7.x upgegraded und läuft alles soweit, bis auf die Statistik.
Das Skript schreibt in die Statusmeldung "Fehler beim Lesen der InfluxDB: timeout" und folgender Datenpunkt wird daher nicht richtig aktualisiert:- Statistik.VorTag.Regenmenge
Vermutlich sind es noch mehr Datenpunkte, aber ich verwende nur diesen einen weiter.
Was kann ich da machen?
DANKE vorab.Ich ergänze noch die .conf:
#InfluxDB-Konfiguration / ohne InfluxDB alles leer lassen #Protokoll (HTTP oder HTTPS) / default: HTTP INFLUX_WEB=HTTP #IP und Port der API [xxx.xxx.xxx.xxx:xxxxx] INFLUX_API=10.10.10.51:8086 #Bucket, Token und Organisation der InfluxDB INFLUX_BUCKET=iobroker INFLUX_TOKEN=DZeHqoyg-DZtgoY61g9wsLXZy5g8YZeurreZhtzz9j5ApckxK-sa_KYX38FzAu4EchBD3fLN9ez4qEQOxd4Ohw== INFLUX_ORG=myorg
Daten kommen in der InfluxDB richtig an. Das habe ich kontrolliert.
-
-
Hallo
Gibt es bei der WH4000 SE ein Gateway, dass per LAN angeschlossen wird?
-
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
WH4000 SE
Ich glaube, dass die Station eine Wifi Verbindung hat (hab in der ANleitung nix über LAN gefunden)
Das GW2000 und das GW3000 hat LAN aber kein Display.Dafürhat man ja auch dann ne VIS -
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Das GW2000 und das GW3000 hat LAN aber kein Display.
perfekt.
der funktioniert mit der Aussenseinheit der WH4000SE? -
@negalein
Ich habe eine WS69 am Gateway in Betrieb, die als Ersatz für eine verstorbene WH4000SE Ausseneinheit dient.Ich betreibe an dem Gateway sowohl Ecowitt- als auch Froggit-Sensoren ohne Probleme.
Achja und der Gateway 2000 hängt bei mir draussen unter dem Vordach und hat schon 1 Jahr ohne Probleme überlebt.
Er wird bei mir über einen POE-Splitter mit Spannung versorgt. -
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@SBorg
Wann implementierst du eigentlich die Unterstützung fürsMQTT-Protokoll, die das GW2000 seit der Firmwareversion 3.1.9 kann?
Wie üblich "keine Unterstützung seitens der Hersteller", also fehlende Hardware und natürlich keine Zeit meinerseits.
Die Frage sei aber gestellt: wofür? Was soll da besser sein? Ich müsste dann einen eigenen MQTT-Broker implementieren. An einen zB. Mosquitto kannst du ja auch so direkt publishen. Also eher nie -
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@SBorg
0_userdata.0.Wetterstation.Regen_Event
= der aktuelle Regen; kann der vom Script wieder auf 0 gesetzt werden, wenn Regen vorbei?Nein, der kommt so von der Station. Wenn ich den im Skript auf "0" setze wird er direkt wieder von der Station überschrieben. Würde nur ein Hilfs-DP helfen, der mittels Blockly, NodeRED etc. den "Regen-Event" spiegelt und diesen bei Regenende dann auf "0" setzt.
0_userdata.0.Wetterstation.Regen_Jahr
vs.0_userdata.0.Wetterstation.Regen_Jahr_kumuliert
?
Kann da quasi zB0_userdata.0.Wetterstation.Regen_Jahr
auch von Juni bis Juni sein? Also wann die Station das erste mal in Betrieb genommen wurde?Das hört sich erst mal wieder einfacher an als es dann ist. Ich muss ja auch diejenigen berücksichtigen die dies nicht wollen.
Hier wäre es IMO einfacher dies per InfluxDB-Abfrage zu lösen.Und
0_userdata.0.Wetterstation.Regen_Jahr_kumuliert
ist der errechnete durch dein Script von Jänner bis Dezember?0_userdata.0.Wetterstation.Regen_Monat
ist klar. Aber warum ist hier ein Unterschied von ca. 2 mm zu0_userdata.0.Wetterstation.Regen_Jahr_kumuliert
?Ja. Zu 100% wird das nie identisch sein. Zum einen sind das minimale Rundungsfehler, die sich dann aber bei der Menge an Werten halt aufsummieren. Die meisten Stationen liefern den Wert mittlerweile. Das war eigentlich nur zu der Anfangszeit des Skriptes, um wenigstens einen Wert zu haben. Besser einen nicht ganz genauen, als letzendlich gar keinen zu haben. Außerdem darf man keinen Wert der Station (die immer läuft) direkt mit einem des Skriptes (das beim booten bspw. nicht läuft) vergleichen. Skript läuft nicht = der von der Station gesendete Wert wird nicht berücksichtigt
-
@massiveattack sagte in [Linux Shell-Skript] WLAN-Wetterstation:
seit dem update von simple api auf v3.0 schreibt das log viele info messages:
...und alle Anderen.
Bisher wurden die Werte nicht geprüft, mit dem Update wird die Info ausgegeben. Leider kann ich nicht nachvollziehen warum er eine Zahl als Text interpretiert. Witzigerweise geht es bei einigen Werten, bei anderen nicht (sind aber identisch angelegt/übertragen). Ich dachte er hätte Probleme bei Integer (also Ganzzahlen wie bspw bei 1[°C]), deswegen habe ich sie mal als Fließkommazahl (1.0[°C] übertragen. Ist ihm aber auch egal. Ich vermute eher, dass er mit der mittlerweile recht hohen Anzahl an Werten die gleichzeitig gesendet werden nicht zu Recht kommt und sich verschluckt.
Da es keinen Nachteil darstellt und ich das nicht von meiner Seite ändern kann, einfach bei den bemängelten DPs den Typ auf "gemischt" umstellen. Skripte, Blockly, InfluxDB funktioniert dann trotzdem weiter.
-
@neunteufels sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Was kann ich da machen?
DANKE vorab.
Ich ergänze noch die .conf:
Daten kommen in der InfluxDB richtig an. Das habe ich kontrolliert.Da das Javaskript die internen Routinen des Adapters nutzt und die Daten in der InfluxDB landen, gibt es nur zwei Dinge die (im JS-Skript) falsch sein können:
- die benutzte Instanz
- der Name des Buckets (lt. Auszug aus deiner conf "iobroker")
Alles andere (Token, Username etc.) wird hierbei nicht benötigt.