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

    • Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    [Linux Shell-Skript] WLAN-Wetterstation

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

      Hallo,

      ich hatte gehofft keine Probleme zu bekommen. Aber ich bin schon stolzer Besitzer einer Ecowitt WP90 mit Gateway 2000.

      Ich bekomme keine Werte angezeigt. Bei ausführen von ./wetterstation.sh --debug erscheint:

      WLAN-Wetterstation V3.5.2 - (c)2019-2025 by SBorg
       Config-Version: V3.5.2
       Sub-Version   : V3.5.2
      
       'bc' installiert: [✓]
       'jq' installiert: [✓] 
      
       'dc' installiert: [✓] 
      
       'nc' in der Openbsd-Variante installiert:  [✓]
       'netcat' in Openbsd-Variante aktiv, alles korrekt [✓]
      
      
      Connection to 172.16.0.102 8081 port [tcp/*] succeeded!
      parse error: Invalid numeric literal at line 1, column 10
      (standard_in) 1: syntax error
      (standard_in) 1: syntax error
      /home/wetter/wetterstation/wetterstation.sub: line 858: [: : integer expression expected
      
      
      Messwerteblock: 
      
      
      Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
      
       Temperatur Innen               :  °C
       Temperatur Aussen              :  °C
       Taupunkt                       :  °C
       Gefühlte Temperatur            :  °C
       Luftfeuchte Innen              :  %
       Luftfeuchte Aussen             :  %
       Windgeschwindigkeit            :  km/h
       Windgeschwindigkeit 10min      :  km/h
       Windböengeschwindigkeit        :  km/h
       Windböe max.                   :  km/h
       Windrichtung                   :  °
       Windrichtung                   : 
       Windrichtung 10min             :  °
       Luftdruck absolut              :  hPa
       Luftdruck relativ              :  hPa
       Regenrate                      :  mm/h
       Regenstatus                    : 
       Regen seit Regenbeginn         :  mm
       Regen Stunde                   :  mm
       Regen Tag                      :  mm
       Regen Woche                    :  mm
       Regen Monat                    :  mm
       Regen Jahr                     :  mm
       Regen Gesamt                   :  mm
       Sättigungsdefizit              :  kPa
       Sonnenstrahlung                :  W/m²
       UV-Index                       : 
       Zeitstempel                    : 
       Firmware                       : 
       Batteriestand:                 : 
       Gateway-Modell                 : 
      
      Zusatzsensoren:
      
      
      
      Datenstring für ioBroker:
      
      
      
      DATA von Wetterstation:
      
      
      
      Debug VAR:
       Installationsverzeichnis: /home/wetter/wetterstation
       IPP: 172.16.0.102:8081 WS_PORT: 1080           WS_POLL: 20             PRE_DP: 0_userdata.0.Wetterstation
       WEB: HTTP              WS_PROT: Ecowitt
      
      Zusatzsensoren:
       DP10/35/40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 
       WH31: 0 || WS90: 0
       Bresser: 7009999 [0]
      
      Script-Version: V3.5.2  Config-Version: V3.5.2  Sub-Version: V3.5.2
      
      Kommunikationsfehler!
      

      Die Conf seht ihr hier:

      ### Settings V3.5.2 -----------------------------------------------------------
       #Debuging einschalten [true/false] / default: false / Ausgabe der Messwerte
        debug=false
      
       #Verhalten bei Kommunikationsfehler [true/false] / default: false / Soll der Datenpunkt automatisch resettet werden?
        RESET_KOMFEHLER=false
      
       #Logging einschalten [true/false] / default: false / schreibt die Datenstrings der Station in eine Datei
        logging=false
      
       #ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx]
        IPP=172.16.0.102:8081
      
       #Protokoll, ioBroker-IP und Port der Rest-API [http(s)://xxx.xxx.xxx.xxx:xxxxx] / leer lassen falls nicht benutzt
        RESTAPI_URL=
        RESTAPI_USER=
        RESTAPI_PW=
      
       #Protokoll der Wetterstation [1/2/9] / 1=Wunderground ; 2=Ecowitt ; 9=DNS / default: 2
        WS_PROTOKOLL=2
      
       #Anzahl der vorhandenen Zusatzsensoren Froggit, Ecowitt und Bresser / default: 0
        ANZAHL_WH31=0
        ANZAHL_WS90=0
        ANZAHL_DP10=0
        ANZAHL_DP35=0
        ANZAHL_DP40=0
        ANZAHL_DP50=0
        ANZAHL_DP60=0
        ANZAHL_DP70=0
        ANZAHL_DP100=0
        ANZAHL_DP200=0
        ANZAHL_DP250=0
        ANZAHL_DP300=0
        ANZAHL_7009999=0
      
       #Protokoll (HTTP oder HTTPS) / default: HTTP
        WEB=HTTP
      
       #Ignoriere Zertifikatsfehler bei der Simple-Restful-API [true/false] / default: false / nötig bei eigenen Zertifikaten
        WEB_IGN_SSL_ERROR=false
      
       #User-Authentifizierung falls benutzt; sonst leer lassen
        AUTH_USER=
        AUTH_PASS=
      
       #Port der Wetterstation
        WS_PORT=1080
      
       #Pollintervall der Wetterstation in Sekunden (minimal 16 Sekunden)
        WS_POLL=20
      
       #Name/ID der Wetterstation
        WS_ID=ZuHause
      
       #wo sollen die Datenobjekte abgelegt werden
        PRE_DP=0_userdata.0.Wetterstation
      
       #InfluxDB-Konfiguration / ohne InfluxDB alles leer lassen
        #Protokoll (HTTP oder HTTPS) / default: HTTP
         INFLUX_WEB=HTTP
        #IP und Port der API [xxx.xxx.xxx.xxx:xxxxx]
         INFLUX_API=172.16.0.101:8086
        #Bucket, Token und Organisation der InfluxDB
         INFLUX_BUCKET=iobroker
         INFLUX_TOKEN=xxx
         INFLUX_ORG=homelab
      
       #letztes Regenereignis als [DATUM], [UNIX]-Timestamp oder [DIFF]erenz ("vor xx Tagen")
       # DATUM = 28.04.2020 13:12
       # UNIX  = 1588074964
       # DIFF  = gerade eben / vor einer Stunde / vor 23 Stunden / vor einem Tag / vor 12 Tagen
      
        LAST_RAIN=DIFF
      
       #Text-Format für Datenpunkte "Sonnenschein_[Tag|Woche|Monat|Jahr]_Text"
       # zweistellig wird ggf. mit einer führenden "0" aufgefüllt
       # d = Tag(e) 0...n ein- und mehrstellig / h = Stunden 0...n ein- oder mehrstellig
       # hh = Stunden zweistellig (00...23) / mm = Minuten zweistellig (00...59) / ss = Sekunden zweistellig (00...59)
       #
       # Beispiel: 68 Stunden, 2 Minuten und 15 Sekunden
       #
       # Auswahl                            | Ausgabe im Datenpunkt
       # ----------------------------------------------------------------------------
       # [0] = h Std. mm Min. ss Sek.       | 68 Std. 02 Min. 15 Sek.
       # [1] = h:mm                         | 68:02
       # [2] = d Tag/e h Std.               | 2 Tage 20 Std.
       # [3] = d Tag/e, h Std, m Min        | 2 Tage, 20 Std, 2 Min (Anzeige Tage erst bei >0)
      
        SONNENSCHEIN_TXTFORMAT=3
      
      
        #Daten an Wetter.com senden (leer lassen falls nicht gewünscht)?
         WETTERCOM_ID=
         WETTERCOM_PW=
      
       #Daten an Wunderground.com senden? [true/false] / default: false
         #Nur nötig und sinnvoll bei WS_PROTOKOLL=9 (DNS) wenn trotzdem auch Daten weiterhin an Wunderground.com gesendet werden sollen.
         WUNDERGROUND_UPDATE=false
      
       #Windrichtung und -geschwindigkeit der letzten 10 Minuten anstelle aktueller Werte an
       #windy/OpenSenseMap/wetter.com übertragen? [true/false] / default: false
        USE_AVG_WIND=false
      
       #Fix aktivieren bei fehlerhafter Außentemperatur [true/false] / default: false
       #Bei unplausiblem Messwert wird kein Datenpaket an den ioB geschickt
        FIX_AUSSENTEMP=false
      
      !!REST ABGESCHNITTEN!!
      

      Hier die Config in der App:
      78ced97c-be19-40f7-86db-d8640eb48f0b-Screenshot_20250927_170456_com.ost.ecowitt.jpg
      file:///home/daniel/Schreibtisch/Screenshot_20250927_170456_com.ost.ecowitt.jpg

      Hier habe ich den Test einmal ohne "/" im Pfad gemacht, sowie einmal mit (/ steht da ja bereits) funktioniert hat beides leider nicht.

      Rene55 Boronsbruder 2 Replies Last reply Reply Quote 0
      • Rene55
        Rene55 @Taddy81 last edited by

        @taddy81 Auf den ersten Blick: IPP=172.16.0.102:8081; hier ist der Port falsch,! Richtig ist wahrscheinlich (standard) 8087.

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

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

          ANZAHL_WS90=0

          Heisst dein Sensor WP90 oder WS90?
          Wenn WS90 dann in der config eintragen.

          Und in deiner App steht unter SPEICHERN -> DEAKTIVIERT?

          1 Reply Last reply Reply Quote 0
          • T
            Taddy81 last edited by

            Habs gelöst. Danke ihr beiden!

            Nun kann ich mich daran begeben, ein Dashboard zu basteln.

            Boronsbruder 1 Reply Last reply Reply Quote 1
            • Boronsbruder
              Boronsbruder @Taddy81 last edited by

              @taddy81
              Mich würde interessieren, wo der Fehler war?
              Nur dass wir alle dazulernen 😉

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

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

                • + Regenereignis für Piezo-Sensoren / Issue #82
                • + Unterstützung für WS80 und WH40H Sensoren

                Wie immer zu finden im GitHub


                Update-Routine von Vorgängerversion:

                • aktuellen WS-Updater nutzen

                  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
                • wetterstation.js muss ebenfalls im JavaScript-Adapter ersetzt und einmalig ausgeführt werden (neuer Datenpunkt .Regenereignis); bei aktivierter Rest-API wird der Datenpunkt automatisch im ioB angelegt (1)

                (1) es empfiehlt sich danach den Simple-API-Adapter neu zu starten (entweder per WebIF oder einfach iob restart simple-api.0)


                Update kann durchgeführt werden, wenn man passende Sensoren hat/nutzt.
                Hinweis: Bei Regensensoren die auf Piezo-Technik basieren (IMO nur ws80/90) und entsprechender Firmware wird nun der Datenpunkt "Regenereignis" als "0" bzw. "1" übergeben (0=kein Regen, 1=Regen). Im Gegensatz zu den Trichtermodellen mit Wippe werden hier schon einzelne Regentropfen detektiert. Eignet sich also nun tatsächlich als aktuelle Regenanzeige, um bspw. die Markise einzufahren.

                E 1 Reply Last reply Reply Quote 1
                • E
                  ETGermany @Mugel80 last edited by

                  @mugel80 Wie hast du das denn hinbekommen? Habe mir die WH6000Ppro hier gekauft.

                  Im Setup kann ich weder Port noch Protokoll oder Pfad einstellen:

                  b0554f3a-b074-400f-b05a-81f73fa59b17-image.png

                  Sollt zumindest mal wissen, welch Port ich benötige, oder kannst du mir die wetterstation.conf schicken?

                  Vielleicht ist das ja auch ein ganz anderes Modell unter gleichem Namen. Sieht deine Station denn genau gleich aus?

                  Danke Eckhard

                  E 1 Reply Last reply Reply Quote 0
                  • E
                    ETGermany @ETGermany last edited by

                    @etgermany Via rtl_433 am ioBroker hat sich die Station als Bresser 7-in-1 angemeldet, somit ist sicher, dass es keine WH600PRO wie früher ist. Ist eben alles aus China von einem Hersteller, egal welchen Namen das Zeug trägt. Angeblich wird ja alles vom OEB Fine Offset Electronics hergestellt.
                    Habe mir jetzt ein Ecowitt WS2910, lt. Handbuch sollte die Einbindung möglich sein.

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

                      @sborg Inzwischen habe ich eine ECOWITT, prinzipiell scheint es zu funktioniert, doch der Datentyp scheint nach einem Restart des Services zu wechseln.

                      Zuerst diese Fehler im Log:

                      
                      simple-api.0
                      2025-10-16 11:01:30.680	info	State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Jahr" has to be type "number" but received type "string"
                      
                      simple-api.0
                      2025-10-16 11:01:30.680	info	State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Monat" has to be type "number" but received type "string"
                      
                      simple-api.0
                      2025-10-16 11:01:30.680	info	State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string"
                      

                      dann habe ich die Objekte angepasst, nach einem Service Neustart dann aber diese Fehler:

                      
                      simple-api.0
                      2025-10-16 11:46:03.183	info	State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Jahr" has to be type "string" but received type "number"
                      
                      simple-api.0
                      2025-10-16 11:46:03.182	info	State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Woche" has to be type "string" but received type "number"
                      
                      simple-api.0
                      2025-10-16 11:46:03.182	info	State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Tag" has to be type "number" but received type "string"
                      
                      simple-api.0
                      2025-10-16 11:46:03.052	info	State value to set for "0_userdata.0.Wetterstation.Info.Sonnenschein_Monat" has to be type "number" but received type "string"
                      
                      simple-api.0
                      2025-10-16 11:46:03.052	info	State value to set for "0_userdata.0.Wetterstation.Info.Sonnenschein_Tag" has to be type "number" but received type "string"
                      

                      Weiterhin noch Fehler beim Start bzw. wenn man den Status abfragen tut:

                      iobroker@n51-ubuntu:~$ systemctl status wetterstation
                      ● wetterstation.service - Service für ioBroker Wetterstation
                           Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; preset: enabled)
                           Active: active (running) since Thu 2025-10-16 11:29:41 CEST; 1min 59s ago
                         Main PID: 1206786 (wetterstation.s)
                            Tasks: 5 (limit: 9171)
                           Memory: 2.8M (peak: 4.4M)
                              CPU: 2.150s
                           CGroup: /system.slice/wetterstation.service
                                   ├─1206786 /bin/bash /home/iobroker/bresser/wetterstation.sh
                                   ├─1207672 /bin/bash /home/iobroker/bresser/wetterstation.sh
                                   ├─1207673 timeout 66 nc -nlvw 1 -p 1080
                                   ├─1207674 tail -1
                                   └─1207675 nc -nlvw 1 -p 1080
                      
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207406]: /home/iobroker/bresser/wetterstation.sub: line 730: "0_userdata.0.Wetterstation.tempData.Sonnenschein" /86400: syntax error: operand expected (error token is ""0_userdata.0.Wetterstation.tempData.Sonnenschein" /86400")
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207407]: /home/iobroker/bresser/wetterstation.sub: line 731: "0_userdata.0.Wetterstation.tempData.Sonnenschein" /3600: syntax error: operand expected (error token is ""0_userdata.0.Wetterstation.tempData.Sonnenschein" /3600")
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207408]: /home/iobroker/bresser/wetterstation.sub: line 732: "0_userdata.0.Wetterstation.tempData.Sonnenschein" % 86400 /3600: syntax error: operand expected (error token is ""0_userdata.0.Wetterstation.tempData.Sonnenschein" % 86400 /3600")
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207409]: /home/iobroker/bresser/wetterstation.sub: line 733: "0_userdata.0.Wetterstation.tempData.Sonnenschein" % 3600 /60: syntax error: operand expected (error token is ""0_userdata.0.Wetterstation.tempData.Sonnenschein" % 3600 /60")
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207410]: /home/iobroker/bresser/wetterstation.sub: line 734: "0_userdata.0.Wetterstation.tempData.Sonnenschein" % 60: syntax error: operand expected (error token is ""0_userdata.0.Wetterstation.tempData.Sonnenschein" % 60")
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1206786]: /home/iobroker/bresser/wetterstation.sub: line 736: [: : integer expression expected
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1206786]: /home/iobroker/bresser/wetterstation.sub: line 742: [: : integer expression expected
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207429]: (standard_in) 1: syntax error
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207438]: (standard_in) 1: syntax error
                      Okt 16 11:30:47 n51-ubuntu wetterstation.sh[1207441]: (standard_in) 1: syntax error
                      iobroker@n51-ubuntu:~$
                      
                      

                      Aber wie gesagt, prinzipiell funktioniert es.

                      icebear 1 Reply Last reply Reply Quote 0
                      • icebear
                        icebear @ETGermany last edited by

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

                        ....doch der Datentyp scheint nach einem Restart des Services zu wechseln.

                        Dies ist ein bekanntes Problem, wenn dich das stört, stellt den DP Typ auf gemischt, dann kommt der Fehler nicht mehr.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        778
                        Online

                        32.3k
                        Users

                        81.0k
                        Topics

                        1.3m
                        Posts

                        linux shell-script wetterstation wlan-wetterstation
                        152
                        5660
                        3689387
                        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