NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
...wobei ich aber bei den bisherigen FW-Updates noch nie was bemerkt habe. Es macht nix besser oder schlechter, neue Funktionen können wohl auch keine dazukommen, außer dem Wettermast wächst über Nacht ein neuer Sensor
-
Nach etlichem Frust (der noch nicht beendet ist) mit dem Umzug der Hardware mal ein kleiner Frustabbau und Zwischenhack:
Ist trotzdem Beta, da ich einige Code-Änderungen durchgeführt habe.
*.sub + *.sh tauschen, *.js wg. der zwei neuen Datenpunkte, *.conf ist nicht notwendig (enthällt nur Textänderung)
Wie immer auf GitHub zum DL -
Sehr schön! Aber ich muss gestehen, ich gehe nun fremd
Mich hat bez. Visualisierung Weewx und vor allen Dingen der Belchertown Skin geflasht...
Auch weil ich irgendwann im Herbst/Winter meine Seite über Weewx mal Online stellen möchte - dies eher suboptimal mit NodeRed durchführbar.Das Generic-Foshkplugin entwickelt sich gerade als Schweizer Messer, speziell mit dem Froggit DP-1500 Dongle und allen möglichen zusätzlichen Sensoren. Zur Zeit füttert das Plugin meinen Iobroker Node Red Flow mit allen möglichen Ecowitt RAW Werten und auch errechneten Werten, dann entsprechende Datenpunkte im Iobroker. Darüber hinaus als eins von XX möglichen Weiterleitungszielen, füttere ich nun Weewx, den Interceptor Treiber mit den Ecowitt RAW-Daten vom Dongle.
So weit bin ich gerade:
Generelle Weewx Belchertown Skin Sites:
https://belchertownweather.com/
https://www.wetter-zorneding.de/
Vielen Dank aber nochmal von meiner Seite an Dich - bin dadurch erst zur Wetterstation und dem neuen Hobby gekommen...!
-
Och, ich sehe das pragmatisch
Ich bin kein YT-Channel, der unbedingt Abos und Likes generieren muss, um letztendlich damit Geld zu verdienen. Ob das nun 100, 10, einer oder keiner nutzt, macht unterm Strich für mich keinen Unterschied. Schön wenn es jemandem gefällt/nutzt, wenn nicht, dann ist es auch gut. Hauptsache es funktioniert irgendwie...
Demnächst wird wohl auch eine China-Bestellung fällig, dann geht es mit weiteren Sensoren weiter
Der Regensensor wartet schließlich auch noch auf Einbindung. -
@SBorg Hi, also ich bleib dir treu
Dein Script rennt einwandfrei, werde die Tage mal auf die aktuelle 1.3 updaten..Regensensor: macht du das wie ich, den xiaomi-Watersensor mit Umbau, der dann ein Regen-true/false macht, oder wie stellst du dir das vor?
Welche Sensoren gibts denn noch?
Habe die Wetterstation-Werte jetzt seit 2 Wochen an meine Rolladensteuerung angebunden, funktioniert einwandfrei. Fahren bei starker Sonneneinstrahlung runter, und wenn länger als 15min bewölkt ist, dann wieder hoch.
Hab die Werte erstmal ein paar Wochen geloggt, um geeignete Mittelwerte zu finden.
-
@SBorg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Ist trotzdem Beta, da ich einige Code-Änderungen durchgeführt habe.
*.sub + *.sh tauschen, *.js wg. der zwei neuen Datenpunkte, *.conf ist nicht notwendig (enthällt nur Textänderung)
Wie immer auf GitHub zum DLDanke läuft
-
@ilovegym Würde ich ev. mit dem Xiaomi machen, aber ich habe noch einen "richtigen" hier liegen. Ist ein baugleicher zum Kemo: https://www.amazon.de/KEMO-Regensensor-12-V-DC/dp/B000NI2QJC
Aber im Grunde selbes Spiel: true bei Regen...
An den Wettermast kommt dann ein Gehäuse mit Akku und Solarzelle. Sensoren gibt es viele: Bodentemperatur/-feuchte, LUX (paar €), Luftgüte (~10,- €), O³, Blitz, Wolken, Nebel, Schneehöhe, Strahlung... -
Hab mein iobroker neu aufgesetzt (im docker container auf einer synology DS218+) und bekomm das script nicht mehr zum laufen. Bei ./wetterstation.sh --debug bekomme ich folgende Ausgaben:
root@iobroker:/opt/iobroker/wetterstation# ./wetterstation.sh --debug NAS.fritz.box [192.168.178.60] 8087 (?) open [{"id":"javascript.0.Wetterstation.Wetter_Trend","val":"noch --- Minuten"}]listening on [any] 8083 ... 172.17.0.1: inverse host lookup failed: Unknown host connect to [172.17.0.3] from (UNKNOWN) [172.17.0.1] 52964 Messwerteblock: Temperatur Innen : °C Temperatur Aussen : °C Taupunkt : °C Chill-Faktor : °C Luftfeuchte Innen : % Luftfeuchte Aussen : % Windgeschwindkeit : km/h max. Windgeschwindkeit : km/h Windrichtung : ° Windrichtung : Luftdruck absolut : hPa Luftdruck relativ : hPa Regenrate : mm/h Regenstatus : Regen Tag : mm Regen Woche : mm Regen Monat : mm Regen Jahr : mm Sonnenstrahlung : W/m² UV-Index : Zeitstempel : Firmware : Datenstring für ioBroker: DATA von Wetterstation: GET /weatherstation/updateweatherstation.phpID=wetterstation&PASSWORD=xxxxxx&indoortempf=75.7&tempf=58.1&dewptf=52.7&windchillf=58.1&indoorhumidity=50&humidity=82&windspeedmph=0.7&windgustmph=1.1&winddir=72&absbaromin=28.828&baromin=30.532&rainin=0.000&dailyrainin=0.299&weeklyrainin=0.299&monthlyrainin=0.551&yearlyrainin=0&solarradiation=37.68&UV=0&dateutc=2020-06-07%2017:38:39&softwaretype=EasyWeatherV1.5.0&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0 Debug VAR: Installationsverzeichnis: /opt/iobroker/wetterstation IPP: 192.168.178.60:8087 WS_PORT: 8083 WS_POLL: 16 PRE_DP: javascript.0.Wetterstation Script-Version: V1.3.0 Config-Version: V1.3.0 Sub-Version: V1.3.0 Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein?
Weiß einer was ich falsch mache? Es sieht so aus als würde er zwar was bekommen das format passt aber nicht!? Im iobroker hab ich die neuen Datenpunkte angelegt aber auch dort landet nichts.
Die config sieht so aus:
#ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx] IPP=192.168.178.60:8087 #Port der Wetterstation WS_PORT=8083 #Pollintervall der Wetterstation in Sekunden (minimal 16 Sekunden) WS_POLL=16 #Name/ID der Wetterstation WS_ID=wetterstation #wo sollen die Datenobjekte abgelegt werden PRE_DP=javascript.0.Wetterstation
-
@rollerfreak2 Zumindest scheint es zu funktionieren
Die letzte Zeile bei der Debug-Ausgabe:Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein?
Deine ID stimmt zwar, aber du hast beim Pfad in der App das ? vergessen:
/weatherstation/updateweatherstation.php?
Deswegen lautet deine Debug-Ausgabe:
GET /weatherstation/updateweatherstation.phpID=wetterstation...
Korrekt wäre aber:
GET /weatherstation/updateweatherstation.php?ID=wetterstation...
-
@SBorg ja stimmt das war's. Jetzt funzt es
-
@SBorg Bin seit gestern auf v1.3 - läuft alles super.
Ich hab ähnlich wie Du nen Xiaomi aqara Water leak sensor als Regensensor umgebaut, und nutz ihn für die Markise. Hatte lange mit Tasmota-Sensoren rumgespielt, jedoch nie einen sauberen "false" Zustand bekommen, wenn der Sensor trocken war, darum dann auf Zigbee und Aqara gewechselt. -
@SBorg Muss auch mal Loben! Das läuft wie n Käfer.. mittlerweile hab ich die Wetterstation mit dem Script ins produktive System eingebunden, die Rolläden etc fahren danach, ob Regen, starke Sonne, klappt.
Vielen Vielen Dank!
-
Dito .... V1.3.0 läuft wie ein Uhrwerk ... besser als ein Speicherfressender Adapter .
PS: Bald sind hier 1000 Beiträge , und derjenige gibt ein aus
-
Lese ich natürlich gerne
(wobei ich es ja auch bei mir selbst sehe. Keine Probs mit/wegen nodejs etc. Updates...)
@Glasfaser Na dann ist hier in 3 Posts "Ende Gelände"Dann werde ich demnächst mal die 1.3er releasen, da ich so aktuell derzeit nichts mehr auf dem Schirm habe (außer jemandem fällt gerade was ein). Bzgl. China-Bestellung ist noch nichts eingetroffen, gibt also auch nix Neues wg. zusätzlicher Sensoren...
...und nicht zu vergessen, nur dank der Unterstützung (finanziell, testen, Feedback, Kritik, Anregung...) durch euch ist es auch das was es nun ist
-
@SBorg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
(außer jemandem fällt gerade was ein)
Ganz zufällig fällt mir da tatsächlich etwas ein.
Ich habe das Ermitteln von max./min. Werten für Temperatur, Windgeschwindigkeit, Sonnenstrahlung u.v.a.m. per Blockly umgesetzt. Das funktioniert soweit ganz gut.
Wäre es vll. sinvoll das mit in dein Script aufzunehmen? Gibt das die Rechenkapazität im Messintervall noch her?
Der ein oder andere hat sicher keine Lust auf so viele neue Datenpunkte.
Wichtig wäre mir hier dass auch der Zeitpunkt der Extremwerterfassung mit gespeichert wird. -
@Rushmed sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@SBorg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
(außer jemandem fällt gerade was ein)
Ganz zufällig fällt mir da tatsächlich etwas ein.
Ich habe das Ermitteln von max./min. Werten für Temperatur, Windgeschwindigkeit, Sonnenstrahlung u.v.a.m. per Blockly umgesetzt. Das funktioniert soweit ganz gut.
Wäre es vll. sinvoll das mit in dein Script aufzunehmen? Gibt das die Rechenkapazität im Messintervall noch her?
Der ein oder andere hat sicher keine Lust auf so viele neue Datenpunkte.
Wichtig wäre mir hier dass auch der Zeitpunkt der Extremwerterfassung mit gespeichert wird.Ich hätte nichts dagegen, da ich es es eh minütlich auswerte. Und ich gehe sogar darüber hinaus und ermittele die 12St-Werte, um die Max-Min-Temperaturwerte der Nacht zu haben und nicht des ganzen Tages
-
@Berchemer Die Extremwertermittlung für bestimmte Zeitintervalle so wie du es vorschlägst ist natürlich auch möglich.
Ich meinte das aber nur für den gesamten Zeitraum seit Beginn der Wetteraufzeichnungen. -
@Rushmed sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@Berchemer Die Extremwertermittlung für bestimmte Zeitintervalle so wie du es vorschlägst ist natürlich auch möglich.
Ich meinte das aber nur für den gesamten Zeitraum seit Beginn der Wetteraufzeichnungen.Da ich das auch eh mache, nehme ich es im Script auch gerne mit
-
@SBorg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Dann werde ich demnächst mal die 1.3er releasen, da ich so aktuell derzeit nichts mehr auf dem Schirm habe (außer jemandem fällt gerade was ein). Bzgl. China-Bestellung ist noch nichts eingetroffen, gibt also auch nix Neues wg. zusätzlicher Sensoren...
...und nicht zu vergessen, nur dank der Unterstützung (finanziell, testen, Feedback, Kritik, Anregung...) durch euch ist es auch das was es nun ist
Bei mir ist was Neues eingetroffen - hatte bei Ecowitt/Lucy aus zeitgründen gecancelt und nun bei Froggit zu Apotherpreisen bestellt:
https://www.froggit.de/product_info.php?info=p460_dp60-blitzdetektor-funksensor.htmlMit der Post kam dann auch heute passend das Gewitter zum Testen:
Auszug von meinem Ecowitt.net Upload:
Habe das Teil schon im Iobroker über Node Red eingebunden - die Daten kommen anscheinend bei Blitzen in Reichweite über den WIFI-Dongle sofort.
Datenpunkte:
Habe hier einen China Hochspannungsgenerator liegen - damit kann ich es ordentlich funken lassen - darauf regiert das Teil mit keinster Fehlmessung.
Die tatsächlichen Gewitterblitze, bisherigen Entfernungsangaben, waren alle plausibel, ob dicht dran oder weiter entfernt...
Mal schauen, heute Abend geht es glaube ich noch mit Gewitter weiter...
-
Also...
Rechenleistung ist noch genügend übrig. Das dauert selbst auf einem PI < 1 Sekunde. Probleme kann nur das schreiben der Datenpunkte bereiten, da dass einen Augenblick dauert. Pauschal sind Min-/Maxwerte auch nicht das Problem, nur müsste man ev. mal klären für was alles und für wen.
Ich überspitze mal etwas: es ergibt einfach keinen Sinn für einen einzelnen User der um 17:32 Uhr die max. Tagesregenmenge möchte etwas zu implementieren. Eine allgemeine Min/Max Menge des Tages aber schon, wobei dann schon die nächste Frage auftritt. Innerhalb des Tages oder der letzten 24h?
Übermäßig Datenpunkte sehe ich auch nicht als größeres Problem an. Ich habe ja schon mit Unterordnern angefangen, da kann man auch noch bspw. Statistiken hinzufügen. Wer will kann es dann nutzen, sonst lässt man den Sub-Ordner einfach "links liegen"
Das Ganze macht aber nur für eine VIS-View Sinn, denn wer Grafana nutzt muss eh per Influx oä. loggen und kann sich darüber schon ziehen was immer er/sie/diverse will....und da ich auch schon danach gefragt wurde:
Gibt es mal einen Lux-Wert? --> NEIN
Der Wettermast hat keinen Sensor für die Helligkeitsmessung. Es gibt zwar einen Multiplikator für den Wert des Solarsensors, aber das ist genauso aussagefähig wie "rechne mir mal 1m in m² um...". Wir betreiben zwar keine amtliche Wetterstation und die Sensoren sind nicht geeicht, sind ungenau, haben eine Temperaturdrift..., aber halbwegs genau sollte es schon sein. Die Sonnenstrahlung wird mit dem Sensor bei 550 nm Wellenlänge gemessen, sichtbares Licht (oder "Helligkeit") hat aber ein Spektrum von 380–780 nm. Das wird, mit welchem Multiplikator auch immer, nicht genauer, als wenn ich zu jemanden sage: schneide mir mal genau 73.8 mm von der Rolle Draht ab, hier ist die Zange, mach mal...
Deswegen findet man auch bei Wunderground oder Ecowitt bei seiner Station keinen entsprechenden Wert
Das wird durch eine Zusatzhardwarebastelei mit passendem Sensor erst möglich [siehe ggf. DIY Wetterstation, da wird es dann ua. auch Luftgüte etc. geben].Gibt es ein kürzeres Abfrageintervall? --> Wozu?
Der Wettermast ("Außeneinheit") sendet nur alle 16 Sekunden ein Datenpaket/Messwerte. So hält halt einfach der Batteriesatz länger. Wenn ich also bspw. im 5 Sekundentakt abfrage, bekomme ich 3x genau die selben Messwerte. Wozu also? Die Temperatur ändert sich auch nicht bloß weil ihr alle 5 Sekunden auf das Thermometer starrt....und ich habe die 1.000 nicht voll gemacht