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.
    • SBorg
      SBorg Forum Testing Most Active @Legoracer70 last edited by

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

      Dort konnte ich die Daten für Weathercloud, Underground, mein WLAN-Zugangsdaten und die Zeitzone einstellen. Mehr leider nicht.

      😞 nicht gut...
      Ich weiß nicht wie gut deine Netzwerkkenntnisse sind und wie viel Aufwand du betreiben möchtest, aber wenn es keine Möglichkeit gibt deine Station entsprechend zu konfigurieren, dann wird es aufwändig.
      Das Ganze basiert einfach darauf, dass man sich die WU - URL mit den Daten an einen lokalen Rechner schicken lässt. Diese URL mit den Daten hast du zwar auch, nur schickt er es halt direkt an WU.
      Wenn man einen eigenen DNS-Server (geht auch mit PiHole) aufsetzt (mit einer Fritz!Box geht es leider nicht) und die Namensauflösung nicht mehr von der Fritz!Box oä. sondern vom eigenen DNS übernehmen lässt, kann man die Domain-Adresse von WU auf einen eigenen Rechner "umbiegen". So käme man auch an die Daten.

      L 2 Replies Last reply Reply Quote 1
      • L
        Legoracer70 @SBorg last edited by

        @SBorg Ok, hört sich erstmal kompliziert an😧 . Ich werde mich mal rein lesen ...
        Trotzdem danke erstmal👍

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

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

          sudo apt-get install jq

          Volltreffer, danke.

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

            Wird sich zukünftig auch überprüfen lassen:
            Bild 1.png

            1 Reply Last reply Reply Quote 1
            • E
              eviltrooper last edited by

              Hallo,
              vielleicht stand es hier schon irgendwo.
              aber die Innentemperatur wird bei mit mit 2 nachkommastellen angezeigt, kann ich das umstellen?

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

                @eviltrooper Hi, nö, aber je nach dem was du mit dem Datenpunkt anstellst bzw. anstellen willst, kannst du es ja in NodeRED, Blockly, JS, VIS, Grafana etc. abstellen.

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

                  @SBorg
                  ja ist mir auch gerade eingefallen.. ich dummbeutel.. im VIS kann ich das ja auch einstellen..
                  Sorry für die dumme Frage 😄

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

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

                    ich dummbeutel.. im VIS kann ich das ja auch einstellen..
                    Sorry für die dumme Frage

                    Veto, es gibt hier keine Dummbeutel oder dumme Fragen. Ich vergesse auch mal was oder sehe den Wald vor lauter Bäumen nicht immer 😂
                    Die Materie ist ja auch ziemlich komplex und vielen fremd 😉

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

                      Hallo,

                      kann mir jemand sagen was die Fehlermeldung "nc: getnameinfo: Temporary failure in name resolution" bedeutet?

                      Mit "nc -lv -p 1080" bekomme ich die selbe Ausgabe.

                      Dankeschön!

                      Edit: Habs gelöst.
                      In der Datei /etc/resolv.conf
                      Nameserver auf 8.8.8.8

                      Edit2: Mhm.. Dat hat zwar temporär funktioniert aber nach einem Neustart ist diese Änderung wieder überschrieben und das Script funktioniert wieder nicht.
                      Hat dann doch jemand eine Idee?

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

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

                        aber nach einem Neustart ist diese Änderung wieder überschrieben

                        Das ist auch normal, denn /etc/resolv.conf ist ein SymLink. Mach mal ein ls -al /etc/resolv.conf dann siehst du es. Notiere dir mal das Ziel (zB. /etc/run/resolve/stub-resolv.conf), dann löscht du den Symlink und legst eine "echte" Datei an mittels rm -iv /etc/resolv.conf && touch /etc/resolv.conf
                        Jetzt kannst du sie normal editieren + einfach nameserver 8.8.8.8 eintragen. Das überlebt dann auch einen Systemneustart.

                        Funktioniert nun etwas anderes nicht, kannst du den SymLink wieder herstellen. Die Originaldatei blieb erhalten 😉

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

                          @SBorg

                          Vielen Dank für die Hilfe. Habe die Datei gelöscht und eine neue erstellt.
                          Die Datei /etc/resolv.conf sieht nun so aus:

                          # Generated by NetworkManager
                          search fritz.box
                          nameserver 8.8.8.8
                          

                          Damit funktioniert auch alles.
                          Nach einem Neustart des Systems steht in der Datei allerdings folgendes:

                          # Generated by NetworkManager
                          search fritz.box
                          nameserver 127.0.0.53
                          

                          Damit geht nichts.

                          Habe auch schon meinen "richtigen" DNS server dort eingetragen, auch dieser wird mit jedem Neustart überschrieben.

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

                            @sonystar Was aber komisch ist, denn 127.0.0.53 ist eigentlich korrekt.

                            # Generated by NetworkManager

                            Der läuft bei dir. Den brauchst du aber nicht wenn du unter /etc/resolv.conf den Server händisch angibst:

                            1. sudo systemctl stop systemd-resolved zum Anhalten
                            2. dann sudo systemctl disable systemd-resolved zum Abschalten beim booten
                            3. jetzt kannst du die resolv.conf (s.o.) nochmals anlegen (falls es noch immer ein SymLink sein sollte)
                            S 1 Reply Last reply Reply Quote 0
                            • S
                              sonystar @SBorg last edited by

                              @SBorg

                              Also das scheint erstmal nicht funktioniert zu haben, aktuell ist der Rechner für mich nicht mehr erreichbar. Muss dazu sagen dass die Technik im Garten steht und so für mich nicht greifbar ist. Kann den Rechner zwar noch anpingen und iobroker erreiche ich auch, Teamviewer und das Script laufen allerdings nicht. Werd mich morgen mal ins Auto setzen und vorort schauen was los ist. Hatte die Fritzbox eingetragen als DNS, morgen probier ich mal den Google-dns und werd ssh einrichten.

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

                                Also mit deaktiviertem NetworkManager funktioniert es nicht, dann hat der Rechner kein Internet mehr. Auf die ioBroker-Oberfläche komme ich wegen bestehender VPN noch drauf aber sonstige Dienste gehen nicht. Das komische war dass in der resolv.conf trotzdem wieder die 127.0.0.53 drin stand. Das hatte ich nach deaktivierung des NetworkManager geändert auf die IP der Fritzbox.

                                Es bleibt dabei, mit aktiviertem NetworkManager und Reboot des Rechners läuft der Script nicht mit der Fehlermeldung:

                                wetter@Desktop-Wetter:~/WLAN-Wetterstation-1.4.0$ ./wetterstation.sh --debug
                                Connection to xxx.xxx.xxx.xxx xxxx port [tcp/*] succeeded!
                                nc: getnameinfo: Temporary failure in name resolution
                                

                                Erst wenn ich in der Datei resolv.conf die IP ändere auf Google oder Fritzbox läuft das Script.

                                Hast du noch eine Idee?

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

                                  @sonystar Welche Distri nutzt du denn?
                                  Grundsätzlich ist erst mal die 127.0.0.53 richtig. Hier schaut der Rechner dann auf den Nameserver und löst dann den Namen in die IP auf.
                                  Aktuell wird zur Konfiguration des Netzwerkes eigentlich "netplan" benutzt. Dann sollte eine *.yaml unter /etc/netplan liegen:

                                  # This file describes the network interfaces available on your system
                                  # For more information, see netplan(5).
                                  network:
                                    version: 2
                                    renderer: networkd
                                    ethernets:
                                      ens18:
                                        dhcp4: no
                                        dhcp6: yes
                                        addresses: [192.168.112.3/24]
                                        gateway4: 192.168.112.1
                                        nameservers:
                                            addresses: [192.168.112.1]
                                  

                                  Wie bei yaml üblich sind auch hier die Einrückungen wichtig,

                                  Versuche zuerst aber mal ein  nc -nlvw 1 -p 1080 mit den "falschen" Netzwerkeinstellungen. Funktioniert das?

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

                                    @SBorg Ich nutze Ubuntu 20.04.

                                    nc -nlvw 1 -p 1080 scheint zu funktionieren

                                    wetter@Desktop-Wetter:~$ nc -nlvw 1 -p 1080                                                                                                                             Listening on 0.0.0.0 1080                                                                                                                                               Connection received on 192.168.20.10 39960                                                                                                                              GET /weatherstation/updateweatherstation.php?ID=Garten&PASSWORD=123456789&indoortempf=41.7&tempf=39.9&dewptf=36.9&windchillf=39.9&indoorhumidity=65&humidity=89&windspeedmph=1.1&windgustmph=1.1&winddir=266&absbaromin=29.170&baromin=29.637&rainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.012&yearlyrainin=4.799&solarradiation=68.02&UV=0&dateutc=2020-12-06%2012:38:38&softwaretype=EasyWeatherV1.5.3&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0                                             Host: 192.168.20.1                                                                                                                                                      Accept:*/*                                                                                                                                                              Connection: Close        
                                    

                                    Die Datei /etc/netplan/*.yaml sieht bei mir so aus

                                    # Let NetworkManager manage all devices on this system
                                    network: 
                                        version: 2
                                        renderer: NetworkManager     
                                    

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

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

                                      renderer: NetworkManager

                                      da bin ich leider raus. Würdest du direkt am Rechner sitzen ev. ja, so aber bei einem Fehler ab ins Auto... Ne, ohne mich 😉
                                      Wenn es aber mittels "n" beim netcat funktioniert, nehmen wir doch das einfach.
                                      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.
                                      Nehme ich dann für die V1.6.0 auf, da wir sowieso nur mit IP arbeiten und nicht zwangsläufig die Namensauflösung brauchen.

                                      S B 4 Replies Last reply Reply Quote 0
                                      • S
                                        sonystar @SBorg last edited by

                                        @SBorg Mein Held des Tages! Vielen Dank, es läuft nun nach einem Restart sauber los!

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

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

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

                                          Wenn es aber mittels "n" beim netcat funktioniert, nehmen wir doch das einfach.
                                          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.

                                          Ich wollte mich nur auch mal melden, weil ich in einer virtuellen Maschine mit Ubuntu 20.04.1 unter Proxmox ebenso ein Problem mit nc: getnameinfo: Temporary failure in name resolution hatte.

                                          Das händische Eingreifen mit nc -nlvw 1 -p 1080 in der .sub (v1.4) an beiden Stellen hat mir weitergeholfen. Danke dafür 👍

                                          Lucifor1976 1 Reply Last reply Reply Quote 0
                                          • Lucifor1976
                                            Lucifor1976 @Berchemer last edited by Lucifor1976

                                            Hallo Freunde der Nacht.
                                            Ich habe Heute das Script installiert, erstmal Danke für die Arbeit 🙂
                                            Ich habe eine Sainlogy WS3500.

                                            Soweit klappt alles. Aber ein:

                                            ./wetterstation.sh --debug
                                            

                                            zeigt bei mir seltsames an? Der Datenblock ist doch da, oder irre ich mich?

                                            pi@ioBrokerMaster:/home/iobroker $ ./wetterstation.sh --debug
                                            Connection to 192.168.1.236 8087 port [tcp/*] succeeded!
                                            Connection from 192.168.1.69 6977 received!
                                            Listening on [0.0.0.0] (family 2, port 1080)
                                            Connection from 192.168.1.69 49214 received!
                                            
                                            
                                            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:
                                            GET /weatherstation/updateweatherstation.phpID=Home&PASSWORD=xxxxxx&indoortempf=69.6&tempf=38.7&dewptf=37.2&windchillf=38.7&indoorhumidity=54&humidity=95&windspeedmph=1.6&windgustmph=2.2&winddir=333&absbaromin=29.430&baromin=29.430&rainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.484&yearlyrainin=0&solarradiation=0.00&UV=0&dateutc=2020-12-06%2015:28:14&softwaretype=EasyWeatherV1.5.2&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
                                            
                                            
                                            Debug VAR:
                                            Installationsverzeichnis: /home/iobroker
                                            IPP: 192.168.1.236:8087	WS_PORT: 1080		WS_POLL: 30		PRE_DP: javascript.0.Wetterstation
                                            Script-Version: V1.4.0	Config-Version: V1.4.0	Sub-Version: V1.4.0
                                            
                                            Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein?
                                            

                                            Herzlichen Dank 🙂

                                            EDIT: Au man, grad als ich es hier eingestellt habe, hab ich den Fehler gesehen, es muss ein "?" in den Pfad der Wetterstation in der APP unter Coustom Server eingetragen werden.
                                            Also ein:

                                            /weatherstation/updatewetherstation.php?
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            945
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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