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.
    • Boronsbruder
      Boronsbruder @Negalein last edited by Boronsbruder

      Der Fehler liegt in der Berechnung des Meterologischen Sommers und tritt immer um 23:58 Uhr auf!

      Ich warte mal heute Nacht noch ab, aber der Fix sollte folgendes sein:

      @SBorg
      ein Tippfehler in der wetterstation.sub Zeile 1293 und 1294 -> +Y% in +%Y ändern!

      Falsch:

      local FLUXSTART=$(date +Y%-06-01)"T00:00:00Z"
      local FLUXENDE=$(date +Y%-08-31)"T23:59:59Z"
      

      Richtig:

      local FLUXSTART=$(date +%Y-06-01)"T00:00:00Z"
      local FLUXENDE=$(date +%Y-08-31)"T23:59:59Z"
      
      Neuschwansteini 1 Reply Last reply Reply Quote 6
      • Neuschwansteini
        Neuschwansteini @Boronsbruder last edited by

        @boronsbruder ja, das war es! Danke!!!! 👍 👍 👍 👍

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

          Ich habe es vorgestern gesehen und hatte gleich den "Meteorologischen Sommer" im Verdacht, da der zum 01.06. wieder ausgeführt wird. Deswegen liefert die händische Ausführung auch keinen Wert (s.u.). Wie der (oder ich) aber den Dreher beim Jahr hinbekommt ist mir nach wie vor schleierhaft. Da ich faul = nur C&P
          Da das aber per "putty" über die Zwischenablage meines Windoof-Rechners läuft, spinnt da wohl ab und an mal die Autokorrektur (oder grätscht da rein).

          Nach Update (kommt gleich 😉 ) liefert dann auch ein ./wetterstation.sh --metsommer wieder zumindest einen Temperaturwert (was mit der V3.0.0 nicht funktioniert). Regen war hier schon seit 3 Wochen keiner mehr...

          Bild 001.png

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

            Bugfix - Release für V3.0.0:

            Neues Release des Wetterstation WLAN-Skriptes auf GitHub V3.1.0

            • + Windböe max für Stationen die den Wert nicht liefern
            • + Option "k" für selbstsignierte Zertifikate bei der Influx-Abfrage hinzugefügt
            • + Paramter "--influx_test" zum test der Influx-Konnektivität
            • + Fix "MetSommer" (Skript bleibt bei den Mitternachtjobs hängen)

            Wie immer zu finden im GitHub


            Update-Routine von Vorgängerversion:

            • aktuellen WS-Updater nutzen (Download falls älter als V2.12.1: wget -O ws_updater.sh https://raw.githubusercontent.com/SBorg2014/WLAN-Wetterstation/master/ws_updater.sh)
            • ./ws_updater.sh im Installationsverzeichnis ausführen
            • Menüpunkt "4" wählen und die Fragen beantworten

            Update muss durchgeführt werden, da dass Skript sonst von Juni-August nicht läuft.

            Die Release-Version ist nicht mit dem letzten Beta-Release identisch! Betatester tauschen bitte die ".sh" und ".sub" aus und restarten den Service.

            Chris76e 1 Reply Last reply Reply Quote 5
            • Chris76e
              Chris76e @SBorg last edited by

              @sborg

              trotz update ist das script wieder stehen geblieben

              ● wetterstation.service - Service für ioBroker Wetterstation
                   Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                   Active: active (running) since Sat 2023-06-03 11:04:39 CEST; 13h ago
                 Main PID: 1612921 (wetterstation.s)
                    Tasks: 5 (limit: 21048)
                   Memory: 2.8M
                      CPU: 24min 53.187s
                   CGroup: /system.slice/wetterstation.service
                           ├─1612921 /bin/bash /home/chris/wetterstation.sh
                           ├─2241504 /bin/bash /home/chris/wetterstation.sh
                           ├─2241505 timeout 38 nc -nlvw 1 -p 1080
                           ├─2241506 tail -1
                           └─2241507 nc -nlvw 1 -p 1080
              
              Jun 04 00:36:23 ioBroker wetterstation.sh[2241411]: (standard_in) 1: syntax error
              Jun 04 00:36:40 ioBroker wetterstation.sh[2241422]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
              Jun 04 00:36:40 ioBroker wetterstation.sh[2241424]: (standard_in) 12: syntax error
              Jun 04 00:36:40 ioBroker wetterstation.sh[2241436]: (standard_in) 1: syntax error
              Jun 04 00:37:11 ioBroker wetterstation.sh[2241454]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
              Jun 04 00:37:11 ioBroker wetterstation.sh[2241456]: (standard_in) 12: syntax error
              Jun 04 00:37:11 ioBroker wetterstation.sh[2241468]: (standard_in) 1: syntax error
              Jun 04 00:37:32 ioBroker wetterstation.sh[2241488]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
              Jun 04 00:37:32 ioBroker wetterstation.sh[2241490]: (standard_in) 12: syntax error
              Jun 04 00:37:33 ioBroker wetterstation.sh[2241502]: (standard_in) 1: syntax error
              
              
              Negalein 1 Reply Last reply Reply Quote 0
              • Negalein
                Negalein Global Moderator @Chris76e last edited by

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

                trotz update ist das script wieder stehen geblieben

                dito

                dietpi@DietPi:~$ sudo systemctl status wetterstation
                ● wetterstation.service - Service für ioBroker Wetterstation
                   Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                   Active: active (running) since Sat 2023-06-03 13:12:07 CEST; 12h ago
                 Main PID: 32617 (wetterstation.s)
                    Tasks: 5 (limit: 264)
                   Memory: 3.2M
                   CGroup: /system.slice/wetterstation.service
                           ├─ 3746 /bin/bash /home/iobroker/wetterstation.sh
                           ├─ 3747 timeout 38 nc -nlvw 1 -p 1080
                           ├─ 3748 tail -1
                           ├─ 3749 nc -nlvw 1 -p 1080
                           └─32617 /bin/bash /home/iobroker/wetterstation.sh
                
                Jun 04 01:32:13 DietPi wetterstation.sh[32617]: (standard_in) 1: syntax error
                Jun 04 01:32:14 DietPi wetterstation.sh[32617]: (standard_in) 1: syntax error
                Jun 04 01:32:45 DietPi wetterstation.sh[32617]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
                Jun 04 01:32:45 DietPi wetterstation.sh[32617]: (standard_in) 12: syntax error
                Jun 04 01:32:45 DietPi wetterstation.sh[32617]: (standard_in) 1: syntax error
                Jun 04 01:32:45 DietPi wetterstation.sh[32617]: (standard_in) 1: syntax error
                Jun 04 01:33:15 DietPi wetterstation.sh[32617]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
                Jun 04 01:33:15 DietPi wetterstation.sh[32617]: (standard_in) 12: syntax error
                Jun 04 01:33:16 DietPi wetterstation.sh[32617]: (standard_in) 1: syntax error
                Jun 04 01:33:16 DietPi wetterstation.sh[32617]: (standard_in) 1: syntax error
                dietpi@DietPi:~$
                
                1 Reply Last reply Reply Quote 0
                • Boronsbruder
                  Boronsbruder last edited by Boronsbruder

                  @SBorg
                  FIX ist wahrscheinlich

                  Zeile 1320 PREDP in PRE_DP ändern

                  Richtig:

                  --data 'from(bucket: "'${INFLUX_BUCKET}'") |> range(start: '${FLUXSTART}', stop: '${FLUXENDE}') |> filter(fn: (r) => r._measurement == "'${PRE_DP}'.Regen_Tag" and r._field == "value") |> aggregateWindow(every: 1d, fn: max) |> sum()')
                  
                   ./wetterstation.sh --metsommer
                  
                   Daten vom 01.06.2023 bis 31.08.2023 wurden ermittelt...
                  
                           Ø-Temperatur: 19.47 °C
                           Regenmenge  : 0 l/m²
                  
                  
                  G SBorg 2 Replies Last reply Reply Quote 4
                  • G
                    G.Hawk @Boronsbruder last edited by

                    Hallo

                    Bei mir bleibt das Script um 23:58 Uhr stehen. Update habe ich auch ausgeführt.

                    Hat einer schon eine Lösung?

                    Gruß

                    T 1 Reply Last reply Reply Quote 0
                    • T
                      tritor @G.Hawk last edited by tritor

                      @g-hawk
                      Screenshot_20230604_121555_JuiceSSH.jpg

                      Bei mir auch, die Temp blieb bei 16.6 Grad stehen und aktuell hat es 18.88

                      hab mal den change in wetterstation.sub Zeile 1320 wie von @Boronsbruder vorgeschlagen geändert - mal sehen.

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

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

                        FIX ist wahrscheinlich
                        Zeile 1320 PREDP in PRE_DP ändern

                        Ist zumindest eindeutig noch ein Fehler 😉


                        Ich will jetzt nicht noch ein ungetestetes Release raus bringen, deswegen können "Mutige" (keine Angst, geht nix kaputt, nur ist ev. noch ein Fehler drin...)

                        • können die Änderung von @Boronsbruder einpflegen
                        • oder bis zum neuen Release um Mitternacht das Skript restarten
                        • oder in der wetterstation.sh ziemlich weit unten bei den "Mitternachtjobs" vor die Zeile
                         metsommer          #meteorologischer Sommer Durchschnittstemperatur und Regenmenge
                        

                        einfach eine # davor machen.

                        #  metsommer          #meteorologischer Sommer Durchschnittstemperatur und Regenmenge
                        

                        Damit wird die Funktion nicht mehr ausgeführt und das Skript läuft normal durch. Datenverlust gibt das keinen, da eh immer vom 01.06. bis 31.08. kpl. per Influx abgefragt wird. Nur stehen halt für die nächsten 1-2 Tage keine aktuellen Daten des Met. Sommers zur Verfügung.

                        Das war jetzt aber ein Schei* Tippfehler... 🤕

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

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

                          können die Änderung von @Boronsbruder einpflegen

                          ich werde um Mitternacht dann berichten.

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

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

                            können die Änderung von @Boronsbruder einpflegen

                            nope, das wars nicht

                            dietpi@DietPi:~$ sudo systemctl status wetterstation
                            ● wetterstation.service - Service für ioBroker Wetterstation
                               Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                               Active: active (running) since Sun 2023-06-04 13:42:28 CEST; 10h ago
                             Main PID: 23942 (wetterstation.s)
                                Tasks: 5 (limit: 264)
                               Memory: 3.2M
                               CGroup: /system.slice/wetterstation.service
                                       ├─ 3567 /bin/bash /home/iobroker/wetterstation.sh
                                       ├─ 3568 timeout 38 nc -nlvw 1 -p 1080
                                       ├─ 3569 tail -1
                                       ├─ 3570 nc -nlvw 1 -p 1080
                                       └─23942 /bin/bash /home/iobroker/wetterstation.sh
                            
                            Jun 04 13:42:28 DietPi systemd[1]: Started Service für ioBroker Wetterstation.
                            Jun 04 13:42:28 DietPi wetterstation.sh[23942]: Connection to 10.0.1.202 8087 port [tcp/*] succeeded!
                            Jun 04 23:58:33 DietPi wetterstation.sh[23942]: (standard_in) 1: syntax error
                            Jun 04 23:58:33 DietPi wetterstation.sh[23942]: (standard_in) 1: syntax error
                            Jun 04 23:59:05 DietPi wetterstation.sh[23942]: (standard_in) 1: syntax error
                            Jun 04 23:59:05 DietPi wetterstation.sh[23942]: (standard_in) 1: syntax error
                            
                            dietpi@DietPi:/home/iobroker$ ./wetterstation.sh --metsommer
                            
                             Daten vom 01.06.2023 bis 31.08.2023 wurden ermittelt...
                            
                                     Ø-Temperatur:  °C
                                     Regenmenge  : 0 l/m²
                            
                            T 1 Reply Last reply Reply Quote 0
                            • T
                              tritor @Negalein last edited by tritor

                              @negalein
                              hab auch eine neue Fehlermeldung:
                              iobWlanWetter01.png

                              und keine Regendaten, zumindest Regen Jahr sollten lt. Station 314,5mm übertragen werden:

                              iobWlanWetter02.png

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

                                @sborg

                                und irgendwann nach Mitternacht stand es wieder

                                dietpi@DietPi:~$ sudo systemctl status wetterstation
                                ● wetterstation.service - Service für ioBroker Wetterstation
                                   Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                                   Active: active (running) since Sun 2023-06-04 23:59:26 CEST; 1h 20min ago
                                 Main PID: 3577 (wetterstation.s)
                                    Tasks: 5 (limit: 264)
                                   Memory: 3.0M
                                   CGroup: /system.slice/wetterstation.service
                                           ├─ 3577 /bin/bash /home/iobroker/wetterstation.sh
                                           ├─10803 /bin/bash /home/iobroker/wetterstation.sh
                                           ├─10804 timeout 38 nc -nlvw 1 -p 1080
                                           ├─10805 tail -1
                                           └─10806 nc -nlvw 1 -p 1080
                                
                                Jun 05 01:18:38 DietPi wetterstation.sh[3577]: (standard_in) 1: syntax error
                                Jun 05 01:18:38 DietPi wetterstation.sh[3577]: (standard_in) 1: syntax error
                                Jun 05 01:19:09 DietPi wetterstation.sh[3577]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
                                Jun 05 01:19:09 DietPi wetterstation.sh[3577]: (standard_in) 12: syntax error
                                Jun 05 01:19:09 DietPi wetterstation.sh[3577]: (standard_in) 1: syntax error
                                Jun 05 01:19:09 DietPi wetterstation.sh[3577]: (standard_in) 1: syntax error
                                Jun 05 01:19:39 DietPi wetterstation.sh[3577]: jq: error (at <stdin>:1): null (null) and number (2) cannot be divided
                                Jun 05 01:19:39 DietPi wetterstation.sh[3577]: (standard_in) 12: syntax error
                                Jun 05 01:19:40 DietPi wetterstation.sh[3577]: (standard_in) 1: syntax error
                                Jun 05 01:19:40 DietPi wetterstation.sh[3577]: (standard_in) 1: syntax error
                                
                                V 1 Reply Last reply Reply Quote 0
                                • V
                                  viper4iob @Negalein last edited by

                                  Ich würde auch helfen das Problem einzugrenzen, habe aber die Kinder zu Hause wegen Ferien und versuche nebenbei irgendwie noch zu Arbeiten.
                                  Ich kann aber zumindest bestätigen, dass das Deaktivieren der metsommer Funktion in der Datei wetterstation.sh das Skript normal durchlaufen lässt.

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

                                    @viper4iob Du hast schon geholfen, damit war/ist meine Vermutung richtig 😉


                                    Kleiner, aber entscheidender Fehler. Für die die es interessiert: der IFS (Internal Field Seperator) wird in der "metsommer"-Routine (global) verändert. Der wird dann aber später bei der darauffolgenden Berechnung der Regenmenge benötigt...

                                    Simulation war erfolgreich, wenn es funktioniert folgt dann, soweit ich es schaffe, morgen ein Bugfix-Release.

                                    Wer möchte:
                                    In der wetterstation.sub in der Funktion "metsommer" (~ Zeile 1322)

                                    IFS=","
                                    

                                    in

                                    local IFS=","
                                    

                                    ändern und Service restarten. Thats all... 🙂

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

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

                                      local IFS=","

                                      Änderung durchgeführt, aber da steht was von Stop und Start was vorher nicht war

                                      jack@ioBroker:~$ sudo systemctl status wetterstation
                                      * wetterstation.service - Service fuer ioBroker Wetterstation
                                           Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                                           Active: active (running) since Mon 2023-06-05 10:50:14 CEST; 1min 26s ago
                                         Main PID: 3422963 (wetterstation.s)
                                            Tasks: 5 (limit: 18970)
                                           Memory: 2.6M
                                              CPU: 2.127s
                                           CGroup: /system.slice/wetterstation.service
                                                   |-3422963 /bin/bash /home/jack/wetterstation.sh
                                                   |-3424246 /bin/bash /home/jack/wetterstation.sh
                                                   |-3424247 timeout 66 nc -nlvw 1 -p 9999
                                                   |-3424248 tail -1
                                                   `-3424249 nc -nlvw 1 -p 9999
                                      
                                      Jun 05 10:50:14 ioBroker systemd[1]: wetterstation.service: Succeeded.
                                      Jun 05 10:50:14 ioBroker systemd[1]: Stopped Service fuer ioBroker Wetterstation.
                                      Jun 05 10:50:14 ioBroker systemd[1]: wetterstation.service: Consumed 1.414s CPU time.
                                      Jun 05 10:50:14 ioBroker systemd[1]: Started Service fuer ioBroker Wetterstation.
                                      Jun 05 10:50:14 ioBroker wetterstation.sh[3422980]: Connection to 192.168.1.14 8087 port [tcp/*] succeeded!
                                      
                                      T V 2 Replies Last reply Reply Quote 0
                                      • T
                                        tritor @Nashra last edited by

                                        @nashra
                                        versuch mal ein sudo systemctl restart wetterstation

                                        dann sieh dir den status nochmal an

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

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

                                          @nashra
                                          versuch mal ein sudo systemctl restart wetterstation

                                          dann sieh dir den status nochmal an

                                          Hatte ich schon gemacht weil es mir komisch vorkam,aber trotzdem diese Ausgabe.
                                          Wieder in der .sub geändert, alles OK.

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

                                            Ich habe die Änderung mit dem IFS auch mal vorgenommen und sicherheitshalber eine Service Restart für 0:10 Uhr per cronjob hinterlegt, weil ich sonst wieder eine böse Mail von AWEKAS bekomme 😉
                                            Ich checke dann morgen, ob es Fehlermeldungen gab und gebe Rückmeldung.
                                            Bei mir sieht der Status nach dem jetzigen Restart so aus:

                                            ● wetterstation.service - Service für ioBroker Wetterstation
                                                 Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                                                 Active: active (running) since Mon 2023-06-05 13:30:17 CEST; 36s ago
                                               Main PID: 16570 (wetterstation.s)
                                                  Tasks: 5 (limit: 6982)
                                                 Memory: 2.8M
                                                    CPU: 1.730s
                                                 CGroup: /system.slice/wetterstation.service
                                                         ├─16570 /bin/bash /opt/wetterstation/wetterstation.sh
                                                         ├─18387 /bin/bash /opt/wetterstation/wetterstation.sh
                                                         ├─18388 timeout 46 nc -nlvw 1 -p 1080
                                                         ├─18389 tail -1
                                                         └─18390 nc -nlvw 1 -p 1080
                                            
                                            Jun 05 13:30:17 kubix systemd[1]: Started Service für ioBroker Wetterstation.
                                            Jun 05 13:30:17 kubix wetterstation.sh[16603]: Connection to 127.0.0.1 8087 port [tcp/*] succeeded!
                                            T 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            769
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

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