Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. WLAN-Wetterstation in ioBroker direkt einbinden

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    598

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

WLAN-Wetterstation in ioBroker direkt einbinden

Scheduled Pinned Locked Moved ioBroker Allgemein
wlan-wetterstationadapter
134 Posts 21 Posters 43.4k Views 28 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • LatziL Online
    LatziL Online
    Latzi
    wrote on last edited by
    #15

    @SBorg :+1: :+1: :+1: toller Support, alles läuft bestens - herzlichen Dank!!!

    1 Reply Last reply
    0
    • LatziL Latzi

      @SBorg sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

      nc -lv Port

      @SBorg das ist ja Weltklasse!!! :raised_hands: :muscle:

      Ich habe in den Einstellungen der Wetterstation die IP des Pi eingetragen und eine Station-ID sowie ein Passwort festgelegt, den Port hätte ich ändern können, hab ich einstweilen auf 80 belassen (Vorbelegung) auch das Sendeintervall ist einstellbar (derzeit 60 sek) und das geschah:

      Eingabe:

      sudo nc -lv 80
      

      Ergebnis:

      Listening on [0.0.0.0] (family 2, port 80)
      Connection from 10.0.0.35 1840 received!
      GET /weatherstation/updateweatherstation.php?ID=ITRAGW1&PASSWORD=LATZI&indoortempf=75.2&tempf=40.8&dewptf=39.0&windchillf=40.8&indoorhumidity=42&humidity=94&windspeedmph=2.9&windgustmph=4.5&winddir=236&absbaromin=28.308&baromin=30.095&rainin=0.000&dailyrainin=0.012&weeklyrainin=0.201&monthlyrainin=1.673&solarradiation=0.00&UV=0&dateutc=2019-12-25%2005:11:31&softwaretype=EasyWeatherV1.4.4&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
      Host: 10.0.0.210
      Accept:*/*
      Connection: Close
      
      

      Scheint als werden die gesamten Daten übertragen, die Einheiten sind noch nicht umgerechnet, das ist jedoch das geringste Problem.

      Jetzt wird´s so richtig interessant für mich, stellt sich für mich die Frage, wie bekomme ich die empfangene Datenstruktur in den ioBroker????

      B Offline
      B Offline
      Berchemer
      wrote on last edited by
      #16

      @Latzi sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

      @SBorg das ist ja Weltklasse!!! :raised_hands: :muscle:

      Ich habe in den Einstellungen der Wetterstation die IP des Pi eingetragen und eine Station-ID sowie ein Passwort festgelegt, den Port hätte ich ändern können, hab ich einstweilen auf 80 belassen (Vorbelegung) auch das Sendeintervall ist einstellbar (derzeit 60 sek) und das geschah:

      Eingabe:

      sudo nc -lv 80
      

      Ergebnis:

      Listening on [0.0.0.0] (family 2, port 80)
      Connection from 10.0.0.35 1840 received!
      GET /weatherstation/updateweatherstation.php?ID=ITRAGW1&PASSWORD=LATZI&indoortempf=75.2&tempf=40.8&dewptf=39.0&windchillf=40.8&indoorhumidity=42&humidity=94&windspeedmph=2.9&windgustmph=4.5&winddir=236&absbaromin=28.308&baromin=30.095&rainin=0.000&dailyrainin=0.012&weeklyrainin=0.201&monthlyrainin=1.673&solarradiation=0.00&UV=0&dateutc=2019-12-25%2005:11:31&softwaretype=EasyWeatherV1.4.4&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
      Host: 10.0.0.210
      Accept:*/*
      Connection: Close
      
      

      Hallo Latzi und SBorg...

      Ich besitze eine WS3500 und kann über die APP (WSView auf Android) neben der Übersendung an WU auch eine customized-IP einstellen.
      In der Maske der APP habe ich folgende Daten eingetragen und doch noch einige Fragen:

      Als Protokolltyp habe ich es bei WU gelassen.
      Als ServerIP habe ich die IP meines MINT-Servers mit vorangestelltem "http://" eingetragen.
      Als Path habe ich es wie bei dir bei "/weatherstation/updateweatherstation.php?" gelassen.

      Die StationID, welche du eingetragen hast... Ist das die gleiche wie bei WU oder eine selber ausgedachte? Ich habe es hier sowohl mit Leerlassen, als auch mit der WU-ID versucht.
      Und Station-Key dürfte dann das Passwort sein, richtig? Auch hier habe ich das Feld sowohl mal leer gelassen, als auch mal mit einem Testpw versucht.

      Als Port habe ich es mit 8087 oder 8097 oder auch 80 versucht.
      Upload-Intervall habe ich testweise auf 20 sek runtergesetzt.

      Alles schön gespeichert und auf dem Server ebenfalls "sudo nc -lv PORTNUMMER" eingetragen. Warten, warten, warten, aber es kommt nichts rein.

      [nc] gibt mir z.B. aus: "Listening on [0.0.0.0] (family 0, port 8097)"

      Nur Nada an ankommenden Daten???

      Kann es sein, dass ich einen Denkfehler mache oder könnte mir in der Standardinstallation von Mint 19.2 etwas fehlen, was in Raspbian auf einem Raspberry vielleicht standardmäßig eingebunden wäre?

      [Hier zur Sicherheit beigefügt Foto der Maske in der APP]
      IMG_20191227_122133_bearbeitet.jpg

      SBorgS LatziL 2 Replies Last reply
      0
      • B Berchemer

        @Latzi sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

        @SBorg das ist ja Weltklasse!!! :raised_hands: :muscle:

        Ich habe in den Einstellungen der Wetterstation die IP des Pi eingetragen und eine Station-ID sowie ein Passwort festgelegt, den Port hätte ich ändern können, hab ich einstweilen auf 80 belassen (Vorbelegung) auch das Sendeintervall ist einstellbar (derzeit 60 sek) und das geschah:

        Eingabe:

        sudo nc -lv 80
        

        Ergebnis:

        Listening on [0.0.0.0] (family 2, port 80)
        Connection from 10.0.0.35 1840 received!
        GET /weatherstation/updateweatherstation.php?ID=ITRAGW1&PASSWORD=LATZI&indoortempf=75.2&tempf=40.8&dewptf=39.0&windchillf=40.8&indoorhumidity=42&humidity=94&windspeedmph=2.9&windgustmph=4.5&winddir=236&absbaromin=28.308&baromin=30.095&rainin=0.000&dailyrainin=0.012&weeklyrainin=0.201&monthlyrainin=1.673&solarradiation=0.00&UV=0&dateutc=2019-12-25%2005:11:31&softwaretype=EasyWeatherV1.4.4&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
        Host: 10.0.0.210
        Accept:*/*
        Connection: Close
        
        

        Hallo Latzi und SBorg...

        Ich besitze eine WS3500 und kann über die APP (WSView auf Android) neben der Übersendung an WU auch eine customized-IP einstellen.
        In der Maske der APP habe ich folgende Daten eingetragen und doch noch einige Fragen:

        Als Protokolltyp habe ich es bei WU gelassen.
        Als ServerIP habe ich die IP meines MINT-Servers mit vorangestelltem "http://" eingetragen.
        Als Path habe ich es wie bei dir bei "/weatherstation/updateweatherstation.php?" gelassen.

        Die StationID, welche du eingetragen hast... Ist das die gleiche wie bei WU oder eine selber ausgedachte? Ich habe es hier sowohl mit Leerlassen, als auch mit der WU-ID versucht.
        Und Station-Key dürfte dann das Passwort sein, richtig? Auch hier habe ich das Feld sowohl mal leer gelassen, als auch mal mit einem Testpw versucht.

        Als Port habe ich es mit 8087 oder 8097 oder auch 80 versucht.
        Upload-Intervall habe ich testweise auf 20 sek runtergesetzt.

        Alles schön gespeichert und auf dem Server ebenfalls "sudo nc -lv PORTNUMMER" eingetragen. Warten, warten, warten, aber es kommt nichts rein.

        [nc] gibt mir z.B. aus: "Listening on [0.0.0.0] (family 0, port 8097)"

        Nur Nada an ankommenden Daten???

        Kann es sein, dass ich einen Denkfehler mache oder könnte mir in der Standardinstallation von Mint 19.2 etwas fehlen, was in Raspbian auf einem Raspberry vielleicht standardmäßig eingebunden wäre?

        [Hier zur Sicherheit beigefügt Foto der Maske in der APP]
        IMG_20191227_122133_bearbeitet.jpg

        SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        wrote on last edited by
        #17

        Hi,
        ich kann da auch nur raten (von wegen hab keine Station ;) )
        @Berchemer sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

        Als ServerIP habe ich die IP meines MINT-Servers mit vorangestelltem "http://" eingetragen.

        Zumindest würde ich als ServerIP implizieren, dass er hier xxx.xxx.xxx.xxx erwartet. http://xxx.xxx.xxx.xxx ist eine URL, dann sollte da auch ServerURL stehen wenn er dies erwartet (aber man weiß ja nie...).
        StationID ist IMO frei wählbar, nur dass man bei mehreren (oder von Nachbarn) diese unterscheiden kann. Wird hier aber, genauso wie das Passwort, später nicht ausgewertet/benötigt. Die Station sendet die Daten ja "freiwillig" (könnte man im bash-Skript aber auch evaluieren, nicht dass einer mal falsche Messdaten schickt ;) ).
        Der Port ist nur der auf dem gesendet wird. Er muss auf deinem Mint frei sein und netcat (nc) muss dann auf diesem lauschen.

        Pauschal könnten auf dem Mint auch Ports geblockt sein, oder dein WLAN-AP/-Router reicht sie nicht weiter.

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

        LatziL 1 Reply Last reply
        1
        • B Berchemer

          @Latzi sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

          @SBorg das ist ja Weltklasse!!! :raised_hands: :muscle:

          Ich habe in den Einstellungen der Wetterstation die IP des Pi eingetragen und eine Station-ID sowie ein Passwort festgelegt, den Port hätte ich ändern können, hab ich einstweilen auf 80 belassen (Vorbelegung) auch das Sendeintervall ist einstellbar (derzeit 60 sek) und das geschah:

          Eingabe:

          sudo nc -lv 80
          

          Ergebnis:

          Listening on [0.0.0.0] (family 2, port 80)
          Connection from 10.0.0.35 1840 received!
          GET /weatherstation/updateweatherstation.php?ID=ITRAGW1&PASSWORD=LATZI&indoortempf=75.2&tempf=40.8&dewptf=39.0&windchillf=40.8&indoorhumidity=42&humidity=94&windspeedmph=2.9&windgustmph=4.5&winddir=236&absbaromin=28.308&baromin=30.095&rainin=0.000&dailyrainin=0.012&weeklyrainin=0.201&monthlyrainin=1.673&solarradiation=0.00&UV=0&dateutc=2019-12-25%2005:11:31&softwaretype=EasyWeatherV1.4.4&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
          Host: 10.0.0.210
          Accept:*/*
          Connection: Close
          
          

          Hallo Latzi und SBorg...

          Ich besitze eine WS3500 und kann über die APP (WSView auf Android) neben der Übersendung an WU auch eine customized-IP einstellen.
          In der Maske der APP habe ich folgende Daten eingetragen und doch noch einige Fragen:

          Als Protokolltyp habe ich es bei WU gelassen.
          Als ServerIP habe ich die IP meines MINT-Servers mit vorangestelltem "http://" eingetragen.
          Als Path habe ich es wie bei dir bei "/weatherstation/updateweatherstation.php?" gelassen.

          Die StationID, welche du eingetragen hast... Ist das die gleiche wie bei WU oder eine selber ausgedachte? Ich habe es hier sowohl mit Leerlassen, als auch mit der WU-ID versucht.
          Und Station-Key dürfte dann das Passwort sein, richtig? Auch hier habe ich das Feld sowohl mal leer gelassen, als auch mal mit einem Testpw versucht.

          Als Port habe ich es mit 8087 oder 8097 oder auch 80 versucht.
          Upload-Intervall habe ich testweise auf 20 sek runtergesetzt.

          Alles schön gespeichert und auf dem Server ebenfalls "sudo nc -lv PORTNUMMER" eingetragen. Warten, warten, warten, aber es kommt nichts rein.

          [nc] gibt mir z.B. aus: "Listening on [0.0.0.0] (family 0, port 8097)"

          Nur Nada an ankommenden Daten???

          Kann es sein, dass ich einen Denkfehler mache oder könnte mir in der Standardinstallation von Mint 19.2 etwas fehlen, was in Raspbian auf einem Raspberry vielleicht standardmäßig eingebunden wäre?

          [Hier zur Sicherheit beigefügt Foto der Maske in der APP]
          IMG_20191227_122133_bearbeitet.jpg

          LatziL Online
          LatziL Online
          Latzi
          wrote on last edited by
          #18

          @Berchemer hier meine Einstellungen:
          5b4b5017-8aa8-4437-8c80-a7fd0e578d73-grafik.png
          Lasse das http weg und wähle einen anderen Port, da 8087 vom Simple-Adapter belegt sein wird.

          Path wie vorgegeben, StationID und Key kannst leer lassen, ich hab´s belegt - muss nicht sein.

          Versuchs mal, wenns klappt kann ich das Script reinstellen, ist zwar sicher verbesserungswürdig aber es läuft.

          SBorgS 1 Reply Last reply
          1
          • SBorgS SBorg

            Hi,
            ich kann da auch nur raten (von wegen hab keine Station ;) )
            @Berchemer sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

            Als ServerIP habe ich die IP meines MINT-Servers mit vorangestelltem "http://" eingetragen.

            Zumindest würde ich als ServerIP implizieren, dass er hier xxx.xxx.xxx.xxx erwartet. http://xxx.xxx.xxx.xxx ist eine URL, dann sollte da auch ServerURL stehen wenn er dies erwartet (aber man weiß ja nie...).
            StationID ist IMO frei wählbar, nur dass man bei mehreren (oder von Nachbarn) diese unterscheiden kann. Wird hier aber, genauso wie das Passwort, später nicht ausgewertet/benötigt. Die Station sendet die Daten ja "freiwillig" (könnte man im bash-Skript aber auch evaluieren, nicht dass einer mal falsche Messdaten schickt ;) ).
            Der Port ist nur der auf dem gesendet wird. Er muss auf deinem Mint frei sein und netcat (nc) muss dann auf diesem lauschen.

            Pauschal könnten auf dem Mint auch Ports geblockt sein, oder dein WLAN-AP/-Router reicht sie nicht weiter.

            LatziL Online
            LatziL Online
            Latzi
            wrote on last edited by
            #19

            @SBorg sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

            Zumindest würde ich als ServerIP implizieren, dass er hier xxx.xxx.xxx.xxx erwartet. http://xxx.xxx.xxx.xxx ist eine URL

            Absolut richtig :+1:

            1 Reply Last reply
            1
            • LatziL Latzi

              @Berchemer hier meine Einstellungen:
              5b4b5017-8aa8-4437-8c80-a7fd0e578d73-grafik.png
              Lasse das http weg und wähle einen anderen Port, da 8087 vom Simple-Adapter belegt sein wird.

              Path wie vorgegeben, StationID und Key kannst leer lassen, ich hab´s belegt - muss nicht sein.

              Versuchs mal, wenns klappt kann ich das Script reinstellen, ist zwar sicher verbesserungswürdig aber es läuft.

              SBorgS Offline
              SBorgS Offline
              SBorg
              Forum Testing Most Active
              wrote on last edited by
              #20

              @Latzi sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

              Versuchs mal, wenns klappt kann ich das Script reinstellen, ist zwar sicher verbesserungswürdig aber es läuft.

              Schöner wäre natürlich ein Adapter, aber da habe ich schon x-mal angefangen, und genauso oft wieder aufgehört ;)
              Man könnte es natürlich auch optimieren, wie bspw. eine Funktion nutzen, um die wiederkehrende Konvertierung von °F nach °C durchzurechnen und, und, und...

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

              1 Reply Last reply
              0
              • B Offline
                B Offline
                Berchemer
                wrote on last edited by Berchemer
                #21

                Habe mal auf Port 8096 geändert und das http:// weggelassen und habe tatsächlich Daten erhalten.
                Danke :+1: :+1: :clap: :clap: :grinning:

                Jetzt muss ich mal den Weg von Latzi nachverfolgen, um zu sehen, was ich noch umsetzen muss :grinning:

                LatziL 1 Reply Last reply
                0
                • B Berchemer

                  Habe mal auf Port 8096 geändert und das http:// weggelassen und habe tatsächlich Daten erhalten.
                  Danke :+1: :+1: :clap: :clap: :grinning:

                  Jetzt muss ich mal den Weg von Latzi nachverfolgen, um zu sehen, was ich noch umsetzen muss :grinning:

                  LatziL Online
                  LatziL Online
                  Latzi
                  wrote on last edited by
                  #22

                  @Berchemer

                  hier mal das Script:

                  #!/bin/bash
                  
                  ###Settings
                  
                  debug=true                        #[true/false]
                  
                  IPP=10.0.0.210:8087               #ioBroker-IP:Port
                  
                  PRE_DP=javascript.0.Wetterstation #Datenpunkt
                  DP_TEMP_INNEN=${PRE_DP}.Innentemperatur
                  DP_TEMP_AUSSEN=${PRE_DP}.Aussentemperatur
                  DP_TAUPUNKT=${PRE_DP}.Taupunkt
                  DP_CHILL=${PRE_DP}.Chillfaktor
                  DP_FEUCHTE_INNEN=${PRE_DP}.Innenfeuchtigkeit
                  DP_FEUCHTE_AUSSEN=${PRE_DP}.Aussenfeuchtigkeit
                  DP_WIND=${PRE_DP}.Wind
                  DP_WIND_MAX=${PRE_DP}.Wind_max
                  DP_WIND_DIR=${PRE_DP}.Windrichtung
                  DP_DRUCK_ABS=${PRE_DP}.Druck_absolut
                  DP_DRUCK_REL=${PRE_DP}.Druck_relativ
                  DP_REGEN_AKT=${PRE_DP}.Regen_aktuell
                  DP_REGEN_TAG=${PRE_DP}.Regen_Tag
                  DP_REGEN_WOCHE=${PRE_DP}.Regen_Woche
                  DP_REGEN_MONAT=${PRE_DP}.Regen_Monat
                  DP_SONNE=${PRE_DP}.Sonnenstrahlung
                  DP_UV_INDEX=${PRE_DP}.UV_Index
                  DP_DATUM=${PRE_DP}.Datum
                  DP_ZEIT=${PRE_DP}.Zeit
                  
                  # Endlosschleife
                   
                  while true
                  do
                    #Datenzeile von Wetterstation abholen und Zeile mit GET am Anfang rausfiltern
                    DATA=`nc -lv 80|grep GET`
                  
                    #DATA zerlegen
                    #Innentemperatur:
                     TEMP_INNEN=$(echo ${DATA}|cut -d'&' -f3 | cut -d"=" -f2)
                     TEMP_INNEN=`echo "scale=2;(${TEMP_INNEN}-32)*5/9"|bc -l`
                    #Aussentemperatur:
                     TEMP_AUSSEN=$(echo ${DATA}|cut -d'&' -f4 | cut -d"=" -f2)
                     TEMP_AUSSEN=`echo "scale=2;(${TEMP_AUSSEN}-32)*5/9"|bc -l`
                    #Taupunkt:
                     TAUPUNKT=$(echo ${DATA}|cut -d'&' -f5 | cut -d"=" -f2)
                     TAUPUNKT=`echo "scale=2;(${TAUPUNKT}-32)*5/9"|bc -l`
                    #Chill-Faktor:
                     CHILL=$(echo ${DATA}|cut -d'&' -f6 | cut -d"=" -f2)
                     CHILL=`echo "scale=2;(${CHILL}-32)*5/9"|bc -l`
                    #Innenluftfeuchte:
                     FEUCHTE_INNEN=$(echo ${DATA}|cut -d'&' -f7 | cut -d"=" -f2)
                    #Aussenluftfeuchte:
                     FEUCHTE_AUSSEN=$(echo ${DATA}|cut -d'&' -f8 | cut -d"=" -f2)
                    #Windgeschwindigkeit:
                     WIND=$(echo ${DATA}|cut -d'&' -f9 | cut -d"=" -f2)
                     WIND=`echo "scale=2;${WIND}*16094/10000"|bc -l`
                    #Windgeschwindigkeit max:
                     WIND_MAX=$(echo ${DATA}|cut -d'&' -f10 | cut -d"=" -f2)
                     WIND_MAX=`echo "scale=2;${WIND_MAX}*16094/10000"|bc -l`
                    #Windrichtung:
                     WIND_DIR=$(echo ${DATA}|cut -d'&' -f11 | cut -d"=" -f2)
                    #Luftdruck absolut:
                     DRUCK_ABS=$(echo ${DATA}|cut -d'&' -f12 | cut -d"=" -f2)
                     DRUCK_ABS=`echo "scale=2;${DRUCK_ABS}*33864/1000"|bc -l`
                    #Luftdruck relativ:
                     DRUCK_REL=$(echo ${DATA}|cut -d'&' -f13 | cut -d"=" -f2)
                     DRUCK_REL=`echo "scale=2;${DRUCK_REL}*33864/1000"|bc -l`
                    #Regen aktuell:
                     REGEN_AKT=$(echo ${DATA}|cut -d'&' -f14 | cut -d"=" -f2)
                     REGEN_AKT=`echo "scale=1;${REGEN_AKT}*254/10"|bc -l`
                    #Regen Tag:
                     REGEN_TAG=$(echo ${DATA}|cut -d'&' -f15 | cut -d"=" -f2)
                     REGEN_TAG=`echo "scale=1;${REGEN_TAG}*254/10"|bc -l`
                    #Regen Woche:
                     REGEN_WOCHE=$(echo ${DATA}|cut -d'&' -f16 | cut -d"=" -f2)
                     REGEN_WOCHE=`echo "scale=1;${REGEN_WOCHE}*254/10"|bc -l`
                    #Regen Monat:
                     REGEN_MONAT=$(echo ${DATA}|cut -d'&' -f17 | cut -d"=" -f2)
                     REGEN_MONAT=`echo "scale=1;${REGEN_MONAT}*254/10"|bc -l`
                    #Sonnenstrahlung:
                     SONNE=$(echo ${DATA}|cut -d'&' -f18 | cut -d"=" -f2)
                    #UV-Index:
                     UV_INDEX=$(echo ${DATA}|cut -d'&' -f19 | cut -d"=" -f2)
                  
                    #Datum und Zeit abfragen
                     DAT_ZEIT=`timedatectl |grep Local`
                     DATUM=$(echo ${DAT_ZEIT}|cut -d' ' -f4)
                     UHRZEIT=$(echo ${DAT_ZEIT}|cut -d' ' -f5)
                  
                  #Daten an ioB schicken
                  
                     curl --data "${DP_TEMP_INNEN}=$TEMP_INNEN&${DP_TEMP_AUSSEN}=$TEMP_AUSSEN&${DP_TAUPUNKT}=$TAUPUNKT&${DP_CHILL}=$CHILL&${DP_FEUCHTE_INNEN}=$FEUCHTE_INNEN&${DP_FEUCHTE_AUSSEN}=$FEUCHTE_AUSSEN&${DP_WIND}=$WIND&${DP_WIND_MAX}=$WIND_MAX&${DP_WIND_DIR}=$WIND_DIR&${DP_DRUCK_ABS}=$DRUCK_ABS&${DP_DRUCK_REL}=$DRUCK_REL&${DP_REGEN_AKT}=$REGEN_AKT&${DP_REGEN_TAG}=$REGEN_TAG&${DP_REGEN_WOCHE}=$REGEN_WOCHE&${DP_REGEN_MONAT}=$REGEN_MONAT&${DP_SONNE}=$SONNE&${DP_UV_INDEX}=$UV_INDEX&${DP_DATUM}=$DATUM&${DP_ZEIT}=$UHRZEIT&prettyPrint" http://${IPP}/setBulk
                  
                  if [ $debug == "true" ]; then
                     # Datenfelder ausgeben
                     echo Temperatur Innen: $TEMP_INNEN °C
                     echo Temperatur Aussen: $TEMP_AUSSEN °C
                     echo Taupunkt: $TAUPUNKT °C
                     echo Chill-Faktor: $CHILL °C
                     echo Luftfeuchte Innen: $FEUCHTE_INNEN %
                     echo Luftfeuchte Aussen: $FEUCHTE_AUSSEN %
                     echo Windgeschwindkeit: $WIND km/h
                     echo max. Windgeschwindkeit: $WIND_MAX km/h
                     echo Windrichtung: $WIND_DIR °
                     echo Luftdruck absolut: $DRUCK_ABS hPa
                     echo Luftdruck relativ: $DRUCK_REL hPa
                     echo Regen aktuell: $REGEN_AKT mm
                     echo Regen Tag: $REGEN_TAG mm
                     echo Regen Woche: $REGEN_WOCHE mm
                     echo Regen Monat: $REGEN_MONAT mm
                     echo Sonnenstrahlung: $SONNE W/m^2
                     echo UV-Index: $UV_INDEX
                     echo Datum: $DATUM Zeit: $UHRZEIT
                  fi
                  
                  done
                  
                  

                  Zusätzlich sind die Datenpunkte anzulegen ( ich hab´s unter javascript.0.Wetterstation) und der Adapter (Simple RESTFul) zu installieren, sowie das Script im "Autostart" (crontab -e) zu platzieren (@SBorg hat das sehr schön beschrieben) - das war´s auch schon!

                  Bei der Umrechnung der Windgeschwindigkeiten bin ich mir noch nicht sicher, leider bläst gerade kein Wind :)

                  B 1 Reply Last reply
                  0
                  • LatziL Latzi

                    @Berchemer

                    hier mal das Script:

                    #!/bin/bash
                    
                    ###Settings
                    
                    debug=true                        #[true/false]
                    
                    IPP=10.0.0.210:8087               #ioBroker-IP:Port
                    
                    PRE_DP=javascript.0.Wetterstation #Datenpunkt
                    DP_TEMP_INNEN=${PRE_DP}.Innentemperatur
                    DP_TEMP_AUSSEN=${PRE_DP}.Aussentemperatur
                    DP_TAUPUNKT=${PRE_DP}.Taupunkt
                    DP_CHILL=${PRE_DP}.Chillfaktor
                    DP_FEUCHTE_INNEN=${PRE_DP}.Innenfeuchtigkeit
                    DP_FEUCHTE_AUSSEN=${PRE_DP}.Aussenfeuchtigkeit
                    DP_WIND=${PRE_DP}.Wind
                    DP_WIND_MAX=${PRE_DP}.Wind_max
                    DP_WIND_DIR=${PRE_DP}.Windrichtung
                    DP_DRUCK_ABS=${PRE_DP}.Druck_absolut
                    DP_DRUCK_REL=${PRE_DP}.Druck_relativ
                    DP_REGEN_AKT=${PRE_DP}.Regen_aktuell
                    DP_REGEN_TAG=${PRE_DP}.Regen_Tag
                    DP_REGEN_WOCHE=${PRE_DP}.Regen_Woche
                    DP_REGEN_MONAT=${PRE_DP}.Regen_Monat
                    DP_SONNE=${PRE_DP}.Sonnenstrahlung
                    DP_UV_INDEX=${PRE_DP}.UV_Index
                    DP_DATUM=${PRE_DP}.Datum
                    DP_ZEIT=${PRE_DP}.Zeit
                    
                    # Endlosschleife
                     
                    while true
                    do
                      #Datenzeile von Wetterstation abholen und Zeile mit GET am Anfang rausfiltern
                      DATA=`nc -lv 80|grep GET`
                    
                      #DATA zerlegen
                      #Innentemperatur:
                       TEMP_INNEN=$(echo ${DATA}|cut -d'&' -f3 | cut -d"=" -f2)
                       TEMP_INNEN=`echo "scale=2;(${TEMP_INNEN}-32)*5/9"|bc -l`
                      #Aussentemperatur:
                       TEMP_AUSSEN=$(echo ${DATA}|cut -d'&' -f4 | cut -d"=" -f2)
                       TEMP_AUSSEN=`echo "scale=2;(${TEMP_AUSSEN}-32)*5/9"|bc -l`
                      #Taupunkt:
                       TAUPUNKT=$(echo ${DATA}|cut -d'&' -f5 | cut -d"=" -f2)
                       TAUPUNKT=`echo "scale=2;(${TAUPUNKT}-32)*5/9"|bc -l`
                      #Chill-Faktor:
                       CHILL=$(echo ${DATA}|cut -d'&' -f6 | cut -d"=" -f2)
                       CHILL=`echo "scale=2;(${CHILL}-32)*5/9"|bc -l`
                      #Innenluftfeuchte:
                       FEUCHTE_INNEN=$(echo ${DATA}|cut -d'&' -f7 | cut -d"=" -f2)
                      #Aussenluftfeuchte:
                       FEUCHTE_AUSSEN=$(echo ${DATA}|cut -d'&' -f8 | cut -d"=" -f2)
                      #Windgeschwindigkeit:
                       WIND=$(echo ${DATA}|cut -d'&' -f9 | cut -d"=" -f2)
                       WIND=`echo "scale=2;${WIND}*16094/10000"|bc -l`
                      #Windgeschwindigkeit max:
                       WIND_MAX=$(echo ${DATA}|cut -d'&' -f10 | cut -d"=" -f2)
                       WIND_MAX=`echo "scale=2;${WIND_MAX}*16094/10000"|bc -l`
                      #Windrichtung:
                       WIND_DIR=$(echo ${DATA}|cut -d'&' -f11 | cut -d"=" -f2)
                      #Luftdruck absolut:
                       DRUCK_ABS=$(echo ${DATA}|cut -d'&' -f12 | cut -d"=" -f2)
                       DRUCK_ABS=`echo "scale=2;${DRUCK_ABS}*33864/1000"|bc -l`
                      #Luftdruck relativ:
                       DRUCK_REL=$(echo ${DATA}|cut -d'&' -f13 | cut -d"=" -f2)
                       DRUCK_REL=`echo "scale=2;${DRUCK_REL}*33864/1000"|bc -l`
                      #Regen aktuell:
                       REGEN_AKT=$(echo ${DATA}|cut -d'&' -f14 | cut -d"=" -f2)
                       REGEN_AKT=`echo "scale=1;${REGEN_AKT}*254/10"|bc -l`
                      #Regen Tag:
                       REGEN_TAG=$(echo ${DATA}|cut -d'&' -f15 | cut -d"=" -f2)
                       REGEN_TAG=`echo "scale=1;${REGEN_TAG}*254/10"|bc -l`
                      #Regen Woche:
                       REGEN_WOCHE=$(echo ${DATA}|cut -d'&' -f16 | cut -d"=" -f2)
                       REGEN_WOCHE=`echo "scale=1;${REGEN_WOCHE}*254/10"|bc -l`
                      #Regen Monat:
                       REGEN_MONAT=$(echo ${DATA}|cut -d'&' -f17 | cut -d"=" -f2)
                       REGEN_MONAT=`echo "scale=1;${REGEN_MONAT}*254/10"|bc -l`
                      #Sonnenstrahlung:
                       SONNE=$(echo ${DATA}|cut -d'&' -f18 | cut -d"=" -f2)
                      #UV-Index:
                       UV_INDEX=$(echo ${DATA}|cut -d'&' -f19 | cut -d"=" -f2)
                    
                      #Datum und Zeit abfragen
                       DAT_ZEIT=`timedatectl |grep Local`
                       DATUM=$(echo ${DAT_ZEIT}|cut -d' ' -f4)
                       UHRZEIT=$(echo ${DAT_ZEIT}|cut -d' ' -f5)
                    
                    #Daten an ioB schicken
                    
                       curl --data "${DP_TEMP_INNEN}=$TEMP_INNEN&${DP_TEMP_AUSSEN}=$TEMP_AUSSEN&${DP_TAUPUNKT}=$TAUPUNKT&${DP_CHILL}=$CHILL&${DP_FEUCHTE_INNEN}=$FEUCHTE_INNEN&${DP_FEUCHTE_AUSSEN}=$FEUCHTE_AUSSEN&${DP_WIND}=$WIND&${DP_WIND_MAX}=$WIND_MAX&${DP_WIND_DIR}=$WIND_DIR&${DP_DRUCK_ABS}=$DRUCK_ABS&${DP_DRUCK_REL}=$DRUCK_REL&${DP_REGEN_AKT}=$REGEN_AKT&${DP_REGEN_TAG}=$REGEN_TAG&${DP_REGEN_WOCHE}=$REGEN_WOCHE&${DP_REGEN_MONAT}=$REGEN_MONAT&${DP_SONNE}=$SONNE&${DP_UV_INDEX}=$UV_INDEX&${DP_DATUM}=$DATUM&${DP_ZEIT}=$UHRZEIT&prettyPrint" http://${IPP}/setBulk
                    
                    if [ $debug == "true" ]; then
                       # Datenfelder ausgeben
                       echo Temperatur Innen: $TEMP_INNEN °C
                       echo Temperatur Aussen: $TEMP_AUSSEN °C
                       echo Taupunkt: $TAUPUNKT °C
                       echo Chill-Faktor: $CHILL °C
                       echo Luftfeuchte Innen: $FEUCHTE_INNEN %
                       echo Luftfeuchte Aussen: $FEUCHTE_AUSSEN %
                       echo Windgeschwindkeit: $WIND km/h
                       echo max. Windgeschwindkeit: $WIND_MAX km/h
                       echo Windrichtung: $WIND_DIR °
                       echo Luftdruck absolut: $DRUCK_ABS hPa
                       echo Luftdruck relativ: $DRUCK_REL hPa
                       echo Regen aktuell: $REGEN_AKT mm
                       echo Regen Tag: $REGEN_TAG mm
                       echo Regen Woche: $REGEN_WOCHE mm
                       echo Regen Monat: $REGEN_MONAT mm
                       echo Sonnenstrahlung: $SONNE W/m^2
                       echo UV-Index: $UV_INDEX
                       echo Datum: $DATUM Zeit: $UHRZEIT
                    fi
                    
                    done
                    
                    

                    Zusätzlich sind die Datenpunkte anzulegen ( ich hab´s unter javascript.0.Wetterstation) und der Adapter (Simple RESTFul) zu installieren, sowie das Script im "Autostart" (crontab -e) zu platzieren (@SBorg hat das sehr schön beschrieben) - das war´s auch schon!

                    Bei der Umrechnung der Windgeschwindigkeiten bin ich mir noch nicht sicher, leider bläst gerade kein Wind :)

                    B Offline
                    B Offline
                    Berchemer
                    wrote on last edited by
                    #23

                    @Latzi

                    Ach ja... Da war noch das Bash-Script...
                    Muss jetzt erst mal nachschauen, wie ich das nochmal mache ;-)

                    Datei erstellen, Skript hineinkopieren und als "/opt/iobroker/WS3500Abfrage.sh" abspeichern.

                    Dann "crontab -e" als Befehl eingeben, den Editor aussuchen und am Ende der Datei "@reboot /opt/iobroker/WS3500Abfrage.sh &" eingeben. Richtig?

                    Mache ich zumindest mal so...

                    B LatziL 2 Replies Last reply
                    0
                    • B Berchemer

                      @Latzi

                      Ach ja... Da war noch das Bash-Script...
                      Muss jetzt erst mal nachschauen, wie ich das nochmal mache ;-)

                      Datei erstellen, Skript hineinkopieren und als "/opt/iobroker/WS3500Abfrage.sh" abspeichern.

                      Dann "crontab -e" als Befehl eingeben, den Editor aussuchen und am Ende der Datei "@reboot /opt/iobroker/WS3500Abfrage.sh &" eingeben. Richtig?

                      Mache ich zumindest mal so...

                      B Offline
                      B Offline
                      Berchemer
                      wrote on last edited by
                      #24

                      @Berchemer

                      Ok... Soweit eingegeben und natürlich die IP im Skript geändert.
                      Und natürlich den Datenpunkt vergessen einzutragen.

                      LatziL 1 Reply Last reply
                      0
                      • B Berchemer

                        @Latzi

                        Ach ja... Da war noch das Bash-Script...
                        Muss jetzt erst mal nachschauen, wie ich das nochmal mache ;-)

                        Datei erstellen, Skript hineinkopieren und als "/opt/iobroker/WS3500Abfrage.sh" abspeichern.

                        Dann "crontab -e" als Befehl eingeben, den Editor aussuchen und am Ende der Datei "@reboot /opt/iobroker/WS3500Abfrage.sh &" eingeben. Richtig?

                        Mache ich zumindest mal so...

                        LatziL Online
                        LatziL Online
                        Latzi
                        wrote on last edited by
                        #25

                        @Berchemer
                        Ja genau so! Rechte beim Script beachten (wenn nicht root) und VORHER Datenpunkte anlegen

                        1 Reply Last reply
                        0
                        • B Berchemer

                          @Berchemer

                          Ok... Soweit eingegeben und natürlich die IP im Skript geändert.
                          Und natürlich den Datenpunkt vergessen einzutragen.

                          LatziL Online
                          LatziL Online
                          Latzi
                          wrote on last edited by
                          #26

                          @Berchemer
                          Im Script beim Aufruf von nc den Port ändern (80 bei mir) nicht vergessen!

                          B 2 Replies Last reply
                          0
                          • B Offline
                            B Offline
                            Berchemer
                            wrote on last edited by Berchemer
                            #27

                            Habe also Datenpunkt unter javascript.0.Wetterstation angelegt.
                            Die Rechte des Eigentums und Ausführung des Skripts vergebe ich an iobroker und "Der Datei erlauben sie als Programm auszuführen" habe ich nicht angeklickt.
                            Muss ich eigentlich neu starten???

                            1 Reply Last reply
                            0
                            • LatziL Latzi

                              @Berchemer
                              Im Script beim Aufruf von nc den Port ändern (80 bei mir) nicht vergessen!

                              B Offline
                              B Offline
                              Berchemer
                              wrote on last edited by
                              #28

                              @Latzi sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

                              @

                              Stimmt hatte ich auch vergessen :face_with_rolling_eyes:

                              1 Reply Last reply
                              0
                              • LatziL Latzi

                                @Berchemer
                                Im Script beim Aufruf von nc den Port ändern (80 bei mir) nicht vergessen!

                                B Offline
                                B Offline
                                Berchemer
                                wrote on last edited by
                                #29

                                @Latzi sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

                                @Berchemer
                                Im Script beim Aufruf von nc den Port ändern (80 bei mir) nicht vergessen!

                                Stimmt hatte ich auch vergessen 🙄

                                1 Reply Last reply
                                0
                                • B Offline
                                  B Offline
                                  Berchemer
                                  wrote on last edited by
                                  #30

                                  Musste ich eigentlich noch etwas im "simple-api"-Adapter anpassen???
                                  Ich habe ihn nur eingeschaltet, weil er bei mir bisher ausgeschaltet war.

                                  LatziL B 2 Replies Last reply
                                  0
                                  • B Berchemer

                                    Musste ich eigentlich noch etwas im "simple-api"-Adapter anpassen???
                                    Ich habe ihn nur eingeschaltet, weil er bei mir bisher ausgeschaltet war.

                                    LatziL Online
                                    LatziL Online
                                    Latzi
                                    wrote on last edited by
                                    #31

                                    @Berchemer
                                    Nein, nur einschalten, Port (vermutlich 8087) mit Script vergleichen und reboot - fertig. Danach sollten die Daten reinflattern

                                    SBorgS 1 Reply Last reply
                                    0
                                    • LatziL Latzi

                                      @Berchemer
                                      Nein, nur einschalten, Port (vermutlich 8087) mit Script vergleichen und reboot - fertig. Danach sollten die Daten reinflattern

                                      SBorgS Offline
                                      SBorgS Offline
                                      SBorg
                                      Forum Testing Most Active
                                      wrote on last edited by
                                      #32

                                      @Latzi Willst/kannst du noch etwas Zeit investieren? Ich würde es ggf. gerne noch optimieren und als Package auf GitHub stellen mit Installationsanleitung etc. "Hier" ist es doch etwas konfus, da es sich dynamisch entwickelt hat ^^

                                      Unabhängig davon würde mich aber die Prozesslast noch interessieren. Ich nenne das Skript mal ws.sh

                                      ps -A|grep ws.sh
                                      

                                      Da steht dann vorne eine Zahl (=PID), dann

                                      top -p ermittelte_Zahl_von_oben
                                      

                                      Wie sieht die CPU-Last im Idle aus, und wie wenn er ein Datenpaket empfängt und verarbeitet?
                                      Ggf. musst du auch anstelle von ws.sh noch auf nc prüfen.

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

                                      LatziL 2 Replies Last reply
                                      0
                                      • SBorgS SBorg

                                        @Latzi Willst/kannst du noch etwas Zeit investieren? Ich würde es ggf. gerne noch optimieren und als Package auf GitHub stellen mit Installationsanleitung etc. "Hier" ist es doch etwas konfus, da es sich dynamisch entwickelt hat ^^

                                        Unabhängig davon würde mich aber die Prozesslast noch interessieren. Ich nenne das Skript mal ws.sh

                                        ps -A|grep ws.sh
                                        

                                        Da steht dann vorne eine Zahl (=PID), dann

                                        top -p ermittelte_Zahl_von_oben
                                        

                                        Wie sieht die CPU-Last im Idle aus, und wie wenn er ein Datenpaket empfängt und verarbeitet?
                                        Ggf. musst du auch anstelle von ws.sh noch auf nc prüfen.

                                        LatziL Online
                                        LatziL Online
                                        Latzi
                                        wrote on last edited by
                                        #33

                                        @SBorg sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

                                        @Latzi Willst/kannst du noch etwas Zeit investieren?

                                        Ja, mach ich gerne, da lerne ich sicherlich etwas. Ich melde mich mit den Ergebnissen.

                                        1 Reply Last reply
                                        0
                                        • SBorgS SBorg

                                          @Latzi Willst/kannst du noch etwas Zeit investieren? Ich würde es ggf. gerne noch optimieren und als Package auf GitHub stellen mit Installationsanleitung etc. "Hier" ist es doch etwas konfus, da es sich dynamisch entwickelt hat ^^

                                          Unabhängig davon würde mich aber die Prozesslast noch interessieren. Ich nenne das Skript mal ws.sh

                                          ps -A|grep ws.sh
                                          

                                          Da steht dann vorne eine Zahl (=PID), dann

                                          top -p ermittelte_Zahl_von_oben
                                          

                                          Wie sieht die CPU-Last im Idle aus, und wie wenn er ein Datenpaket empfängt und verarbeitet?
                                          Ggf. musst du auch anstelle von ws.sh noch auf nc prüfen.

                                          LatziL Online
                                          LatziL Online
                                          Latzi
                                          wrote on last edited by
                                          #34

                                          @SBorg sagte in WLAN-Wetterstation in ioBroker direkt einbinden:

                                          Wie sieht die CPU-Last im Idle aus, und wie wenn er ein Datenpaket empfängt und verarbeitet?
                                          Ggf. musst du auch anstelle von ws.sh noch auf nc prüfen.

                                          Tja, ich bekomme 2 PID´s:
                                          05b2f2e2-3360-4c13-92fc-216948c002f1-grafik.png

                                          Die PID 21222 wechselt andauernd, 423 ist dauerhaft erreichbar.

                                          wetterdaten.sh: Keine merkbare Veränderung idle/active

                                          0a19276f-f127-44f6-be30-dc44b2d8a85a-grafik.png

                                          nc: auch hier tut sich nicht viel (komisch ist 0 Tasks???) und bei jeder ps-Abfrage bekomme ich eine andere PID ??? Ich kann gar nicht schnell genug die ID bei top -p eintippseln ist sie auch schon wieder weg :(

                                          68f338d8-39e4-40a4-bb1c-a626d2f5257a-grafik.png

                                          @SBorg hilft dir das weiter?

                                          SBorgS 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          380

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe