NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@west sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Hallo,
Wie kann man von einer froggit WH6000 PRO die Daten abgreifen?
@Mugel80Wie bei den anderen Stationen auch. Installieren, konfigurieren --> Daten im ioB haben
-
Sodele, Freunde der gepflegten Wetterstationsdaten
Alles umgezogen wie es soll, einen Tag lang weitere Fehler ausgemerzt und seit heute Mittag kurz vor 12:00 Uhr läuft die V3.0.0 nun testweise bei mir. Dabei kam es dann zu massig anderen Fehlern. Irgendwie auch nicht verwunderlich, da die Änderungen doch umfangreicher sind (+ich im Sinne der neuen Version auch von javascript nach 0_userdata umgezogen bin).
Mal sehen ob dann morgen die Statistik durch lief...Jetzt heißt es noch Grafana-Dashboard umbauen (nein ich nutze nicht InfluxSQL, dann brauche ich auch kein InfluxDB 2 wenn ich nicht auf FluxQL umstelle ), yeah, ich freue mich...
...und "High Noon" sieht man nun auch schön bei AWEKAS. Da is nu auch Ruhe mit der Änderung in der V3...
-
@sborg was mich stutzig macht über deine Aussage das man bei der Froggit WH6000 PRO die Wetterstation über ein AP konfigurieren kann.
-
@west Es gibt eigentlich nur zwei Möglichkeiten:
- Station kann auf einen externen, beliebigen Wetterserver (zB. mittels VS View[+]-App) konfiguriert werden
- man muss den DNS verbiegen
Letzteres geht immer, ist nur mehr Aufwand und schränkt ein wenig wegen des verwendeten Wunderground-Protokolles ein.
Das kann man mittels dnsmasq, Pi-hole oder wie erst vor kurzem umgesetzt, auch mittels eines OpenWRT erreichen.
Da wird dann "einfach" die DNS-Anfrage deines Displays/Gateways auf einen Rechner in deinem Netzwerk verbogen. Auf dem läuft dann mein Skript als "Mini-Wetterserver", nimmt das Datenpaket entgegen, bereitet es auf und schickt es an den ioB. -
Erwähnte ich schon "ich bin zu alt für den sch**ß..." ?
Shell-Skript:
Statistik:Ein Großteil der Fehler saß 60 Zentimeter vor dem Bildschirm...
Es hat natürlich nicht funktioniert. Logo, es muss ja Fehler verwerfen wenn er "Windboe" sucht, ich aber nun endlich auf "Windboee" umgestellt habe --> Ok, fixed
30 Minuten gesucht warum keine Daten kommen. Syntax richtig, keine Tippfehler,... hmm, kommt nix...
ne is klar, wenn man nun mehre Influx-Instanzen nutzt, sollte man vielleicht auch die passende eintragen......und es hagelt weiter Fehler... --> nun hoffentlich auch fixed.
Nächster Testlauf morgen 01:03 Uhr, aber die Daten landen zumindest aktuell schon mal dort wo sie hin sollen -
@west said in [Linux Shell-Skript] WLAN-Wetterstation:
Froggit WH6000 PRO
Siehe hier: Externer Server -> eintragen -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Shell-Skript:
Statistik:Statistik:
Es gab zwar noch einen echten "error" den ich mir nicht so ganz erklären konnte. Der betrifft die Update-Routine, nur daran hatte ich nichts geändert. Altes Log-Skript von der V1.3.2 raus gekramt, tja, da war der Fehler auch bereits vorhanden...
In der Simulation lief es nach fix nun durch, aber im "real life" noch ungetestet. Aber schließlich ist es- eine Beta
- wirft es nur einen Fehler im Log, läuft aber sonst durch
Zum Beta-Release:
- Influx DB V2.x nun zwingend nötig wenn man die Influx-Funktionalität möchte (Skript läuft aber auch weiterhin ohne InfluxDB)
- der Default-Pfad lautet nun
0_userdata.0.Wetterstation
. Dies hat so keine direkten Auswirkungen, man muss nur daran denken wenn man nun bspw. die "wetterstation.js" nutzt, dass hier nun der Pfad "0_userdata..." lautet. Wenn man bei "javascript..." bleibt muss man ihn eben entsprechend in der Datei abändern. Mehr nicht, alles bleibt beim alten - "Windboe" heißt nun überall korrekt "Windboee". Am einfachsten klont man den alten DP und trägt den neuen korrekten Namen ein, kopiert sich dessen Wert und trägt ihn in den neuen ein. Ggf. nun das Logging für den neuen DP wieder aktivieren und den alten DP löschen. Nutzer des @liv-in-sky - Skriptes müssen in den DPs
0_userdata.0.Statistik.Wetter.Data.20xx.yy
leider das "e" in den JSONs hinzufügen, sonst werden dort entweder bis Januar 2023 die Windböen korrekt angezeigt, oder nach Änderung des Skriptes dann ab Februar 2023. Zu erkennen am "undefined" bei den Windböen.
Neue Beta-Version des Wetterstation WLAN-Skriptes auf GitHub V3.0.0 - Breaking Release
(Beta-Releases lassen sich nicht! über den ws_updater.sh installieren, nur die *.conf lässt sich mit dem ws_updater.beta ggf. patchen [s.u.])
- ~ Breaking Release / Support für (und nur noch!) InfluxDB V2.x / Issue #41
- ~ Mindestintervall von 65 Sekunden beim Datenversand an AWEKAS.at
- + Support Zusatzsensor Curconsa FT0300 / Pull Request #55 (LukasTr1980)
- \ ~ Anzahl maximaler interner Sensoren von 30 auf 35 angehoben
Wie immer zu finden im GitHub
Update-Routine:
- wetterstation.sh, wetterstation.sub und ws_updater.beta (muss "ausführbar" sein
chmod +x ws_updater.beta
) ersetzen bzw. kopieren - wetterstation.js muss ebenfalls im JavaScript-Adapter ersetzt und einmalig ausgeführt werden, sofern man den Zusatzsensor der Curconsa-Station nutzen möchte (1)
./ws_updater.beta --patch
im Installationsverzeichnis ausführen und ev. Hinweise beachten- nun mittels
[sudo] systemctl restart wetterstation
den Service neu starten
(1) es empfiehlt sich danach den Simple-API-Adapter neu zu starten (entweder per WebIF oder einfach
iob restart simple-api.0
)Obige Hinweise zur V3 beachten
Neue Version des JavaScriptes Wetterstation-Statistik auf GitHub V2.0.0
- ~Bugfixing Update-Check-Routine
- ~Kompatibilität zu (und nur noch!) InfluxDB V2.x
Wie immer zu finden im GitHub
Neuen Parameter in den Einstellungen für "Bucket" beachten. Da die Abfrage per Influx-Adapter realisiert ist wird kein Token, Organisation etc. benötigt.
-
@sborg Danke für die tolle Arbeit!
Habe soeben aktualisiert. Sieht erstmal alles gut aus.
Wie kann ich sicherstellen, dass die Influx V2 Anbindung funktioniert?
Muss ich das in dieser Form in der .conf und im Statistik Script eingeben?#InfluxDB-Konfiguration für Influx V1.x.x / ohne InfluxDB alles leer lassen #IP und Port der API [xxx.xxx.xxx.xxx:xxxxx] INFLUX_API=192.168.178.20:8086 #Bucket, Token und Organisation der InfluxDB INFLUX_BUCKET=e9068c451292329c INFLUX_TOKEN=jNpmlLDhQjqUMawQWDR97ZL_WR71jMYhPslzjGVj7Cr6lGbWqFJEMZr2HthM-9pII54nuPs1MBlmLQOdlYkZaw== INFLUX_ORG=d20ef0ba0eda6d1b
const INFLUXDB_BUCKET='e9068c451292329c';
Oder in "Klarnamen"?
-
@rushmed Ich habe es nur mit Klarnamen versucht, der API müsste es aber egal sein.
Wie kann ich sicherstellen, dass die Influx V2 Anbindung funktioniert?
Wenn du hier bei den Temps relativ (=nicht älter als ~15-20 Minuten) aktuelle Werte beim TS/LC hast.
Die Min/Max/24 + 365-Tage Abfragen funktionieren nur per InfluxDB. -
@sborg Jepp, die hab ich.
Aber hier kommt nix:
-
@sborg Guten Morgen,
heute auf v3 umgestellt, ohne Probleme, neue Daten kamen sofort in die neu angelegten Datenpunkte in userdata, auch von Influx2 kann gelesen werden.
Die Influx-Instanz ist bei mir Nr.1, da die Instanz 0 noch von der V1 belegt wurde, also das funktioniert auch, nur so zur Info..Versionen: lxc unter Proxmox, Debian 11, Node 16, js-controller 4.0.24, javascript-Adapter 6.20
-
@rushmed Scheint aber dennoch zu funktionieren, die 8.72°C sehen lt. Timestamp aktuell aus. Der wird aber auch aus der InfluxDB gelesen und die Routine ist bei MinMax / Heute / 24h / 365 Tage identisch, nur der Abfragezeitraum variiert.
Scheint leider (oder soll ich da jetzt froh sein? ) ein reines Problemchen bei dir zu sein.Hast du mit InfluxDB V2 bei 0 angefangen oder Daten aus V1 im-/exportiert?
-
@ilovegym sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Die Influx-Instanz ist bei mir Nr.1, da die Instanz 0 noch von der V1 belegt wurde, also das funktioniert auch, nur so zur Info..
Danke für die Rückmeldung, ist bei mir ähnlich:
- 0: InfluxDB V1
- 1: V2 mit Retention "Never"
- 2: V2 mit Retention "7 Tage"
-
@sborg wann hast du geplant in Final Release zugehen?
Habe zurzeit noch Probleme mit mein Docker. -
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Da ich gefühlt nur noch Influx-Fragen beantworte
ist es sinnvoll, bereits jetzt die Daten auch in Influx 2 zu loggen?
Hätte dann nur 5 Wochen verloren?@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@negalein Ja, dann braucht man nur noch das Skript updaten und es geht sofort los.
wie sieht das aus, wenn nun die Daten in 0_userdata landen.
Dann fängt das Grafana Dashboard mit dem neuen DP0_userdata
an und alles vonjavascript.0
verschwindet aus dem Dashboard?
Und gibt es einen Trick, alle für das Dashboard benötigten0_userdata.0.Wetterstation
DP in einem Schwung für Influx zu aktivieren? -
Hab mir die JSON des Dashboards in nen Editor geladen und alle JavaScript mit userdata ersetzen lassen.
Das hat soweit super funktioniert, nur sind halt die History erst ab heute da, aber damit kann ich leben. -
@ilovegym sagte in [Linux Shell-Skript] WLAN-Wetterstation:
nur sind halt die History erst ab heute da, aber damit kann ich leben.
Danke, so hatte ich es auch vor.
Weißt du, ob es für das einen Trick in ioB gibt?
Und gibt es einen Trick, alle für das Dashboard benötigten 0_userdata.0.Wetterstation DP in einem Schwung für Influx zu aktivieren?
-
@negalein Moin,
ja, gibt es, aber dafuer muss man es von Anfang an "Richtig" machen, also mit Alias arbeiten, haetten wir vorher auf javascript.x.x n alias laufen gehabt, und den mit Influx getrackt, dann waere nix verloren.So faellt mir erstmal nix ein, es sei denn, man kann in Influx da n Link zu den alten Daten setzen.. oder du nimmst fuer die History die alte View, und fuer aktuelles die neue View mit den userdata Datenpunkten..
-
@west sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@sborg wann hast du geplant in Final Release zugehen?
Habe zurzeit noch Probleme mit mein Docker.Geplant eigentlich gar nicht. Ich warte immer so 1-2 Wochen nach dem Beta-Release ab ob da noch Fehlermeldungen kommen die ev. gefixt werden müssen. Ist dann "Ruhe" folgt das Release
btw: ich habe auch keinen festen "Sonntags" oä. Releasetag, sondern einfach so wenn es passt. -
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Dann fängt das Grafana Dashboard mit dem neuen DP 0_userdata an und alles von javascript.0 verschwindet aus dem Dashboard?
Wenn du es nicht vorher patchst, ja.
Ich habe die V1 und V2 parallel am laufen und logge in beides. Dann habe ich mir die passenden DPs einzeln aus der V1 exportiert. In der exportierten CSV habe ich dann mittelssed
(geht auch unter Windows mittels zB. notepad++) alle "javascript.0" durch "0_userdata.0" ersetzt und die CSV in das passende Bucket (hier eine Retention von "never" da ich diese Daten behalten will) importiert. Danach das loggen der entsprechenden DPs in die V1 deaktiviert und die Datenreihe in der V1 gedroppt. So komme ich nicht durcheinander was schon umgestellt ist und was nicht.Was nicht aufgehoben werden muss (zB. Windrichtung etc. muss ja in die Influx, sonst kann man es so nicht in Grafana anzeigen, außer man nutzt dort SimpleAPI) landet nun im Bucket "temporäre Daten", welcher eine Retention von 7 Tagen hat (=alles darin wird also immer 7 Tage nach Erstellung gelöscht).
Mittlerweile ist so meine InfluxDB schon um ~1GB geschrumpft, da nun kein "Müll" mehr anfällt.
...und es wird noch viel weniger werden