Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. WLAN-Wetterstation @SBorg Alternative Installation

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    WLAN-Wetterstation @SBorg Alternative Installation

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      reini90 @XxJooO last edited by

      @xxjooo Herzlichen Dank für diese Tolle Anleitung.
      Ich habe soweit alles befolgt und bei mir ist sowohl der pihole als auch der iobroker auf dem selben Gerät und damit unter der selben IP vorhanden (ich denke das sollte soweit kein Problem sein).

      sobald ich nun den DNS Eintrag für meine Sainlogic Wetterstation auf den pihole route, werden die Daten weder an den iobroker noch an wunderground oder sonst wo hin publiziert 😞

      Im Debugmodus werden auch keine Werte angezeigt und zum Schluss steht "Kommunikationsfehler"

      Ich habe heute schon den ganzen Tag herumexperimentiert, aber leider bekomme ich das Ding nicht zum Laufen...

      Laut WS Updater sollte alles soweit vorhanden und erreichbar sein

       ┌────────────────────────┐
       │                        │
       │   WS-Updater V2.16.0   │
       │                        │
       └────────────────────────┘
      
       'bc' installiert: [✓]
       'jq' installiert: [✓]
       'dc' installiert: [✓]
       'unzip' installiert: [✓]
       'patch' installiert: [✓]
      
       Zugriff auf 'Rest-API' im ioBroker: [✓]
      
      
      

      beim Ausführen des Debug Modus kommen dann folgende Fehler:

      WLAN-Wetterstation V2.16.0 - (c)2019-2022 by SBorg
       Config-Version: V2.16.0
       Sub-Version   : V2.16.0
      
       'bc' installiert: [✓]
       'jq' installiert: [✓]
      
       'nc' in der Openbsd-Variante installiert:  [✓]
       'netcat' in Openbsd-Variante aktiv, alles korrekt [✓]
      
      
      Connection to 192.168.1.111 8087 port [tcp/*] succeeded!
      
      
      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      :  %
      Windgeschwindkeit       :  km/h
      Windgeschwindkeit 10min :  km/h
      Windböengeschwindigkeit :  km/h
      max. Windböe            :  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
      Sonnenstrahlung         :  W/m²
      UV-Index                :
      Zeitstempel             :
      Firmware                :
      Batteriestand:          :
      Gateway-Modell          :
      
      Zusatzsensoren:
      
      
      
      Datenstring für ioBroker:
      
      
      
      DATA von Wetterstation:
      
      
      
      Debug VAR:
      Installationsverzeichnis: /home/orangepi
      IPP: 192.168.1.111:8087 WS_PORT: 80             WS_POLL: 120            PRE_DP: javascript.0.Wetterstation.
      WEB: HTTP               WS_PROT: DNS    DP35/40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0
      WH31: 0
      Script-Version: V2.16.0 Config-Version: V2.16.0 Sub-Version: V2.16.0
      
      Kommunikationsfehler!
      
      
      
      Datenübertragung an wunderground.com:
      (vor einer Veröffentlichung unbedingt zumindest das Passwort unkenntlich machen, ggf. auch die Station-ID[=Benutzername])
      --2022-08-03 22:49:59--  https://weatherstation.wunderground.com/
      Resolving weatherstation.wunderground.com (weatherstation.wunderground.com)... 169.61.113.60, 169.55.126.243, 169.55.126.244, ...
      Connecting to weatherstation.wunderground.com (weatherstation.wunderground.com)|169.61.113.60|:443... connected.
      HTTP request sent, awaiting response... 404 Not Found
      2022-08-03 22:50:00 ERROR 404: Not Found.
      

      Ich habe leider absolut keinen Plan was ich noch machen kann.
      die Werte habe ich unter javascript.0.Wetterstation angelegt aber da wird leider nichts aktualisiert...

      ich bitte dringend um Hilfe 🙁

      R 1 Reply Last reply Reply Quote 0
      • R
        reini90 @reini90 last edited by

        Ok, now i tried with WS3500 changed config without DNS and it works on the fly.
        Therefore the connection via DNS has some problems... what I also could find out is, that pihole uses port 80 and 85 which could possibly the reason for my problem.

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

          @reini90 sagte in WLAN-Wetterstation @SBorg Alternative Installation:

          that pihole uses port 80 and 85 which could possibly

          Hi,
          hast du deinen Pihole von Port 80 verlegt? Da die Wetterstation immer den Web Port 80 nutzt muss der frei sein und das Web-Interface des Pihole (oder etwas anderes) darf da nicht auf Port 80 laufen.

          Kleiner Test mittels nc -vz localhost 80 auf dem System muss dann ein "Connection refused" (siehe Pic bei mir Port 801) ergeben.
          Es darf keinesfalls wie bei mir bei Port 80 (hier läuft bei mir der Apache-Webserver) ein "Succeeded" kommen! Dann wird das Skript so nicht laufen.

          Bild 002.png

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

            @sborg Hi,

            ja hab alles ganz genau nach Anleitung gemacht. Das komische ist eben, der pihole war danach sowohl unter Port 80 als auch 85 erreichbar und damit ist wohl die ganze Kommunikation mit dem WS nicht zustande gekommen.

            Aktuell läuft er nur noch auf 80 obwohl ich ihn eindeutig auf 85 konfiguriert habe 😞

            Aber wie gesagt ich habe mir nun eine WS3500 besorgt, die macht keine Probleme und mir ist nur wichtig dass es funktioniert.
            Für alle weiteren Tüftler ist jedenfalls wichtig zu erwähnen, wenn man auf mein Phänomen stößt wird es höchstwahrscheinlich am belegten Port 80 scheitern.

            vielen Dank jedenfalls für deine Hilfe und wirklich ein tolles Projekt 🙂

            1 Reply Last reply Reply Quote 0
            • C
              ClausPech last edited by

              @XxJooO erst einmal vielen Dank für die super gemachte Anleitung und vielen Dank für die viele Arbeit.
              Ich habe eine Sainlogic FT 0300.
              Ich habe soweit alles gemacht wie hier beschrieben, laufe allerdings bei einem --debug auf einen "Kommunikationsfehler!".

              WLAN-Wetterstation V2.19.0 - (c)2019-2022 by SBorg
              Config-Version: V2.19.0
              Sub-Version   : V2.19.0
              
              'bc' installiert: [✓]
              'jq' installiert: [✓]
              
              'dc' installiert: [✓]
              
              'nc' in der Openbsd-Variante installiert:  [✓]
              'netcat' in Openbsd-Variante aktiv, alles korrekt [✓]
              
              
              Connection to 10.1.0.1 8087 port [tcp/*] succeeded!
              
              
              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
              max. Windböe            :  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
              Sonnenstrahlung         :  W/m²
              UV-Index                :
              Zeitstempel             :
              Firmware                :
              Batteriestand:          :
              Gateway-Modell          :
              
              Zusatzsensoren:
              
              
              
              Datenstring für ioBroker:
              
              
              
              DATA von Wetterstation:
              
              
              
              Debug VAR:
              Installationsverzeichnis: /home/heiko/wetterstation
              IPP: 10.1.0.1:8087     WS_PORT: 80             WS_POLL: 30             PRE_DP: javascript.0.Wetterstation
              WEB: HTTP              WS_PROT: DNS
              
              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
              
              Script-Version: V2.19.0 Config-Version: V2.19.0 Sub-Version: V2.19.0
              
              Kommunikationsfehler!
              

              Die Meldung braucht ca. 3 sec. Mache ich den --debug als root, dauert es etwas über eine Minute

              Die grundsätzliche Verbindung klappt. (Connection to 10.1.0.1 8087 port [tcp/*] succeeded!).
              Führe ich "service wetterstation status" aus, kommt folgendes zurück:

              Nov 06 08:55:32 pihole wetterstation.sh[18607]: (standard_in) 1: syntax error
              Nov 06 08:55:32 pihole wetterstation.sh[18609]: (standard_in) 12: syntax error
              Nov 06 08:55:32 pihole wetterstation.sh[18613]: (standard_in) 1: syntax error
              Nov 06 08:55:32 pihole wetterstation.sh[18631]: (standard_in) 1: syntax error
              Nov 06 08:55:32 pihole wetterstation.sh[18650]: (standard_in) 1: syntax error
              Nov 06 08:55:32 pihole wetterstation.sh[18652]: (standard_in) 12: syntax error
              Nov 06 08:55:32 pihole wetterstation.sh[18656]: (standard_in) 1: syntax error
              Nov 06 08:55:33 pihole wetterstation.sh[18674]: (standard_in) 1: syntax error
              Nov 06 08:55:33 pihole wetterstation.sh[18697]: (standard_in) 1: syntax error
              Nov 06 08:55:33 pihole wetterstation.sh[18699]: (standard_in) 12: syntax error
              

              Bevor ich die Anleitung umgesetzt habe wurde das WLAN-Symbol im Display dauerhaft angezeit. Jetzt taucht es alle 1-2 Minuten für ein paar Sekunden auf und verschwindet dann wieder.

              Hat jemand eine Idee? Bin für jeden Tipp dankbar.
              Danke schonmal.

              1 Reply Last reply Reply Quote 0
              • G
                guenter- last edited by

                Hallo
                habe folgende Idee:

                • in einem OpenWRT WLAN Minirouter eine Bresser-Wetterstation einzubinden.
                • mittels IPV4 Routing die Daten der Wetterstation auf den iobroker, auf dem das Skribt läuft zu schicken.
                • leider empfange ich nichts
                  Hat Jemand eine Idee, werden noch zusätzliche Informationen benötigt.
                  Vielleicht kann jemand helfen
                SBorg 1 Reply Last reply Reply Quote 0
                • SBorg
                  SBorg Forum Testing Most Active @guenter- last edited by

                  @guenter Dann scheint etwas mit dem Routing nicht zu funktionieren. OpenWRT müsste doch auch ein Terminal anbieten? Dann versuche mal ob dort ein nc (netcat) funktioniert. Dann könnte man mal schauen ob dort korrekt was ankommt.

                  G 1 Reply Last reply Reply Quote 0
                  • G
                    guenter- @SBorg last edited by

                    @sborg
                    root@ GL-AR300M:~# nc -lv 80
                    listening on 0.0.0.0:44569 ...

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

                      @guenter Wie fast zu erwarten war 😉

                      Hast du den Port des Web-Servers/GUI von Port 80 verlegt? Denn WebIF von OpenWRT (müsste IMO auf Port 80 laufen) und per Display/Gateway dann per URL auf Port 80 des OpenWRT funktioniert nicht. Beim piHole verlegen wir deswegen dessen WebIF-Port 80 --> 81 und muss es dann halt mit http://x.x.x.x:81 aufrufen, aber anders geht es nicht.

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

                        @sborg Hört sich gut an.
                        Habe in lighttpd.conf von Port 80 auf 81 verlegt.
                        Die Oberfläche ist jetzt auf x.x.x.x:81 zu erreichen.
                        Aber unser Ziel haben wir noch nicht erreicht.
                        Immer noch
                        root@ GL-AR300M:~# nc -lv 80
                        listening on 0.0.0.0:44569 ...

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

                          @guenter-0 sagte in WLAN-Wetterstation @SBorg Alternative Installation:

                          Aber unser Ziel haben wir noch nicht erreicht.

                          Das war auch nur die halbe Miete. Wenn man den Port bei OpenWRT hätte nicht umlegen können, bräuchten wir auch nicht weiter machen 😉

                          Es kann noch nicht funktionieren, da dir jetzt der DNS einen Strich durch die Rechnung macht. Die Wetterstation schickt die Daten nicht an deinen Router (an Port 80), sondern fragt bei deinem DNS-Server nach welche IP zu http://wunderground.com gehört und schickt die Daten dort hin. Du musst dem DNS-Server also sagen "schicke alles was nach http://xyz.xx soll zu deinem OpenWRT".
                          Bei OpenWRT bin ich über das genaue "wie" außen vor, es könnte aber genügen wenn du nur die hosts-Datei editierst: sudo nano /etc/hosts (oder anderen Editor)
                          Dort biegst du nun die HTTP-Adresse mittels folgendem Eintrag

                          127.0.0.1 rtupdate.wunderground.com
                          

                          um. Vorher ging ein ping rtupdate.wunderground.com an eine IP ins WWW, jetzt sollte sie auf "127.0.0.1" (=dein OpenWRT-Router) laufen.

                          G 3 Replies Last reply Reply Quote 0
                          • G
                            guenter- @SBorg last edited by

                            @sborg /etc/hosts ergänzt --> ping funktioniert
                            aber das war es noch nicht, noch eine Möglichkeit?

                            1 Reply Last reply Reply Quote 0
                            • G
                              guenter- @SBorg last edited by

                              @sborg OpenWrt.JPG

                              1 Reply Last reply Reply Quote 0
                              • G
                                guenter- @SBorg last edited by

                                @sborg Bei der DNS Adresse, die Fritzbox eintragen?

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

                                  @guenter Die Frage ist: wer ist bei dir der DNS-Server? Vermutlich die Fritte? Dann landet natürlich die DNS-Anfrage vom Display bei der Fritte und nicht beim OpenWRT. Kann OpenWRT als DNS-Server fungieren? Sollte IMO gehen, ist ja eine Router-Software, zumal er ja "eigenen DNS-Server" anbietet.

                                  Dann müsste, wie du bereits vermutet hast, die IP der Fritz!Box unter "Eigenen DNS-Server" und am Display/Gateway dann die "192.168.0.196" vom OpenWRT als DNS-Adresse eingetragen werden.

                                  Dann fragt er (Display) für jede Adresse zuerst den OpenWRT an und teilt ihm die IP des OpenWRT als Ziel an. Es kann nur sein, dass du in der Hosts-Datei dann die OpenWRT-IP "192.168.0.196" anstelle der Localhost "127.0.0.1" angeben musst.
                                  Diese "Verbiegung" gilt dann auch nur für Netzwerk-Geräte die als DNS-Server den OpenWRT nutzen/eingetragen haben. Alle anderen nutzen nach wie vor dann die Fritz!Box 🙂

                                  G 2 Replies Last reply Reply Quote 0
                                  • G
                                    guenter- @SBorg last edited by

                                    @sborg Info

                                    • habs noch nicht hinbekommen
                                    • brauche neuen OpenWRT Router der alte will nicht mehr
                                      bis bald
                                    1 Reply Last reply Reply Quote 0
                                    • G
                                      guenter- @SBorg last edited by guenter-

                                      @sborg Habe den OpenWRT GL-AR300M wieder neu flashen können.
                                      /etc/hosts (192.168.x.x Adresse des Iobrokers) hinzugefügt und etc/lighttpd/lighttpd.conf (Port 80 auf 85) umgelegt.
                                      Die Grundeinstellungen des GL-AR300M wurden beibehalten.
                                      Host Lighttpd.conf.JPG

                                      Das Script läuft auf dem Raspberry gemeinsam mit dem Iobroker, die Verbindung zwischen Script und Iobroker ist hergestellt und tut ihren Dienst.
                                      Die Daten an rtupdate.wunderground.com kommen hier an.

                                      Mit
                                      pi@......: /.../$ sudo ./wetterstation.sh --debug ist die Welt in Ordnung

                                      Mit
                                      pi@......: /.../$ ./wetterstation.sh --debug kommt Kommunikationsfehler.

                                      Netcat:
                                      pi@......: /.../$ sudo nc -lv 80 --> ist ok
                                      pi@......: /.../$ nc -lv 80 --> nc: permission denied

                                      pi@......: /.../$ sudo systemctl status wetterstation
                                      bringt folgendes Ergebnis:
                                      status.JPG

                                      Wie bekomme ich Zugriff auf den Port 80
                                      Was besagt die Fehlermeldung
                                      Loaded: loaded (/etc/systemd/system/wetterstation.service; enabled; vendor preset: enabled)
                                      Active: failed (Result: exit-code) since Wed 2023-01-18 12:02:31 CET; 1h 20min ago
                                      Process: 484 ExecStart=/home/iobroker/script/wetterstation.sh (code=exited, status=1/FAILURE)]
                                      Main PID: 484 (code=exited, status=1/FAILURE)

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

                                        @guenter Auch wenn es erst mal nicht so aussieht, sieht jetzt gut aus 🙂

                                        Bei vielen Linux-Distris benötigen Ports <1024 root-Rechte, deswegen funktioniert alles was du probierst dann auch mittels "sudo".
                                        Du kannst nun zwei Wege gehen:

                                        • dem netcat quasi root-Rechte einräumen
                                        • Port 80 "nach oben verlegen" wo keine root-Rechte mehr nötig sind

                                        Variante "nc" mittels setcap:

                                        sudo setcap CAP_NET_BIND_SERVICE=+eip /bin/nc.openbsd
                                        

                                        Hier muss nur der Pfad zum "nc" angegeben werden (sollte oben eigentlich schon stimmen), allerdings kein Symlink sondern wirklich zur bin vom "nc".


                                        Variante Port verlegen mittels IP-Tables:

                                        sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 1080
                                        

                                        Hiermit wird der Port 80 auf den Port 1080 geroutet. Noch in der wetterstation.conf wieder auf Protokoll 1|2 umstellen (Ecowitt ist einfach besser) und den Port dort auf bspw. die "1080" von oben ändern.
                                        Dann sollte sich der Service auch korrekt starten lassen, ....hoffentlich 😎


                                        Aus den fehlenden root-Rechten resultiert dann beim Service auch der Fehler 😉

                                        G 1 Reply Last reply Reply Quote 0
                                        • G
                                          guenter- @SBorg last edited by

                                          @sborg sagte in WLAN-Wetterstation @SBorg Alternative Installation:

                                          dem netcat quasi root-Rechte einräumen --> scheint zu laufen
                                          Port 80 "nach oben verlegen" wo keine root-Rechte mehr nötig sind --> hat nicht funktioniert ?
                                          wäre aber sicher die bessere Lösung
                                          bei nc -lv 1080 kommt nichts an
                                          😳 Danke bis hier her

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

                                            @guenter sagte in WLAN-Wetterstation @SBorg Alternative Installation:

                                            Port 80 "nach oben verlegen" wo keine root-Rechte mehr nötig sind --> hat nicht funktioniert ?

                                            Gedacht, und dann doch falsch gedacht... 😕

                                            Die Variante ist für "externe" Zugriffe. Wie ich aber eben deinen "nc"-Aufruf sah, viel es wie Schuppen von den Haaren. Es muss doch die "localhost"-Variante sein, da wir ja auf dem gleichen Host arbeiten...

                                            Der sollte dann funktionieren:

                                            sudo iptables -t nat -I OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j REDIRECT --to-ports 1080
                                            
                                            XxJooO G 4 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            alternative linux shell-script wetterstation wlan-wetterstation
                                            9
                                            41
                                            7033
                                            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