NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@negalein
ja, kommt gleich nach " Es ist der Abschluß vom Hochkomma nach predicate -
@negalein
ich gebe die Werte nur aus, wenn eine Änderung eingetreten ist, nicht alle 5 min. -
@dgr sagte in [Linux Shell-Skript] WLAN-Wetterstation:
ja, kommt gleich nach " Es ist der Abschluß vom Hochkomma nach predicate
und der Befehl kommt hier rein?
-
@negalein
verbinde dich mal mit SSH auf deinen Server (Raspberry pi ??, egal) z.B. mit Putty .Dann dort anmelden und den Befehl reinkopieren z.B. aus einer Textdatei (Strg+C ) und danach in Putty am Prompt nurmit der rechten Maustaste klicken und Enter
Versuche es zuerst mit Tagx
-
DANKE, alle 8.89 nun weg
-
@negalein
Schönes Wochenende. -
@dgr sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@negalein
Schönes Wochenende.Danke, dir auch
-
@negalein
falls es interessiert, hier mal meine Installation im Überblick.
-
@dgr sagte in [Linux Shell-Skript] WLAN-Wetterstation:
falls es interessiert, hier mal meine Installation im Überblick.
schaut bei mir ähnlich aus.
Dein Raspy ist bei mir ein Mini-PC mit Proxmox
-
@babl sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Heute habe ich wieder komische Fehlermeldungen im Log.
Heute 01:03 error javascript.0 at processTicksAndRejections (node:internal/process/task_queues:95:5) Heute 01:03 error javascript.0 at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38 Heute 01:03 error javascript.0 Statistik:639:27) Heute 01:03 error javascript.0 Error in callback: TypeError: Cannot read properties of null (reading '0')
Das muß vom Statistik Script herkommen, vielleicht hast du mal zeit und schaust drüber. Danke
An alle Statistik-Skript Nutzer:
Auch hier erkennt er wohl wie er will. Der Datenpunkt-Inhalt [neue Version des Statistik-Skripts vorhanden?] ist ein String ("---" oder die GitHub-URL). Den Datenpunkt auf "gemischt" umstellen, dann ist Ruhe und die Fehlermeldung im Log ist weg:
-
@SBorg
Hi,wie kann ich denn prüfen ob das Skript sauber nach Influx schreibt (bzw schauen warum nicht) ?
Hab vor ein paar Monaten eine zweite Instanz aufgezogen (mit Influx2, weil mehr als 8 Temp Sensoren) und nachdem ich mich lange nicht gekümmert habe, wollte ich das Problem mal lösen, das die Statistiken nicht mehr funtionieren (2 Stations, unterschiedliche Datenpunkte usw).
Hab ein bisschen gesucht und am Ende ist der Fehler wohl das die Daten nicht in influx2 landen.
Bucket, Org und Token habe ich gesetzt und wenn ich über den IOBroker/Influx Instanz teste komme ich auch drauf. In der Influx Gui sehe ich keine Daten im Bucket, genau wie über influxCLI.Nach IOBroker kommt alles wie erwartet (in die 2 DPs), aber die Statistiken werden halt nicht erzeugt.
Einzige Auffälligkeit ist der jq Fehler den ich nicht erklären kann, aber sonst...?
Im Debug ist der part leider nicht enthalten, ggf wäre das eine sinnvolle Erweiterung der Ausgabe:)Danke
WLAN-Wetterstation V3.5.0 - (c)2019-2025 by SBorg Config-Version: V3.5.0 Sub-Version : V3.5.0 'bc' installiert: [✓] 'jq' installiert: [✓] 'dc' installiert: [✓] [sudo] password for wetterstation: 'nc' in der Openbsd-Variante installiert: [✓] 'netcat' in Openbsd-Variante aktiv, alles korrekt [✓] Connection to <myip> 8087 port [tcp/*] succeeded! jq: error (at <stdin>:1): null (null) and number (2) cannot be divided (standard_in) 12: syntax error [ { "id": "javascript.0.Wetterstation2.Innentemperatur", "val": "17.20" }, { "id": "javascript.0.Wetterstation2.Aussentemperatur", "val": "17.20" }, ... }, { "id": "javascript.0.Wetterstation2.Info.Wetterstation_Gateway", "val": "GW2000A" }, { "error": "Error: datapoint \"javascript.0.Wetterstation2.FT0300_Temperatur_1\" not found" }, { "error": "Error: datapoint \"javascript.0.Wetterstation2.FT0300_Feuchte_1\" not found" }, ... { "id": "javascript.0.Wetterstation2.Info.Hitzeindex", "val": "" } ] Messwerteblock: 17.20 17.20 7.55 59 53 994.11 994.11 0 0 0 4.394 151.612 18.05.2025%2014:10:50 GW2000A_V3.1.5 0 0 151.612 GW2000A 27.40 33 temp1f 27.40 humidity1 33 temp2f 21.60 humidity2 47 temp3f 23.60 humidity3 40 temp4f 15.50 humidity4 63 temp5f 9.30 humidity5 47 temp6f 5.10 humidity6 51 temp7f 19.10 humidity7 47 temp8f 23.80 humidity8 43 lightning_num 0 lightning 31 lightning_time 1747162791000 tf_ch1 23.80 batt1 0 batt2 0 batt3 0 batt4 0 batt5 0 batt6 0 batt7 0 batt8 0 wh57batt 4 tf_batt1 1.46 Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)! Temperatur Innen : 17.20 °C Temperatur Aussen : 17.20 °C Taupunkt : 7.55 °C Gefühlte Temperatur : °C Luftfeuchte Innen : 59 % Luftfeuchte Aussen : 53 % ... UV-Index : Zeitstempel : 18.05.2025 14:10:50 Firmware : GW2000A_V3.1.5 Batteriestand: : Gateway-Modell : GW2000A Zusatzsensoren: temp1f : 27.40 humidity1 : 33 temp2f : 21.60 humidity2 : 47 temp3f : 23.60 humidity3 : 40 temp4f : 15.50 humidity4 : 63 temp5f : 9.30 humidity5 : 47 temp6f : 5.10 humidity6 : 51 temp7f : 19.10 humidity7 : 47 temp8f : 23.80 humidity8 : 43 lightning_num : 0 lightning : 31 lightning_time : 1747162791000 tf_ch1 : 23.80 batt1 : 0 batt2 : 0 batt3 : 0 batt4 : 0 batt5 : 0 batt6 : 0 batt7 : 0 batt8 : 0 wh57batt : 4 tf_batt1 : 1.46 Datenstring für ioBroker: javascript.0.Wetterstation2.Innentemperatur=17.20&javascript.0.Wetterstation2.Aussentemperatur=17.20&javascript.0.Wetterstation2.Taupunkt=7.55&javascript.0.Wetterstation2.Innenfeuchtigkeit=59&javascript.0.Wetterstation2.Aussenfeuchtigkeit=53&javascript.0.Wetterstation2.Druck_absolut=994.11&javascript.0.Wetterstation2.Druck_relativ=994.11&javascript.0.Wetterstation2.Regenrate=0&javascript.0.Wetterstation2.Regen_Tag=0&javascript.0.Wetterstation2.Regen_Woche=0&javascript.0.Wetterstation2.Regen_Monat=4.394&javascript.0.Wetterstation2.Regen_Jahr=151.612&javascript.0.Wetterstation2.Zeitstempel=18.05.2025%2014:10:50&javascript.0.Wetterstation2.Info.FW_Version=GW2000A_V3.1.5&javascript.0.Wetterstation2.Regen_Event=0&javascript.0.Wetterstation2.Regen_Stunde=0&javascript.0.Wetterstation2.Regen_Total=151.612&javascript.0.Wetterstation2.Info.Wetterstation_Gateway=GW2000A&javascript.0.Wetterstation2.FT0300_Temperatur_1=27.40&javascript.0.Wetterstation2.FT0300_Feuchte_1=33&javascript.0.Wetterstation2.DP50.1.Temperatur=27.40&javascript.0.Wetterstation2.DP50.1.Feuchtigkeit=33&javascript.0.Wetterstation2.DP50.2.Temperatur=21.60&javascript.0.Wetterstation2.DP50.2.Feuchtigkeit=47&javascript.0.Wetterstation2.DP50.3.Temperatur=23.60&javascript.0.Wetterstation2.DP50.3.Feuchtigkeit=40&javascript.0.Wetterstation2.DP50.4.Temperatur=15.50&javascript.0.Wetterstation2.DP50.4.Feuchtigkeit=63&javascript.0.Wetterstation2.DP50.5.Temperatur=9.30&javascript.0.Wetterstation2.DP50.5.Feuchtigkeit=47&javascript.0.Wetterstation2.DP50.6.Temperatur=5.10&javascript.0.Wetterstation2.DP50.6.Feuchtigkeit=51&javascript.0.Wetterstation2.DP50.7.Temperatur=19.10&javascript.0.Wetterstation2.DP50.7.Feuchtigkeit=47&javascript.0.Wetterstation2.DP50.8.Temperatur=23.80&javascript.0.Wetterstation2.DP50.8.Feuchtigkeit=43&javascript.0.Wetterstation2.DP60.1.Anzahl=0&javascript.0.Wetterstation2.DP60.1.Entfernung=31&javascript.0.Wetterstation2.DP60.1.Zeitpunkt=1747162791000&javascript.0.Wetterstation2.DP35.1.Temperatur=23.80&javascript.0.Wetterstation2.DP50.1.Batterie=0&javascript.0.Wetterstation2.DP50.2.Batterie=0&javascript.0.Wetterstation2.DP50.3.Batterie=0&javascript.0.Wetterstation2.DP50.4.Batterie=0&javascript.0.Wetterstation2.DP50.5.Batterie=0&javascript.0.Wetterstation2.DP50.6.Batterie=0&javascript.0.Wetterstation2.DP50.7.Batterie=0&javascript.0.Wetterstation2.DP50.8.Batterie=0&javascript.0.Wetterstation2.DP60.1.Batterie=4&javascript.0.Wetterstation2.DP35.1.Batterie=1.46&javascript.0.Wetterstation2.Regenstatus=kein Regen&javascript.0.Wetterstation2.UV_Belastung=&javascript.0.Wetterstation2.Windrichtung_Text=&javascript.0.Wetterstation2.Info.Hitzeindex= DATA von Wetterstation: PASSKEY=xxxxxx&stationtype=GW2000A_V3.1.5&runtime=18759972&heap=143032&dateutc=2025-05-18+14:10:50&tempinf=62.96&humidityin=59&baromrelin=29.356&baromabsin=29.356&tempf=62.96&humidity=53&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.173&yearlyrainin=5.969&totalrainin=5.969&temp1f=81.32&humidity1=33&temp2f=70.88&humidity2=47&temp3f=74.48&humidity3=40&temp4f=59.90&humidity4=63&temp5f=48.74&humidity5=47&temp6f=41.18&humidity6=51&temp7f=66.38&humidity7=47&temp8f=74.84&humidity8=43&lightning_num=0&lightning=31&lightning_time=1747162791&tf_ch1=74.84&wh26batt=0&batt1=0&batt2=0&batt3=0&batt4=0&batt5=0&batt6=0&batt7=0&batt8=0&wh57batt=4&tf_batt1=1.46&freq=868M&model=GW2000A&interval=16 Debug VAR: Installationsverzeichnis: /home/wetterstation/wetterstation IPP: <myip>:8087 WS_PORT: 1080 WS_POLL: 16 PRE_DP: javascript.0.Wetterstation2 WEB: HTTP WS_PROT: Ecowitt Zusatzsensoren: DP10/35/40/50/60/70/100/200/250/300: 0 | 1 | 0 | 8 | 1 | 0 | 0 | 0 | 0 | 0 WH31: 0 || WS90: 0 Bresser: 7009999 [0] Script-Version: V3.5.0 Config-Version: V3.5.0 Sub-Version: V3.5.0
-
-
@boronsbruder Danke.
2x access denied heute mittag, aber seitdem nichts - nehme an das waren Versuche von mir. Hab den wetterstation service neu gestartet um einen etwaigen "habe aufgegeben" Status zu resetten - nichts...
dafür habe ich aber nochmal nach der Doku geschaut und auch eine test option gefunden... aber das ergebnis sagt mir jetzt leider nicht so richtig was:
INFLUX_WEB=HTTP INFLUX_API=127.0.0.1:8086 INFLUX_BUCKET=wetterstation INFLUX_TOKEN=<token> INFLUX_ORG=<org> ~/wetterstation$ ./wetterstation.sh --influx_test Testing InfluxDB... min/max Aussentemperatur 24h: °C °C
Vieleicht habe ich auch ein falsches Verständnis - schreibt das shell skript nach Influx oder ist das der Influx Logger im IOBroker?
Hab natürlich dummerweise auch die Variablen umgebogen weil ich 2 Basis Stationen habe und nicht beide 0_userdata.0.Wetterstation.Aussentemperatur nutzen können...
Das ist mir schon bewusst geworden, wollte dann einfach das Statistik js anpassen um die anderen DP zu nehme, aber dann bin ich über den leeren Bucket gestolpertWenn das shell skript in den konfigurierten Bucket schreibt, dann müssten ja zu mindestens die Werte dort stehen (mit dem Standard Namen)- das Statistik Script würde sie nicht finden aber es wäre nicht leer.
Das impliziert, dass das Logging nach Influx über IOBroker läuft... und da logge ich gar nichts in die zweite Influx Instanz, sondern alles in meine alte Influx1 (weil da Grafana drauf zugreift). Das würde dann wohl erklären warum alles leer ist.
Das sollte aber dann ja kein Problem sein ein zusätzliches Logging in die 2. Influx instanz zu machen... muss ich nur mal rausfinden wie man den bucket anspricht oder ob das der dbname ist den ich dann gerade auf iobroker habe.
Muss ich die Tage mal weiterschauen, aber klingt jetzt erstmal logisch, danke.Edit - ah ich sehe, Bucket=DB, das ich brauche also 3 Log Adapter, einmal Influx v1 (alt), je einmal v2 pro Wetterstation.
Dann kann ich auch die default Namen nehmen, muss aber dann die v1 Influx Daten in die neue db übernehmen und dabei umnennen.Fragt sich dann nur wie ich das Statistik Skript für ältere Zeiträume laufen lassen kann (wenn es das nicht automatisch macht...)
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@babl sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Heute habe ich wieder komische Fehlermeldungen im Log.
Heute 01:03 error javascript.0 at processTicksAndRejections (node:internal/process/task_queues:95:5) Heute 01:03 error javascript.0 at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38 Heute 01:03 error javascript.0 Statistik:639:27) Heute 01:03 error javascript.0 Error in callback: TypeError: Cannot read properties of null (reading '0')
Das muß vom Statistik Script herkommen, vielleicht hast du mal zeit und schaust drüber. Danke
An alle Statistik-Skript Nutzer:
Auch hier erkennt er wohl wie er will. Der Datenpunkt-Inhalt [neue Version des Statistik-Skripts vorhanden?] ist ein String ("---" oder die GitHub-URL). Den Datenpunkt auf "gemischt" umstellen, dann ist Ruhe und die Fehlermeldung im Log ist weg:
Habe den DP auf "gemischt" umgestellt, Fehlermeldung kommt aber noch
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@babl sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Heute habe ich wieder komische Fehlermeldungen im Log.
Heute 01:03 error javascript.0 at processTicksAndRejections (node:internal/process/task_queues:95:5) Heute 01:03 error javascript.0 at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38 Heute 01:03 error javascript.0 Statistik:639:27) Heute 01:03 error javascript.0 Error in callback: TypeError: Cannot read properties of null (reading '0')
Das muß vom Statistik Script herkommen, vielleicht hast du mal zeit und schaust drüber. Danke
An alle Statistik-Skript Nutzer:
Auch hier erkennt er wohl wie er will. Der Datenpunkt-Inhalt [neue Version des Statistik-Skripts vorhanden?] ist ein String ("---" oder die GitHub-URL). Den Datenpunkt auf "gemischt" umstellen, dann ist Ruhe und die Fehlermeldung im Log ist weg:
Habe auch den Datenpunkt auf gemischt umgestellt,
Fehlermeldung kommt trotzdem noch.
Heute 01:03 error javascript.0 [2 Einträge] at processTicksAndRejections (node:internal/process/task_queues:95:5) Heute 01:03 error javascript.0 [2 Einträge] at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38 Heute 01:03 error javascript.0 [2 Einträge] Statistik:639:27) Heute 01:03 error javascript.0 [2 Einträge] Error in callback: TypeError: Cannot read properties of null (reading '0')
Gruß
-
@rand
Meines Wissens sagte @Sborg irgendwann "Mein Skript schreibt nichts in die InfluxDB"
Du musst die Objekte selbst mitschreiben.Zitat aus der Installationsanleitung "Wetterstation-Statistik":
Voraussetzung: laufendes WLAN-Wetterstation Shellscript, laufender Javascript- und InfluxDB-Adapter im ioBroker, aktiviertes logging per InfluxDB der drei benötigten Datenpunkte "Aussentemperatur", "Wind_max" und "Regen_Tag" (falls diese noch nicht für Grafana oä. schon geloggt werden)
-
Ja, mein letzter Beitrag war mehr eine Dokumentation meines Denkprozesses bei dem ich zum gleichen Ergebnis gekommen bin;)
-
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Meines Wissens sagte @Sborg irgendwann "Mein Skript schreibt nichts in die InfluxDB"
Mehr als einmal
Das macht der Influx-Adapter schon gut und komfortabel, da muss ich nicht nochmals das Rad erfinden.An alle Statistiker:
V2.0.7 liegt auf GitHub
Beseitigt den mitternächtlichen Fehler (DP kann auf "gemischt" bleiben oder wieder auf "Text" zurückgestellt werden).
Der Grund war/ist eine Änderung auf GitHub. Da schlug einfach die Update-Prüfung fehl.
Wie üblich bei Javascripten: Script stoppen, dann ersetzen und speichern, dann wieder starten. Man kann es zwar auch im laufenden Betrieb ersetzen/speichern und dann das Script nur restarten. Dann funktioniert es aber nicht, da die geänderte Funktion nicht ausgeführt (die wird nur beim Start [und nicht beim Restart] geladen) wird, sondern die alte aus dem Arbeitsspeicher. -
@sborg 3.5.0 ist installiert, fehlerfrei bis jetzt
statistikscript v2.07 ebenfalls installiert, bisher fehlerfrei, alles andere ob die Fehler nun nach Mitternacht weg sind, schreibe ich dir die nächsten Tage.
Update: Fehler sind weg
P.S.
Danke für deine Arbeit.
Gruß
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Meines Wissens sagte @Sborg irgendwann "Mein Skript schreibt nichts in die InfluxDB"
Mehr als einmal
Das macht der Influx-Adapter schon gut und komfortabel, da muss ich nicht nochmals das Rad erfinden.Lange nicht mitgelesen, lief ja;)
Noch eine (ggf schonmal beantwortete Frage) - wenn das Shell Skript ja keine direkte DB Verbindung hat, warum ist dann die Umstellung auf Influx2 relevant?
Das Interface zu Influx ist dann ja nur der Logging Adapter, der ja sowohl mit Influx 1 als auch 2 umgehen kann (neue Grafana Dashboards sind ein anderes Thema) ?Und wenn ich schon doofe Fragen stelle - ich nehme an die neueren "Smart" Geräte von Ecowitt (in meinem Fall WittFlow WFC01) werden eher nicht integriert werden oder?
Die pushen ja keine Wetterdaten sondern müssten per API abgefragt oder gesteuert werden, das ist ja ne völlig andere Logik...