NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
nano
ist vermutlich der einfachste Editor auf Kommandozeile. -
@thomas-braun sagte in [Linux Shell-Skript] WLAN-Wetterstation:
nano
ist vermutlich der einfachste Editor auf Kommandozeile.Dann müsstw ich die Skriptdatei (wetterstation.js)auch in den Ordner verschieben?
-
@andre105 Irgendein Verzeichnis im /home des users. Der Pfad dorthin wird ja in der service-Datei angegeben.
-
Habe den Skript angelegt,gestartet und wieder gestoppt.
Jetzt in Putty den Befehl ausgefürt.
andre105@iobroker:~/wetter$ ./wetterstation.sh --debug wetterstation: ERROR #000 - Config-Version mismatch! benutzt: Settings benötigt wird: V2.10.0 andre105@iobroker:~/wetter$
Was ist das für ein Fehler?
-
@andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
benutzt: Settings benötigt wird: V2.10.0
Du hast offenbar die 1. Zeile der wetterstation.conf etwas verwurstelt. Die darf keinesfalls verändert werden, da hierüber geprüft wird ob die Versionen der Dateien zueinander passen.
In deinem Wetter-Verzeichnis:head -n 1 wetterstation.conf
Dann muss das dabei herauskommen (Format und Leerzeichen sind wichtig) :
### Settings V2.10.0 -----------------------------------------------------------
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
benutzt: Settings benötigt wird: V2.10.0
Du hast offenbar die 1. Zeile der wetterstation.conf etwas verwurstelt. Die darf keinesfalls verändert werden, da hierüber geprüft wird ob die Versionen der Dateien zueinander passen.
In deinem Wetter-Verzeichnis:head -n 1 wetterstation.conf
Dann muss das dabei herauskommen (Format und Leerzeichen sind wichtig) :
### Settings V2.10.0 -----------------------------------------------------------
Ja stimmt.
Jetzt kam dieses bei raus.
WLAN-Wetterstation V2.10.1 - (c)2019-2021 by SBorg Config-Version: V2.10.0 Sub-Version : V2.10.1 'bc' installiert: [✓] 'jq' installiert: [✓] [sudo] Passwort für andre105: ┌────────────────────────────────────────────────────────────┐ │ │ │ "netcat" ist nicht in der benötigten Version installiert! │ │ │ │ Soll er nun installiert werden? [J/N]: j │ │ │ └────────────────────────────────────────────────────────────┘ Paketlisten werden gelesen… Fertig Abhängigkeitsbaum wird aufgebaut… Fertig Statusinformationen werden eingelesen… Fertig Die folgenden NEUEN Pakete werden installiert: netcat-openbsd 0 aktualisiert, 1 neu installiert, 0 zu entfernen und 14 nicht aktualisiert. Es müssen 41,1 kB an Archiven heruntergeladen werden. Nach dieser Operation werden 114 kB Plattenplatz zusätzlich benutzt. Holen:1 http://ftp.de.debian.org/debian bullseye/main amd64 netcat-openbsd amd64 1.217-3 [41,1 kB] Es wurden 41,1 kB in 0 s geholt (104 kB/s). Vormals nicht ausgewähltes Paket netcat-openbsd wird gewählt. (Lese Datenbank ... 43532 Dateien und Verzeichnisse sind derzeit installiert.) Vorbereitung zum Entpacken von .../netcat-openbsd_1.217-3_amd64.deb ... Entpacken von netcat-openbsd (1.217-3) ... netcat-openbsd (1.217-3) wird eingerichtet ... update-alternatives: /bin/nc.openbsd wird verwendet, um /bin/nc (nc) im automatischen Modus bereitzustellen Trigger für man-db (2.9.4-2) werden verarbeitet ... Connection to 192.168.178.64 8087 port [tcp/*] succeeded!
WLAN-Wetterstation V2.10.1 - (c)2019-2021 by SBorg Config-Version: V2.10.0 Sub-Version : V2.10.1 'bc' installiert: [✓] 'jq' installiert: [✓] 'nc' in der Openbsd-Variante installiert: [✓] 'netcat' in Openbsd-Variante aktiv, alles korrekt [✓] Connection to 192.168.178.64 8087 port [tcp/*] succeeded! Messwerteblock: Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokol l)! Temperatur Innen : °C Temperatur Aussen : °C Taupunkt : °C Gefühlte Temperatur : °C Luftfeuchte Innen : % Luftfeuchte Aussen : % Windgeschwindkeit : km/h Windböengeschwindkeit : km/h max. Windböe : km/h Windrichtung : ° Windrichtung : Luftdruck absolut : hPa Luftdruck relativ : hPa Regenrate : mm/h Regenstatus : Regen seit Regenbeginn : mm Regen Stunde : mm Regen Tag : mm Regen Woche : mm Regen Monat : mm Regen Jahr : mm Regen Gesamt : mm Sonnenstrahlung : W/m² UV-Index : Zeitstempel : Firmware : Batteriestand: : Gateway-Modell : Zusatzsensoren: Datenstring für ioBroker: DATA von Wetterstation: Debug VAR: Installationsverzeichnis: /home/andre105/wetter IPP: 192.168.178.64:8087 WS_PORT: 6969 WS_POLL: 30 PRE_DP: javascript.0.We tterstation WEB: HTTP WS_PROT: Ecowitt DP40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 WH31: 0 Script-Version: V2.10.1 Config-Version: V2.10.0 Sub-Version: V2.10.1 Kommunikationsfehler! andre105@iobroker:~/wetter$
-
@thomas-braun Ich habe mal wieder drin rum gemehrt und nichts geht mehr:
Ich wollte ein anderes Verzeichnis in /home/pi anlegen und habe die Dateien dort hinein kopiert.
Nach Anpassen der ExecStart Datei auf den neuen Pfad findet das system trotz der genauen Angabe die Datei wetterstation.sh nicht. Es kommen keine Daten mehr rein... Wie kann ich nochmal von vorne anfangen?pi@raspberrypi:~ $ ./wetterstation.sh --data -bash: ./wetterstation.sh: Datei oder Verzeichnis nicht gefunden
und beim Ausführen im Verzeichnis:
pi@raspberrypi:~/Wetterscript $ ./wetterstation.sh --data -bash: ./wetterstation.sh: Keine Berechtigung
-
Jetzt geht es wieder. Ich hatte vergessen den TCP Port in der Config einzutragen. Dann kanns auch nicht gehen...
-
@sborg Danke für die hilfe,
zu 1.) Es hat geholfen auf Default zu stellen, hiernach hab ich die Messwerte bekommen.
2.) Danke für das Skript, funktioniert.
3.) Ich ersuche die Werte über Blockly auf die Alias Datenpunkt umzulegen. Man hat aber hier ja nur mit den Wissen die Info das es für die Abfrage von Windy und Opensensmap ist.
4.) Danke für das Skript, funktioniert.
Zu den Hintergrundbilder:
Leider konnte ich durch Grafana Contianer nicht dirket auf den Pfad zugreifen. Ich habe dann den Pfad /var/lib/grafana ausgelagert. Diese ientspricht aber nicht den Pfad ausden Skript und ich finde das Panel nicht bzw. wenn ich eine neues einfüge verschiebt sich alles.
Ich habe nun die Bilder unter /docker/grafana/plugins/yesoreyeram-boomtheme-panel/img/Wetter abgelegt. Folgendes Fehlerbild hat sich ergeben ich finde aber nicht die Einstellungen für den Pfad. (siehe Bild unten)Pimpmystation:
Sehr Interessant, onedrop Regen fände ich sehr wichtig. -
Hi,
wollte gerade per ws_updater meine Scripte aktualisieren, dabei ist dann das heraus gekommen:
pi@pi-iobroker:~/wetterstation $ ./ws_updater.sh ┌────────────────────────┐ │ │ │ WS-Updater V2.11.0 │ │ │ └────────────────────────┘ 'bc' installiert: [✓] 'jq' installiert: [✓] 'unzip' installiert: [✓] 'patch' installiert: [✓] Aktuelle Version (latest) auf GitHub: V2.11.0 vom 03.12.2021 Version im aktuellen Verzeichnis : V2.5.0 Informationen zum Release V2.11.0: ───────────────────────────────────────────────────────────── Neu/Änderungen im Release: ~ Windgeschwindigkeit bei wetter.com in m/s + Konfigurationsmöglichkeit des Kommunikationsfehlers (Issue #26) ~ Bugfix Speicherort beim logging ~ Ergänzung bei Prüfung auf valides Datenpaket (Außentemperatur hinzugefügt) + Hinweis auf korrekte WS_ID bei Wunderground-Protokoll falls Kommunikationsfehler Soll ein Update von WLAN-Wetterstation durchgeführt werden? [J/N]: J Führe Update aus... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 661 100 661 0 0 2633 0 --:--:-- --:--:-- --:--:-- 2633 100 29761 100 29761 0 0 52120 0 --:--:-- --:--:-- --:--:-- 52120 Archive: tmp.zip alle n▒tigen Dateien des Projektes inflating: ws_updater.sh inflating: wetterstation.js inflating: wetterstation.sh inflating: wetterstation.sub ┌────────────────────────┐ │ │ │ WS-Updater V2.11.0 │ │ │ └────────────────────────┘ 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.6.0 ... patching file ./wetterstation.conf Hunk #2 FAILED at 112. 1 out of 2 hunks FAILED -- saving rejects to file ./wetterstation.conf.rej Windy kann nun mittels ./wetterstation.sh --windy_reg eingerichtet werden ! Update ausgeführt. Soll der Service nun neu gestartet werden? [J/N]: j
Warum hat er die Conf von 2.5.0 auf 2.6.0 updaten den Rest aber direkt auf 2.11 ?
Ergebnis:
pi@pi-iobroker:~/wetterstation $ systemctl status wetterstation.service ● wetterstation.service - Service für ioBroker Wetterstation Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Wed 2022-01-05 08:22:59 CET; 3s ago Process: 4188 ExecStart=/home/pi/wetterstation/wetterstation.sh (code=exited, status=1/FAILURE) Main PID: 4188 (code=exited, status=1/FAILURE) Jan 05 08:22:59 pi-iobroker systemd[1]: Started Service für ioBroker Wetterstation. Jan 05 08:22:59 pi-iobroker wetterstation.sh[4188]: wetterstation: ERROR #000 - Config-Version mismatch! Jan 05 08:22:59 pi-iobroker wetterstation.sh[4188]: benutzt: V2.6.0 benötigt wird: V2.11.0 Jan 05 08:22:59 pi-iobroker systemd[1]: wetterstation.service: Main process exited, code=exited, status=1/FAILURE Jan 05 08:22:59 pi-iobroker systemd[1]: wetterstation.service: Failed with result 'exit-code'.
Wenn ich den Updater erneut starte sagt er mir nur alles sei aktuell.
EDIT: Habe die Conf Datei jetzt manuell aktualisiert und wollte somit nur auf den möglichen Bug hinweisen.
Vielleicht hat in diesem Zusammenhang noch jemand eine Idee zu diesem Problem: Hilfe zu Grafana
-
@andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Zeile #68| Kommunikationsfehler!
Du bekommst von dem Rechner auf dem das Skript läuft keine Verbindung zur Wetterstation bzw. diese sendet nichts an diesen Rechner.
Unter der Annahme, dass dein ioB-Rechner auch der ist auf dem das Skript läuft (IP x.x.x.64) und der Log-Ausgabe, müsstest du per WS View in der Station die IP 192.168.178.64 und den Port 6969 eingetragen haben? -
@tege0 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
3.) Ich ersuche die Werte über Blockly auf die Alias Datenpunkt umzulegen. Man hat aber hier ja nur mit den Wissen die Info das es für die Abfrage von Windy und Opensensmap ist.
Sieht mittlerweile auch anders bei mir aus. Ich baue öfters um, stelle es aber nicht öffentlich, da ich nicht auch noch Grafana-Support leisten möchte (was ich hier gerade tue... ).
Aber Blockly? Macht der Alias-Manager super. Wichtig ist nur die "kleine Umrechnungsformel":
@tege0 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Diese ientspricht aber nicht den Pfad ausden Skript und ich finde das Panel nicht bzw. wenn ich eine neues einfüge verschiebt sich alles.
Hintergrund und Skript? Welches Skript?
Zieh mal das Boom-Theme-Settings-Panel etwas breiter, dann kommt auch die Pfadangabe:
Das verschieben rührt daher, dass er einen Fehler (vermutlich findet er das Pic nicht) anzeigen möchte (erkennst du an der pinken Farbe), dies aber wegen der geringen Breite des Boom-Theme-Panels nicht schafft. -
@wendy2702 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Hunk #2 FAILED at 112.
1 out of 2 hunks FAILED -- saving rejects to file ./wetterstation.conf.rejDa ist schon was vom Update 2.5.0 auf 2.6.0 schief gelaufen. Kann ich so nicht mehr nachvollziehen bzw. hat sich damals niemand beschwert. Zwar nicht unbedingt schön - aber Haken dran
Lt. Status hat er aber auf die V2.6.0 gepatcht:
Jan 05 08:22:59 pi-iobroker wetterstation.sh[4188]: benutzt: V2.6.0 benötigt wird: V2.11.0
dann dürfte er aber nicht melden das alles schon aktuell ist? Lässt sich so auch nicht nachvollziehen...
Was aber falsch ist, dass er quasi dann nach einem Patch schon den Start des Service anbietet. Das ist hier falsch. Du kannst schlecht von einer vor-vor-...-Version auf die aktuelle Version updaten und dann nach einem einmaligen Patch schon gefragt werden ob du den Service nun starten willst. Das kann nie funktionieren...
Da muss ich den Updater nochmals überarbeiten (=so oft patchen bis zur aktuellen Version im Verzeichnis). -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@andre105 sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Zeile #68| Kommunikationsfehler!
Du bekommst von dem Rechner auf dem das Skript läuft keine Verbindung zur Wetterstation bzw. diese sendet nichts an diesen Rechner.
Unter der Annahme, dass dein ioB-Rechner auch der ist auf dem das Skript läuft (IP x.x.x.64) und der Log-Ausgabe, müsstest du per WS View in der Station die IP 192.168.178.64 und den Port 6969 eingetragen haben?Klasse,ich hatte die IP in der App nicht richtig.
Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)! Temperatur Innen : 22.72 °C Temperatur Aussen : 3.88 °C Taupunkt : 2.71 °C Gefühlte Temperatur : 1.64 °C Luftfeuchte Innen : 36 % Luftfeuchte Aussen : 92 % Windgeschwindkeit : 8.69 km/h Windböengeschwindkeit : 9.33 km/h max. Windböe : 53.27 km/h Windrichtung : 270 ° Windrichtung : W Luftdruck absolut : 994.72 hPa Luftdruck relativ : 1000.71 hPa Regenrate : 1.1 mm/h Regenstatus : leichter Regen Regen seit Regenbeginn : 1.4 mm Regen Stunde : .2 mm Regen Tag : 2.0 mm Regen Woche : 5.3 mm Regen Monat : 5.5 mm Regen Jahr : mm Regen Gesamt : 14.7 mm Sonnenstrahlung : 0.00 W/m² UV-Index : 0 Zeitstempel : 05.01.2022 19:30:14 Firmware : EasyWeatherV1.6.1 Batteriestand: : 0 Gateway-Modell : WS2900_V2.01.18 Zusatzsensoren:
Daten werden auch jetzt an den ioBroker weiter gegeben.
Cool
Dann kann es ja weiter gehen.
Welche Einstellung für den Autostart ist den zu empfehlen?
Möglichkeit #2 per cronjob ?Kann ich da was falsch machen wenn es nicht klappt?
-
@andre105 Na wird doch
Welche Einstellung für den Autostart ist den zu empfehlen?
Möglichkeit #2 per cronjob ?
Kann ich da was falsch machen wenn es nicht klappt?Ich würde #1 nehmen, ist im Betrieb einfach wesentlich bequemer, und ja, bei #2 kannst du bei einem Fehler das gesamte System grillen. Da sie direkt beim booten geladen werden, kann bei einem "passenden" Fehler durchaus nichts mehr gehen...
Aktuell aber nicht die Komfortmethode "./ws_updater.sh --service" lt. WiKi nutzen, die hat noch einen Fehler. Update dafür kommt noch.
-
@sborg
Jo,freu mich das es voran kommt.
Habe den Befehl mal eingegeben:
Kann ich das aus der Anleitung dort irgendwie eintragen?
-
Text markieren, mit der rechten Maustaste einfügen (funktioniert ggf. aber nicht mit jedem Terminal).
-
@thomas-braun
Wäre es so ok?
Bei ioBroker ist es admin.
Jetzt speichern?[sudo] Passwort für andre105: andre105@iobroker:~$ sudo nano /etc/systemd/system/wetterstation.service GNU nano 5.4 /etc/systemd/system/wetterstation.service * [Unit] Description=Service für ioBroker Wetterstation [Service] User=admin Group=admin ExecStart=/home/iobroker/wetterstation.sh [Install] WantedBy=multi-user.target
Die Description ist frei wählbar, der Service muss ggf. entsprechend Eurem Pfades angepasst werden, je nach dem wo Ihr das Skript liegen habt.
Was muss ich da noch ändern?
-
@andre105 Hängt halt davon ab wo das skript liegt.
ls -l /home/iobroker/wetterstation.sh
liefert?
Und dein username für den 08/15-Standarduser ist 'admin'?
(Solange er nicht root lautet...)Allerdings würde ich das skript dann auch in dessen /home deponieren. Jeder user hat sein eigenes Heim, da ist Unix sehr ordentlich.
-
Oder ist es andre015? Ist der Benutzer
Wenn ich mich auf den ioBroker anmelde ist es admin.
Weiß jetzt auch nicht genau.Ich habe ja die Wetterstation in /home/andre105/wetter