Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Linux Shell-Skript] WLAN-Wetterstation

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • Nashra
      Nashra Most Active Forum Testing @SBorg last edited by

      @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) -->
      Bild 1.png
      Das wird automatisch zu jeder vollen Viertelstunde aktualisiert 😉

      Na 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

      1 Reply Last reply Reply Quote 0
      • Boronsbruder
        Boronsbruder @Nashra last edited by

        @nashra
        ich denke der Fehler liegt bei

         schedule('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

        Nashra 1 Reply Last reply Reply Quote 0
        • Nashra
          Nashra Most Active Forum Testing @Boronsbruder last edited by

          @boronsbruder sagte in [Linux Shell-Skript] WLAN-Wetterstation:

          @nashra
          ich denke der Fehler liegt bei

           schedule('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

          1 Reply Last reply Reply Quote 0
          • Nashra
            Nashra Most Active Forum Testing last edited by

            @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.

            statistik1.PNG
            Oder habe ich alter Sack hier einen Gedankenfehler 😁

            SBorg 1 Reply Last reply Reply Quote 0
            • SBorg
              SBorg Forum Testing Most Active @Nashra last edited by

              @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) 🙂

              Nashra 1 Reply Last reply Reply Quote 0
              • Nashra
                Nashra Most Active Forum Testing @SBorg last edited by Nashra

                @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.

                SBorg 1 Reply Last reply Reply Quote 0
                • SBorg
                  SBorg Forum Testing Most Active @Nashra last edited by

                  @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...
                  Bild 1.png
                  und lt. Grafana
                  Bild 2.png
                  👍 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...)

                  Nashra 1 Reply Last reply Reply Quote 2
                  • Nashra
                    Nashra Most Active Forum Testing @SBorg last edited by

                    @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 😁 👍

                    Bild 1.png
                    und lt. Grafana
                    Bild 2.png
                    👍 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 😉

                    SBorg 1 Reply Last reply Reply Quote 0
                    • SBorg
                      SBorg Forum Testing Most Active @Nashra last edited by

                      @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 gleich

                      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 funktionieren 🙂

                      Nashra 1 Reply Last reply Reply Quote 0
                      • Nashra
                        Nashra Most Active Forum Testing @SBorg last edited by

                        @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 gleich

                        Hatte 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 funktionieren 🙂

                        Warten wir mal bis morgen Abend oder Übermorgen, dann sieht man ja ob es richtig läuft 😉
                        Danke @SBorg

                        1 Reply Last reply Reply Quote 0
                        • SBorg
                          SBorg Forum Testing Most Active last edited by

                          Sieht IMHO gut aus:
                          Bild 1.png

                          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 😉

                          Negalein 1 Reply Last reply Reply Quote 0
                          • Nashra
                            Nashra Most Active Forum Testing last edited by Nashra

                            Moin, bei mir jetzt auch

                            temp-heute.PNG

                            1 Reply Last reply Reply Quote 0
                            • Negalein
                              Negalein Global Moderator @SBorg last edited by

                              @sborg sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                              Sieht IMHO gut aus:

                              ebenfalls 🙂

                              objects - ioBroker.png

                              1 Reply Last reply Reply Quote 0
                              • SBorg
                                SBorg Forum Testing Most Active last edited by

                                🙂
                                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 😉

                                Nashra 1 Reply Last reply Reply Quote 3
                                • Nashra
                                  Nashra Most Active Forum Testing @SBorg last edited by

                                  @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 👍

                                  SBorg 1 Reply Last reply Reply Quote 0
                                  • SBorg
                                    SBorg Forum Testing Most Active @Nashra last edited by

                                    @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 🖖 😎

                                    Nashra 1 Reply Last reply Reply Quote 1
                                    • Nashra
                                      Nashra Most Active Forum Testing @SBorg last edited by

                                      @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 🖖 😎

                                      👍 😂

                                      a200 1 Reply Last reply Reply Quote 0
                                      • a200
                                        a200 @Nashra last edited by a200

                                        @SBorg - Moin. Ich versuche jetzt auf influx2 zu migrieren und habe ein Problem an dem du nicht ganz unschuldig bist! 😉

                                        Ich habe die meine Daten aus v1 mit:

                                        influx_inspect export \
                                          -database <database-name> \
                                          -out <output-file-path> \
                                          -lponly
                                        

                                        exportiert um sie dann mir:

                                        influx write \
                                          --bucket <bucket-name> \
                                          --file <path-to-line-protocol-file>
                                        

                                        in der v2 zu importieren. (siehe: https://docs.influxdata.com/influxdb/v2.0/upgrade/v1-to-v2/manual-upgrade/#migrate-time-series-data )

                                        jetzt bekomme ich eine Meldung:

                                        Error: Failed to write data: unable to parse 'javascript.0.Wetterstation.Wetter_aktuell value="stürmisch, Regen': unbalanced quotes.
                                        

                                        Ein Blick in die Datei verrät gleich:

                                        javascript.0.Wetterstation.Wetter_aktuell value="stürmisch, Regen
                                        " 1609109126391000000
                                        

                                        dass am Ende des Strings ein Zeilenumbruch erstellt wird. Bei Zeilen mit nur einem Wort als String stört ihn das aber gar nicht. d.h. diese Zeile ist ok.

                                        javascript.0.Wetterstation.Wetter_aktuell value="regnerisch
                                        " 1609075829705000000
                                        

                                        Die erste Bitte ist, ob du es prüfen könntest und ggf. mit tr den unnötigen Zeilenwechsel entfernen.

                                        Die zweite ist: mir bei dem sed Befehl helfen, bei dem das \n am Ende einer Zeile entfernt wird, aber nur wenn die Zeile mit einem Buchstaben endet.

                                        Das habe ich mit:

                                        #!/bin/bash
                                        while read LINE
                                        do
                                        if [[ $(echo $LINE| grep -Po '.(?=.{0}$)') =~ [a-z] ]]; then
                                            echo $LINE | tr -d '\n'
                                        else
                                            echo $LINE
                                        fi
                                        done < $1
                                        

                                        Danke und Gruß,
                                        a200.

                                        ps. ich hoffe, dass der Bezug zu deinem Skript ausreichend ist. 🙂

                                        SBorg 1 Reply Last reply Reply Quote 0
                                        • SBorg
                                          SBorg Forum Testing Most Active @a200 last edited by

                                          @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                          und habe ein Problem an dem du nicht ganz unschuldig bist!

                                          Nur im Sinne von "ohne Skript gäbe es das Problem nicht" 😂
                                          Es ist kein direkter Fehler vom Skript/mir, so richtig erklären warum kann ich es auch nicht. Die Routine ist immer dieselbe, nur der Text ändert sich halt:
                                          Bild 1.png
                                          Zuerst in Anführungszeichen wie er es per Fehler an meckert: geht nicht...
                                          noch --- Minuten geht, warum aber, ist auch nur Text aus mehreren Worten...
                                          dauert noch xx Minuten geht wieder nicht...
                                          lange schön geht auch nicht, könnte aber an Umlauten liegen, wobei die anderen hatten keine drin + ging auch nicht...
                                          gleichbleibend ein Wort + ohne Umlaute, geht aber auch nicht...😠
                                          ...und warum zum Teufel geht dann dauert max. 1 Minute wieder?
                                          Es folgen Versuche mit "Ticks". Die funktionieren jetzt zwar, stehen dann aber mit im Datenpunkt drin unflätiger Kraftausdruck

                                          Irgendwie kriegt der Simple-API - Adapter da was in den falschen Hals und interpretiert, warum und wann auch immer, die Tab-Stops des Shell-Skriptes (es sind keinerlei Steuerzeichen innerhalb der Werte vorhanden!) als CR. Das wieso mal oder mal nicht... Keine Ahnung, die Lösung ist aber zumindest einfach (für die V2.9.0 zukünftig dann geändert):
                                          Suche in der sub bei ~#433 nach

                                          #build Data-String
                                          	IOB_WDATA=$(cat <<-EOD
                                          	${DP_WETTER_TREND}=${WETTER_TREND}
                                          	&${DP_DRUCK_TENDENZ}=${PNOW}
                                          	&${DP_WETTER_AKTUELL}=${WETTER_AKTUELL}
                                          	&${DP_WETTERDATA}=${DRUCKWERTE[*]}
                                          	EOD
                                          	)
                                          

                                          und entferne die Tab-Stops (wichtig: EOD und ) müssen weiterhin mit einem Tab-Stop eingerückt bleiben):

                                          #build Data-String
                                          	IOB_WDATA=$(cat <<-EOD
                                          	${DP_WETTER_TREND}=${WETTER_TREND}&${DP_DRUCK_TENDENZ}=${PNOW}&${DP_WETTER_AKTUELL}=${WETTER_AKTUELL}&${DP_WETTERDATA}=${DRUCKWERTE[*]}
                                          	EOD
                                          	)
                                          

                                          @a200 sagte in [Linux Shell-Skript] WLAN-Wetterstation:

                                          ps. ich hoffe, dass der Bezug zu deinem Skript ausreichend ist.

                                          Passt doch, und wenn nicht ist es auch nicht weiter tragisch 😉

                                          a200 2 Replies Last reply Reply Quote 0
                                          • Nashra
                                            Nashra Most Active Forum Testing last edited by Nashra

                                            Hey, was ich die Tage vergessen hatte zu erwähnen....
                                            Bei Temperatur_Jahresdurchschnitt_max/min kommt bei mir nichts
                                            temp-jahr-durch.png

                                            da_Woody Negalein SBorg 3 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            952
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            141
                                            5399
                                            2886363
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo