NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
@negalein Du hast offensichtlich keinen "Default-Editor" angegeben. Eigentlich könnte ich auch 'nano wetterstation.conf' aufrufen, aber nicht jeder hat 'nano' und nicht jeder kennt sich notfalls mit 'vi' aus. Deswegen nehme ich den Editor den der User ausgewählt hat...
Hmm, da muss ich mir mal Gedanken machen, aber wahrscheinlich geht es dann nur so: kein Editor definiert --> nimm 'vi' (oder falls vorhanden 'nano')
Unicode will er offensichtlich bei dir auch nicht für die "Haken"......und "setrlimit" scheint auch ein Problem bei dir zu sein (hat aber nix mit dem Skript zu tun ) :https://forum.andronix.app/t/fix-sudo-setrlimit-rlimit-core-operation-not-permitted/53
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Du hast offensichtlich keinen "Default-Editor" angegeben
nachgeholt. Ist jetzt Nano und Wetterkonfig wird geöffnet.
...und "setrlimit" scheint auch ein Problem bei dir zu sein
auch nachgeholt.
Jetzt läuft alles durch.
Verbindung baut er nicht auf, da ich bewusst die IP nicht geändert habe. Sonst funkt mir der Test in die fertige rein. -
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Das Skript ist ja ein Shell-Skript und es gibt das Shell-Kommando "iobroker state set <id> <value> [<ack>]", um Datenpunkte im iobroker zu setzen.
Jetzt stellt sich die naheliegende Frage, ob es nicht Sinn machen würde das Shell-Kommando statt dem curl-Aufruf zu nutzen. Dann wäre man auch unabhängig von einem zusätzlichen Adapter.Hi erst mal
Ich sag mal Jein. Prinzipiell bräuchte man die API nicht unbedingt, aber wir sind mittlerweile bei >(möglichen) 100 Messwerte, ohne die die ich noch zusätzlich generiere. Die alle einzeln abzusetzen müllt die Kommunikation nicht nur zu, es könnte auch zeitlich mit dem folgenden Datenpaket eng werden. Per API werden die weitestgehend in einem Paket gesendet.@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Gibt es eine Chance das Wetterstatistik Skript zu erweitern, so dass man auch die Daten aus MySQL nutzen könnte?
Pauschal ja, da es unter einer handvoll Abfragen sind (glaube 2 oder 3). Allerdings funktionieren ein paar Zusatzfunktionen des Shell-Skriptes ebenfalls per Influx.
Ich will keine Werbung für Influx machen, aber Influx ist dafür einfach die bessere Wahl, da es eine Timeline-Datenbank ist und dafür optimiert. Du hast halt den fortlaufenden Zeitstrahl und dann immer einen Messwert. MySQL bläht das dann extrem auf, ist aber die 1. Wahl wenn man mehrere Querreferenzierungen braucht wie zB. Filmsammlung "ich möchte alle Filme vor 2005 mit Clint Eastwood und John Wayne". Da versagt Influx völlig.
Soll trotzdem kein K.O.-Kriterium gegen MySQL sein, nur muss ich da auch die Zeit für finden, und das ist kein 5 Minuten Job.@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Da sind die Sensoren DP300, DP40 und DP80 enthalten, die, wie ich gerade gesehen habe, nicht bei den unterstützten Sensoren dabei sind.
Ist es möglich diese im Skript hinzuzufügen? Und falls ja, welche Informationen werden benötigt?Ich sehe nichts spezielles was es verhindern würde. Allerdings sieht man es erst wenn auch Daten der Sensoren vorliegen. Bisher liefen aber alle und die drei sind nichts super spezielles. Ich brauche dann einfach nur mal einen Datenstring (
./wetterstation.sh --data
) mit den eingerichteten/aktivierten Sensoren, mehr nicht. Dann sind die auch zügig drin -
@negalein sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Jetzt läuft alles durch.
Die "\u2713 - Haken" muss aber ich noch fixen, die kommen allerdings nicht vom Updater, sondern vom Shell-Skript...
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Die "\u2713 - Haken" muss aber ich noch fixen
Ahh, das soll der Hacken sein. Dachte mir schon was das bedeuten soll.
-
@negalein Habe ich bis dato noch nicht im Shell-Skript geändert. Nicht jeder Terminal-Emulator kommt aber mit dem Unicode-Steuerzeichen zu Recht, direkt als Haken funktioniert es dann aber
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
aber warst du das mit der Klemsia bei Andy?
jup, das war meinereiner. das erste mal, daß ich was gewonnen habe.
wollte die klemmsis eh schon seit einiger zeit testen. jetzt kann ich ohne kosten... -
Vielen Dank für die ausführlichen Antworten.
Das wichtigste ist erst einmal, dass es überhaupt funktioniert.
Ich würde dann die entsprechenden Daten liefern, sobald ich sie habe, damit die Sensoren eingebaut werden können.
Das Thema curl Aufruf vs. Shell-Kommando habe ich verstanden, im Endeffekt wahrscheinlich ein Performance Thema und somit begründet.
Bzgl. der MySQL Anbindung, das wäre eine nice-to-have, weil ich es eh schon nutze, aber im Notfall muss ich eben noch eine InfluxDB aufsetzen, wäre jetzt auch nicht so dramatisch -
@da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:
jup, das war meinereiner. das erste mal, daß ich was gewonnen habe.
Ich habe letzte Weihnachten auch das 1. mal gewonnen, dann aber gleich den Hauptpreis. Kpl. Arbeitskleidung von Nitras mit div. Arbeits-Hosen, Jacken, Mütze, Arbeitshandschuhe, Sicherheitsschuhe...
Ich mache aber nicht um des Gewinnenswillen mit, sondern nur wenn ich es auch wirklich brauchen kann. So freut sich bestimmt einer mehr bspw. über die Forstnerbohrer, als wenn sie bei mir im Regal verstauben...@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bzgl. der MySQL Anbindung, das wäre eine nice-to-have, weil ich es eh schon nutze, aber im Notfall muss ich eben noch eine InfluxDB aufsetzen, wäre jetzt auch nicht so dramatisch
Da würde ich aktuell vom Notfall ausgehen, denn eine Umsetzung sehe ich eher Mittel- denn Kurzfristig, da du auch aktuell der Einzige bist. Somit steht es auf der Prioliste nicht ganz oben
Bei den Sensoren sieht das dann anders aus, da ja ev. noch weitere Nutzer nachkommen (oder sie bereits halt nicht unterstützt nutzen) und das auch in 1-2 Stunden normalerweise umgesetzt ist. -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:
jup, das war meinereiner. das erste mal, daß ich was gewonnen habe.
Ich habe letzte Weihnachten auch das 1. mal gewonnen, dann aber gleich den Hauptpreis. Kpl. Arbeitskleidung von Nitras mit div. Arbeits-Hosen, Jacken, Mütze, Arbeitshandschuhe, Sicherheitsschuhe...
Ich mache aber nicht um des Gewinnenswillen mit, sondern nur wenn ich es auch wirklich brauchen kann. So freut sich bestimmt einer mehr bspw. über die Forstnerbohrer, als wenn sie bei mir im Regal verstauben...arbeitskleidung ist mir schnuppe. wenn, dann mach ich nur bei dem mit, was ich brauchen kann. genau darum hab ich nur auf die klemmsis mich beworben. das andere war für mich nicht wichtig. so gesehen, sind wir ja eh am selben level. andere sollen das gewinnen, was sie brauchen zu glauben.
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bzgl. der MySQL Anbindung, das wäre eine nice-to-have, weil ich es eh schon nutze, aber im Notfall muss ich eben noch eine InfluxDB aufsetzen, wäre jetzt auch nicht so dramatisch
Da würde ich aktuell vom Notfall ausgehen, denn eine Umsetzung sehe ich eher Mittel- denn Kurzfristig, da du auch aktuell der Einzige bist. Somit steht es auf der Prioliste nicht ganz oben
Bei den Sensoren sieht das dann anders aus, da ja ev. noch weitere Nutzer nachkommen (oder sie bereits halt nicht unterstützt nutzen) und das auch in 1-2 Stunden normalerweise umgesetzt ist.@viper4iob ich würde sagen, steig um auf influx. einfach, weils mit grafana einfacher ist und da auch mehr hilfe zu erwarten ist.
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Bzgl. der MySQL Anbindung, das wäre eine nice-to-have, weil ich es eh schon nutze, aber im Notfall muss ich eben noch eine InfluxDB aufsetzen, wäre jetzt auch nicht so dramatisch
Da würde ich aktuell vom Notfall ausgehen, denn eine Umsetzung sehe ich eher Mittel- denn Kurzfristig, da du auch aktuell der Einzige bist. Somit steht es auf der Prioliste nicht ganz oben
@da_woody said in [Linux Shell-Skript] WLAN-Wetterstation:
@viper4iob ich würde sagen, steig um auf influx. einfach, weils mit grafana einfacher ist und da auch mehr hilfe zu erwarten ist.
Das mit Grafana habe ich auch schon mitbekommen, das ist mit MySQL etwas umständlich.
Und ja, der generelle Support in Verbindung mit influx ist einfach besser.
Ach ja: die InfluxDB läuft seit gestern und ich lasse auch schon testweise ein paar Datenpunkte aus iobroker rein schreiben -
Direkt umsteigen braucht man nicht zwangsweise. Influx ist recht ressourcenschonend, man kann es also auch einfach parallel zu MySQL laufen lassen. MySQL habe ich zwar keine, bei mir läuft aber auch noch eine MongoDB für meinen Unifi-AP, da sich hier wegen eines einzelnen APs ein CloudKey nicht wirklich lohnt.
...OK, und nu zu spät. Warum müsst ihr immer posten während ich tippe
-
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
Direkt umsteigen braucht man nicht zwangsweise. Influx ist recht ressourcenschonend, man kann es also auch einfach parallel zu MySQL laufen lassen. MySQL habe ich zwar keine, bei mir läuft aber auch noch eine MongoDB für meinen Unifi-AP, da sich hier wegen eines einzelnen APs ein CloudKey nicht wirklich lohnt.
...OK, und nu zu spät. Warum müsst ihr immer posten während ich tippe
Läuft jetzt beides parallel. iobroker kann ja auch mit beidem parallel umgehen, ist also kein Problem.
MySQL kann ich auch gar nicht abschalten, da hängen noch so paar Dinge wie z.B. Nextcloud, Wordpress und Roundcube dran -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
...OK, und nu zu spät. Warum müsst ihr immer posten während ich tippe
schneller tippen?
-
Jetzt hätte ich doch nochmal eine Frage.
Bei mir läuft jetzt InfluxDB 1.8.10. Ich habe gesehen, dass es aber schon Version 2.x gibt.
Und es gibt seit August auch einen iobroker Adapter 2.x, auch wenn der scheinbar nicht im stable Repository angeboten wird.
D.h. iobroker-seitig würde das wahrscheinlich funktionieren.
Da im Shell-Skript die InfluxDB HTTP API direkt angesprochen wird, wäre nun die Frage, ob das Wetterstations-Skript damit klar kommen würde?InfluxDB 2.0 ist ja jetzt eine Art Komplettpaket inkl. WebUI, ich weiß also nicht, was sich da noch so alles geändert hat.
Es scheint aber in V2 eine Kompatibilität zu V1 zu geben :
https://docs.influxdata.com/influxdb/v2.0/reference/api/influxdb-1x/Da ich nun quasi auf der grünen Wiese anfange, hätte ich da schon Interesse auf die 2.0 zu gehen, auch weil die eine Admin WebUI enthält.
Hier noch paar Infos zu V2:
https://www.influxdata.com/blog/introducing-the-next-generation-influxdb-2-0-platform/EDIT:
Die sendTo Aufrufe haben sich im iobroker Adapter für InfluxDB V2 geändert:
https://github.com/ioBroker/ioBroker.influxdb#influx-2x
Beim direkten InfluxDB HTTP API Zugriff bin ich mir nicht so sicher.
Die V2 API nutzt keine SQL basierte Sprache mehr, sondern Flux. Wenn ich aber oben den Link zur V1 Kompatibilität ansehe, dann stehen da noch SQL Befehle.
Auf jeden Fall müssten aber die sendTo Aufrufe im Statistik Skript für V2 angepasst werden, damit es funktioniert. -
@da_woody sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
...OK, und nu zu spät. Warum müsst ihr immer posten während ich tippe
schneller tippen?
Zu meiner Zeit nix Computer(-Tastatur), nur Schreibmaschine und einen Kurs habe ich bis dato nicht besucht. Also 6-Finger-Eigensystem und meist eh immer viel Text...
@viper4iob Das Shell-Skript sollte bereits mit V2 laufen, da habe ich schon Anpassungen dafür vorgenommen. Hier ist es auch nebensächlich ob V1 oder V2.
Beim JavaScript geht das nicht ganz so einfach. Ich finde es vom Handling (auch zeitintensiv) aber nicht gerade prickelnd dann mit zwei unterschiedlichen Skriptversionen zu arbeiten. Das derzeitige KO-Kriterium für einen V2-Support ist aber, dass der ioB selbst noch nicht die V2 im stable unterstützt. Eine Beta die auf einer Beta aufbaut... Da ist Ärger und Arbeit vorprogrammiert. Wer will kann es aber gerne probieren und die Abfragen anpassen. Ich habe aktuell dafür wenig Zeit, meine eigenen privaten Baustellen haben da Vorrang (hat ja nur 5 Tage gedauert bis ich hier wieder mal Online bin...)
-
@sborg
OK, danke für die Info.
Dann bleibe ich erst mal auf der InfluxDB V1. -
@sborg said in [Linux Shell-Skript] WLAN-Wetterstation:
./wetterstation.sh --data
Ich habe jetzt mal die Wetterstation in Betrieb genommen.
Nochmal zur Info, ich habe die Froggit HP1000SE Pro Single Sensor Edition. D.h. dabei ist:- das Display mit dem Innensensor (Temp, Luftfeuchte, Luftdruck)
- DP300 Anemometer, UV-/Lichtsensor
- DP80 Regensensor
- DP40 Temperatur/Luftfeuchte Sensor für außen
Die Station sendet nun die Daten im Ecowitt Format.
Ich habe dann das Skript runtergeladen und mit ./wetterstation.sh --data ist erst einmal nichts passiert. Habe dann noch --debug angehängt, keine Änderung. Danach habe ich in der config mal IPP auf 127.0.0.1 gesetzt, wo die Simple RESTful API zu erreichen ist. Und dann kam etwas mehr, aber leider nicht genug
Wenn ich dann ./wetterstation.sh --data --debug ausführe, kommt zwar scheinbar das Paket an, zeigt aber keine Daten:Connection to 127.0.0.1 8087 port [tcp/*] succeeded! Warte maximal 66 Sekunden auf Datenpaket der Wetterstation... Listening on 0.0.0.0 1080 Connection received on 192.168.0.100 26435 POST / HTTP/1.1
Es wird nur der Pfad "/" angezeigt
Ich habe jetzt einfach mal nc -lv 1080 ausgeführt und bekomme diesen Content (den PASSKEY habe ich mal abgeändert):PASSKEY=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA&stationtype=EasyWeatherV1.5.9&dateutc=2021-10-21+12:03:15&tempinf=71.6&humidityin=60&baromrelin=28.733&baromabsin=28.733&tempf=70.7&humidity=60&winddir=280&winddir_avg10m=299&windspeedmph=11.9&windspdmph_avg10m=8.5&windgustmph=15.9&maxdailygust=22.8&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&yearlyrainin=0.000&solarradiation=176.16&uv=1&wh68batt=1.88&wh25batt=0&wh26batt=0&freq=868M&model=HP1000SE-PRO_Pro_V1.7.4
Innen- und Außentemperaturensor liegen zur Zeit im gleichen Raum, also nicht wundern, warum die fast das Gleiche anzeigen.
Die Batteriewerte machen nicht so viel Sinn, wobei ich jetzt auch nicht weiß wie die Sensornamen DP zu WH zu übersetzen sind.Reichen die Infos so erst mal aus, um die Sensoren in das Skript einzubauen?
-
Moin Leute. Etwas OT, aber wo soll ich Fragen, wenn nicht hier? Seit einigen Tagen liefert meine Wetterstation WH3000SE weder die Außentemperatur noch die Außenluftfeuchtigkeit mehr. Alle andere Werte werden weiterhin übermittelt.
Hat jemand ähnliche Ausfälle? Wer kennt den internen Aufbau der Station? Ich gehe davon aus, dass das ein Sensor ist, der die beiden Werte liefern soll und der jetzt tot ist. Kann das einer bestätigen?
Ich habe noch Garantie auf das Gerät und werde morgen den Support kontaktieren. Für Hinweise wäre ich trotzdem dankbar.
PASSKEY=AAAAA&stationtype=GW1000A_V1.6.8&dateutc=2021-10-21+13:46:20&tempinf=69.1&humidityin=62&baromrelin=29.453&baromabsin=29.453&winddir=328&windspeedmph=0.67&windgustmph=1.12&maxdailygust=3.36&solarradiation=88.45&uv=0&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.012&weeklyrainin=0.012&monthlyrainin=0.031&yearlyrainin=16.579&totalrainin=16.579&temp3f=66.56&humidity3=63&wh65batt=1&batt3=1&freq=868M&model=GW1000_Pro
Kein tempf und kein humidity
-
@viper4iob sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Es wird nur der Pfad "/" angezeigt
Das ist "normal" und mir bis dato nicht aufgefallen. Not a feature, that's a bug
--data
funktioniert aktuell nur beim WU-Protokoll --> eben beiläufig gefixt; funktioniert in der nächsten Version dann auch korrekt mit dem Ecowitt-Protokoll
--data
und--debug
sind exklusiv, also entweder oder, nicht beide gleichzeitig.
./wetterstation.sh --data
(geht aktuell beim Ecowitt nicht) oder./wetterstation.sh --debug
(der sollte funktionieren)Eigentlich solltest du Daten bekommen, nur die Batteriestände fehlen.
Allerdings kann ich die Batterien nicht zuordnen. Du müsstest mal nacheinander die Batterien entfernen und dann schauen welcher whxxbatt zu welchem Sensor gehört....und noch einen Fehler gefunden: beim --debug und Ecowitt-Protokoll wird der PASSKEY nicht ausge-x-t (glatt übersehen...)