Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. WLAN-Wetterstation @SBorg Alternative Installation

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    475

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

WLAN-Wetterstation @SBorg Alternative Installation

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
alternativelinuxshell-scriptwetterstationwlan-wetterstation
42 Beiträge 10 Kommentatoren 10.0k Aufrufe 12 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • XxJooOX Offline
    XxJooOX Offline
    XxJooO
    schrieb am zuletzt editiert von XxJooO
    #1

    Hallo liebe Freunde der Wetterbeobachtung und Dokumentation. In inzwischen über 2.200 Beiträgen erklären @SBorg und @a200 wie man eine Wetterstation mit dem ioBroker mit Hilfe eines Linux-Shell-Skriptes verbinden kann.

    Meine Wetterstation ist eine Sainlogic FT 0300. Die Station kann mit bis zu 8 externen Sensoren der Art DP50 ausgestattet werden.
    In diesem Beitrag versuche ich Euch zu erklären, wie eine alternative Installation des Skriptes von @SBorg für Wetterstationen, die nicht mit der WSView App arbeiten (z.B. Sainlogic FT0300), möglich ist.

    Auf der GitHub-Seite beschreibt @SBorg die notwendigen Schritte zur Installation seines Skriptes zur Nutzung der Wetterstationen mit ioBroker. Das Hauptaugenmerk liegt hierbei auf den Stationen, die ihre Daten mit Hilfe der WS-View App an einen vom Nutzer bestimmten alternativen Server (in diesem Fall ein eigener Linux-Server, auf dem dann das Script läuft) weiterleitet.
    Es existieren nun verschiedene Wetterstationen, die zwar ihre Daten über eine Verbindung zum Internet im entsprechenden Format an wunderground.com weiterleiten. Diese erlauben aber nicht die Nutzung der WS-View App und somit nur über einen Umweg die Weiterleitung der Daten an den eigenen Server.

    Jetzt wird es sehr technisch, ich denke aber interessant für Alle, die versuchen Ihre Station auch mit ioBroker zu verbinden. Beispielhaft besitze ich die Sainlogic FT 0300. Diese sendet ihre Daten an xxx.wunderground.com. Es gibt keinen direkten Weg der Umleitung der Daten wie bei den anderen Wetterstationen über die Nutzung der WS-View App.

    Die Station stellt keinen eigenständigen Computer dar, auf dem man wie auf einer Linux- oder Windows-Maschine eine hosts-Datei erstellen und editieren könnte. Möchte der Computer mit einer bestimmten Adresse z.B. xxx.wunderground.com Kontakt aufnehmen, so stellt der Dynamic Name Server (kurz DNS) dafür die Adresse 104.84.57.166 zur Verfügung. In Windows 10 findet sich die „hosts-Datei“ unter %windir%\system32\drivers\etc und sie hat den simplen Namen „hosts“. Die Datei kann nur mit Administrator- oder root-Rechten bearbeitet werden.

    Editiert man nun die Datei und erstellt einen Eintrag der Art

    192.168.178.1 wunderground.com,

    speichert die Datei ab und startet die Maschine neu und gibt anschließend in seinem Browser „wunderground.com“ als Adresse ein, so leitet der Eintrag in der hosts-Datei die Anfrage am DNS vorbei an die eigene Adresse 192.168.178.1. Bei mir komme ich z.B. damit auf meine Fritz-Box.

    Die Möglichkeit der Umleitung über die hosts-Datei können wir uns nun zunutze machen. Wir müssen nur erreichen, dass all unser Traffic aus dem eigenen Netzwerk über einen vorgeschalteten DNS geht, der wiederum über eine hosts-Datei eine bestimmte angesurfte Adresse umleiten kann – und das wird in unserem Fall eine Maschine sein, auf der Pi-hole läuft.

    Ich möchte hier nicht auf die genaue Funktion und die Eigenschaften von Pi-hole eingehen. Nur so viel, dass Pi-hole die Funktion des DNS übernimmt und die Erstellung einer hosts-Datei auf dieser Maschine möglich ist. Unter https://pi-hole.net/ wird die Installation unter Docker oder jedem anderen Linux-System genau erklärt. Die eigentliche Aufgabe von Pi-hole ist die Filterung von Werbung und das Blockieren derselben auf allen Seiten, die jedwedes Gerät in unserem Heim-Netzwerk ansurfen will. Es kommt hierbei aber auch zur Blockierung verschiedener Weiterleitungen. Die Suche unter google.de und das Ansurfen von bestimmten Such-Ergebnissen funktioniert nicht mehr zuverlässig, da Pi-hole sie blockiert. Dies lässt sich allerdings in den neuesten Versionen von Pi-hole komfortabel umgehen. Die aktuellste Version von Pi-hole erlaubt das Eingeben der MAC-Adresse z.B. meiner Windows-Maschine, die fortan von der Blockierung der Werbung ausgenommen wird. Alles läuft weiter so, als wäre Pi-hole nicht existent. Jedes Gerät in meinem Heim-Netzwerk kann so von der Blockierung ausgenommen werden. Die Installation von Pi-hole verlangsamt den Zugriff auf das Internet über das heimische Netzwerk in nicht erfühl- oder erfahrbarem Maß! Im Gegenteil vermag die Blockierung der Werbung bestimmte Zugriffe sogar zu beschleunigen.

    Die meisten Probleme hatte ich mit den für Pi-hole notwendigen Einträgen in meiner Fritz!Box. Deshalb werde ich sie hier exemplarisch zeigen. Zuvor noch ein Hinweis: Sind die Einträge in der Fritz!Box entsprechend erstellt und der Rechner, auf dem Pi-hole läuft fällt aus, wird runtergefahren oder stürzt ab, kommt kein anderer Rechner mehr ins Internet bis die Einträge in der Fritz!Box zurückgestellt sind. Deshalb der gute Rat, die alten Einstellungen der Fritz!Box (oder sonstigen Routers) unbedingt zu dokumentieren oder am besten gleich unter System-Sicherung eine solche anzulegen!

    Bei mir läuft Pi-hole auf einem LXC unter Proxmox mit lediglich einer CPU und vollkommen überdimensionierten 8GB Plattenspeicher sowie 1GB RAM auf einem NUC 24/7 vollkommen stabil.

    1. Die lokale Installation meines Pi-hole läuft unter Proxmox in einem LXC mit der gezeigten Adresse. Hier die Einstellungen von Pi-hole
      System:
      aa5b784a-7ce4-404c-8d04-9ae4e76aeb28-image.png
      DNS:
      7c577a92-e45e-42ae-a723-7825528e1fb9-image.png
      DHCP:
      971494eb-65dc-4f27-b46a-cb022647dc41-image.png

    2. Die Einstellungen meiner FritzBox 7590 mit ipV6 Unterstützung (VDSL 100Mbit Netcologne)
      283f5384-97fd-4397-9348-118cf6e608ca-image.png
      Eintrag des Alternativen DNSv4 Server auf die Adresse 192.168.178.10 des Pi-hole
      c476ff8c-043d-4264-bd9b-6f8d63cb62bc-image.png
      Die nächste Einstellung findet sich unter „Heimnetz-Netzwerkeinstellungen“ ganz unten unter IP-Adressen der Punkt „IPv4-Konfiguration“
      475c5779-45a9-466e-b62f-37becce80a5e-image.png
      Und der Punkt „IPv6-Konfiguration“
      9d2d9f59-2141-4aa0-92be-cde9d5454bc7-image.png
      !!! Beachte: die hier angezeigte Adresse unter „DNSv6-Server im Heimnetz“ beginnend mit fd00 ist dem System-Eintrag des Pi-hole auf dem ersten Bild (rot umkringelt) zu entnehmen
      992b9a83-e215-4833-a47b-c6387a416855-image.png

    Mit diesen Einstellungen des Pi-hole und der Fritz!Box sollte der Zugang ins Internet jetzt funktionieren. Wir werden jetzt noch einige Änderungen auf dem Pi-hole vornehmen müssen, darum unbedingt sicherstellen, dass ein SSH-Zugang z.B. über Putty auf die Maschine möglich ist, unter der Pi-hole läuft.

    1. Als erstes ermitteln wir auf der FritzBox die Adresse, mit der die Wetterstation mit unserem Netzwerk verbunden ist:
      1367c5c0-7b4c-4f7d-8870-d27c211b7e8b-image.png
      Ich empfehle, der Station immer die gleiche Adresse zuzuweisen und ihr einen eindeutigen Namen zu geben (der Name wird im Folgenden wichtig):
      1f1beb44-1dfe-486a-b97b-6e9f00c61068-image.png

    2. Wir müssen nun mit Hilfe des Pi-hole herausfinden, zu welcher Adresse im WWW unsere Station die Daten schicken will:
      2585cf15-55b0-4537-a2b4-cde907a4928c-image.png
      Unter „Query Log“ geben wir rechts oben im Feld „Search“ den Namen der Station (hier „sain“) ein. Merkwürdigerweise funktioniert das nicht mit der IP der Station im Heimnetzwerk.
      Das angezeigte Ergebnis sind die beiden Adressen „rtupdate.wunderground.com“ und „api.weathercloud.net“. Erstere Adresse werden wir gleich umbiegen, die zweite Adresse dient weiterhin der möglichen Weiterleitung der Daten an weathercloud.net entsprechend der Anleitung von @Sborg auf GitHub.

    Zwei Dinge sind jetzt notwendig:

    1. Der Standard-Port vom Pi-hole, in meinem Fall also 192.168.178.10 ist der Port 80. Port 80 müssen wir später aber dem Skript von @SBorg zuweisen. Das Skript verwendet den Standart-Port zum Zugriff auf Pi-hole über die gleich mit der hosts-Datei umgeleitete Adresse. Deshalb ändern wir den Port für den Zugriff auf Pi-hole auf 85.
      Mit Putty auf dem Pi-hole Server ändern wir einen Eintrag in der Datei /etc/lighttpd/lighttpd.conf
      !!! man verzeihe mir, die Änderungen und Eingaben im Folgenden als root dokumentiert zu haben!!!
    ~root@Pi-hole:~#nano /etc/lighttpd/lighttpd.conf
    
    # Pi-hole: A black hole for Internet advertisements
    # (c) 2017 Pi-hole, LLC (https://pi-hole.net)
    # Network-wide ad blocking via your own hardware.
    #
    # Lighttpd config for Pi-hole
    #
    # This file is copyright under the latest version of the EUPL.
    # Please see LICENSE file for your rights under this license.
    
    ###############################################################################
    #     FILE AUTOMATICALLY OVERWRITTEN BY PI-HOLE INSTALL/UPDATE PROCEDURE.     #
    # ANY CHANGES MADE TO THIS FILE AFTER INSTALL WILL BE LOST ON THE NEXT UPDATE #
    #                                                                             #
    #              CHANGES SHOULD BE MADE IN A SEPARATE CONFIG FILE:              #
    #                         /etc/lighttpd/external.conf                         #
    ###############################################################################
    
    server.modules = (
        "mod_access",
        "mod_accesslog",
        "mod_auth",
        "mod_expire",
        "mod_compress",
        "mod_redirect",
        "mod_setenv",
        "mod_rewrite"
    )
    
    server.document-root        = "/var/www/html"
    server.error-handler-404    = "/Pi-hole/index.php"
    server.upload-dirs          = ( "/var/cache/lighttpd/uploads" )
    server.errorlog             = "/var/log/lighttpd/error.log"
    server.pid-file             = "/run/lighttpd.pid"
    server.username             = "www-data"
    server.groupname            = "www-data"
    server.port                 = 80
    accesslog.filename          = "/var/log/lighttpd/access.log"
    accesslog.format            = "%{%s}t|%V|%r|%s|%b"
    

    Ganz unten unter „server.port“ ändern wir 80 in 85 und speichern die Datei ab. Anschließend den Pi-hole Server neu starten. Zukünftig ist die Oberfläche des Pi-hole dann unter 192.168.178.10:85/admin zu erreichen.
    !!!Wichtig ein Detail!!!: nach einem Update des Pi-hole mit dem Befehl „Pi-hole -up“ muss der Port wieder von 80 auf 85 gesetzt werden. Die hosts-Datei wird nicht geändert und überlebt ein Pi-hole update.

    1. Wir editieren die hosts-Datei des Pi-hole wie folgt:
    root@Pi-hole:~# nano /etc/hosts
    
    192.168.178.10  rtupdate.wunderground.com
    127.0.0.1       localhost
    127.0.0.1       Pi-hole.local
    ::1             localhost ip6-localhost ip6-loopback
    ff02::1         ip6-allnodes
    ff02::2         ip6-allrouters
    # --- BEGIN PVE ---
    192.168.178.10 Pi-hole.nuc.local Pi-hole
    # --- END PVE ---
    

    Wichtig ist der Eintrag in der ersten Zeile. In meinem Fall lasse ich das Script auf meinem Pi-hole Server, also 192.168.178.10, laufen. Die Umleitung von rtupdate.wunderground.com erfolgt also nun auf diese Adresse. Die Datei wird gespeichert und der Pi-hole wiederum neu gestartet.

    Wir prüfen von unserem Linux-Pi-hole-Rechner aus, ob wir den Pi-hole richtig konfiguriert haben:

    Wir geben ein:

    ping rtupdate.wunderground.com
    

    Funktioniert alles, dann ergibt sich ein ping auf die Adresse 192.168.178.10.
    !!! Wichtig zu wissen ist, dass wir das Skript auf dem Pi-hole-Server installieren und das Script die Daten dann an den ioBroker durchreicht!!!7b4154c9-4802-4456-b0b5-ca2a4219d891-image.png

    Geschafft!!! Die Voraussetzungen für die Anwendung des Scriptes von @SBorg sind erfüllt!!!

    Wir wenden uns der Anleitung von @SBorg auf GitHub zu und installieren das Skript wie vorgeschlagen:

    • Installation in einem Verzeichnis z.B. /home/Wetterstation
    • Datei wetterstation.sh ausführbar machen wie beschrieben
    • Datei wetterstation.js unter Skripte des ioBrokers als Javascript einfügen und einmalig ausführen, um damit alle Datenpunkte anzulegen
    • Wir installieren unter ioBroker den Adapter simple-api, in dem wir nichts Besonderes konfigurieren müssen
      5ae391b9-92aa-44b2-8be6-22c28bbdc16f-image.png
    • Wir editieren die Datei „wetterstation.conf“ auf dem Pi-hole wie folgt (Ausschnitt):
    ### Settings V2.2.0 -----------------------------------------------------------
     #Debuging einschalten [true/false] / default: false / Ausgabe der Messwerte
      debug=false
    
     #ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx]
      IPP=192.168.178.6:8087
    
     #Protokoll der Wetterstation [1/2/9] / 1=Wunderground ; 2=Ecowitt ; 9=Sainlogic Profi / default: 1
      WS_PROTOKOLL=9
    
     #Anzahl der vorhandenen DP50 Sensoren / default: 0
      ANZAHL_DP50=0
    
     #HTTP Anzahl der vorhandenen DP100 Sensoren / default: 0
      ANZAHL_DP100=0
    
     #Protokoll (HTTP oder HTTPS) / default: HTTP
      WEB=HTTP
    
     #User-Authentifizierung falls benutzt; sonst leer lassen
      AUTH_USER=
      AUTH_PASS=
    
     #Port der Wetterstation
      WS_PORT=80
    
     #Pollintervall der Wetterstation in Sekunden (minimal 16 Sekunden)
      WS_POLL=30
    
     #Name/ID der Wetterstation
      WS_ID=XXXXXXX
    
     #wo sollen die Datenobjekte abgelegt werden
      PRE_DP=0_userdata.0.Wetterstation
    
    • Unter IPP= tragen wir die Adresse des ioBrokers mit dem Port von simple-api.0 ein
    • Unter WS_PROTOKOLL= tragen wir 9 für die Station ein, die nicht die WS-View App unterstützt
    • Unter WS_PORT= tragen wir den Standard Port 80 des Pi-hole Servers ein
      Unter WS_ID=XXXXXXX tragen wir die Stationsadresse, die wir von wunderground bei der Inbetriebnahme und Anmeldung auf wunderground.com erhalten haben, ein z.B. WS_ID=INRWCOLO2 (beispielhafte Adresse einer Station in der Kölner Innenstadt)

    Wenn wir jetzt alles richtig erledigt haben, dann sollte ein

    root@PiHole:/home/Wetterstation# ./wetterstation.sh --debug
    Connection to 192.168.178.6 8087 port [tcp/*] succeeded!
    Listening on [0.0.0.0] (family 0, port 80)
    Connection from 192.168.178.62 18015 received!
    /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
    /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
    /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
    /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
    [
      {
        "id": "0_userdata.0.Wetterstation.Innentemperatur",
        "val": 24.38
      },
      {
        "id": "0_userdata.0.Wetterstation.Aussentemperatur",
        "val": 4.55
      },
      {
        "id": "0_userdata.0.Wetterstation.Taupunkt",
        "val": 2.27
      },
      {
        "id": "0_userdata.0.Wetterstation.Gefuehlte_Temperatur",
        "val": -1.94
      },
      {
        "id": "0_userdata.0.Wetterstation.Innenfeuchtigkeit",
        "val": 36
      },
      {
        "id": "0_userdata.0.Wetterstation.Aussenfeuchtigkeit",
        "val": 85
      },
      {
        "id": "0_userdata.0.Wetterstation.Wind",
        "val": 4.98
      },
      {
        "id": "0_userdata.0.Wetterstation.Wind_max",
        "val": 6.11
      },
      {
        "id": "0_userdata.0.Wetterstation.Windrichtung",
        "val": 34
      },
      {
        "id": "0_userdata.0.Wetterstation.Druck_absolut",
        "val": 994.58
      },
      {
        "id": "0_userdata.0.Wetterstation.Druck_relativ",
        "val": 1017.95
      },
      {
        "id": "0_userdata.0.Wetterstation.Regen_Tag",
        "val": 2.7
      },
      {
        "id": "0_userdata.0.Wetterstation.Regen_Woche",
        "val": 76.7
      },
      {
        "id": "0_userdata.0.Wetterstation.Regen_Monat",
        "val": 18.7
      },
      {
        "id": "0_userdata.0.Wetterstation.Regen_Jahr",
        "val": 0
      },
      {
        "id": "0_userdata.0.Wetterstation.Sonnenstrahlung",
        "val": 0.14
      },
      {
        "id": "0_userdata.0.Wetterstation.UV_Index",
        "val": 0
      },
      {
        "id": "0_userdata.0.Wetterstation.Zeitstempel",
        "val": "06.02.2021 17:46:21"
      },
      {
        "id": "0_userdata.0.Wetterstation.DP50.7.Temperatur",
        "val": 6.22
      },
      {
        "id": "0_userdata.0.Wetterstation.DP50.7.Feuchtigkeit",
        "val": 80
      },
      {
        "id": "0_userdata.0.Wetterstation.Regenstatus",
        "val": ""
      },
      {
        "id": "0_userdata.0.Wetterstation.UV_Belastung",
        "val": "keine"
      },
      {
        "id": "0_userdata.0.Wetterstation.Windrichtung_Text",
        "val": "NO"
      }
    ]
    
    Messwerteblock: 24.38 4.55 2.27 -1.94 36 85 4.98 6.11 34 994.58 1017.95 2.7 76.7 18.7 0 0.14 0 06.02.2021%2017:46:21 temp7f 6.22 humidity7 80
    
    
    Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
    
    Temperatur Innen        : 24.38 °C
    Temperatur Aussen       : 4.55 °C
    Taupunkt                : 2.27 °C
    Gefühlte Temperatur     : -1.94 °C
    Luftfeuchte Innen       : 36 %
    Luftfeuchte Aussen      : 85 %
    Windgeschwindkeit       : 4.98 km/h
    Windböengeschwindkeit   : 6.11 km/h
    max. Windböe            :  km/h
    Windrichtung            : 34 °
    Windrichtung            : NO
    Luftdruck absolut       : 994.58 hPa
    Luftdruck relativ       : 1017.95 hPa
    Regenrate               :  mm/h
    Regenstatus             :
    Regen seit Regenbeginn  :  mm
    Regen Stunde            :  mm
    Regen Tag               : 2.7 mm
    Regen Woche             : 76.7 mm
    Regen Monat             : 18.7 mm
    Regen Jahr              : 0 mm
    Regen Gesamt            :  mm
    Sonnenstrahlung         : 0.14 W/m²
    UV-Index                : 0
    Zeitstempel             : 06.02.2021%2017:46:21
    Firmware                :
    Batteriestand:          :
    Gateway-Modell          :
    
    Zusatzsensoren:
    
    temp7f          : 6.22
    humidity7               : 80
    
    
    Datenstring für ioBroker:
    0_userdata.0.Wetterstation.Innentemperatur=24.38&0_userdata.0.Wetterstation.Aussentemperatur=4.55&0_userdata.0.Wetterstation.Taupunkt=2.27&0_userdata.0.Wetterstation.Gefuehlte_Temperatur=-1.94&0_userdata.0.Wetterstation.Innenfeuchtigkeit=36&0_userdata.0.Wetterstation.Aussenfeuchtigkeit=85&0_userdata.0.Wetterstation.Wind=4.98&0_userdata.0.Wetterstation.Wind_max=6.11&0_userdata.0.Wetterstation.Windrichtung=34&0_userdata.0.Wetterstation.Druck_absolut=994.58&0_userdata.0.Wetterstation.Druck_relativ=1017.95&0_userdata.0.Wetterstation.Regen_Tag=2.7&0_userdata.0.Wetterstation.Regen_Woche=76.7&0_userdata.0.Wetterstation.Regen_Monat=18.7&0_userdata.0.Wetterstation.Regen_Jahr=0&0_userdata.0.Wetterstation.Sonnenstrahlung=0.14&0_userdata.0.Wetterstation.UV_Index=0&0_userdata.0.Wetterstation.Zeitstempel=06.02.2021%2017:46:21&0_userdata.0.Wetterstation.DP50.7.Temperatur=6.22&0_userdata.0.Wetterstation.DP50.7.Feuchtigkeit=80&0_userdata.0.Wetterstation.Regenstatus=&0_userdata.0.Wetterstation.UV_Belastung=keine&0_userdata.0.Wetterstation.Windrichtung_Text=NO
    
    
    DATA von Wetterstation:
    GET /weatherstation/updateweatherstation.php?ID=xxxxxx&PASSWORD=xxxxxx&indoortempf=75.9&indoorhumidity=36&tempf=40.2&humidity=85&temp7f=43.2&humidity7=80&dewptf=36.1&windchillf=28.5&absbaromin=29.37&baromin=30.06&windspeedmph=3.1&windgustmph=3.8&winddir=34&windspdmph_avg2m=2.9&winddir_avg2m=226&windgustmph_10m=2.5&windgustdir_10m=126&dailyrainin=0.11&weeklyrainin=3.02&monthlyrainin=0.74&yearlyrainin=0&solarradiation=0.14&UV=0&dateutc=2021-2-6%2017:46:21&action=updateraw&realtime=1&rtfreq=5& HTTP/1.0
    
    
    Debug VAR:
    Installationsverzeichnis: /home/Wetterstation
    IPP: 192.168.178.6:8087 WS_PORT: 80             WS_POLL: 30             PRE_DP: 0_userdata.0.Wetterstation
    WEB: HTTP               WS_PROT: Sainlogic Pro  DP50/60/100: 1 | 0 | 0
    Script-Version: V2.3.0  Config-Version: V2.3.0  Sub-Version: V2.3.0
    
    

    nach spätestens 30 Sekunden erste Daten erbringen

    Viel Erfolg!!!

    Zum Schluss noch folgender Hinweis:

    Spezifische Fragen zum Wetterstations-Script von @SBorg stellt bitte in seinem thread https://forum.iobroker.net/topic/28384/linux-shell-skript-wlan-wetterstation

    Spezifische Fragen zu den Einstellungen von Pi-hole zur Benutzung mit dem Script für eine alternative Wetterstation, die nicht die WS-View App zur Einstellung verwendet könnt Ihr gerne hier stellen. Ich bin sicher, dass @SBorg, @a200 und alle Anderen auch hier gerne Hilfe leisten.

    !!! Vielen Dank an @Sborg, @a200 und viele Andere, die mir halfen, das Script auf meinen Maschinen mit meiner Station zum Laufen zu bekommen !!!

    ioBroker auf Intel NUC - Homematic CCU3/pivCCU auf Raspi 3B+

    SBorgS R 2 Antworten Letzte Antwort
    3
    • XxJooOX XxJooO

      Hallo liebe Freunde der Wetterbeobachtung und Dokumentation. In inzwischen über 2.200 Beiträgen erklären @SBorg und @a200 wie man eine Wetterstation mit dem ioBroker mit Hilfe eines Linux-Shell-Skriptes verbinden kann.

      Meine Wetterstation ist eine Sainlogic FT 0300. Die Station kann mit bis zu 8 externen Sensoren der Art DP50 ausgestattet werden.
      In diesem Beitrag versuche ich Euch zu erklären, wie eine alternative Installation des Skriptes von @SBorg für Wetterstationen, die nicht mit der WSView App arbeiten (z.B. Sainlogic FT0300), möglich ist.

      Auf der GitHub-Seite beschreibt @SBorg die notwendigen Schritte zur Installation seines Skriptes zur Nutzung der Wetterstationen mit ioBroker. Das Hauptaugenmerk liegt hierbei auf den Stationen, die ihre Daten mit Hilfe der WS-View App an einen vom Nutzer bestimmten alternativen Server (in diesem Fall ein eigener Linux-Server, auf dem dann das Script läuft) weiterleitet.
      Es existieren nun verschiedene Wetterstationen, die zwar ihre Daten über eine Verbindung zum Internet im entsprechenden Format an wunderground.com weiterleiten. Diese erlauben aber nicht die Nutzung der WS-View App und somit nur über einen Umweg die Weiterleitung der Daten an den eigenen Server.

      Jetzt wird es sehr technisch, ich denke aber interessant für Alle, die versuchen Ihre Station auch mit ioBroker zu verbinden. Beispielhaft besitze ich die Sainlogic FT 0300. Diese sendet ihre Daten an xxx.wunderground.com. Es gibt keinen direkten Weg der Umleitung der Daten wie bei den anderen Wetterstationen über die Nutzung der WS-View App.

      Die Station stellt keinen eigenständigen Computer dar, auf dem man wie auf einer Linux- oder Windows-Maschine eine hosts-Datei erstellen und editieren könnte. Möchte der Computer mit einer bestimmten Adresse z.B. xxx.wunderground.com Kontakt aufnehmen, so stellt der Dynamic Name Server (kurz DNS) dafür die Adresse 104.84.57.166 zur Verfügung. In Windows 10 findet sich die „hosts-Datei“ unter %windir%\system32\drivers\etc und sie hat den simplen Namen „hosts“. Die Datei kann nur mit Administrator- oder root-Rechten bearbeitet werden.

      Editiert man nun die Datei und erstellt einen Eintrag der Art

      192.168.178.1 wunderground.com,

      speichert die Datei ab und startet die Maschine neu und gibt anschließend in seinem Browser „wunderground.com“ als Adresse ein, so leitet der Eintrag in der hosts-Datei die Anfrage am DNS vorbei an die eigene Adresse 192.168.178.1. Bei mir komme ich z.B. damit auf meine Fritz-Box.

      Die Möglichkeit der Umleitung über die hosts-Datei können wir uns nun zunutze machen. Wir müssen nur erreichen, dass all unser Traffic aus dem eigenen Netzwerk über einen vorgeschalteten DNS geht, der wiederum über eine hosts-Datei eine bestimmte angesurfte Adresse umleiten kann – und das wird in unserem Fall eine Maschine sein, auf der Pi-hole läuft.

      Ich möchte hier nicht auf die genaue Funktion und die Eigenschaften von Pi-hole eingehen. Nur so viel, dass Pi-hole die Funktion des DNS übernimmt und die Erstellung einer hosts-Datei auf dieser Maschine möglich ist. Unter https://pi-hole.net/ wird die Installation unter Docker oder jedem anderen Linux-System genau erklärt. Die eigentliche Aufgabe von Pi-hole ist die Filterung von Werbung und das Blockieren derselben auf allen Seiten, die jedwedes Gerät in unserem Heim-Netzwerk ansurfen will. Es kommt hierbei aber auch zur Blockierung verschiedener Weiterleitungen. Die Suche unter google.de und das Ansurfen von bestimmten Such-Ergebnissen funktioniert nicht mehr zuverlässig, da Pi-hole sie blockiert. Dies lässt sich allerdings in den neuesten Versionen von Pi-hole komfortabel umgehen. Die aktuellste Version von Pi-hole erlaubt das Eingeben der MAC-Adresse z.B. meiner Windows-Maschine, die fortan von der Blockierung der Werbung ausgenommen wird. Alles läuft weiter so, als wäre Pi-hole nicht existent. Jedes Gerät in meinem Heim-Netzwerk kann so von der Blockierung ausgenommen werden. Die Installation von Pi-hole verlangsamt den Zugriff auf das Internet über das heimische Netzwerk in nicht erfühl- oder erfahrbarem Maß! Im Gegenteil vermag die Blockierung der Werbung bestimmte Zugriffe sogar zu beschleunigen.

      Die meisten Probleme hatte ich mit den für Pi-hole notwendigen Einträgen in meiner Fritz!Box. Deshalb werde ich sie hier exemplarisch zeigen. Zuvor noch ein Hinweis: Sind die Einträge in der Fritz!Box entsprechend erstellt und der Rechner, auf dem Pi-hole läuft fällt aus, wird runtergefahren oder stürzt ab, kommt kein anderer Rechner mehr ins Internet bis die Einträge in der Fritz!Box zurückgestellt sind. Deshalb der gute Rat, die alten Einstellungen der Fritz!Box (oder sonstigen Routers) unbedingt zu dokumentieren oder am besten gleich unter System-Sicherung eine solche anzulegen!

      Bei mir läuft Pi-hole auf einem LXC unter Proxmox mit lediglich einer CPU und vollkommen überdimensionierten 8GB Plattenspeicher sowie 1GB RAM auf einem NUC 24/7 vollkommen stabil.

      1. Die lokale Installation meines Pi-hole läuft unter Proxmox in einem LXC mit der gezeigten Adresse. Hier die Einstellungen von Pi-hole
        System:
        aa5b784a-7ce4-404c-8d04-9ae4e76aeb28-image.png
        DNS:
        7c577a92-e45e-42ae-a723-7825528e1fb9-image.png
        DHCP:
        971494eb-65dc-4f27-b46a-cb022647dc41-image.png

      2. Die Einstellungen meiner FritzBox 7590 mit ipV6 Unterstützung (VDSL 100Mbit Netcologne)
        283f5384-97fd-4397-9348-118cf6e608ca-image.png
        Eintrag des Alternativen DNSv4 Server auf die Adresse 192.168.178.10 des Pi-hole
        c476ff8c-043d-4264-bd9b-6f8d63cb62bc-image.png
        Die nächste Einstellung findet sich unter „Heimnetz-Netzwerkeinstellungen“ ganz unten unter IP-Adressen der Punkt „IPv4-Konfiguration“
        475c5779-45a9-466e-b62f-37becce80a5e-image.png
        Und der Punkt „IPv6-Konfiguration“
        9d2d9f59-2141-4aa0-92be-cde9d5454bc7-image.png
        !!! Beachte: die hier angezeigte Adresse unter „DNSv6-Server im Heimnetz“ beginnend mit fd00 ist dem System-Eintrag des Pi-hole auf dem ersten Bild (rot umkringelt) zu entnehmen
        992b9a83-e215-4833-a47b-c6387a416855-image.png

      Mit diesen Einstellungen des Pi-hole und der Fritz!Box sollte der Zugang ins Internet jetzt funktionieren. Wir werden jetzt noch einige Änderungen auf dem Pi-hole vornehmen müssen, darum unbedingt sicherstellen, dass ein SSH-Zugang z.B. über Putty auf die Maschine möglich ist, unter der Pi-hole läuft.

      1. Als erstes ermitteln wir auf der FritzBox die Adresse, mit der die Wetterstation mit unserem Netzwerk verbunden ist:
        1367c5c0-7b4c-4f7d-8870-d27c211b7e8b-image.png
        Ich empfehle, der Station immer die gleiche Adresse zuzuweisen und ihr einen eindeutigen Namen zu geben (der Name wird im Folgenden wichtig):
        1f1beb44-1dfe-486a-b97b-6e9f00c61068-image.png

      2. Wir müssen nun mit Hilfe des Pi-hole herausfinden, zu welcher Adresse im WWW unsere Station die Daten schicken will:
        2585cf15-55b0-4537-a2b4-cde907a4928c-image.png
        Unter „Query Log“ geben wir rechts oben im Feld „Search“ den Namen der Station (hier „sain“) ein. Merkwürdigerweise funktioniert das nicht mit der IP der Station im Heimnetzwerk.
        Das angezeigte Ergebnis sind die beiden Adressen „rtupdate.wunderground.com“ und „api.weathercloud.net“. Erstere Adresse werden wir gleich umbiegen, die zweite Adresse dient weiterhin der möglichen Weiterleitung der Daten an weathercloud.net entsprechend der Anleitung von @Sborg auf GitHub.

      Zwei Dinge sind jetzt notwendig:

      1. Der Standard-Port vom Pi-hole, in meinem Fall also 192.168.178.10 ist der Port 80. Port 80 müssen wir später aber dem Skript von @SBorg zuweisen. Das Skript verwendet den Standart-Port zum Zugriff auf Pi-hole über die gleich mit der hosts-Datei umgeleitete Adresse. Deshalb ändern wir den Port für den Zugriff auf Pi-hole auf 85.
        Mit Putty auf dem Pi-hole Server ändern wir einen Eintrag in der Datei /etc/lighttpd/lighttpd.conf
        !!! man verzeihe mir, die Änderungen und Eingaben im Folgenden als root dokumentiert zu haben!!!
      ~root@Pi-hole:~#nano /etc/lighttpd/lighttpd.conf
      
      # Pi-hole: A black hole for Internet advertisements
      # (c) 2017 Pi-hole, LLC (https://pi-hole.net)
      # Network-wide ad blocking via your own hardware.
      #
      # Lighttpd config for Pi-hole
      #
      # This file is copyright under the latest version of the EUPL.
      # Please see LICENSE file for your rights under this license.
      
      ###############################################################################
      #     FILE AUTOMATICALLY OVERWRITTEN BY PI-HOLE INSTALL/UPDATE PROCEDURE.     #
      # ANY CHANGES MADE TO THIS FILE AFTER INSTALL WILL BE LOST ON THE NEXT UPDATE #
      #                                                                             #
      #              CHANGES SHOULD BE MADE IN A SEPARATE CONFIG FILE:              #
      #                         /etc/lighttpd/external.conf                         #
      ###############################################################################
      
      server.modules = (
          "mod_access",
          "mod_accesslog",
          "mod_auth",
          "mod_expire",
          "mod_compress",
          "mod_redirect",
          "mod_setenv",
          "mod_rewrite"
      )
      
      server.document-root        = "/var/www/html"
      server.error-handler-404    = "/Pi-hole/index.php"
      server.upload-dirs          = ( "/var/cache/lighttpd/uploads" )
      server.errorlog             = "/var/log/lighttpd/error.log"
      server.pid-file             = "/run/lighttpd.pid"
      server.username             = "www-data"
      server.groupname            = "www-data"
      server.port                 = 80
      accesslog.filename          = "/var/log/lighttpd/access.log"
      accesslog.format            = "%{%s}t|%V|%r|%s|%b"
      

      Ganz unten unter „server.port“ ändern wir 80 in 85 und speichern die Datei ab. Anschließend den Pi-hole Server neu starten. Zukünftig ist die Oberfläche des Pi-hole dann unter 192.168.178.10:85/admin zu erreichen.
      !!!Wichtig ein Detail!!!: nach einem Update des Pi-hole mit dem Befehl „Pi-hole -up“ muss der Port wieder von 80 auf 85 gesetzt werden. Die hosts-Datei wird nicht geändert und überlebt ein Pi-hole update.

      1. Wir editieren die hosts-Datei des Pi-hole wie folgt:
      root@Pi-hole:~# nano /etc/hosts
      
      192.168.178.10  rtupdate.wunderground.com
      127.0.0.1       localhost
      127.0.0.1       Pi-hole.local
      ::1             localhost ip6-localhost ip6-loopback
      ff02::1         ip6-allnodes
      ff02::2         ip6-allrouters
      # --- BEGIN PVE ---
      192.168.178.10 Pi-hole.nuc.local Pi-hole
      # --- END PVE ---
      

      Wichtig ist der Eintrag in der ersten Zeile. In meinem Fall lasse ich das Script auf meinem Pi-hole Server, also 192.168.178.10, laufen. Die Umleitung von rtupdate.wunderground.com erfolgt also nun auf diese Adresse. Die Datei wird gespeichert und der Pi-hole wiederum neu gestartet.

      Wir prüfen von unserem Linux-Pi-hole-Rechner aus, ob wir den Pi-hole richtig konfiguriert haben:

      Wir geben ein:

      ping rtupdate.wunderground.com
      

      Funktioniert alles, dann ergibt sich ein ping auf die Adresse 192.168.178.10.
      !!! Wichtig zu wissen ist, dass wir das Skript auf dem Pi-hole-Server installieren und das Script die Daten dann an den ioBroker durchreicht!!!7b4154c9-4802-4456-b0b5-ca2a4219d891-image.png

      Geschafft!!! Die Voraussetzungen für die Anwendung des Scriptes von @SBorg sind erfüllt!!!

      Wir wenden uns der Anleitung von @SBorg auf GitHub zu und installieren das Skript wie vorgeschlagen:

      • Installation in einem Verzeichnis z.B. /home/Wetterstation
      • Datei wetterstation.sh ausführbar machen wie beschrieben
      • Datei wetterstation.js unter Skripte des ioBrokers als Javascript einfügen und einmalig ausführen, um damit alle Datenpunkte anzulegen
      • Wir installieren unter ioBroker den Adapter simple-api, in dem wir nichts Besonderes konfigurieren müssen
        5ae391b9-92aa-44b2-8be6-22c28bbdc16f-image.png
      • Wir editieren die Datei „wetterstation.conf“ auf dem Pi-hole wie folgt (Ausschnitt):
      ### Settings V2.2.0 -----------------------------------------------------------
       #Debuging einschalten [true/false] / default: false / Ausgabe der Messwerte
        debug=false
      
       #ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx]
        IPP=192.168.178.6:8087
      
       #Protokoll der Wetterstation [1/2/9] / 1=Wunderground ; 2=Ecowitt ; 9=Sainlogic Profi / default: 1
        WS_PROTOKOLL=9
      
       #Anzahl der vorhandenen DP50 Sensoren / default: 0
        ANZAHL_DP50=0
      
       #HTTP Anzahl der vorhandenen DP100 Sensoren / default: 0
        ANZAHL_DP100=0
      
       #Protokoll (HTTP oder HTTPS) / default: HTTP
        WEB=HTTP
      
       #User-Authentifizierung falls benutzt; sonst leer lassen
        AUTH_USER=
        AUTH_PASS=
      
       #Port der Wetterstation
        WS_PORT=80
      
       #Pollintervall der Wetterstation in Sekunden (minimal 16 Sekunden)
        WS_POLL=30
      
       #Name/ID der Wetterstation
        WS_ID=XXXXXXX
      
       #wo sollen die Datenobjekte abgelegt werden
        PRE_DP=0_userdata.0.Wetterstation
      
      • Unter IPP= tragen wir die Adresse des ioBrokers mit dem Port von simple-api.0 ein
      • Unter WS_PROTOKOLL= tragen wir 9 für die Station ein, die nicht die WS-View App unterstützt
      • Unter WS_PORT= tragen wir den Standard Port 80 des Pi-hole Servers ein
        Unter WS_ID=XXXXXXX tragen wir die Stationsadresse, die wir von wunderground bei der Inbetriebnahme und Anmeldung auf wunderground.com erhalten haben, ein z.B. WS_ID=INRWCOLO2 (beispielhafte Adresse einer Station in der Kölner Innenstadt)

      Wenn wir jetzt alles richtig erledigt haben, dann sollte ein

      root@PiHole:/home/Wetterstation# ./wetterstation.sh --debug
      Connection to 192.168.178.6 8087 port [tcp/*] succeeded!
      Listening on [0.0.0.0] (family 0, port 80)
      Connection from 192.168.178.62 18015 received!
      /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
      /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
      /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
      /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
      [
        {
          "id": "0_userdata.0.Wetterstation.Innentemperatur",
          "val": 24.38
        },
        {
          "id": "0_userdata.0.Wetterstation.Aussentemperatur",
          "val": 4.55
        },
        {
          "id": "0_userdata.0.Wetterstation.Taupunkt",
          "val": 2.27
        },
        {
          "id": "0_userdata.0.Wetterstation.Gefuehlte_Temperatur",
          "val": -1.94
        },
        {
          "id": "0_userdata.0.Wetterstation.Innenfeuchtigkeit",
          "val": 36
        },
        {
          "id": "0_userdata.0.Wetterstation.Aussenfeuchtigkeit",
          "val": 85
        },
        {
          "id": "0_userdata.0.Wetterstation.Wind",
          "val": 4.98
        },
        {
          "id": "0_userdata.0.Wetterstation.Wind_max",
          "val": 6.11
        },
        {
          "id": "0_userdata.0.Wetterstation.Windrichtung",
          "val": 34
        },
        {
          "id": "0_userdata.0.Wetterstation.Druck_absolut",
          "val": 994.58
        },
        {
          "id": "0_userdata.0.Wetterstation.Druck_relativ",
          "val": 1017.95
        },
        {
          "id": "0_userdata.0.Wetterstation.Regen_Tag",
          "val": 2.7
        },
        {
          "id": "0_userdata.0.Wetterstation.Regen_Woche",
          "val": 76.7
        },
        {
          "id": "0_userdata.0.Wetterstation.Regen_Monat",
          "val": 18.7
        },
        {
          "id": "0_userdata.0.Wetterstation.Regen_Jahr",
          "val": 0
        },
        {
          "id": "0_userdata.0.Wetterstation.Sonnenstrahlung",
          "val": 0.14
        },
        {
          "id": "0_userdata.0.Wetterstation.UV_Index",
          "val": 0
        },
        {
          "id": "0_userdata.0.Wetterstation.Zeitstempel",
          "val": "06.02.2021 17:46:21"
        },
        {
          "id": "0_userdata.0.Wetterstation.DP50.7.Temperatur",
          "val": 6.22
        },
        {
          "id": "0_userdata.0.Wetterstation.DP50.7.Feuchtigkeit",
          "val": 80
        },
        {
          "id": "0_userdata.0.Wetterstation.Regenstatus",
          "val": ""
        },
        {
          "id": "0_userdata.0.Wetterstation.UV_Belastung",
          "val": "keine"
        },
        {
          "id": "0_userdata.0.Wetterstation.Windrichtung_Text",
          "val": "NO"
        }
      ]
      
      Messwerteblock: 24.38 4.55 2.27 -1.94 36 85 4.98 6.11 34 994.58 1017.95 2.7 76.7 18.7 0 0.14 0 06.02.2021%2017:46:21 temp7f 6.22 humidity7 80
      
      
      Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
      
      Temperatur Innen        : 24.38 °C
      Temperatur Aussen       : 4.55 °C
      Taupunkt                : 2.27 °C
      Gefühlte Temperatur     : -1.94 °C
      Luftfeuchte Innen       : 36 %
      Luftfeuchte Aussen      : 85 %
      Windgeschwindkeit       : 4.98 km/h
      Windböengeschwindkeit   : 6.11 km/h
      max. Windböe            :  km/h
      Windrichtung            : 34 °
      Windrichtung            : NO
      Luftdruck absolut       : 994.58 hPa
      Luftdruck relativ       : 1017.95 hPa
      Regenrate               :  mm/h
      Regenstatus             :
      Regen seit Regenbeginn  :  mm
      Regen Stunde            :  mm
      Regen Tag               : 2.7 mm
      Regen Woche             : 76.7 mm
      Regen Monat             : 18.7 mm
      Regen Jahr              : 0 mm
      Regen Gesamt            :  mm
      Sonnenstrahlung         : 0.14 W/m²
      UV-Index                : 0
      Zeitstempel             : 06.02.2021%2017:46:21
      Firmware                :
      Batteriestand:          :
      Gateway-Modell          :
      
      Zusatzsensoren:
      
      temp7f          : 6.22
      humidity7               : 80
      
      
      Datenstring für ioBroker:
      0_userdata.0.Wetterstation.Innentemperatur=24.38&0_userdata.0.Wetterstation.Aussentemperatur=4.55&0_userdata.0.Wetterstation.Taupunkt=2.27&0_userdata.0.Wetterstation.Gefuehlte_Temperatur=-1.94&0_userdata.0.Wetterstation.Innenfeuchtigkeit=36&0_userdata.0.Wetterstation.Aussenfeuchtigkeit=85&0_userdata.0.Wetterstation.Wind=4.98&0_userdata.0.Wetterstation.Wind_max=6.11&0_userdata.0.Wetterstation.Windrichtung=34&0_userdata.0.Wetterstation.Druck_absolut=994.58&0_userdata.0.Wetterstation.Druck_relativ=1017.95&0_userdata.0.Wetterstation.Regen_Tag=2.7&0_userdata.0.Wetterstation.Regen_Woche=76.7&0_userdata.0.Wetterstation.Regen_Monat=18.7&0_userdata.0.Wetterstation.Regen_Jahr=0&0_userdata.0.Wetterstation.Sonnenstrahlung=0.14&0_userdata.0.Wetterstation.UV_Index=0&0_userdata.0.Wetterstation.Zeitstempel=06.02.2021%2017:46:21&0_userdata.0.Wetterstation.DP50.7.Temperatur=6.22&0_userdata.0.Wetterstation.DP50.7.Feuchtigkeit=80&0_userdata.0.Wetterstation.Regenstatus=&0_userdata.0.Wetterstation.UV_Belastung=keine&0_userdata.0.Wetterstation.Windrichtung_Text=NO
      
      
      DATA von Wetterstation:
      GET /weatherstation/updateweatherstation.php?ID=xxxxxx&PASSWORD=xxxxxx&indoortempf=75.9&indoorhumidity=36&tempf=40.2&humidity=85&temp7f=43.2&humidity7=80&dewptf=36.1&windchillf=28.5&absbaromin=29.37&baromin=30.06&windspeedmph=3.1&windgustmph=3.8&winddir=34&windspdmph_avg2m=2.9&winddir_avg2m=226&windgustmph_10m=2.5&windgustdir_10m=126&dailyrainin=0.11&weeklyrainin=3.02&monthlyrainin=0.74&yearlyrainin=0&solarradiation=0.14&UV=0&dateutc=2021-2-6%2017:46:21&action=updateraw&realtime=1&rtfreq=5& HTTP/1.0
      
      
      Debug VAR:
      Installationsverzeichnis: /home/Wetterstation
      IPP: 192.168.178.6:8087 WS_PORT: 80             WS_POLL: 30             PRE_DP: 0_userdata.0.Wetterstation
      WEB: HTTP               WS_PROT: Sainlogic Pro  DP50/60/100: 1 | 0 | 0
      Script-Version: V2.3.0  Config-Version: V2.3.0  Sub-Version: V2.3.0
      
      

      nach spätestens 30 Sekunden erste Daten erbringen

      Viel Erfolg!!!

      Zum Schluss noch folgender Hinweis:

      Spezifische Fragen zum Wetterstations-Script von @SBorg stellt bitte in seinem thread https://forum.iobroker.net/topic/28384/linux-shell-skript-wlan-wetterstation

      Spezifische Fragen zu den Einstellungen von Pi-hole zur Benutzung mit dem Script für eine alternative Wetterstation, die nicht die WS-View App zur Einstellung verwendet könnt Ihr gerne hier stellen. Ich bin sicher, dass @SBorg, @a200 und alle Anderen auch hier gerne Hilfe leisten.

      !!! Vielen Dank an @Sborg, @a200 und viele Andere, die mir halfen, das Script auf meinen Maschinen mit meiner Station zum Laufen zu bekommen !!!

      SBorgS Offline
      SBorgS Offline
      SBorg
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #2

      @xxjooo Mir ist noch eine Idee gekommen :grin:
      Eigentlich müsste es funktionieren wenn du für die lighttpd.conf nur noch Schreibrechte durch root zulässt. Dann dürfte beim updaten von Pi-hole auch nicht mehr der Port überschrieben werden (außer du machst das Update als root).

      LG SBorg ( SBorg auf GitHub)
      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

      XxJooOX 1 Antwort Letzte Antwort
      0
      • SBorgS SBorg

        @xxjooo Mir ist noch eine Idee gekommen :grin:
        Eigentlich müsste es funktionieren wenn du für die lighttpd.conf nur noch Schreibrechte durch root zulässt. Dann dürfte beim updaten von Pi-hole auch nicht mehr der Port überschrieben werden (außer du machst das Update als root).

        XxJooOX Offline
        XxJooOX Offline
        XxJooO
        schrieb am zuletzt editiert von
        #3

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

        @xxjooo Mir ist noch eine Idee gekommen :grin:
        Eigentlich müsste es funktionieren wenn du für die lighttpd.conf nur noch Schreibrechte durch root zulässt. Dann dürfte beim updaten von Pi-hole auch nicht mehr der Port überschrieben werden (außer du machst das Update als root).

        Ok, das werde ich dann mal beim nächsten Update von Pi-hole probieren!

        ioBroker auf Intel NUC - Homematic CCU3/pivCCU auf Raspi 3B+

        1 Antwort Letzte Antwort
        0
        • XxJooOX XxJooO

          Hallo liebe Freunde der Wetterbeobachtung und Dokumentation. In inzwischen über 2.200 Beiträgen erklären @SBorg und @a200 wie man eine Wetterstation mit dem ioBroker mit Hilfe eines Linux-Shell-Skriptes verbinden kann.

          Meine Wetterstation ist eine Sainlogic FT 0300. Die Station kann mit bis zu 8 externen Sensoren der Art DP50 ausgestattet werden.
          In diesem Beitrag versuche ich Euch zu erklären, wie eine alternative Installation des Skriptes von @SBorg für Wetterstationen, die nicht mit der WSView App arbeiten (z.B. Sainlogic FT0300), möglich ist.

          Auf der GitHub-Seite beschreibt @SBorg die notwendigen Schritte zur Installation seines Skriptes zur Nutzung der Wetterstationen mit ioBroker. Das Hauptaugenmerk liegt hierbei auf den Stationen, die ihre Daten mit Hilfe der WS-View App an einen vom Nutzer bestimmten alternativen Server (in diesem Fall ein eigener Linux-Server, auf dem dann das Script läuft) weiterleitet.
          Es existieren nun verschiedene Wetterstationen, die zwar ihre Daten über eine Verbindung zum Internet im entsprechenden Format an wunderground.com weiterleiten. Diese erlauben aber nicht die Nutzung der WS-View App und somit nur über einen Umweg die Weiterleitung der Daten an den eigenen Server.

          Jetzt wird es sehr technisch, ich denke aber interessant für Alle, die versuchen Ihre Station auch mit ioBroker zu verbinden. Beispielhaft besitze ich die Sainlogic FT 0300. Diese sendet ihre Daten an xxx.wunderground.com. Es gibt keinen direkten Weg der Umleitung der Daten wie bei den anderen Wetterstationen über die Nutzung der WS-View App.

          Die Station stellt keinen eigenständigen Computer dar, auf dem man wie auf einer Linux- oder Windows-Maschine eine hosts-Datei erstellen und editieren könnte. Möchte der Computer mit einer bestimmten Adresse z.B. xxx.wunderground.com Kontakt aufnehmen, so stellt der Dynamic Name Server (kurz DNS) dafür die Adresse 104.84.57.166 zur Verfügung. In Windows 10 findet sich die „hosts-Datei“ unter %windir%\system32\drivers\etc und sie hat den simplen Namen „hosts“. Die Datei kann nur mit Administrator- oder root-Rechten bearbeitet werden.

          Editiert man nun die Datei und erstellt einen Eintrag der Art

          192.168.178.1 wunderground.com,

          speichert die Datei ab und startet die Maschine neu und gibt anschließend in seinem Browser „wunderground.com“ als Adresse ein, so leitet der Eintrag in der hosts-Datei die Anfrage am DNS vorbei an die eigene Adresse 192.168.178.1. Bei mir komme ich z.B. damit auf meine Fritz-Box.

          Die Möglichkeit der Umleitung über die hosts-Datei können wir uns nun zunutze machen. Wir müssen nur erreichen, dass all unser Traffic aus dem eigenen Netzwerk über einen vorgeschalteten DNS geht, der wiederum über eine hosts-Datei eine bestimmte angesurfte Adresse umleiten kann – und das wird in unserem Fall eine Maschine sein, auf der Pi-hole läuft.

          Ich möchte hier nicht auf die genaue Funktion und die Eigenschaften von Pi-hole eingehen. Nur so viel, dass Pi-hole die Funktion des DNS übernimmt und die Erstellung einer hosts-Datei auf dieser Maschine möglich ist. Unter https://pi-hole.net/ wird die Installation unter Docker oder jedem anderen Linux-System genau erklärt. Die eigentliche Aufgabe von Pi-hole ist die Filterung von Werbung und das Blockieren derselben auf allen Seiten, die jedwedes Gerät in unserem Heim-Netzwerk ansurfen will. Es kommt hierbei aber auch zur Blockierung verschiedener Weiterleitungen. Die Suche unter google.de und das Ansurfen von bestimmten Such-Ergebnissen funktioniert nicht mehr zuverlässig, da Pi-hole sie blockiert. Dies lässt sich allerdings in den neuesten Versionen von Pi-hole komfortabel umgehen. Die aktuellste Version von Pi-hole erlaubt das Eingeben der MAC-Adresse z.B. meiner Windows-Maschine, die fortan von der Blockierung der Werbung ausgenommen wird. Alles läuft weiter so, als wäre Pi-hole nicht existent. Jedes Gerät in meinem Heim-Netzwerk kann so von der Blockierung ausgenommen werden. Die Installation von Pi-hole verlangsamt den Zugriff auf das Internet über das heimische Netzwerk in nicht erfühl- oder erfahrbarem Maß! Im Gegenteil vermag die Blockierung der Werbung bestimmte Zugriffe sogar zu beschleunigen.

          Die meisten Probleme hatte ich mit den für Pi-hole notwendigen Einträgen in meiner Fritz!Box. Deshalb werde ich sie hier exemplarisch zeigen. Zuvor noch ein Hinweis: Sind die Einträge in der Fritz!Box entsprechend erstellt und der Rechner, auf dem Pi-hole läuft fällt aus, wird runtergefahren oder stürzt ab, kommt kein anderer Rechner mehr ins Internet bis die Einträge in der Fritz!Box zurückgestellt sind. Deshalb der gute Rat, die alten Einstellungen der Fritz!Box (oder sonstigen Routers) unbedingt zu dokumentieren oder am besten gleich unter System-Sicherung eine solche anzulegen!

          Bei mir läuft Pi-hole auf einem LXC unter Proxmox mit lediglich einer CPU und vollkommen überdimensionierten 8GB Plattenspeicher sowie 1GB RAM auf einem NUC 24/7 vollkommen stabil.

          1. Die lokale Installation meines Pi-hole läuft unter Proxmox in einem LXC mit der gezeigten Adresse. Hier die Einstellungen von Pi-hole
            System:
            aa5b784a-7ce4-404c-8d04-9ae4e76aeb28-image.png
            DNS:
            7c577a92-e45e-42ae-a723-7825528e1fb9-image.png
            DHCP:
            971494eb-65dc-4f27-b46a-cb022647dc41-image.png

          2. Die Einstellungen meiner FritzBox 7590 mit ipV6 Unterstützung (VDSL 100Mbit Netcologne)
            283f5384-97fd-4397-9348-118cf6e608ca-image.png
            Eintrag des Alternativen DNSv4 Server auf die Adresse 192.168.178.10 des Pi-hole
            c476ff8c-043d-4264-bd9b-6f8d63cb62bc-image.png
            Die nächste Einstellung findet sich unter „Heimnetz-Netzwerkeinstellungen“ ganz unten unter IP-Adressen der Punkt „IPv4-Konfiguration“
            475c5779-45a9-466e-b62f-37becce80a5e-image.png
            Und der Punkt „IPv6-Konfiguration“
            9d2d9f59-2141-4aa0-92be-cde9d5454bc7-image.png
            !!! Beachte: die hier angezeigte Adresse unter „DNSv6-Server im Heimnetz“ beginnend mit fd00 ist dem System-Eintrag des Pi-hole auf dem ersten Bild (rot umkringelt) zu entnehmen
            992b9a83-e215-4833-a47b-c6387a416855-image.png

          Mit diesen Einstellungen des Pi-hole und der Fritz!Box sollte der Zugang ins Internet jetzt funktionieren. Wir werden jetzt noch einige Änderungen auf dem Pi-hole vornehmen müssen, darum unbedingt sicherstellen, dass ein SSH-Zugang z.B. über Putty auf die Maschine möglich ist, unter der Pi-hole läuft.

          1. Als erstes ermitteln wir auf der FritzBox die Adresse, mit der die Wetterstation mit unserem Netzwerk verbunden ist:
            1367c5c0-7b4c-4f7d-8870-d27c211b7e8b-image.png
            Ich empfehle, der Station immer die gleiche Adresse zuzuweisen und ihr einen eindeutigen Namen zu geben (der Name wird im Folgenden wichtig):
            1f1beb44-1dfe-486a-b97b-6e9f00c61068-image.png

          2. Wir müssen nun mit Hilfe des Pi-hole herausfinden, zu welcher Adresse im WWW unsere Station die Daten schicken will:
            2585cf15-55b0-4537-a2b4-cde907a4928c-image.png
            Unter „Query Log“ geben wir rechts oben im Feld „Search“ den Namen der Station (hier „sain“) ein. Merkwürdigerweise funktioniert das nicht mit der IP der Station im Heimnetzwerk.
            Das angezeigte Ergebnis sind die beiden Adressen „rtupdate.wunderground.com“ und „api.weathercloud.net“. Erstere Adresse werden wir gleich umbiegen, die zweite Adresse dient weiterhin der möglichen Weiterleitung der Daten an weathercloud.net entsprechend der Anleitung von @Sborg auf GitHub.

          Zwei Dinge sind jetzt notwendig:

          1. Der Standard-Port vom Pi-hole, in meinem Fall also 192.168.178.10 ist der Port 80. Port 80 müssen wir später aber dem Skript von @SBorg zuweisen. Das Skript verwendet den Standart-Port zum Zugriff auf Pi-hole über die gleich mit der hosts-Datei umgeleitete Adresse. Deshalb ändern wir den Port für den Zugriff auf Pi-hole auf 85.
            Mit Putty auf dem Pi-hole Server ändern wir einen Eintrag in der Datei /etc/lighttpd/lighttpd.conf
            !!! man verzeihe mir, die Änderungen und Eingaben im Folgenden als root dokumentiert zu haben!!!
          ~root@Pi-hole:~#nano /etc/lighttpd/lighttpd.conf
          
          # Pi-hole: A black hole for Internet advertisements
          # (c) 2017 Pi-hole, LLC (https://pi-hole.net)
          # Network-wide ad blocking via your own hardware.
          #
          # Lighttpd config for Pi-hole
          #
          # This file is copyright under the latest version of the EUPL.
          # Please see LICENSE file for your rights under this license.
          
          ###############################################################################
          #     FILE AUTOMATICALLY OVERWRITTEN BY PI-HOLE INSTALL/UPDATE PROCEDURE.     #
          # ANY CHANGES MADE TO THIS FILE AFTER INSTALL WILL BE LOST ON THE NEXT UPDATE #
          #                                                                             #
          #              CHANGES SHOULD BE MADE IN A SEPARATE CONFIG FILE:              #
          #                         /etc/lighttpd/external.conf                         #
          ###############################################################################
          
          server.modules = (
              "mod_access",
              "mod_accesslog",
              "mod_auth",
              "mod_expire",
              "mod_compress",
              "mod_redirect",
              "mod_setenv",
              "mod_rewrite"
          )
          
          server.document-root        = "/var/www/html"
          server.error-handler-404    = "/Pi-hole/index.php"
          server.upload-dirs          = ( "/var/cache/lighttpd/uploads" )
          server.errorlog             = "/var/log/lighttpd/error.log"
          server.pid-file             = "/run/lighttpd.pid"
          server.username             = "www-data"
          server.groupname            = "www-data"
          server.port                 = 80
          accesslog.filename          = "/var/log/lighttpd/access.log"
          accesslog.format            = "%{%s}t|%V|%r|%s|%b"
          

          Ganz unten unter „server.port“ ändern wir 80 in 85 und speichern die Datei ab. Anschließend den Pi-hole Server neu starten. Zukünftig ist die Oberfläche des Pi-hole dann unter 192.168.178.10:85/admin zu erreichen.
          !!!Wichtig ein Detail!!!: nach einem Update des Pi-hole mit dem Befehl „Pi-hole -up“ muss der Port wieder von 80 auf 85 gesetzt werden. Die hosts-Datei wird nicht geändert und überlebt ein Pi-hole update.

          1. Wir editieren die hosts-Datei des Pi-hole wie folgt:
          root@Pi-hole:~# nano /etc/hosts
          
          192.168.178.10  rtupdate.wunderground.com
          127.0.0.1       localhost
          127.0.0.1       Pi-hole.local
          ::1             localhost ip6-localhost ip6-loopback
          ff02::1         ip6-allnodes
          ff02::2         ip6-allrouters
          # --- BEGIN PVE ---
          192.168.178.10 Pi-hole.nuc.local Pi-hole
          # --- END PVE ---
          

          Wichtig ist der Eintrag in der ersten Zeile. In meinem Fall lasse ich das Script auf meinem Pi-hole Server, also 192.168.178.10, laufen. Die Umleitung von rtupdate.wunderground.com erfolgt also nun auf diese Adresse. Die Datei wird gespeichert und der Pi-hole wiederum neu gestartet.

          Wir prüfen von unserem Linux-Pi-hole-Rechner aus, ob wir den Pi-hole richtig konfiguriert haben:

          Wir geben ein:

          ping rtupdate.wunderground.com
          

          Funktioniert alles, dann ergibt sich ein ping auf die Adresse 192.168.178.10.
          !!! Wichtig zu wissen ist, dass wir das Skript auf dem Pi-hole-Server installieren und das Script die Daten dann an den ioBroker durchreicht!!!7b4154c9-4802-4456-b0b5-ca2a4219d891-image.png

          Geschafft!!! Die Voraussetzungen für die Anwendung des Scriptes von @SBorg sind erfüllt!!!

          Wir wenden uns der Anleitung von @SBorg auf GitHub zu und installieren das Skript wie vorgeschlagen:

          • Installation in einem Verzeichnis z.B. /home/Wetterstation
          • Datei wetterstation.sh ausführbar machen wie beschrieben
          • Datei wetterstation.js unter Skripte des ioBrokers als Javascript einfügen und einmalig ausführen, um damit alle Datenpunkte anzulegen
          • Wir installieren unter ioBroker den Adapter simple-api, in dem wir nichts Besonderes konfigurieren müssen
            5ae391b9-92aa-44b2-8be6-22c28bbdc16f-image.png
          • Wir editieren die Datei „wetterstation.conf“ auf dem Pi-hole wie folgt (Ausschnitt):
          ### Settings V2.2.0 -----------------------------------------------------------
           #Debuging einschalten [true/false] / default: false / Ausgabe der Messwerte
            debug=false
          
           #ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx]
            IPP=192.168.178.6:8087
          
           #Protokoll der Wetterstation [1/2/9] / 1=Wunderground ; 2=Ecowitt ; 9=Sainlogic Profi / default: 1
            WS_PROTOKOLL=9
          
           #Anzahl der vorhandenen DP50 Sensoren / default: 0
            ANZAHL_DP50=0
          
           #HTTP Anzahl der vorhandenen DP100 Sensoren / default: 0
            ANZAHL_DP100=0
          
           #Protokoll (HTTP oder HTTPS) / default: HTTP
            WEB=HTTP
          
           #User-Authentifizierung falls benutzt; sonst leer lassen
            AUTH_USER=
            AUTH_PASS=
          
           #Port der Wetterstation
            WS_PORT=80
          
           #Pollintervall der Wetterstation in Sekunden (minimal 16 Sekunden)
            WS_POLL=30
          
           #Name/ID der Wetterstation
            WS_ID=XXXXXXX
          
           #wo sollen die Datenobjekte abgelegt werden
            PRE_DP=0_userdata.0.Wetterstation
          
          • Unter IPP= tragen wir die Adresse des ioBrokers mit dem Port von simple-api.0 ein
          • Unter WS_PROTOKOLL= tragen wir 9 für die Station ein, die nicht die WS-View App unterstützt
          • Unter WS_PORT= tragen wir den Standard Port 80 des Pi-hole Servers ein
            Unter WS_ID=XXXXXXX tragen wir die Stationsadresse, die wir von wunderground bei der Inbetriebnahme und Anmeldung auf wunderground.com erhalten haben, ein z.B. WS_ID=INRWCOLO2 (beispielhafte Adresse einer Station in der Kölner Innenstadt)

          Wenn wir jetzt alles richtig erledigt haben, dann sollte ein

          root@PiHole:/home/Wetterstation# ./wetterstation.sh --debug
          Connection to 192.168.178.6 8087 port [tcp/*] succeeded!
          Listening on [0.0.0.0] (family 0, port 80)
          Connection from 192.168.178.62 18015 received!
          /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
          /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
          /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
          /home/Wetterstation/wetterstation.sub: line 274: [: : integer expression expected
          [
            {
              "id": "0_userdata.0.Wetterstation.Innentemperatur",
              "val": 24.38
            },
            {
              "id": "0_userdata.0.Wetterstation.Aussentemperatur",
              "val": 4.55
            },
            {
              "id": "0_userdata.0.Wetterstation.Taupunkt",
              "val": 2.27
            },
            {
              "id": "0_userdata.0.Wetterstation.Gefuehlte_Temperatur",
              "val": -1.94
            },
            {
              "id": "0_userdata.0.Wetterstation.Innenfeuchtigkeit",
              "val": 36
            },
            {
              "id": "0_userdata.0.Wetterstation.Aussenfeuchtigkeit",
              "val": 85
            },
            {
              "id": "0_userdata.0.Wetterstation.Wind",
              "val": 4.98
            },
            {
              "id": "0_userdata.0.Wetterstation.Wind_max",
              "val": 6.11
            },
            {
              "id": "0_userdata.0.Wetterstation.Windrichtung",
              "val": 34
            },
            {
              "id": "0_userdata.0.Wetterstation.Druck_absolut",
              "val": 994.58
            },
            {
              "id": "0_userdata.0.Wetterstation.Druck_relativ",
              "val": 1017.95
            },
            {
              "id": "0_userdata.0.Wetterstation.Regen_Tag",
              "val": 2.7
            },
            {
              "id": "0_userdata.0.Wetterstation.Regen_Woche",
              "val": 76.7
            },
            {
              "id": "0_userdata.0.Wetterstation.Regen_Monat",
              "val": 18.7
            },
            {
              "id": "0_userdata.0.Wetterstation.Regen_Jahr",
              "val": 0
            },
            {
              "id": "0_userdata.0.Wetterstation.Sonnenstrahlung",
              "val": 0.14
            },
            {
              "id": "0_userdata.0.Wetterstation.UV_Index",
              "val": 0
            },
            {
              "id": "0_userdata.0.Wetterstation.Zeitstempel",
              "val": "06.02.2021 17:46:21"
            },
            {
              "id": "0_userdata.0.Wetterstation.DP50.7.Temperatur",
              "val": 6.22
            },
            {
              "id": "0_userdata.0.Wetterstation.DP50.7.Feuchtigkeit",
              "val": 80
            },
            {
              "id": "0_userdata.0.Wetterstation.Regenstatus",
              "val": ""
            },
            {
              "id": "0_userdata.0.Wetterstation.UV_Belastung",
              "val": "keine"
            },
            {
              "id": "0_userdata.0.Wetterstation.Windrichtung_Text",
              "val": "NO"
            }
          ]
          
          Messwerteblock: 24.38 4.55 2.27 -1.94 36 85 4.98 6.11 34 994.58 1017.95 2.7 76.7 18.7 0 0.14 0 06.02.2021%2017:46:21 temp7f 6.22 humidity7 80
          
          
          Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
          
          Temperatur Innen        : 24.38 °C
          Temperatur Aussen       : 4.55 °C
          Taupunkt                : 2.27 °C
          Gefühlte Temperatur     : -1.94 °C
          Luftfeuchte Innen       : 36 %
          Luftfeuchte Aussen      : 85 %
          Windgeschwindkeit       : 4.98 km/h
          Windböengeschwindkeit   : 6.11 km/h
          max. Windböe            :  km/h
          Windrichtung            : 34 °
          Windrichtung            : NO
          Luftdruck absolut       : 994.58 hPa
          Luftdruck relativ       : 1017.95 hPa
          Regenrate               :  mm/h
          Regenstatus             :
          Regen seit Regenbeginn  :  mm
          Regen Stunde            :  mm
          Regen Tag               : 2.7 mm
          Regen Woche             : 76.7 mm
          Regen Monat             : 18.7 mm
          Regen Jahr              : 0 mm
          Regen Gesamt            :  mm
          Sonnenstrahlung         : 0.14 W/m²
          UV-Index                : 0
          Zeitstempel             : 06.02.2021%2017:46:21
          Firmware                :
          Batteriestand:          :
          Gateway-Modell          :
          
          Zusatzsensoren:
          
          temp7f          : 6.22
          humidity7               : 80
          
          
          Datenstring für ioBroker:
          0_userdata.0.Wetterstation.Innentemperatur=24.38&0_userdata.0.Wetterstation.Aussentemperatur=4.55&0_userdata.0.Wetterstation.Taupunkt=2.27&0_userdata.0.Wetterstation.Gefuehlte_Temperatur=-1.94&0_userdata.0.Wetterstation.Innenfeuchtigkeit=36&0_userdata.0.Wetterstation.Aussenfeuchtigkeit=85&0_userdata.0.Wetterstation.Wind=4.98&0_userdata.0.Wetterstation.Wind_max=6.11&0_userdata.0.Wetterstation.Windrichtung=34&0_userdata.0.Wetterstation.Druck_absolut=994.58&0_userdata.0.Wetterstation.Druck_relativ=1017.95&0_userdata.0.Wetterstation.Regen_Tag=2.7&0_userdata.0.Wetterstation.Regen_Woche=76.7&0_userdata.0.Wetterstation.Regen_Monat=18.7&0_userdata.0.Wetterstation.Regen_Jahr=0&0_userdata.0.Wetterstation.Sonnenstrahlung=0.14&0_userdata.0.Wetterstation.UV_Index=0&0_userdata.0.Wetterstation.Zeitstempel=06.02.2021%2017:46:21&0_userdata.0.Wetterstation.DP50.7.Temperatur=6.22&0_userdata.0.Wetterstation.DP50.7.Feuchtigkeit=80&0_userdata.0.Wetterstation.Regenstatus=&0_userdata.0.Wetterstation.UV_Belastung=keine&0_userdata.0.Wetterstation.Windrichtung_Text=NO
          
          
          DATA von Wetterstation:
          GET /weatherstation/updateweatherstation.php?ID=xxxxxx&PASSWORD=xxxxxx&indoortempf=75.9&indoorhumidity=36&tempf=40.2&humidity=85&temp7f=43.2&humidity7=80&dewptf=36.1&windchillf=28.5&absbaromin=29.37&baromin=30.06&windspeedmph=3.1&windgustmph=3.8&winddir=34&windspdmph_avg2m=2.9&winddir_avg2m=226&windgustmph_10m=2.5&windgustdir_10m=126&dailyrainin=0.11&weeklyrainin=3.02&monthlyrainin=0.74&yearlyrainin=0&solarradiation=0.14&UV=0&dateutc=2021-2-6%2017:46:21&action=updateraw&realtime=1&rtfreq=5& HTTP/1.0
          
          
          Debug VAR:
          Installationsverzeichnis: /home/Wetterstation
          IPP: 192.168.178.6:8087 WS_PORT: 80             WS_POLL: 30             PRE_DP: 0_userdata.0.Wetterstation
          WEB: HTTP               WS_PROT: Sainlogic Pro  DP50/60/100: 1 | 0 | 0
          Script-Version: V2.3.0  Config-Version: V2.3.0  Sub-Version: V2.3.0
          
          

          nach spätestens 30 Sekunden erste Daten erbringen

          Viel Erfolg!!!

          Zum Schluss noch folgender Hinweis:

          Spezifische Fragen zum Wetterstations-Script von @SBorg stellt bitte in seinem thread https://forum.iobroker.net/topic/28384/linux-shell-skript-wlan-wetterstation

          Spezifische Fragen zu den Einstellungen von Pi-hole zur Benutzung mit dem Script für eine alternative Wetterstation, die nicht die WS-View App zur Einstellung verwendet könnt Ihr gerne hier stellen. Ich bin sicher, dass @SBorg, @a200 und alle Anderen auch hier gerne Hilfe leisten.

          !!! Vielen Dank an @Sborg, @a200 und viele Andere, die mir halfen, das Script auf meinen Maschinen mit meiner Station zum Laufen zu bekommen !!!

          R Offline
          R Offline
          reini90
          schrieb am zuletzt editiert von
          #4

          @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 :slightly_frowning_face:

          R 1 Antwort Letzte Antwort
          0
          • R reini90

            @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 :slightly_frowning_face:

            R Offline
            R Offline
            reini90
            schrieb am zuletzt editiert von
            #5

            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.

            SBorgS 1 Antwort Letzte Antwort
            0
            • R reini90

              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.

              SBorgS Offline
              SBorgS Offline
              SBorg
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #6

              @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

              LG SBorg ( SBorg auf GitHub)
              Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

              R 1 Antwort Letzte Antwort
              0
              • SBorgS SBorg

                @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 Offline
                R Offline
                reini90
                schrieb am zuletzt editiert von
                #7

                @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 Antwort Letzte Antwort
                0
                • C Offline
                  C Offline
                  ClausPech
                  schrieb am zuletzt editiert von
                  #8

                  @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 Antwort Letzte Antwort
                  0
                  • G Offline
                    G Offline
                    guenter-
                    schrieb am zuletzt editiert von
                    #9

                    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
                    SBorgS 1 Antwort Letzte Antwort
                    0
                    • G guenter-

                      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
                      SBorgS Offline
                      SBorgS Offline
                      SBorg
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #10

                      @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.

                      LG SBorg ( SBorg auf GitHub)
                      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                      G 1 Antwort Letzte Antwort
                      0
                      • SBorgS SBorg

                        @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 Offline
                        G Offline
                        guenter-
                        schrieb am zuletzt editiert von
                        #11

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

                        SBorgS 1 Antwort Letzte Antwort
                        0
                        • G guenter-

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

                          SBorgS Offline
                          SBorgS Offline
                          SBorg
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von
                          #12

                          @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.

                          LG SBorg ( SBorg auf GitHub)
                          Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                          Guenter-- 0G 1 Antwort Letzte Antwort
                          0
                          • SBorgS SBorg

                            @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-- 0G Offline
                            Guenter-- 0G Offline
                            Guenter-- 0
                            schrieb am zuletzt editiert von
                            #13

                            @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 ...

                            SBorgS 1 Antwort Letzte Antwort
                            0
                            • Guenter-- 0G Guenter-- 0

                              @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 ...

                              SBorgS Offline
                              SBorgS Offline
                              SBorg
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #14

                              @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.

                              LG SBorg ( SBorg auf GitHub)
                              Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                              G 3 Antworten Letzte Antwort
                              0
                              • SBorgS SBorg

                                @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 Offline
                                G Offline
                                guenter-
                                schrieb am zuletzt editiert von
                                #15

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

                                1 Antwort Letzte Antwort
                                0
                                • SBorgS SBorg

                                  @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 Offline
                                  G Offline
                                  guenter-
                                  schrieb am zuletzt editiert von
                                  #16

                                  @sborg OpenWrt.JPG

                                  1 Antwort Letzte Antwort
                                  0
                                  • SBorgS SBorg

                                    @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 Offline
                                    G Offline
                                    guenter-
                                    schrieb am zuletzt editiert von
                                    #17

                                    @sborg Bei der DNS Adresse, die Fritzbox eintragen?

                                    SBorgS 1 Antwort Letzte Antwort
                                    0
                                    • G guenter-

                                      @sborg Bei der DNS Adresse, die Fritzbox eintragen?

                                      SBorgS Offline
                                      SBorgS Offline
                                      SBorg
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #18

                                      @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 :)

                                      LG SBorg ( SBorg auf GitHub)
                                      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                                      G 2 Antworten Letzte Antwort
                                      0
                                      • SBorgS SBorg

                                        @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 Offline
                                        G Offline
                                        guenter-
                                        schrieb am zuletzt editiert von
                                        #19

                                        @sborg Info

                                        • habs noch nicht hinbekommen
                                        • brauche neuen OpenWRT Router der alte will nicht mehr
                                          bis bald
                                        1 Antwort Letzte Antwort
                                        0
                                        • SBorgS SBorg

                                          @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 Offline
                                          G Offline
                                          guenter-
                                          schrieb am zuletzt editiert von guenter-
                                          #20

                                          @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)

                                          SBorgS 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          680

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe