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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Linux Shell-Skript] WLAN-Wetterstation

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

      @viper4iob Ich sende beides, also relativ und absolut. Da sie "normaler weise" den kpl. WU-String bekommen und ich für "unseren Teil" nicht wusste was sie nun genau wollen, dachte ich "kann ja nicht schaden beides zu schicken, wenn sie per offiziellem Weg eh beides bekommen..." 🙂

      Bei mir steht noch ein Korrekturfaktor drin, allerdings nicht der den ich eingetragen hatte. Multipliziert mit acht komme ich aber auf den für meinen Wohnort korrekten ÜNN...

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

        @nashra Sieht nach keiner korrekten Verbindung zur InfluxDB aus (aus der werden die Werte ermittelt). Initial wird immer der 1. Wert nach Mitternacht für den Tag benutzt damit bis zur 1. Abfrage des Tages (0:15 Uhr) wenigstens mal etwas drin steht. Somit ist der gelesene Wert für min/max/avg bis ~ 0:15 Uhr identisch (logo, mit einem Messwert kann man schlecht min/max/avg ermitteln [bzw. sind die halt identisch]). Dann erfolgt die Abfrage und es gibt Werte für min/max/avg.

        Da die bei dir gleich sind/bleiben, kann er wohl nix aus der InfluxDB lesen.
        Ich habe eben mal eine neue Version hochgeladen, mit der man nun die InfluxDB-Konnektivität prüfen kann.

        Einfach von GitHub die wetterstation.sh und -.sub ersetzen (restart des Service ist nicht erforderlich), dann im Installationsverzeichnis nacheinander ausführen (das mit dem . muss so 😉 ) :

        • . ./wetterstation.conf
        • . ./wetterstation.sub
        • minmax24h DEBUG

        Falls das dann nicht in etwa so aussieht
        Bild 001.png

        musst du alles bzgl. Influx noch mal checken, Bucket, Token, Instanz, Organisation etc.

        R Nashra Neuschwansteini 3 Replies Last reply Reply Quote 0
        • R
          Rushmed Most Active @SBorg last edited by Rushmed

          @sborg Bei mir siehts dann so aus:

          pi@Smartazamba:~/Wetterstation $ . ./wetterstation.conf
          pi@Smartazamba:~/Wetterstation $ . ./wetterstation.sub
          pi@Smartazamba:~/Wetterstation $ minmax24h DEBUG
          jq: error (at <stdin>:0): Cannot iterate over null (null)
          jq: error (at <stdin>:0): Cannot iterate over null (null)
          
          

          Also funktioniert wohl meine Influxverbindung nicht?

          Bucket, Token und Organisation hab ich geprüft. Die stimmen, wobei ich Bucket und Instanz in Klarschrift angegeben habe. Die Influx_API stimmt auch. Habe alles aus meinen InfluxDB Instanzeinstellungen kopiert.

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

            @sborg
            also bei mir kommt das raus
            min.temp3.png

            und das es Probleme mit dem auslesen der Daten gibt kann ich mir ehrlich gesagt nicht vorstellen,
            da alle anderen Werte korrekt angezeigt werden. Nur bei diesen Beiden ist was faul.

            min.temp5.png

            min.temp4.png

            Für mich sieht es so aus als wenn die Daten schon falsch an die Datenbank geliefert werden.
            Kann mich natürlich auch täuschen, du bist der ScriptWetterGott 😀

            Achja, Bucket, Token usw. alles OK.

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

              @rushmed Zumindest ist nun eindeutig, dass das so bei dir nicht funktionieren kann.
              Was mir aber überhaupt nicht einleuchtet (der eigentliche Fehler schon): an der Stelle wird überhaupt kein "jq" (JSON-Parser) verwendet.

              Ich habe es eben noch mal getestet, nun ist mein Minwert auf 9.22°C gefallen, funktioniert also...
              Wenn du die Shell noch offen hast, frag mal die Influx direkt ab (sonst nochmal die beiden Zeilen vorher mit conf/sh ausführen:
               influx_query "-1d" "now()" "Aussentemperatur" "min"

              Bild 002.png

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

                @nashra Sagen wir es mal so, der Debug zeigt, dass er nichts auslesen kann. Auch wenn die Daten falsch kämen, müsste er sie zumindest auslesen können 😉
                Stimmt denn bspw. in Grafana deine aktuelle Außentemperatur, denn auf diesem einen Messwert fußt alles andere.
                Wie sehen denn die RAW-Werte aus und wie loggst du (alles oder nur Änderung) ?

                Du kannst den Aufruf mit dem "influx_query" übrigens auch testen. Anstelle von "min" auch gerne "max" oder "mean", "-1d" heißt aktuelle Zeit minus 1 Tag. Man kann auch den Zeitraum bspw. durch "-7d" auf eine Woche erweitern.

                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 Sagen wir es mal so, der Debug zeigt, dass er nichts auslesen kann. Auch wenn die Daten falsch kämen, müsste er sie zumindest auslesen können 😉
                  Stimmt denn bspw. in Grafana deine aktuelle Außentemperatur, denn auf diesem einen Messwert fußt alles andere.

                  Ja der Messwert für die Außentemperatur stimmt. Habe einige Stationen in der Nähe, selbe Werte.

                  Wie sehen denn die RAW-Werte aus und wie loggst du (alles oder nur Änderung) ?

                  es wird alles geloggt.

                  Du kannst den Aufruf mit dem "influx_query" übrigens auch testen. Anstelle von "min" auch gerne "max" oder "mean", "-1d" heißt aktuelle Zeit minus 1 Tag. Man kann auch den Zeitraum bspw. durch "-7d" auf eine Woche erweitern.

                  Habe ich schon probiert, da passiert gar nichts d.h. keine Ausgabe.

                  SBorg 1 Reply Last reply Reply Quote 0
                  • Neuschwansteini
                    Neuschwansteini @SBorg last edited by

                    @sborg

                    coole Sache! Danke!
                    ich hab mal getestet, da ich hier auch n Bug vermutet habe, aber jetzt scheint alles zu stimmen, dies sind die Ausgaben:

                    ilovegym@iobroker:/opt/iobroker$ minmax24h DEBUG
                    Testing InfluxDB... min/max Aussentemperatur 24h: 9.38
                    9.72°C 14.11
                    13.72°C
                    ilovegym@iobroker:/opt/iobroker$ influx_query "-7d" "now()" "Aussentemperatur" "min"
                    -2.61
                    -2.5
                    ilovegym@iobroker:/opt/iobroker$
                    
                    
                    1 Reply Last reply Reply Quote 1
                    • SBorg
                      SBorg Forum Testing Most Active @Nashra last edited by

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

                      da passiert gar nichts d.h. keine Ausgabe.

                      Ich vermute fast, dass das ein ähnliches Problem wie mit dem JSON ist...

                      Frage mal die Influx direkt per CLI ab (conf + sub müssen dazu noch geladen sein, sonst halt wieder ". ./wetterstation..."), alles eine Zeile:

                      curl --request POST "${INFLUX_WEB}://${INFLUX_API}/api/v2/query?org=${INFLUX_ORG}" --header 'Content-Type: application/vnd.flux' --header 'Accept: application/csv' --header "Authorization: Token ${INFLUX_TOKEN}" --data 'from(bucket: "'${INFLUX_BUCKET}'") |> range(start: -1d, stop: now()) |> filter(fn: (r) => r._measurement == "'${PRE_DP}'.Aussentemperatur" and r._field == "value") |> min()'
                      

                      Bild 003.png

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

                        jack@ioBroker:~$ curl --request POST "${INFLUX_WEB}://${INFLUX_API}/api/v2/query?org=${INFLUX_ORG}" --header 'Content-Type: application/vnd.flux' --header 'Accept: application/csv' --header "Authorization: Token ${INFLUX_TOKEN}" --data 'from(bucket: "'${INFLUX_BUCKET}'") |> range(start: -1d, stop: now()) |> filter(fn: (r) => r._measurement == "'${PRE_DP}'.Aussentemperatur" and r._field == "value") |> min()'
                        curl: (7) Failed to connect to 192.168.1.121 port 80: Connection refused
                        jack@ioBroker:~$ 
                        
                        SBorg Boronsbruder 2 Replies Last reply Reply Quote 0
                        • SBorg
                          SBorg Forum Testing Most Active @Nashra last edited by

                          @nashra Erwischt 😂

                          Port 80? Da läuft doch bestimmt nicht deine Influx drauf...?

                          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 Erwischt 😂

                            Port 80? Da läuft doch bestimmt nicht deine Influx drauf...?

                            Nö, habe mich auch gerade gewundert, im Adapter ist 8086 eingetragen

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

                              ALso ich bin dafür, dass wir lieber bei der Influx v1 bleiben 😄

                              SBorg Boronsbruder 2 Replies Last reply Reply Quote 0
                              • SBorg
                                SBorg Forum Testing Most Active @Boronsbruder last edited by

                                @boronsbruder War nicht meine Idee 😊

                                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:

                                  im Adapter ist 8086 eingetragen

                                  ...und in der wetterstation.conf ?

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

                                    @Nashra
                                    und in der wetterstation.conf?
                                    Edith: da war einer schneller 😉

                                    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:

                                      im Adapter ist 8086 eingetragen

                                      ...und in der wetterstation.conf ?

                                      Verdammt, da steht nix von Port. Habe ich überlesen, Asche über mein Haupt 😟
                                      Jetzt zeigt er es richtig an, verdammt 😬
                                      Hatte die .conf komplett neu gemacht und naja man wird alt.
                                      Trotzdem Danke, an die .conf hätte ich jetzt nie gedacht

                                      min.temp6.png

                                      🍻

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Rushmed Most Active last edited by Rushmed

                                        @sborg

                                        pi@Smartazamba:~/Wetterstation $ influx_query "-1d" "now()" "Aussentemperatur" "min"
                                        -bash: influx_query: command not found
                                        

                                        Welche beiden Zeilen soll ich mit conf und sh ausführen?

                                        Edit: Hab mein Problem gefunden.
                                        In meine conf hat der Eintrag gefehlt:

                                          #Protokoll (HTTP oder HTTPS) / default: HTTP
                                           INFLUX_WEB=HTTP
                                        
                                        SBorg 1 Reply Last reply Reply Quote 0
                                        • mango1402
                                          mango1402 @Neuschwansteini last edited by

                                          @viper4iob @ilovegym @Latzi
                                          zum Thema mit der lahmen Influx-V2 Abfrage siehe hier:
                                          https://forum.iobroker.net/post/958290

                                          Es erscheint Licht am Ende des Tunnels 😉

                                          1 Reply Last reply Reply Quote 1
                                          • R
                                            Rushmed Most Active @Quarkmax last edited by

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

                                            @nashra
                                            in diesen Fehler bin ich auch gerannt. Schau mal in der wetterstation.conf ober dort dieser Eintrag

                                              #Protokoll (HTTP oder HTTPS) / default: HTTP
                                               INFLUX_WEB=HTTP
                                            

                                            vorhanden ist. Der hat bei mir gefehlt. Warum? - konnte ich nicht verifizieren. Dann kamen die Werte korrekt.

                                            Achtung das muss es zweimal geben, in den Zeilen 37/37, sowie 60/61.

                                            @SBorg die Zeilen 60/61 haben in meiner conf gefehlt.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            414
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            143
                                            5478
                                            3307267
                                            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