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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sonystar last edited by

      Habe noch eine Frage zur Berechnung der Sonnenscheindauer:
      Ich hatte gelesen das es da noch gewickt hatte weil jeweils die eingestellte POLL-Zeit hinzuadiert wird mit jeden kommendes Datenpaket. Ist das immer noch so? Habe in der Wetterstation und im Script 60 Sek eingetragen, die Wetterstation sendet allerdings trotzdem im 30/31 Sek abstand. Stellt das ein Problem da?

      Und noch ein Anregung:
      Ist es möglich im Statistikbereich noch mit aufzuführen von wann das entsprechende Ereignis ist? Z.B. Max_Windböe mit Datum und Uhrzeit. Man weiß ja sonst nie wann das ganze passiert ist.

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

        Die V1.5.0 steht zum Download bereit (identisch mit der Beta-Version):

        Neues Release des WLAN-Wetterstation-Skriptes auf GitHub V1.5.0

        • + Verschlüsselung mittels HTTPS möglich
        • + Authentifizierung mittels User/Passwort
        • + ws_updater.sh (zum updaten der wetterstattion.conf)

        Wie immer zu finden im GitHub

        Bitte die neue Update-Routine beachten (siehe WiKi). Ihr erspart euch damit das händische konfigurieren der wetterstation.conf 😉

        In Kürze erscheint dann auch die letzte Version der V1er-Serie. Die V2.x.x hat dann einen "breaking change" + größere Änderungen unter der Haube, was ihr aber nicht großartig bemerken werdet. Da bin ich gerade mit @a200 dran, der mich hier unterstützt. Er hat (oder nimmt sich die) Zeit, die Kenntnisse und vor allen Dingen auch die passende Hardware, um den Support per Gateway und Zusatzsensoren zu implementieren. Das Bedarf aber eines Umbaus.

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

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

          Ich hatte gelesen das es da noch gewickt hatte weil jeweils die eingestellte POLL-Zeit hinzuadiert wird mit jeden kommendes Datenpaket

          Nein, das läuft mittlerweile (frag nicht seit wann 😉 ) mit einem Timer und der Differenz daraus. Also vorheriges Paket bei 22 Sekunden, aktuelles (mal ganz übertrieben) 3 Minuten später und bei 44 Sekunden, dann wird hier korrekt mit 202 Sekunden, unabhängig vom POLL-Intervall gerechnet.
          Allerdings habe ich eben gesehen, dass ich das bei der Solarenergie nicht berücksichtigt habe 😞
          Stelle es also besser korrekt auf die 30 Sekunden ein.

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

          Z.B. Max_Windböe mit Datum und Uhrzeit. Man weiß ja sonst nie wann das ganze passiert ist.

          Doch, denn das wäre dann doppelt gemoppelt. Du hast bei jedem Datenpunkt im ioB auch immer einen Timestamp und einen "Last change Timestamp". Den kannst du so in der VIS nutzen, im Blockly, NodeRED oder was auch immer.
          Bild 1.png
          Ok, die Uhrzeit stimmt jetzt zwar nicht, aber die Statistik ist ja eh rückwirkend. Vor xx Tagen Ok, aber brauche ich dann wirklich, dass es am 02.12. um 13:12 Uhr war? Der Aufwand dafür ist nicht unerheblich und belastet das System. Wenn man es wirklich braucht, könnte man dies auch im Influx nachschauen. Oder wie bei mir, ich visualisiere eh per Grafana, da kannst du hinein- und hinaus zoomen wie du willst, auch Minuten genau.

          S 1 Reply Last reply Reply Quote 0
          • T
            Tomate @SBorg last edited by

            @SBorg
            siehe meine Kommentare hinter --->

            In der App im Pfad zum Custom Server am Ende ist ein "?" ?
            dort muss stehen:
            /weatherstation/updateweatherstation.php?
            -----> Passt

            Ansonsten Tippe ich auf eine fehlerhafte nc Version oder ein dubioser Nameserver, was steht in
            sudo nano /ect/resolv.conf
            ---> Datei schein leer zu sein,bzw. [ Verzeichnis „/ect“ existiert nicht ]

            was sagt ein:
            which nc
            ---> /usr/bin/nc
            und
            which jq
            --->/usr/bin/jq

            dann könnte noch ein:
            sudo apt-get install netcat-obenbsd
            helfen.
            --->
            ubuntu@ubuntu-20:/home/iobroker$ sudo apt-get install netcat-obenbsd
            Paketlisten werden gelesen... Fertig
            Abhängigkeitsbaum wird aufgebaut.
            Statusinformationen werden eingelesen.... Fertig
            E: Paket netcat-obenbsd kann nicht gefunden werden.

            Edit: Achja Passwort in der App bei Custom Server ist irgendwas eingetragen?
            ---> Ja

            Latzi 1 Reply Last reply Reply Quote 0
            • Latzi
              Latzi @Tomate last edited by

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

              sudo apt-get install netcat-obenbsd

              versuchs mal mit

              sudo apt-get install netcat-openbsd
              
              T 1 Reply Last reply Reply Quote 0
              • T
                Tomate @Latzi last edited by Negalein

                @Latzi

                ubuntu@ubuntu-20:/home/iobroker$ sudo apt-get install netcat-openbsd
                [sudo] Passwort für ubuntu: 
                Paketlisten werden gelesen... Fertig
                Abhängigkeitsbaum wird aufgebaut.       
                Statusinformationen werden eingelesen.... Fertig
                netcat-openbsd ist schon die neueste Version (1.206-1ubuntu1).
                0 aktualisiert, 0 neu installiert, 0 zu entfernen und 2 nicht aktualisiert.
                ubuntu@ubuntu-20:/home/iobroker$
                

                T 1 Reply Last reply Reply Quote 0
                • T
                  Tomate @Tomate last edited by

                  @Tomate
                  Habe inzwischen auf die neue 1.5 er Version geupdatet.
                  Ergebnis bleibt leider unverändert.

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

                    @Tomate

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

                    Im Installationsverzeichnis vom Skript nano wetterstation.sub CTRL+W drücken, get_data eingeben und [ENTER]
                    2 Zeilen unter dem Cursor siehst du dann "... nc -lvw 1 -p ..." dort fügst du ein "n" ein: "... nc -nlvw 1 -p ..."
                    ~12 Zeilen tiefer beginnt dann "ws_data", dort das selbe. Speichern und es sollte funktionieren.

                    T 1 Reply Last reply Reply Quote 0
                    • T
                      Tomate @sonystar last edited by Negalein

                      @sonystar
                      Nach dem ich zweimal das "N" eingefügt habe, hat sich das Ganze etwas verändert.
                      Das Terminal bleibt ca.30 Sekunden hier hängen "Listening on 0.0.0.0 4980"

                      ubuntu@ubuntu-20:/home/iobroker$ ./wetterstation.sh --debug
                      Connection to 192.168.10.119 8087 port [tcp/*] succeeded!
                      Listening on 0.0.0.0 4980
                      
                      
                      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:
                      
                      
                      
                      Debug VAR:
                      Installationsverzeichnis: /home/iobroker
                      IPP: 192.168.10.119:8087	WS_PORT: 4980		WS_POLL: 30		PRE_DP: javascript.0.Wetterstation
                      Script-Version: V1.5.0	Config-Version: V1.5.0	Sub-Version: V1.5.0
                      
                      Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein?
                      
                      ubuntu@ubuntu-20:/home/iobroker$
                      


                      Der Rest scheint wie gehabt

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

                        @SBorg
                        Zur Info beim Statistk Script kann ich das Format meinen Wünschen anpassen. Leider funktioniert das nicht bei niedrigster Jahresdurchschnitt.

                        8163d9cc-625a-4774-b93d-609b2e33bdad-grafik.png

                        Kannst du da bitte nochmal nachsehen?

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

                          @Tomate
                          Interpretiere ich es richtig?
                          Die Wetterstation liefert keine Werte?
                          Wenn dem so ist, wie könnte ich das prüfen?

                          In der WS APP steht auch keine Werte drin, oder wären die Werte in der APP von Wunderground? Da bin ich nämlich garnicht angemeldet.

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

                            @Tomate Ja, da kommt nix. Du musst nicht bei WU angemeldet sein, allerdings siehst du ohne Konto auch keine Daten in der App.
                            Liefert denn ein ./wetterstation.sh --data was?

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

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

                              Zur Info beim Statistk Script kann ich das Format meinen Wünschen anpassen. Leider funktioniert das nicht bei niedrigster Jahresdurchschnitt.

                              Das funktioniert schon, allerdings anders als am Anfang (steht auch hier irgendwo). Mit der ersten Version habe ich das noch täglich geupdated, was aber nonsens ist. Den korrekten Wert kann man erst am Ende des Jahres haben. Wäre genau so unsinnig einen Tageshöchstwert morgens um 8:00 Uhr zu ermitteln 🙂
                              Deswegen passiert mit beiden DPs bis zum 01.01. nix mehr, dann wird er resettet und das neue Jahr fängt an. Dann heißt es bis zum 31.12.2021 wieder Daten sammeln und ab diesem Datum stehen erst die Werte (auch zukünftige) fest. Denn dann hast du wirklich erst aussagefähige Daten für ein Jahr (bzw. hier für das erste).

                              1 Reply Last reply Reply Quote 0
                              • T
                                Tomate @SBorg last edited by Negalein

                                @SBorg said in [Linux Shell-Skript] WLAN-Wetterstation:

                                ./wetterstation.sh --data

                                Leider Nein

                                ubuntu@ubuntu-20:/home/iobroker$ ./wetterstation.sh --data
                                Connection to 192.168.10.119 8087 port [tcp/*] succeeded!
                                
                                
                                Warte maximal 66 Sekunden auf Datenpaket der Wetterstation...
                                
                                Listening on 0.0.0.0 4980
                                ubuntu@ubuntu-20:/home/iobroker$
                                

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

                                  @Tomate Hast du eine Station aus der Liste (1. Post) oder eine andere? Die Einstellungen in der WS View App stimmen auch alle?

                                  Ganz ohne Skript muss bei  nc -nlvw 1 -p PORT (PORT durch deinen ersetzen) ein Datenstring der Station kommen:
                                  Bild 1.png

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

                                    @SBorg
                                    Meinst du die Stelle? {WS_ID}
                                    Wenn ja, soll ich es komplett mit meinem Port ersetzen?
                                    Meine Datei:

                                    ### Daten holen und Integritätscheck
                                    get_DATA() {
                                     #auf Daten der Wetterstation warten
                                      DATA=$(timeout ${WARTE} nc -nlvw 1 -p ${WS_PORT}|sed -n '1 p')
                                      STRLEN=$(echo -n $DATA | wc -m)
                                    
                                     #haben wir eine Jahresregenmenge?
                                      if [[ ! "$DATA" =~ "yearlyrainin" ]]; then DATA=$(echo $DATA| sed -e 's/solarradiation/yearlyrainin=0\&solarradiation/' ); fi
                                     #check auf Datenintigrität
                                      if [ "$STRLEN" -gt "400" ] && [[ "$DATA" =~ "/weatherstation/updateweatherstation.php?ID=${WS_ID}" ]]; then return 0; else return 1; fi
                                    }
                                    
                                    
                                    
                                    ### Datenpaket der Wetterstation anzeigen
                                    ws_data() {
                                      echo -e "\n\nWarte maximal ${WARTE} Sekunden auf Datenpaket der Wetterstation...\n" && timeout ${WARTE} nc -nlvw 1 -p ${WS_PORT} | sed -n '1 p'
                                    }
                                    

                                    Auf nc -nlvw 1 -p 4980 bekomme ich folgende Antwort

                                    ubuntu@ubuntu-20:/home/iobroker$ nc -nlvw 1 -p 4890
                                    Listening on 0.0.0.0 4890
                                    Connection received on 192.168.10.165 8208
                                    GET /weatherstation/updateweatherstation.php?ID=ZUHAUSE&PASSWORD=12345678&indoortempf=70.0&tempf=74.3&dewptf=49.8&windchillf=74.3&indoorhumidity=45&humidity=42&windspeedmph=0.0&windgustmph=0.0&winddir=10&absbaromin=28.884&baromin=28.884&rainin=0.000&dailyrainin=0.000&weeklyrainin=0.071&monthlyrainin=0.071&yearlyrainin=0.071&solarradiation=0.00&UV=0&dateutc=2020-12-07%2020:14:14&softwaretype=EasyWeatherV1.5.6&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
                                    Host: 192.168.10.119
                                    Accept:*/*
                                    Connection: Close
                                    


                                    Hast du eine Station aus der Liste (1. Post) oder eine andere?
                                    ELV WS980WiFi

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

                                      @SBorg

                                      Ich bin nicht so der Rechengenie.
                                      Kann der Durchschnitt stimmen?

                                      Screenshot_2020-12-08 vis.png

                                      {"Tiefstwert":-5,"Hoechstwert":18.72,"Temp_Durchschnitt":-0.88,"Max_Windboe":43.93,"Max_Regenmenge":12.1,"Regenmenge_Monat":38.1,"warme_Tage":4,"Sommertage":0,"heisse_Tage":0,"Frost_Tage":19,"kalte_Tage":32,"Eistage":4,"sehr_kalte_Tage":0}
                                      
                                      SBorg 1 Reply Last reply Reply Quote 0
                                      • S
                                        sonystar @SBorg last edited by

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

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

                                        Ich hatte gelesen das es da noch gewickt hatte weil jeweils die eingestellte POLL-Zeit hinzuadiert wird mit jeden kommendes Datenpaket

                                        Nein, das läuft mittlerweile (frag nicht seit wann 😉 ) mit einem Timer und der Differenz daraus. Also vorheriges Paket bei 22 Sekunden, aktuelles (mal ganz übertrieben) 3 Minuten später und bei 44 Sekunden, dann wird hier korrekt mit 202 Sekunden, unabhängig vom POLL-Intervall gerechnet.
                                        Allerdings habe ich eben gesehen, dass ich das bei der Solarenergie nicht berücksichtigt habe 😞
                                        Stelle es also besser korrekt auf die 30 Sekunden ein.

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

                                        Z.B. Max_Windböe mit Datum und Uhrzeit. Man weiß ja sonst nie wann das ganze passiert ist.

                                        Doch, denn das wäre dann doppelt gemoppelt. Du hast bei jedem Datenpunkt im ioB auch immer einen Timestamp und einen "Last change Timestamp". Den kannst du so in der VIS nutzen, im Blockly, NodeRED oder was auch immer.
                                        Bild 1.png
                                        Ok, die Uhrzeit stimmt jetzt zwar nicht, aber die Statistik ist ja eh rückwirkend. Vor xx Tagen Ok, aber brauche ich dann wirklich, dass es am 02.12. um 13:12 Uhr war? Der Aufwand dafür ist nicht unerheblich und belastet das System. Wenn man es wirklich braucht, könnte man dies auch im Influx nachschauen. Oder wie bei mir, ich visualisiere eh per Grafana, da kannst du hinein- und hinaus zoomen wie du willst, auch Minuten genau.

                                        Danke. Dann werde ich bei gelegentheit noch die POLL-Zeit auf 30 Sek stellen.

                                        Das mit dem Zeitstempel wusste ich nicht, dann reicht es mir tatsächlich so.
                                        Eine Visualisierung über Grafana und/oder VIS ist zwar mein Ziel, aber davor scheue ich mich noch. Habe da überhaupt keine Ahnung von. Aber mit dem rein und rauszoomen bei Grafana klingt schon mal sehr interessant.

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

                                          @Tomate Nene, dass ist schon alles Ok so. Mich wundert nur, dass du Daten "per Hand" bekommst, aber nicht per Skript (was genau dasselbe macht wie die händische Eingabe).
                                          Stell mal in der *,conf den POLL-Wert auf 120 Sekunden und probier noch mal ein ./wetterstation.sh --data
                                          Entweder kommt jetzt mal was, oder...??? Nicht wundern, der bleibt jetzt ~4 Minuten stehen. In der Zeit müsste aber (wg. ev. Empfangsprobleme oder was auch immer) jetzt mal ein Paket ein trudeln.

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

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

                                            Ich bin nicht so der Rechengenie.
                                            Kann der Durchschnitt stimmen?

                                            Der Durchschnitt sicherlich. Du hast immerhin 19 Frosttage, 4 Eistage und 32 kalte Tage.
                                            Die Mathematik ist recht einfach: alle Messwerte von 0:00:00 Uhr bis 23:59:59 Uhr addieren und durch die Anzahl der Messwerte teilen = Tagesdurchschnitt
                                            alle Tagesdurchschnitte pro Monat addieren und durch deren Anzahl teilen = Monatsdurchschnitt

                                            Ich bin aber kein Meteorologe, weiß also nicht ob das richtig ist. Das ist ein reiner Durchschnitt, es gibt aber noch gleitender Durchschnitt, Mittelwert...

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            897
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            142
                                            5473
                                            3259138
                                            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