NEWS
[Linux Shell-Skript] WLAN-Wetterstation
-
Da keine offensichtlichen Fehler zu verzeichnen sind:
Neues Release des Wetterstation WLAN-Skriptes auf GitHub V2.8.0
- ~ Änderung am Messverfahren der Solarenergie (festes Poll-Intervall --> Zeitstempel)
- + Support für wetter.com
Wie immer zu finden im GitHub
Update-Routine:
- wetterstation.sh, wetterstation.sub und ws_updater.sh ersetzen
- ws_updater.sh ausführen
- falls gewünscht nun wetter.com konfigurieren (siehe WiKi)
- wetterstation.js muss ebenfalls im JavaScript-Adapter ersetzt und einmalig ausgeführt werden (neuer Datenpunkt "Info.wetter_com")
- nun mittels
sudo systemctl restart wetterstation
den Service neu starten
Wer bereits die Beta-Version der V2.8.0 inkl. wetter.com nutzt braucht nicht updaten. Das Beta-Release ist mit dieser Release-Version identisch.
-
Moin, habe ein kleines Script von hier für die Statistik.
Da ich mich damit nicht auskenne, frage hier mal an die Script -Guruson({id: 'javascript.0.Wetterstation.Aussentemperatur'}, function (obj) { let min = getState('0_userdata.0.Statistik.Wetter.AussenMin').val; let max = getState('0_userdata.0.Statistik.Wetter.AussenMax').val; if (obj.state.val < min) { setState("0_userdata.0.Statistik.Wetter.AussenMin", obj.state.val, true); } if (obj.state.val > max) { setState("0_userdata.0.Statistik.Wetter.AussenMax", obj.state.val, true); } }); function Werte_Reset() { setState('0_userdata.0.Statistik.Wetter.AussenMin',100,true); setState('0_userdata.0.Statistik.Wetter.AussenMax',-100,true); }; schedule('0 0 * * *', Werte_Reset);
Wie bekomme ich folgende Fehlermeldung weg
2021-08-24 01:03:00.772 - error: javascript.0 (878) script.js.Wetter.Statistik-Wetterstation: error: TypeError: Cannot read property '0' of null
und was müßte wie geändert werden dass das Script nur alle z.B. 5 oder 10 Minuten triggert und nicht jede Minute.
Gut wäre es natürlich wenn man das einstellen kann. -
@nashra Das Skript zu ändern wäre nicht schwierig, aber du nutzt doch Grafana? --> dann nutzt du auch Influx --> dann hast du (wenn du Influx in der .conf aktivierst/einrichtest) -->
Das wird automatisch zu jeder vollen Viertelstunde aktualisiert -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra Das Skript zu ändern wäre nicht schwierig, aber du nutzt doch Grafana? --> dann nutzt du auch Influx --> dann hast du (wenn du Influx in der .conf aktivierst/einrichtest) -->
Das wird automatisch zu jeder vollen Viertelstunde aktualisiertNa wenn ich das mal wieder hinbekomme in meinem Alter
So in der .conf alles eingetragen, hoffe das es richtig ist. Ah gerade hat er aktualisiert, von 0°C auf (null) °C.
Scheint also richtig zu sein mit den Daten in der .conf, dann warten wir mal bis da ein richtiger Wert auftaucht.
Hatte ich gar nicht auf dem Schirm mit der .conf, danke @SBorg -
-
@boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra
ich denke der Fehler liegt beischedule('0 0 * * *', Werte_Reset);
müsste
schedule('0 0 * * *', Werte_Reset()); oder schedule('0 0 * * *', function(){Werte_Reset();});
schau mal hier wegen der Einstellung des schedule
also beim ersten kommt
javascript.0 (878) script.js.Wetter.Temp-Min-Max: schedule callback missing
beim zweiten wird nicht gemoppert, mal sehen was morgen im Protokoll steht
-
@Boronsbruder, Fehler war heute Morgen wieder aber nicht schlimm, Script deaktiviert
da ich den Tip von @SBorg jetzt genommen habe.@SBorg, läuft jetzt. Was ich aber nicht ganz verstehe ist das die max. Temperatur von der
tatsächlichen Temperatur um ca. 6 °C abweicht. Berechnest Du das aus den letzten 24 Stunden?
Dann würde dies bei mir, da es ja um den heutigen Tag geht, nicht passen sage ich jetzt mal.
Oder habe ich alter Sack hier einen Gedankenfehler -
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Fehler war heute Morgen wieder aber nicht schlimm, Script deaktiviert
da ich den Tip von @SBorg jetzt genommen habe.Der wird auch bleiben
2021-08-24 01:03:00.772 - error: javascript.0 (878) script.js.Wetter.Statistik-Wetterstation: error: TypeError: Cannot read property '0' of null
Man beachte die Uhrzeit (1:03 Uhr) und script.js.Wetter.Statistik-Wetterstation ...
Das kommt vom Statistik-Skript, nicht von dem Min-/Max-Temp Skript@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Berechnest Du das aus den letzten 24 Stunden
Jepp, siehe Bezeichnung ...der letzten 24h...
Einen "echten" Tageswert habe ich bis dato nicht drin, da dass wieder Auslegungssache ist. Im Grunde kann es einen Max-/Minwert erst ab 0:00 Uhr des Folgetages geben, denn ab da liegen auch erst alle Messwerte des (nun vergangenen) Tages vor. Korrekt müsste es dann bspw. "bisheriger Max/Minwert" oä. lauten. Es kann ja bspw. um 23:55 Uhr ein neuer Tiefstwert erreicht werden. Ist zwar dann nur noch 5 Minuten gültig, aber eben ein neuer Tiefstwert für den aktuellen Tag.
Da das aber nichts desto Trotz zwei simple Datenbankabfragen sind (im Gegensatz zu dem JS mit dauerndem Triggern und Vergleich der aktuellen mit gespeicherten Werten), kann ich dir/euch aber die zwei Werte recht einfach liefern (zB. bei den 15-Minuten Jobs) -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Fehler war heute Morgen wieder aber nicht schlimm, Script deaktiviert
da ich den Tip von @SBorg jetzt genommen habe.Der wird auch bleiben
Nix da, Fehler muß weg
2021-08-24 01:03:00.772 - error: javascript.0 (878) script.js.Wetter.Statistik-Wetterstation: error: TypeError: Cannot read property '0' of null
Man beachte die Uhrzeit (%(#ff0000)[1:03 Uhr]) und script.js.%(#ff0000)[Wetter.Statistik-Wetterstation] ... Das kommt vom Statistik-Skript, nicht von dem Min-/Max-Temp Skript ;)
Jow du hast recht. Da schaut man 100mal drauf und überliest es trotzdem weil man sich an
anderer Stelle festgebissen hat
Und was sehe ich, das Script ist auch noch von dir. Ne ne mein Freund so geht das aber nicht@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Berechnest Du das aus den letzten 24 Stunden
Jepp, siehe Bezeichnung ...der letzten 24h...
Einen "echten" Tageswert habe ich bis dato nicht drin, da dass wieder Auslegungssache ist. Im Grunde kann es einen Max-/Minwert erst ab 0:00 Uhr des Folgetages geben, denn ab da liegen auch erst alle Messwerte des (nun vergangenen) Tages vor. Korrekt müsste es dann bspw. "bisheriger Max/Minwert" oä. lauten. Es kann ja bspw. um 23:55 Uhr ein neuer Tiefstwert erreicht werden. Ist zwar dann nur noch 5 Minuten gültig, aber eben ein neuer Tiefstwert für den aktuellen Tag.
Da das aber nichts desto Trotz zwei simple Datenbankabfragen sind (im Gegensatz zu dem JS mit dauerndem Triggern und Vergleich der aktuellen mit gespeicherten Werten), kann ich dir/euch aber die zwei Werte recht einfach liefern (zB. bei den 15-Minuten Jobs)Ja, das wäre klasse wenn Du dies machen würdest. Bisheriger Max/Min wäre für mich sinnvoller
wobei die Zwei letzten 24h Min/max natürlich auch gebraucht werden, die kommen dann in den
VIS-Bereich von gestern. -
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Und was sehe ich, das Script ist auch noch von dir. Ne ne mein Freund so geht das aber nicht
...
Ja, das wäre klasse wenn Du dies machen würdest.Nach dieser infamen Diskriminierung meinerseits: nö, keine Lust...
...aber im Alter wird man ja bekanntlich nicht nur weise...
und lt. Grafana
ich lade es relativ zeitnah auf GitHub als V2.9.0, allerdings ohne große Beta-Release Ankündigung.
Den Statistik-Fehler habe ich auf der toDo-Liste, allerdings mit geringer Prio, da nur 1x täglich und ohne sonstige Auswirkungen (aktuell auch keine Idee was er da nicht lesen kann...)
-
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Nach dieser infamen Diskriminierung meinerseits: nö, keine Lust...
...aber im Alter wird man ja bekanntlich nicht nur weise...
Du sagst es
und lt. Grafana
ich lade es relativ zeitnah auf GitHub als V2.9.0, allerdings ohne große Beta-Release Ankündigung.Das ging aber schnell, ich verbeuge mich Sir @SBorg
Den Statistik-Fehler habe ich auf der toDo-Liste, allerdings mit geringer Prio, da nur 1x täglich und ohne sonstige Auswirkungen (aktuell auch keine Idee was er da nicht lesen kann...)
Kein Problem
-
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Das ging aber schnell, ich verbeuge mich Sir @SBorg
Ist halt eine "simple" Datenbankabfrage, mehr nicht. Deswegen lässt sich es auch einfach und zügig umsetzen.
Ist auf GitHub --> sh + sub ersetzen, js ebenfalls und einmalig ausführen wg. neuer Datenpunkte, Service neu starten.
conf + updater bleiben aktuell gleichSo richtig testen konnte ich es nicht, da heute der Höchst- u. Tiefswert bei mir war, somit sind die Werte von "Heute" mit denen "der letzten 24h" identisch
Aber die Abfrage läuft von "heute 0:00 Uhr" bis "jetzt", sollte also eigentlich funktionieren -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Das ging aber schnell, ich verbeuge mich Sir @SBorg
Ist halt eine "simple" Datenbankabfrage, mehr nicht. Deswegen lässt sich es auch einfach und zügig umsetzen.
Egal, manch einer braucht für sowas 2 Wochen
Ist auf GitHub --> sh + sub ersetzen, js ebenfalls und einmalig ausführen wg. neuer Datenpunkte, Service neu starten.
conf + updater bleiben aktuell gleichHatte ich sofort gemacht
So richtig testen konnte ich es nicht, da heute der Höchst- u. Tiefswert bei mir war, somit sind die Werte von "Heute" mit denen "der letzten 24h" identisch
Aber die Abfrage läuft von "heute 0:00 Uhr" bis "jetzt", sollte also eigentlich funktionierenWarten wir mal bis morgen Abend oder Übermorgen, dann sieht man ja ob es richtig läuft
Danke @SBorg -
Sieht IMHO gut aus:
btw: Hätte man mich aktuell gefragt, wäre ich davon ausgegangen, dass es genau vor einem Jahr deutlich wärmer war. So kann man sich irren
-
Moin, bei mir jetzt auch
-
-
Ich habe noch eine Änderung vorgenommen (noch nicht auf GitHub), aber heute Nacht verpeilt den Erfolg oder Misserfolg zu kontrollieren.
Unter Umständen kann es eine ganze Zeit nach Mitternacht dauern bis Werte angezeigt werden. "Null" ist nicht das gewünschte Ergebnis. Mit der Änderung wird (oder sollte) solange Influx nichts liefert (zB. Werte stehen noch im RAM und sind noch nicht geschrieben) die aktuelle Aussentemperatur als Min/Max angezeigt werden.Bei nur einem Messwert, bzw. bis sich auch mal der Wert ändert, ist Min/Max (und Avg) sowieso gleich. Erst mit der 1. Wertänderung gibt es ein "echtes" Min/Max/Avg wenn ihr wisst was ich meine.
...und nochmals: wenn was fehlt, einfach nachfragen. Mehr als "Nein" kann ja nicht passieren
Entweder aus technischer Sicht, Aufwand oder Sinnlosigkeit ich wüsste gerne ob vor 200 Tagen um 0:23 Uhr die Sonne schien... (würde mit 0% Wahrscheinlichkeit umgesetzt werden)
Ich kann halt nur nicht immer "wann" und "ob" versprechen -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Entweder aus technischer Sicht, Aufwand oder Sinnlosigkeit ich wüsste gerne ob vor 200 Tagen um 0:23 Uhr die Sonne schien... (würde mit 0% Wahrscheinlichkeit umgesetzt werden)Ok, dann nehmen wir 199 Tage
Sorry, konnte ich mir jetzt nicht verkneifen
Und Danke nochmal für die tolle Arbeit und deinen Support -
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Sorry, konnte ich mir jetzt nicht verkneifen
Och bisserl Spaß muss auch sein...
if $Anfrage and $User == "Nashra" then delete $Anfrage
happens -
@sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:
@nashra sagte in [Linux Shell-Skript] WLAN-Wetterstation:
Sorry, konnte ich mir jetzt nicht verkneifen
Och bisserl Spaß muss auch sein...
if $Anfrage and $User == "Nashra" then delete $Anfrage
happens