NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
Hallo
Ich brauche mal kurz Hilfe.
Ich habe keine min und max Temperaturwerte des Tages.Dafür brauche ich ja Influx.
Kann mir jemand sagen, was ich da config eintragen muss?
#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=192.168.10.13:8086 #Bucket, Token und Organisation der InfluxDB INFLUX_BUCKET= INFLUX_TOKEN= INFLUX_ORG=
Ich habe schon überall gesucht, aber finde nix.
Gruß
-
Bucket ist der Name der Datenbank, wie im Adapter eingetragen, den Token ebenso wie im Adapter eingetragen und Org deine Organization, wie in Influx eingetragen.
Wenn dein Influx Adapter funktioniert, dann solltest du all das haben.. ??
Wichtig, Influx V2 muss es sein. -
@ilovegym
Ach so ich habe Influx 1.x
Muss ich dann 2.0 erstmal installieren und 1.x deinstallieren?
Ich habe bei Bucket jetzt iobroker eingegeben jetzt habe ich Werte in den Datenpunkten.Sollte man denn auf 2.0 wechseln?
Ich habe neulich den IObroker neu aufgegesetzt und beim Rücksichern der Influx Daten gab es Probleme so dass ich nicht rücksichern konnte, da er dauernd gesagt hat, dass es die Datenbank schon gibt. -
-
Ok. Brauche ich denn zwingend 2.0? Ich habe ein 32 bit System. (Pi 4)
Seltsam ist nur, dass die Tagestemperaturwerte im Moment zwar angezeigt werden, nur bei min und max steht das gleiche, das sich auch mit steigender bzw sinkender Temperatur ändert. -
ist bei mir auch so, nutze influxdb2 und neuste scripte.
-
OK, dann liegt es wohl nicht an Influx.
Gibt es da schon eine Lösung?
Bei Influx zeigt er alle Änderungen nur bleibt der höchste bzw. niedrigste Wert nicht stehen. -
@g-hawk Ich komme zu den gleichen Schlussfolgerungen. Die Datenpunkte sind korrekt angelegt, und in der InfluxDB können diese korrekt abgefragt werden. InfluxDB ist V2 Script das aktuellste.
Das Problem dürfte in wetterstation.sub in der Funktion minmaxheute() liegen.
Wird anstelle von FLUXSTART=$(date +%Y-%m-%d --date="-1 day")"T${ZULU}:00:00Z"
mit FLUXSTART="-1d" gearbeitet werden die Werte sauber abgestellt. Was jetzt genau an der Berechnung oder am Parameter für influx falsch ist, muss ich noch genauer untersuchen. -
@gelbwichtel
muss mich revidieren. Schlussfolgerung und Test war nicht korrekt. Hatte vor Aufruf meines Test auf minmaxheute das setup nicht durchlaufen. Werte werden gesetzt, wenn das Skript "richtig" gestartet wird. Ich muss mir mal meine cronjobs genauer ansehen. -
@gelbwichtel
Ich kann nicht ganz folgen. Soll ich irgendwas ändern oder was testen?
Oder muss ich Influx 2.0 installieren und damit verbunden ein 64 bit System installieren? -
@chris76e Du verwechselst da zwei Sachen. Statistik-JS-Skript macht alles was mit Statistik zu tun hat. WLAN-Shell-Skript alles mit dem Thema Wetterstation.
Die 24h / Heute Min-Max-Werte liegen alle unter ...Wetterstation..., kommen also rein vom WLAN-Skript. Das macht an der Stelle nichts weiter als eine InfluxDB-Abfrage.Du solltest einfach mal versuchen ob es nach einem Restart ev. wieder funktioniert:
systemctl restart wetterstation
-
@sborg
Hallo
Habe ich getestet. Es stehen in min und max immer die gleichen Werte etwas zeitversetzt zu der aktuellen Außentemperatur. -
@g-hawk Solange du ein 32Bit System nutzt kannst du auch nur Influx 1.8 nutzen. Erst mittels 64Bit lässt sich ein InfluxDB 2.7 nutzen. Wenn du so erst mal weiter machen willst, kannst du die letzte V2.x.x (unter releases zu finden) nutzen.
Von der Funktion ist die mit der aktuellen V3.0.0 noch identisch. Über kurz oder lang (eher kurz) wirst du aber um 64Bit nicht herumkommen, da schon einiges unter 32 Bit nicht mehr supported wird.@g-hawk sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Habe ich getestet. Es stehen in min und max immer die gleichen Werte etwas zeitversetzt zu der aktuellen Außentemperatur.
So wie ich das sehe hast du doch aktuell keine korrekte Influx-Installation? Wenn du noch eine 1er hast kann die mit der aktuellen V3 des WLAN-Skriptes nicht funktionieren, da die mittels Flux die Influx abfragt was die 1.8 nicht kann. Da kommt irgendwas an Daten, nur nichts vernünftiges
-
@sborg
Ok. Dann werde ich morgen den Tag mal nutzen und ein 64 Bit System installieren.
Danke für die Info. -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Du solltest einfach mal versuchen ob es nach einem Restart ev. wieder funktioniert: systemctl restart wetterstation
Habe ich gemacht, änderts sich aber nichts. Unter javascript.0.Wetterstation.Info.Temp_Aussen_Heute_min und max kommen immer dieselben werte rein, und bei javascript.0.Wetterstation.Info.Temp_Aussen_24h_min und max keine Werte. Habe das Display von der Wetterstation auch einmal neugestartet.....
chris@ioBroker:~$ systemctl status wetterstation ● wetterstation.service - Service für ioBroker Wetterstation Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2023-05-16 19:12:51 CEST; 21min ago Main PID: 967052 (wetterstation.s) Tasks: 5 (limit: 21048) Memory: 2.7M CPU: 38.877s CGroup: /system.slice/wetterstation.service ├─967052 /bin/bash /home/chris/wetterstation.sh ├─983892 /bin/bash /home/chris/wetterstation.sh ├─983893 timeout 38 nc -nlvw 1 -p 1080 ├─983894 tail -1 └─983895 nc -nlvw 1 -p 1080 Mai 16 19:12:51 ioBroker wetterstation.sh[967063]: /home/chris/wetterstation.conf: Zeile 67: DATUM: Kommando nicht gefunden. Mai 16 19:12:51 ioBroker wetterstation.sh[967069]: Connection to 192.168.0.21 8087 port [tcp/*] succeeded! Mai 16 19:15:28 ioBroker wetterstation.sh[969312]: jq: error (at <stdin>:0): Cannot iterate over null (null) Mai 16 19:15:29 ioBroker wetterstation.sh[969315]: jq: error (at <stdin>:0): Cannot iterate over null (null) Mai 16 19:30:09 ioBroker wetterstation.sh[980843]: jq: error (at <stdin>:0): Cannot iterate over null (null) Mai 16 19:30:09 ioBroker wetterstation.sh[980846]: jq: error (at <stdin>:0): Cannot iterate over null (null) chris@ioBroker:~$
-
@sborg
Alles neu gemacht. 64bit. Läuft einwandfrei. -
Mai 16 19:12:51 ioBroker wetterstation.sh[967063]: /home/chris/wetterstation.conf: Zeile 67: DATUM: Kommando nicht gefunden.
Du hast auf jedenfall einen Fehler in der Config.
Ob der ursächlich für die anderen ist, kann ich aber nicht sagen -
Jupp
@chris76e Schau mal in deiner "conf" bei Zeile #67, da hast du wohl aus versehen die Raute gelöscht
# Datum = .....
Dann sicherheitshalber Skript stoppen
systemctl stop wetterstation
, kurz warten und wieder startensystemctl start wetterstation
.Daraus könnten die vier weiteren Fehler resultieren, zumindest kommen die genau zu jeder vollen Viertelstunde und genau da wird "Minmax24h" und "...heute" berechnet. Sind die nun weg, dürfte auch alles funktionieren
-
habe das geändert kein Fehler mehr, aber immer noch dasselbe. Hab auch mal die DP´s gelöscht und über das Script neu anlegen lassen. Hat auch nicht geholfen.
chris@ioBroker:~$ systemctl status wetterstation ● wetterstation.service - Service für ioBroker Wetterstation Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2023-05-17 10:30:07 CEST; 45min ago Main PID: 628054 (wetterstation.s) Tasks: 5 (limit: 21048) Memory: 2.8M CPU: 1min 28.219s CGroup: /system.slice/wetterstation.service ├─628054 /bin/bash /home/chris/wetterstation.sh ├─666172 /bin/bash /home/chris/wetterstation.sh ├─666173 timeout 38 nc -nlvw 1 -p 1080 ├─666174 tail -1 └─666175 nc -nlvw 1 -p 1080 Mai 17 10:30:07 ioBroker wetterstation.sh[628071]: Connection to 192.168.0.21 8087 port [tcp/*] succeeded!
-
@chris76e Keine Fehler mehr ist schon mal gut. Ev. klemmt es an der Influx-Konnektivität. Kleiner Test im Installationsverzeichnis stehend:
sudo systemctl stop wetterstation
. ./wetterstation.conf
. ./wetterstation.sub
minmax24h DEBUG
Danach Service wieder starten
systemctl start wetterstation