NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra Dann stoppe den Service mal, ersetze nochmal von GitHub die sh und sub und probiere mal mittels
./wetterstation.sh --debug
ob es dann läuft. Falls ja, sollte sich auch der Service wieder korrekt starten lassen.Auftrag ausgeführt
Ergebnis
Bei Windy findet er was nicht
-
@sborg
ich bekomme nach dem update auf die neue Version folgende Meldungen beim Service, Daten werden aber übertragen. Ich hab die .sub und .sh neu geholt, dos2unix drüber gelassen, Service restart probiert und auch den iob neu gestartet, ändert alles nichts an der Meldung - Zeile 387 schaut aber eigentlich normal aus - seltsam.latzi@ioBroker:~$ sudo 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 Sat 2022-08-06 12:16:47 CEST; 14min ago Main PID: 170512 (wetterstation.s) Tasks: 5 (limit: 14334) Memory: 2.6M CPU: 25.320s CGroup: /system.slice/wetterstation.service ├─170512 /bin/bash /home/latzi/wetterstation.sh ├─204345 /bin/bash /home/latzi/wetterstation.sh ├─204346 timeout 66 nc -nlvw 1 -p 17550 ├─204347 tail -1 └─204348 nc -nlvw 1 -p 17550 Aug 06 12:26:58 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:27:29 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:28:03 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:28:34 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:29:06 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:29:37 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:30:11 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:30:35 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:30:57 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:31:29 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:26:58 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:27:29 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:28:03 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:28:34 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:29:06 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:29:37 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:30:11 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:30:35 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:30:57 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> Aug 06 12:31:29 ioBroker wetterstation.sh[170512]: /home/latzi/wetterstation.sh: Zeile 387: [: ==: Einstelliger (unärer> ~
Hast du eine Idee woran das liegen kann?
-
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bei Windy findet er was nicht
Nix daraus machen. Du nutzt influx nicht auf dem Rechner auf dem das Skript läuft (passiert nur einmalig bei --debug und steht eher zufällig unter windy, hat aber damit nichts zu tun) --> fix in V2.18.0
-
@latzi sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Hast du eine Idee woran das liegen kann?
Ja, er findet dort keinen "Zustand" [true/false] für das wunderground-Update.
Schau mal in der conf ob du nach den "wetter.com"-Einstellungen diesen Part hast:#Daten an Wunderground.com senden? [true/false] / default: false #Nur nötig und sinnvoll bei WS_PROTOKOLL=9 (DNS) wenn trotzdem auch Daten weiterhin an Wunderground.com gesendet werden sollen. WUNDERGROUND_UPDATE=false
...und falls ja, dass bei "WUNDERGROUND_UPDATE=" mindestens ein false steht. true ist nur für Stationen interessant die per DNS-Server arbeiten müssen. Es muss aber etwas nach dem Gleichheitszeichen kommen.
-
@sborg
In irgendeinem Archiv, ich glaube V2.16.0 ZIP, kam die Meldung in der Konsole, dass ein unbekannter Interpreter ^M verwendet werden soll, als ich händisch die Skripte überspielt habe, um zurück auf 2.16.0 zu kommen.
Ich weiß aber leider nicht mehr, ob es die wetterstation.sh oder der ws_updater:sh war.
Hab gestern zuviel rumgeschraubt um alles wieder zum Laufen zu bekommen...^M taucht ja auch im Zeilenumbruch auf, wenn eine Datei auf Windows editiert wurde, oder?
In der .tar.gz war der "Fehler" nicht... -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
WUNDERGROUND_UPDATE=
Vielen Dank! Läuft
Den Eintrag hatte ich nicht in meinerwetterstation.conf
, auch der nachfolgende Block mitUSE_AVG_WIND=false
war darin nicht enthalten - keine Ahnung wie ich das geschafft habe
Hab´s nun mit derwetterstation.conf
auf git abgeglichen. -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Neue Version des JavaScriptes Wetterstation-Statistik auf GitHub V1.2.0
Ich bekomme beim
VorTag
nur [null]-Werte, wie schaut´s bei euch aus?
Vermutlich wieder C&P-Fehler wegen der influxdb2, hab´s aber schon mehrfach versucht, wird nicht besserEdit: Problem gefunden!
-
@latzi Läuft das Script bei dir mit Influx 2?
-
@rushmed
grundsätzlich schon, es müssen "nur" die 2 sendto-Anweisungen auf influxdb2 angepasst werden und die Ergebnisse (result-Array) mit_value
anstattvalue
abgefragt werden. -
@boronsbruder + @All Zum Teil liegt das Problem an GitHub. Immerhin konnte ich mittlerweile eruieren und nachvollziehen was da wie genau schief lief (+ läuft).
Da es dann auch bei @Nashra nicht korrekt lief war es also für alle gleich. Damit konnte ich nun auch genau feststellen was schief läuft. GitHub kennt per se kein Linux-Skript (was gleich zum Problem werden wird...).
Da es ein größerer Aufwand mit editieren, zig mal umkopieren und es dann mittels GitHub Desktop zu publishen ist, wollte ich den etwas bequemeren und schnelleren Weg gehen. Da die Änderung bzgl. des OSeM-Problemchens nur ein zusätzliches timeout 10 an einer Stelle war, kann ich das doch auch direkt auf GitHub erledigen, schließlich bietet mir dies GitHub als Eigentümer des Repos an. Also geschwind die wetterstation.sub geöffnet und den "timeout 10" an passender Stelle eingefügt. Fertig. Käme es jetzt nicht zu obigem Problemchen...
GitHub fügt nun beim speichern an jede Zeile ein CR an und wie üblich bei Steuercodes werden die auch nicht angezeigt oder im Repo als Änderung am Quellcode vermerkt...
...und wenn ihr es dann ladet und auf Linux ausführen wollt... Ergebnis kennt man ja zur Genüge.Also zum Großteil mein eigener Fehler, aber immerhin weiß ich es nun und kann es zukünftig wenigstens vermeiden.
-
@latzi sagte in [Linux Shell-Skript] WLAN-Wetterstation:
auch der nachfolgende Block mit USE_AVG_WIND=false war darin nicht enthalten - keine Ahnung wie ich das geschafft habe
Das ist dann System bedingt. Grundsätzlich wird beim patchen der Konfiguration nach irgendwas gesucht, dies dann ersetzt, daran angehängt oder eingefügt. Das hat dann aus irgendeinem Grund bei dem "Wunderground-Update" nicht funktioniert.
Paar Updates später hat er dann nach "WUNDERGROUND_UPDATE=.*" gesucht (.* ist ein Platzhalter, ich weiß ja nicht ob ihr in dem Fall da true oder false stehen habt), um da dann den "USE_AVG_WINDY="-Part an-/einzufügen. Das ging jetzt aber wg. dem fehlenden Wunderground-Part in die Hose, weil er den nicht fand...
Das ist jetzt an alle freundlichen Mitleser gerichtet: Bitte keine Änderungen an der wetterstation.conf vornehmen! Konfigurieren dürft ihr natürlich wie ihr wollt
Wenn ihr aber (Kommentar-, Leer- etc.) -Zeilen einfügt, löscht oder editiert, kann es u.U. passieren, dass der Patcher nicht mehr korrekt arbeiten kann. Das ist keine Gängelei, man muss sich aber im Klaren sein, dass wir uns hier auf Betriebssystemebene bewegen. Da kann ich im gewissen Rahmen agieren, aber nicht auf alle Eventualitäten reagieren dir ihr ev. dort "angestellt" habt -
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
Das ist jetzt an alle freundlichen Mitleser gerichtet: Bitte keine Änderungen an der wetterstation.conf vornehmen! Konfigurieren dürft ihr natürlich wie ihr wollt
Wenn ihr aber (Kommentar-, Leer- etc.) -Zeilen einfügt, löscht oder editiert, kann es u.U. passieren, dass der Patcher nicht mehr korrekt arbeiten kann. Das ist keine Gängelei, man muss sich aber im Klaren sein, dass wir uns hier auf Betriebssystemebene bewegen. Da kann ich im gewissen Rahmen agieren, aber nicht auf alle Eventualitäten reagieren dir ihr ev. dort "angestellt" habtAha, jetzt sind WIR wieder schuld
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
wird aber tatsächlich dann so sein
schaut bei mir so aus
hast du da einen Tipp für mich?Erledigt. Hatte 1x
rowspan
übersehen. -
Tja, wer Urlaub hat und nicht mit testet bekommt "auch sein Fett weg..." ( @Negalein )
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Aha, jetzt sind WIR wieder schuld --> @Negalein : Hatte 1x rowspan übersehen.
Also Gegenfrage: Wer sonst (+noch eine Frage dazu ? ) ???
- Regel im SysAdmin-Handbuch: "ich war es nicht" [Die Schuld immer auf Andere schieben]
Habt ihr bei Grafana 9.x auch gelegentlich das Problem, dass ein Panel keine Werte hat? Ich dachte erst es liegt an der Menge (bei Wetterstation) der Panels, aber passiert auch mit einem einzelnen Panel. Komischerweise aber nie bei per iFrame in der VIS eingebundenen:
Die "Fehleranzeige" stimmt aber nicht, nach einem Refresh der Seite (oder ich nur den entsprechenden Query nochmals refreshe) geht es dann sofort...
-
@sborg Nein, habe ich nicht. Außer wenn im angezeigten Zeitintervall kein Messpunkt liegt.
-
@rushmed Danke, dann muss ich mal schauen wo es klemmt...
-
Neue Beta-Version des Wetterstation WLAN-Skriptes auf GitHub V2.18.0
(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.])
- + Höhe der Wolkenbasis
- + Windrichtung der letzten 10 Minuten als Text
- + Unterstützung für DP10/WN35 Blattfeuchte-Sensor
- + Ausgabe der Skriptversion in Datenpunkt beim Start
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 (neue Datenpunkte .Info.Wolkenbasis / .Info.Shellscriptversion / .Windrichtung_Text_10min); bei aktivierter Rest-API werden die Datenpunkte automatisch im ioB angelegt
./ws_updater.beta --patch
im Installationsverzeichnis ausführen und ev. Hinweise beachten- nun mittels
[sudo] systemctl restart wetterstation
den Service neu starten
Da sich die Wolkenbasis nicht im Sekundentakt verschiebt, wird diese, auch um Ressourcen zu sparen, nur im 5-Minutenraster berechnet (alle volle 5 Minuten: xx:00, xx:05, xx:10 ... xx:55 Uhr ).
Je tiefer die (mögliche) Basis liegt, desto eher ist bei einer Regenwahrscheinlichkeit auch mit Regen zu rechnen -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Neue Beta-Version des Wetterstation WLAN-Skriptes auf GitHub V2.18.0
läuft
dietpi@DietPi:/home/iobroker$ ./ws_updater.beta --patch ┌────────────────────────┐ │ │ │ WS-Updater V2.18.0 │ │ │ └────────────────────────┘ 'bc' installiert: [✓] 'jq' installiert: [✓] 'dc' installiert: [✓] 'unzip' installiert: [✓] 'patch' installiert: [✓] Zugriff auf 'Rest-API' im ioBroker: [✓] Soll die wetterstation.conf nun auf eine neue Version gepatcht werden? [J/N]: J Lege Sicherungskopie der wetterstation.conf an... Patche wetterstation.conf auf V2.18.0 ... Lege neues Object im ioBroker an: javascript.0.Wetterstation.Info.Wolkenbasis Fehlermeldung beim Anlegen des Datenpunktes: {"error":"Object already exists","id":"javascript.0.Wetterstation.Info.Wolkenbasis"} Lege neues Object im ioBroker an: javascript.0.Wetterstation.Info.Shellscriptversion Fehlermeldung beim Anlegen des Datenpunktes: {"error":"Object already exists","id":"javascript.0.Wetterstation.Info.Shellscriptversion"} Lege neues Object im ioBroker an: javascript.0.Wetterstation.Windrichtung_Text_10min Fehlermeldung beim Anlegen des Datenpunktes: {"error":"Object already exists","id":"javascript.0.Wetterstation.Windrichtung_Text_10min"} Fertig... Eventuelle Zusatzsensoren DP10/WN35 können nun eingetragen werden!
Und hätt ich zuerst
bei aktivierter Rest-API
gelesen, hätt ich mir etwas erspart. -
Gerade getestet.
DP10 scheint zu laufen Danke für das schnelle umsetzen.
Wolkenbasis wird auch angezeigt.
Das einzige was fehlt ist die Windrichtung_Text_10min im ioBroker aber das brauche ich nicht. -
@latzi OK, was genau muss ich wo tun oder kannst du mir dein getuntes Script zur Verfügung stellen?