Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. WLAN-Wetterstation in ioBroker direkt einbinden

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

WLAN-Wetterstation in ioBroker direkt einbinden

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
wlan-wetterstationadapter
134 Beiträge 21 Kommentatoren 39.6k Aufrufe 28 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.
  • OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von
    #8

    wenn man kein mqtt möchte oder gar weitere tools einsetzen möchte, wird man einen Adapter bauen müssen, der die Serverfunktionalität anbietet und die Daten der Wetterstation annehmen kann.
    Wahrscheinlich wird man sogar relativ viel code vom mqtt-plugin übernehmen können.

    Meine Adapter und Widgets
    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
    Links im Profil

    1 Antwort Letzte Antwort
    0
    • SBorgS Offline
      SBorgS Offline
      SBorg
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #9

      So habe ich mir das auch vorgestellt ^^
      Man kann nun eine bash nutzen, ein Perl-, Python-Script (oä.), Telegraf oder what else.
      bash wäre bspw. recht simpel:

      #!/bin/bash   
      
      while true
      do
        DATA=`nc -lv 80|grep GET`
        
         TEMP_INNEN=$(echo ${DATA}|cut -d'&' -f3 | cut -d"=" -f2)
         TEMP_INNEN=`echo "scale=2;(${TEMP_INNEN}-32)*5/9" | bc -l`
         echo Temperatur Innen: $TEMP_INNEN °C
      done
      

      Das liefert die Innentemperatur und rechnet sie in °C um. Mittels "curl" und dem ioB Simple-API-Adapter landet es dann als Datenpunkt im ioB.

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

      LatziL 1 Antwort Letzte Antwort
      1
      • SBorgS SBorg

        So habe ich mir das auch vorgestellt ^^
        Man kann nun eine bash nutzen, ein Perl-, Python-Script (oä.), Telegraf oder what else.
        bash wäre bspw. recht simpel:

        #!/bin/bash   
        
        while true
        do
          DATA=`nc -lv 80|grep GET`
          
           TEMP_INNEN=$(echo ${DATA}|cut -d'&' -f3 | cut -d"=" -f2)
           TEMP_INNEN=`echo "scale=2;(${TEMP_INNEN}-32)*5/9" | bc -l`
           echo Temperatur Innen: $TEMP_INNEN °C
        done
        

        Das liefert die Innentemperatur und rechnet sie in °C um. Mittels "curl" und dem ioB Simple-API-Adapter landet es dann als Datenpunkt im ioB.

        LatziL Online
        LatziL Online
        Latzi
        schrieb am zuletzt editiert von
        #10

        @SBorg das klingt schon mal richtig interessant, mir ist zwar noch nicht klar, was in dem bash passiert - muss mich damit aber erst auseinandersetzen. Vielen Dank für deine bisherigen Bemühungen 👍 , ich werde da aber sich noch mit einigen Fragen anklopfen.

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

        ioB Simple-API-Adapter

        Meinst du damit diesen Adapter?
        f6406f83-2b1e-4465-925b-1c2041e7cb18-grafik.png

        1 Antwort Letzte Antwort
        0
        • LatziL Online
          LatziL Online
          Latzi
          schrieb am zuletzt editiert von
          #11

          @SBorg schaut mit den Daten schon mal gut aus und es ist so simpel, dass den Code sogar ich verstehe 👍

          Listening on [0.0.0.0] (family 2, port 80)
          Connection from 10.0.0.35 21364 received!
          Temperatur Innen: 24.00 °C
          Temperatur Aussen: 2.72 °C
          Taupunkt: 2.50 °C
          Chill-Faktor: 2.72 °C
          Luftfeuchte Innen: 41 %
          Luftfeuchte Aussen: 99 %
          Windgeschwindkeit: 0 km/h
          max. Windgeschwindkeit: 0 km/h
          Windrichtung: 270 °
          Luftdruck absolut: 969.4218 hPa
          Luftdruck relativ: 1029.9366 hPa
          Regen aktuell: 0 mm
          Regen Tag: 0 mm
          Regen Woche: 0 mm
          Regen Monat: 0 mm
          Sonnenstrahlung: 50.28 W/m^2
          UV-Index: 0
          Listening on [0.0.0.0] (family 2, port 80)

          Hast du noch einen weiterführenden Tipp für mich, wie ich die gesammelten Daten mit dem Simple-Adapter einbinden kann?

          SBorgS 1 Antwort Letzte Antwort
          0
          • LatziL Latzi

            @SBorg schaut mit den Daten schon mal gut aus und es ist so simpel, dass den Code sogar ich verstehe 👍

            Listening on [0.0.0.0] (family 2, port 80)
            Connection from 10.0.0.35 21364 received!
            Temperatur Innen: 24.00 °C
            Temperatur Aussen: 2.72 °C
            Taupunkt: 2.50 °C
            Chill-Faktor: 2.72 °C
            Luftfeuchte Innen: 41 %
            Luftfeuchte Aussen: 99 %
            Windgeschwindkeit: 0 km/h
            max. Windgeschwindkeit: 0 km/h
            Windrichtung: 270 °
            Luftdruck absolut: 969.4218 hPa
            Luftdruck relativ: 1029.9366 hPa
            Regen aktuell: 0 mm
            Regen Tag: 0 mm
            Regen Woche: 0 mm
            Regen Monat: 0 mm
            Sonnenstrahlung: 50.28 W/m^2
            UV-Index: 0
            Listening on [0.0.0.0] (family 2, port 80)

            Hast du noch einen weiterführenden Tipp für mich, wie ich die gesammelten Daten mit dem Simple-Adapter einbinden kann?

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

            @Latzi Sag ja "easy going" und simpel. Wahrscheinlich hast du #7 + #8 nur dupliziert und "-f3" immer um eins hochgezählt. Hätte ich der Einfachheit halber auch gemacht. Normalerweise würde mein ein Array anlegen, eine Funktion erstellen, aber so ist es einfach einfacher 🙂

            Adapter: Jepp, vergesse noch, dass der ab JS 2.0 nun Restful heißt 😉
            Ich arbeite in meinen Scripten gerne mit Variablen, so muss ich nur bei Bedarf am Anfang des Scripts diese ändern, und nicht den ganzen Quellcode durchsuchen/ändern muss.

            #!/bin/bash   
            
            ###Settings
             debug=true            #[true/false]
             IPP=192.168.x.xx:8082 #ioBroker-IP:Port
             PRE_DP=javascript.0.Wetterstation #Datenpunkt
             DP_TEMP_INNEN=${PRE_DP}.Innentemperatur
             DP_TEMP_AUSSEN=${PRE_DP}.Aussentemperatur
            
            
            while true
            do
            
              DATA=`nc -lv 80|grep GET`
              
               TEMP_INNEN=$(echo ${DATA}|cut -d'&' -f3 | cut -d"=" -f2)
               TEMP_INNEN=`echo "scale=2;(${TEMP_INNEN}-32)*5/9" | bc -l`
               TEMP_AUSSEN=$(echo ${DATA}|cut -d'&' -f4 | cut -d"=" -f2)
               TEMP_AUSSEN=`echo "scale=2;(${TEMP_AUSSEN}-32)*5/9" | bc -l`
            
             #Daten an ioB schicken
                curl --data "${DP_TEMP_INNEN}=$TEMP_INNEN&${DP_TEMP_AUSSEN}=$TEMP_AUSSEN&prettyPrint" http://${IPP}/setBulk
            
             if [ $debug == "true" ]; then
               echo Temperatur Innen: $TEMP_INNEN °C
               echo Temperatur Aussen: $TEMP_AUSSEN °C
             fi
            done
            

            Ich weiß gerade nicht, ob man außerhalb des Javascript speichern kann, deswegen hier "javascript.0..." als Datenverzeichnis. MyOwnData wäre IMHO besser. Die Datenpunkte müssen vorher per Hand angelegt werden. ich habe ein allgemeines Javascript, dass nur alle anzulegenden Datenpunkte erzeugt. Im Falle des Falles starte ich das einmalig, schon sind alle DPs wieder da 😉

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

            LatziL 1 Antwort Letzte Antwort
            1
            • SBorgS SBorg

              @Latzi Sag ja "easy going" und simpel. Wahrscheinlich hast du #7 + #8 nur dupliziert und "-f3" immer um eins hochgezählt. Hätte ich der Einfachheit halber auch gemacht. Normalerweise würde mein ein Array anlegen, eine Funktion erstellen, aber so ist es einfach einfacher 🙂

              Adapter: Jepp, vergesse noch, dass der ab JS 2.0 nun Restful heißt 😉
              Ich arbeite in meinen Scripten gerne mit Variablen, so muss ich nur bei Bedarf am Anfang des Scripts diese ändern, und nicht den ganzen Quellcode durchsuchen/ändern muss.

              #!/bin/bash   
              
              ###Settings
               debug=true            #[true/false]
               IPP=192.168.x.xx:8082 #ioBroker-IP:Port
               PRE_DP=javascript.0.Wetterstation #Datenpunkt
               DP_TEMP_INNEN=${PRE_DP}.Innentemperatur
               DP_TEMP_AUSSEN=${PRE_DP}.Aussentemperatur
              
              
              while true
              do
              
                DATA=`nc -lv 80|grep GET`
                
                 TEMP_INNEN=$(echo ${DATA}|cut -d'&' -f3 | cut -d"=" -f2)
                 TEMP_INNEN=`echo "scale=2;(${TEMP_INNEN}-32)*5/9" | bc -l`
                 TEMP_AUSSEN=$(echo ${DATA}|cut -d'&' -f4 | cut -d"=" -f2)
                 TEMP_AUSSEN=`echo "scale=2;(${TEMP_AUSSEN}-32)*5/9" | bc -l`
              
               #Daten an ioB schicken
                  curl --data "${DP_TEMP_INNEN}=$TEMP_INNEN&${DP_TEMP_AUSSEN}=$TEMP_AUSSEN&prettyPrint" http://${IPP}/setBulk
              
               if [ $debug == "true" ]; then
                 echo Temperatur Innen: $TEMP_INNEN °C
                 echo Temperatur Aussen: $TEMP_AUSSEN °C
               fi
              done
              

              Ich weiß gerade nicht, ob man außerhalb des Javascript speichern kann, deswegen hier "javascript.0..." als Datenverzeichnis. MyOwnData wäre IMHO besser. Die Datenpunkte müssen vorher per Hand angelegt werden. ich habe ein allgemeines Javascript, dass nur alle anzulegenden Datenpunkte erzeugt. Im Falle des Falles starte ich das einmalig, schon sind alle DPs wieder da 😉

              LatziL Online
              LatziL Online
              Latzi
              schrieb am zuletzt editiert von
              #13

              @SBorg vielen Dank läuft perfekt nachdem ich den Port auf 8087 geändert habe (8082 ist bei mir die vis). Die Datenpunkte per Hand anlegen war etwas mühsam, wie kann ich die DP´s per Javascript anlegen - klingt sehr vernünftig? Kann ich den RAW-Code der einzelnen DP´s dazu verwenden oder gibt´s ein kleines Beispiel? Es ist mein erstes Mal mit Javascript, sorry für die dumme Frage. Und noch eine dumme Frage, damit das Script zur Abfrage der Wetterstationsdaten automatisch nach jedem Start des Pi läuft reicht es wenn ich´s in /etc/rc.local eintrage?

              SBorgS 1 Antwort Letzte Antwort
              0
              • LatziL Latzi

                @SBorg vielen Dank läuft perfekt nachdem ich den Port auf 8087 geändert habe (8082 ist bei mir die vis). Die Datenpunkte per Hand anlegen war etwas mühsam, wie kann ich die DP´s per Javascript anlegen - klingt sehr vernünftig? Kann ich den RAW-Code der einzelnen DP´s dazu verwenden oder gibt´s ein kleines Beispiel? Es ist mein erstes Mal mit Javascript, sorry für die dumme Frage. Und noch eine dumme Frage, damit das Script zur Abfrage der Wetterstationsdaten automatisch nach jedem Start des Pi läuft reicht es wenn ich´s in /etc/rc.local eintrage?

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

                @Latzi 8087 ist auch richtig 😉
                Ich habe das ganze Script ungetestet direkt hier geschrieben (hab ja keine Wetterstation).
                ...und es gibt keine dummen Fragen, nur dumme Antworten...
                Nach rc.local würde ich es nicht legen, denn dann hängt dein PI fest. Er führt das Skript aus, wird aber aufgrund der Endlosschleife im Skript nie damit fertig und führt auch keine weiteren Schritte aus.

                crontab -e
                

                dort einfach einfügen (wichtig: die letzte Zeile muss eine Leerzeile sein!):

                @reboot /Pfad/name_des.skripts.sh &
                

                Durch das abschließende & läuft die Verarbeitung weiter, egal ob das Skript noch läuft oder nicht.

                Einfach ein leeres JS anlegen, Ort und Name sind egal, Inhalt nach folgendem Muster:

                createState('javascript.0.Wetterstation.Innentemperatur', '0', { name: "Temperatur im Haus",
                								 type: "number",
                								 role: "state",
                								 unit: "°C",
                								 read: true,
                								 write: true
                								});
                

                "Unit"," read" und "write" müssen nicht sein. Pauschal kannst du die möglichen Werte auch bei RAW des DPs sehen (wenn du sie grafisch mal angelegt hast). Wenn du das Skript dann startest werden die DPs angelegt. Danach kannst du es wieder stoppen. @paul53 hat auch einen Codeschnipsel gepostet mit dem es möglich ist DPs auch außerhalb von javascript.x anzulegen. Man kann sich natürlich auch die ganzen DPs als JSON exportieren 🙂

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

                1 Antwort Letzte Antwort
                0
                • LatziL Online
                  LatziL Online
                  Latzi
                  schrieb am zuletzt editiert von
                  #15

                  @SBorg 👍 👍 👍 toller Support, alles läuft bestens - herzlichen Dank!!!

                  1 Antwort Letzte Antwort
                  0
                  • LatziL Latzi

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

                    nc -lv Port

                    @SBorg das ist ja Weltklasse!!! 🙌 💪

                    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
                    schrieb am zuletzt editiert von
                    #16

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

                    @SBorg das ist ja Weltklasse!!! 🙌 💪

                    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 Antworten Letzte Antwort
                    0
                    • B Berchemer

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

                      @SBorg das ist ja Weltklasse!!! 🙌 💪

                      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
                      schrieb am zuletzt editiert von
                      #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 Antwort Letzte Antwort
                      1
                      • B Berchemer

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

                        @SBorg das ist ja Weltklasse!!! 🙌 💪

                        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
                        schrieb am zuletzt editiert von
                        #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 Antwort Letzte Antwort
                        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
                          schrieb am zuletzt editiert von
                          #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 Antwort Letzte Antwort
                          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
                            schrieb am zuletzt editiert von
                            #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 Antwort Letzte Antwort
                            0
                            • B Offline
                              B Offline
                              Berchemer
                              schrieb am zuletzt editiert von Berchemer
                              #21

                              Habe mal auf Port 8096 geändert und das http:// weggelassen und habe tatsächlich Daten erhalten.
                              Danke 👍 👍 👏 👏 😀

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

                              LatziL 1 Antwort Letzte Antwort
                              0
                              • B Berchemer

                                Habe mal auf Port 8096 geändert und das http:// weggelassen und habe tatsächlich Daten erhalten.
                                Danke 👍 👍 👏 👏 😀

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

                                LatziL Online
                                LatziL Online
                                Latzi
                                schrieb am zuletzt editiert von
                                #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 Antwort Letzte Antwort
                                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
                                  schrieb am zuletzt editiert von
                                  #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 Antworten Letzte Antwort
                                  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
                                    schrieb am zuletzt editiert von
                                    #24

                                    @Berchemer

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

                                    LatziL 1 Antwort Letzte Antwort
                                    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
                                      schrieb am zuletzt editiert von
                                      #25

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

                                      1 Antwort Letzte Antwort
                                      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
                                        schrieb am zuletzt editiert von
                                        #26

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

                                        B 2 Antworten Letzte Antwort
                                        0
                                        • B Offline
                                          B Offline
                                          Berchemer
                                          schrieb am zuletzt editiert von 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 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          731

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe