NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
Danke, läuft jetzt. Muss man jedesmal beim Update die [3] Konfigurationdatei patchen auswählen oder habe ich einfach nur pech gehabt?
-
@chris76e sagte in [Linux Shell-Skript] WLAN-Wetterstation:
oder habe ich einfach nur pech gehabt?
Wie man es nimmt, es könnte aber auch einfach am Programmierer gelegen haben
Ist systembedingt beim Beta-Test nicht aufgefallen, da der eine etwas andere Routine nutzt. Normal startet man nur den Updater und wählt Punkt "4" für das Update aus, ab da funktioniert alles automatisch (zumindest bis zur V2.16.0 ) -
-
@björn-günther said in [Linux Shell-Skript] WLAN-Wetterstation:
Kaum nimmt man die richtige Api, schon geht es.
Allerdings offenbar nur im debug-Modus.
Starte ich das Script als Service läuft folgendes in /var/log/syslog:Jul 29 13:58:43 raspberrypi2 systemd[1]: Started Service für ioBroker Wetterstation. Jul 29 13:58:43 raspberrypi2 wetterstation.sh[7220]: Connection to 127.0.0.1 8087 port [tcp/*] succeeded! Jul 29 13:58:44 raspberrypi2 influxd[543]: ts=2022-07-29T11:58:44.004058Z lvl=info msg="Executing query" log_id=0bwJcch0000 service=query query="SELECT min(value) FROM iobroker.autogen.\"javascript.0.Wetterstation.Aussentemperatur\" WHERE time <= now() AND time >= '2022-07-29 00:00:00'" Jul 29 13:58:44 raspberrypi2 influxd[543]: [httpd] 192.168.0.49 - - [29/Jul/2022:13:58:44 +0200] "GET /query?db=iobroker&epoch=s&p=&pretty=true&q=SELECT+min%28value%29+FROM+%22javascript.0.Wetterstation.Aussentemperatur%22+WHERE+time+%3C%3D+now%28%29+and+time+%3E%3D+%272022-07-29+00%3A00%3A00%27&u= HTTP/1.1" 200 77 "-" "curl/7.74.0" cb7d7d39-0f35-11ed-80b1-000000000000 909 Jul 29 13:58:44 raspberrypi2 influxd[543]: ts=2022-07-29T11:58:44.033079Z lvl=info msg="Executing query" log_id=0bwJcch0000 service=query query="SELECT max(value) FROM iobroker.autogen.\"javascript.0.Wetterstation.Aussentemperatur\" WHERE time <= now() AND time >= '2022-07-29 00:00:00'" Jul 29 13:58:44 raspberrypi2 influxd[543]: [httpd] 192.168.0.49 - - [29/Jul/2022:13:58:44 +0200] "GET /query?db=iobroker&epoch=s&p=&pretty=true&q=SELECT+max%28value%29+FROM+%22javascript.0.Wetterstation.Aussentemperatur%22+WHERE+time+%3C%3D+now%28%29+and+time+%3E%3D+%272022-07-29+00%3A00%3A00%27&u= HTTP/1.1" 200 77 "-" "curl/7.74.0" cb81eb49-0f35-11ed-80b2-000000000000 940 Jul 29 13:58:44 raspberrypi2 wetterstation.sh[7277]: (standard_in) 1: syntax error Jul 29 13:58:44 raspberrypi2 wetterstation.sh[7305]: (standard_in) 1: syntax error Jul 29 13:58:45 raspberrypi2 wetterstation.sh[7331]: (standard_in) 1: syntax error Jul 29 13:58:45 raspberrypi2 systemd[1]: Stopping Service für ioBroker Wetterstation... Jul 29 13:58:45 raspberrypi2 systemd[1]: wetterstation.service: Succeeded. Jul 29 13:58:45 raspberrypi2 systemd[1]: Stopped Service für ioBroker Wetterstation. Jul 29 13:58:45 raspberrypi2 systemd[1]: wetterstation.service: Consumed 1.190s CPU time.
Starte ich es ohne debug auf der Konsole ist alles prima, das Problem scheint nur im Service-Modus aufzutreten.
@SBorg Könnte ich noch etwas anderes übersehen haben?
-
@björn-günther sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Allerdings offenbar nur im debug-Modus.
Das passt dann zur Fehlermeldung. Bei der Option "--debug" findet keine Influx-Abfrage statt. Genau die schlägt dann aber lt. Log beim normalen Start aber fehl.
Check bitte mal deine Influx-Einstellungen: IP, Port, Datenbankname, User und PW
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
Check bitte mal deine Influx-Einstellungen: IP, Port, Datenbankname, User und PW
Ich hatte für die Datenbank keinen User und PW gesetzt und das in der Config deshalb frei gelassen.
Nachdem ich im Influx-Adapter User und PW eingerichtet und in der .conf eingetragen habe, geht es jetzt offenbar mit auf der Shell gestartetem Script.Als Service gestartet wird /var/log/syslog weiterhin mit Fehlern befüllt:
ul 30 12:46:06 raspberrypi2 influxd-systemd-start.sh[6789]: InfluxDB started Jul 30 12:46:06 raspberrypi2 systemd[1]: Started InfluxDB is an open-source, distributed, time series database. Jul 30 12:46:19 raspberrypi2 systemd[1]: Started Service für ioBroker Wetterstation. Jul 30 12:46:19 raspberrypi2 wetterstation.sh[6880]: Connection to 127.0.0.1 8087 port [tcp/*] succeeded! Jul 30 12:46:20 raspberrypi2 influxd-systemd-start.sh[6790]: ts=2022-07-30T10:46:20.731418Z lvl=info msg="Executing query" log_id=0b~gFMU0000 service=query query="SELECT min(value) FROM iobroker.autogen.\"javascript.0.Wetterstation.Aussentemperatur\" WHERE time <= now() AND time >= '2022-07-30 00:00:00'" Jul 30 12:46:20 raspberrypi2 influxd-systemd-start.sh[6790]: [httpd] 127.0.0.1 - pi [30/Jul/2022:12:46:20 +0200] "GET /query?db=iobroker&epoch=s&p=%5BREDACTED%5D&pretty=true&q=SELECT+min%28value%29+FROM+%22javascript.0.Wetterstation.Aussentemperatur%22+WHERE+time+%3C%3D+now%28%29+and+time+%3E%3D+%272022-07-30+00%3A00%3A00%27&u=pi HTTP/1.1" 200 525 "-" "curl/7.74.0" d90542dc-0ff4-11ed-8002-dca6327ecb3b 153937 Jul 30 12:46:20 raspberrypi2 influxd-systemd-start.sh[6790]: ts=2022-07-30T10:46:20.889196Z lvl=info msg="Executing query" log_id=0b~gFMU0000 service=query query="SELECT max(value) FROM iobroker.autogen.\"javascript.0.Wetterstation.Aussentemperatur\" WHERE time <= now() AND time >= '2022-07-30 00:00:00'" Jul 30 12:46:20 raspberrypi2 influxd-systemd-start.sh[6790]: [httpd] 127.0.0.1 - pi [30/Jul/2022:12:46:20 +0200] "GET /query?db=iobroker&epoch=s&p=%5BREDACTED%5D&pretty=true&q=SELECT+max%28value%29+FROM+%22javascript.0.Wetterstation.Aussentemperatur%22+WHERE+time+%3C%3D+now%28%29+and+time+%3E%3D+%272022-07-30+00%3A00%3A00%27&u=pi HTTP/1.1" 200 525 "-" "curl/7.74.0" d93480e8-0ff4-11ed-8003-dca6327ecb3b 1437 Jul 30 12:46:21 raspberrypi2 wetterstation.sh[6945]: (standard_in) 1: syntax error Jul 30 12:46:21 raspberrypi2 wetterstation.sh[6971]: (standard_in) 1: syntax error Jul 30 12:46:22 raspberrypi2 wetterstation.sh[6998]: (standard_in) 1: syntax error Jul 30 12:46:23 raspberrypi2 wetterstation.sh[7024]: (standard_in) 1: syntax error Jul 30 12:46:23 raspberrypi2 wetterstation.sh[7050]: (standard_in) 1: syntax error Jul 30 12:46:24 raspberrypi2 wetterstation.sh[7078]: (standard_in) 1: syntax error Jul 30 12:46:25 raspberrypi2 wetterstation.sh[7104]: (standard_in) 1: syntax error Jul 30 12:46:25 raspberrypi2 wetterstation.sh[7130]: (standard_in) 1: syntax error Jul 30 12:46:26 raspberrypi2 wetterstation.sh[7157]: (standard_in) 1: syntax error Jul 30 12:46:26 raspberrypi2 wetterstation.sh[7185]: (standard_in) 1: syntax error Jul 30 12:46:27 raspberrypi2 wetterstation.sh[7211]: (standard_in) 1: syntax error Jul 30 12:46:27 raspberrypi2 systemd[1]: Stopping Service für ioBroker Wetterstation... Jul 30 12:46:27 raspberrypi2 systemd[1]: wetterstation.service: Succeeded. Jul 30 12:46:27 raspberrypi2 systemd[1]: Stopped Service für ioBroker Wetterstation. Jul 30 12:46:27 raspberrypi2 systemd[1]: wetterstation.service: Consumed 3.240s CPU time.
Viele Grüße
Björn -
@björn-günther sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Als Service gestartet wird /var/log/syslog weiterhin mit Fehlern befüllt
Ich habe jetzt versuchsweise in /etc/systemd/system/wetterstation.service das ExecStart geändert und ein sudo davor gesetzt.
[Unit] Description=Service für ioBroker Wetterstation [Service] User=pi Group=pi ExecStart=sudo /home/pi/wetterstation/wetterstation.sh [Install] WantedBy=multi-user.target
Das scheint, zumindest bei mir die Lösung gebracht zu haben.
Nochmal vielen Dank @SBorg
Viele Grüße
Björn -
@björn-günther sagte in [Linux Shell-Skript] WLAN-Wetterstation:
sudo /home/pi/wetterstation/wetterstation.sh
Hi,
das sollte so nicht sein. Klammern wir mal alles andere aus und ich mache einfach nur einen simplen C&P oä. Fehler, hat das Skript durch die root-Rechte volle Kontrolle über das System. Ein falscher "/" und ich kann dir bestenfalls dein System zerschießen!
Ich (+ nicht nur ich )habe zwar schon Fusseln am Mund, aber never ever etwas als root/sudo laufen lassen. Zum testen, oder wenn ich mal temporär erhöhte Rechte brauche, dann natürlich sudo, sonst aber sollte da tabu sein.Vermutlich gehören die Dateien nicht dem User "pi" oder es fehlen ihm die Rechte.
Was liefert denn einls -al /home/pi/wetterstattion/
?
Oder der User "pi" darf einfach kein Influx, was ich eher vermute... -
@negalein said in [Linux Shell-Skript] WLAN-Wetterstation:
"type": "string",
Der Type des Datenpunktes des Iobroker ist string .
Der SpeicherType in der InfluxDB ist numberUiiii, da hab ich auf einen Aaaaaalten Post geanwortet
-
@sborg
Hi,
ich habe mal auf die 2.17.0 beta aktualisiert und mal USE_AVG_WIND auf true gesetzt.
Kann es sein, dass für die Windgeschwindigkeit an wetter.com noch der Teiler durch 3,6 fehlt.
Da war ja damals das Problem, dass man nicht weiß, welchen Wert die dort erwarten und tendenziell war es eher m/s als km/h.Auf dem Screenshot von wetter.com habe ich markiert, wann ich das Update durchgeführt habe.
-
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Kann es sein, dass für die Windgeschwindigkeit an wetter.com noch der Teiler durch 3,6 fehlt.
Nicht nur "kann", "habe" ich total verpennt, Danke. Update kommt asap auf GitHub
-
@sborg Eine Frage zur Version 2.16: Ich nutze die neuen DPs *_10Min. Das funktioniert gut. Ich meine nun zu beobachten, dass sich die Windrichtung in Textform (SO) etc. weiterhin auf die Angabe der Windrichtung und nicht auf den gemittelten Wert "Windrichtung_10Min" bezieht. Hier könnte man doch auch den gemittelten Wert ansetzen, das wäre dann konsequent.
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Kann es sein, dass für die Windgeschwindigkeit an wetter.com noch der Teiler durch 3,6 fehlt.
Nicht nur "kann", "habe" ich total verpennt, Danke. Update kommt asap auf GitHub
Danke fürs schnelle Anpassen.
Ich glaube aber in meinem Fall geht es immer noch nicht.
Hast du es evtl. nur für die berechneten 10min Durchschnittswerte geändert?
Bei mir sind die 10min-Werte ja direkt aus der Wetterstation verfügbar. -
@martybr sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@sborg Eine Frage zur Version 2.16: Ich nutze die neuen DPs *_10Min. Das funktioniert gut. Ich meine nun zu beobachten, dass sich die Windrichtung in Textform (SO) etc. weiterhin auf die Angabe der Windrichtung und nicht auf den gemittelten Wert "Windrichtung_10Min" bezieht. Hier könnte man doch auch den gemittelten Wert ansetzen, das wäre dann konsequent.
Da ich gerne alle Möglichkeiten abdecke, ist die Lösung nach einiger Denkarbeit nun folgendermaßen ausgefallen (+ jepp, "Windrichtung als Text" ist nur der aktuellen Windrichtung zugeordnet). Da ich keine Einstellung dafür in der "conf" haben will (macht es für den Anfänger nur kompliziert; für den Rest auch irgendwann unübersichtlich), kommt einfach ein neuer Datenpunkt hinzu. Keine weiteren Einstellungen nötig und man kann einfach nutzen was man möchte, oder eben nicht möchte
Da ich allerdings (systembedingt) nach publishen einer Beta nachträglich keine neuen Datenpunkte mehr hinzufügen kann, kommt das dann erst mit in die V2.18.0
-
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ich glaube aber in meinem Fall geht es immer noch nicht.
Hast du es evtl. nur für die berechneten 10min Durchschnittswerte geändert?
Bei mir sind die 10min-Werte ja direkt aus der Wetterstation verfügbar....und auch das vergessen. Habe ich gestern Abend/Nacht noch korrigiert. Update liegt auf GitHub.
-
Neue Version des JavaScriptes Wetterstation-Statistik auf GitHub V1.1.3
- +Rekordwerte auch bei Einstellung "LAST_RAIN=DATUM [+UNIX]" in der wetterstation.conf
Wie immer zu finden im GitHub
Update nicht erforderlich solange man in der "wetterstation.conf" bei der Regenanzeige die Einstellung
LAST_RAIN=DIFF
nutzt. DATUM bzw. UNIX wurden dort für die Rekordwerte usw. bislang nicht unterstützt. -
@sborg Das klingt doch nach einem Plan. Reicht vollkommen, danke für die Berücksichtigung des Vorschlages.
-
Hi,
danke für das tolle Script. Ich habe es jetzt schon über ein Jahr im Einsatz.
Ist es vielleicht demnächst geplant auch den Blattfeuchtesensor zu unterstützen?Das müssten glaube ich diese Werte sein:
Froggit DP10 (Ecowitt WN35) Max Anz. 8&leafwetness_ch1=0 &leaf_batt1=1.50
DATA von Wetterstation: PASSKEY=xxxxxx&stationtype=EasyWeatherV1.6.4&dateutc=2022-08-02+11:03:48&tempinf=68.5&humidityin=69&baromrelin=30.006&baromabsin=29.929&tempf=81.3&humidity=44&winddir=204&winddir_avg10m=204&windspeedmph=1.3&windspdmph_avg10m=5.4&windgustmph=6.9&maxdailygust=11.4&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.020&monthlyrainin=0.020&yearlyrainin=15.957&solarradiation=681.41&uv=6&temp2f=69.6&humidity2=66&soilmoisture1=38&soilmoisture2=38&soilmoisture3=47&pm25_ch1=1.0&pm25_avg_24h_ch1=3.7&lightning_num=0&lightning_time=1658417603&lightning=37&tf_ch1=78.4&tf_ch2=62.2&leafwetness_ch1=0&wh65batt=0&wh25batt=0&wh26batt=0&batt2=0&soilbatt1=1.2&soilbatt2=1.4&soilbatt3=1.4&pm25batt1=5&wh57batt=3&tf_batt1=1.32&tf_batt2=1.52&leaf_batt1=1.50&freq=868M&model=HP1000SE-PRO_Pro_V1.8.1
-
@martybr sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@sborg Das klingt doch nach einem Plan....
Klingt nicht nur, s.u.
@christian90 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ist es vielleicht demnächst geplant auch den Blattfeuchtesensor zu unterstützen?
Nö
Aber wie üblich, wenn ich Daten dazu habe ist es normalerweise kein größeres Problem. Aber in Planung war der nicht...
V2.18.0 bisher (alless bereit umgesetzt)
V2.18.0 / 28.07.2022 + dummdidumm... + Windrichtung der letzten 10 Minuten als Text + Unterstützung für DP10/WN35 Blattfeuchte-Sensor
und dummdidumm funktioniert auch prächtig:
-
@sborg Jetzt musst du nur verraten, was dummdidumm ist. Ich bin da sehr neugierig