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

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

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. [Linux Shell-Skript] WLAN-Wetterstation

NEWS

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

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

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

[Linux Shell-Skript] WLAN-Wetterstation

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Beiträge 152 Kommentatoren 3.8m Aufrufe 134 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.
  • SBorgS SBorg

    @unltdnetworx Wie du magst. Ich habe keine eigene Station, deswegen ist die V0.1.2 bisher kpl. ungetestet. Also keine Ahnung ob ich ev. was verbockt habe, zumindest in der simuluerten Version hat es funktioniert ;)
    Also bau es ruhig mal ein und teste :+1: :angel: :grin:

    unltdnetworxU Offline
    unltdnetworxU Offline
    unltdnetworx
    Developer
    schrieb am zuletzt editiert von unltdnetworx
    #105

    @SBorg
    Die Beta läuft übrigens einwandfrei. Hab jetzt meine Werte noch ergänzt, aber keine Weiche eingebaut. Pull-Request gestellt.

    Gruß, Michael
    Weitere Infos im Profil.
    Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

    SBorgS 1 Antwort Letzte Antwort
    0
    • R Offline
      R Offline
      Rushmed
      Most Active
      schrieb am zuletzt editiert von
      #106

      Was muss ich jetzt alles beachten wenn ich die Beta ausprobieren will?

      1 Antwort Letzte Antwort
      1
      • unltdnetworxU unltdnetworx

        @SBorg
        Die Beta läuft übrigens einwandfrei. Hab jetzt meine Werte noch ergänzt, aber keine Weiche eingebaut. Pull-Request gestellt.

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

        @unltdnetworx Danke :) Kannst du mir mal ein Beispieldatenpaket (Passwort x-en ;) ) posten? Dann kann ich mir mal Gedanken machen wie man es in ein Skript packt und simulieren. bash ist halt keine echte Programmiersprache. Ich will aber auch nicht x separate Skripte pflegen.

        @Rushmed Eigentlich nur wie oben beschrieben. Neues Javascript wg. zusätzlichem Datenpunkt ausführen. Die conf nach deinen Werten konfigurieren (jetzt zusätzlich noch die Station-ID). Dann sollte es laufen. Bei derzeit fünf aufgetretenen Datenpaket-Fehlern (falsches Format, verstümmelt, gar kein Paket) sollte der neue Datenpunkt "_Kommunikationsfehler" true werden.

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

        1 Antwort Letzte Antwort
        0
        • SBorgS SBorg

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

          Kann ich nicht die Umrechnung erst im IoBroker machen und dadurch den bc Befehl weglassen?

          Müsste eigentlich gehen. Ändere in der wetterstation.sh bei "#Data zerlegen..." mal in

                #if [ "$i" -ge "0" ] && [ "$i" -lt "4" ]; then convertFtoC; fi
                #if [ "$i" -eq "6" ] || [ "$i" -eq "7" ]; then convertMPHtoKMH; fi
                #if [ "$i" -eq "9" ] || [ "$i" -eq "10" ]; then convertLuftdruck; fi
                #if [ "$i" -ge "11" ] && [ "$i" -lt "15" ]; then convertInchtoMM; fi
          
          

          ab, also nur eine "#" davor.

          G Offline
          G Offline
          gerald123
          schrieb am zuletzt editiert von
          #108

          @SBorg Habe gestern noch weiter getestet, leider geht bei mir auch der Befehl nc nicht.
          Auch dieser Befehl wird im Docker nicht gefunden.
          Gibt es noch eine ander Möglichkeit die Daten abzufragen?

          Synology 918+ 4GB; ioBroker auf RPI4; Zigbee; Sonoff

          SBorgS 1 Antwort Letzte Antwort
          0
          • G gerald123

            @SBorg Habe gestern noch weiter getestet, leider geht bei mir auch der Befehl nc nicht.
            Auch dieser Befehl wird im Docker nicht gefunden.
            Gibt es noch eine ander Möglichkeit die Daten abzufragen?

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

            @gerald123 Da die Hardwareanforderungen gering sind, würde auch ein x-beliebiger Raspberry PI im Netzwerk genügen. Es sollte sogar ein Orange PI für ~17,- € langen. Oder es findet sich jemand der einen Adapter schreibt, oder es per Perl, Python etc. umsetzt.

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

            EisbaeeerE 1 Antwort Letzte Antwort
            0
            • SBorgS SBorg

              @gerald123 Da die Hardwareanforderungen gering sind, würde auch ein x-beliebiger Raspberry PI im Netzwerk genügen. Es sollte sogar ein Orange PI für ~17,- € langen. Oder es findet sich jemand der einen Adapter schreibt, oder es per Perl, Python etc. umsetzt.

              EisbaeeerE Offline
              EisbaeeerE Offline
              Eisbaeeer
              Developer
              schrieb am zuletzt editiert von
              #110

              @SBorg Ein Adapter wäre doch sinnvoll. Spendiert mir einer eine Wetterstation? ;-)
              Grüße Eisbaeeer

              Kein support per PM. Bitte im Forum Fragen stellen!

              SBorgS 1 Antwort Letzte Antwort
              0
              • EisbaeeerE Eisbaeeer

                @SBorg Ein Adapter wäre doch sinnvoll. Spendiert mir einer eine Wetterstation? ;-)
                Grüße Eisbaeeer

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

                @Eisbaeeer :grinning: Ich habe ja auch keine, noch dazu nie einen Adapter gebaut. Wollte zwar immer mal wieder anfangen, aber ohne kriege ich es einfach schneller umgesetzt ;)

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

                EisbaeeerE GlasfaserG 2 Antworten Letzte Antwort
                0
                • SBorgS SBorg

                  @Eisbaeeer :grinning: Ich habe ja auch keine, noch dazu nie einen Adapter gebaut. Wollte zwar immer mal wieder anfangen, aber ohne kriege ich es einfach schneller umgesetzt ;)

                  EisbaeeerE Offline
                  EisbaeeerE Offline
                  Eisbaeeer
                  Developer
                  schrieb am zuletzt editiert von
                  #112

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

                  @Eisbaeeer :grinning: Ich habe ja auch keine, noch dazu nie einen Adapter gebaut. Wollte zwar immer mal wieder anfangen, aber ohne kriege ich es einfach schneller umgesetzt ;)

                  Naja, die Arbeit ist ja schon gemacht. Alles andere ist ja nur noch Fleißarbeit und ein wenig Erfahrung. Dann ist der Adapter schon fertig. Aber ich habe leider keine Zeit.

                  Kein support per PM. Bitte im Forum Fragen stellen!

                  1 Antwort Letzte Antwort
                  0
                  • R Offline
                    R Offline
                    Rushmed
                    Most Active
                    schrieb am zuletzt editiert von
                    #113

                    Jaa, ich bin auch für einen Adapter!

                    1 Antwort Letzte Antwort
                    0
                    • G Offline
                      G Offline
                      gerald123
                      schrieb am zuletzt editiert von
                      #114

                      Ein Adapter währe für mich die ideale Lösung, vielleicht wird es ja noch :blush:

                      Synology 918+ 4GB; ioBroker auf RPI4; Zigbee; Sonoff

                      1 Antwort Letzte Antwort
                      0
                      • SBorgS SBorg

                        @Eisbaeeer :grinning: Ich habe ja auch keine, noch dazu nie einen Adapter gebaut. Wollte zwar immer mal wieder anfangen, aber ohne kriege ich es einfach schneller umgesetzt ;)

                        GlasfaserG Offline
                        GlasfaserG Offline
                        Glasfaser
                        schrieb am zuletzt editiert von Glasfaser
                        #115

                        @SBorg

                        Hier mal meine Änderung/Anpassung auf die Froggit WH4000SE.

                        1.JPG

                        wetterstation.conf

                        ### Settings V0.1.2 -------Froggit WH4000SE----------------------------------------------------
                        #Debuging einschalten [true/false] / default false / Ausgabe der Messwerte
                         debug=false
                        
                        #ioBroker-IP und Port der Simple-Restful-API [xxx.xxx.xxx.xxx:xxxxx]
                         IPP=192.168.178.11:8087               
                        
                        #Port der Wetterstation
                         WS_PORT=9999
                        
                        #Pollintervall der Wetterstation in Sekunden (min 30 Sekunden)
                         WS_POLL=16
                        
                        #Name/ID der Wetterstation
                         WS_ID=xxxxx
                        
                        #wo sollen die Datenobjekte abgelegt werden
                         PRE_DP=javascript.0.Wetterstation
                        
                        #Bezeichnung der Datenpunkte
                         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_REGEN_JAHR=${PRE_DP}.Regen_Jahr
                         DP_SONNE=${PRE_DP}.Sonnenstrahlung
                         DP_UV_INDEX=${PRE_DP}.UV_Index
                         DP_ZEITSTEMPEL=${PRE_DP}.Zeitstempel
                         DP_KOMFEHLER=${PRE_DP}._Kommunikationsfehler
                        
                        ###  Ende Usereinstellungen  
                        ###  Farbdefinition
                             GR='\e[1;32m'
                             GE='\e[1;33m'
                             WE='\e[1;37m'
                             BL='\e[1;36m'
                             RE='\e[1;31m'
                        
                        ###-------------------------------------------------------------------------###
                        ###  Subroutinen - KEINE ÃNDERUNGEN NÖTIG !                                 ###
                        ###-------------------------------------------------------------------------###
                        
                        debuging() {
                         #Messwerteblock
                          echo -e "\n\n${WE}Messwerteblock: $GR${MESSWERTERAW[*]}$WE"
                        
                         #Datenfelder ausgeben
                          echo -e "\n\nTemperatur Innen\t: $GR${MESSWERTE[0]}$WE °C"
                          echo -e "Temperatur Aussen\t: $GR${MESSWERTE[1]}$WE °C"
                          echo -e "Taupunkt\t\t: $GR${MESSWERTE[2]}$WE °C"
                          echo -e "Chill-Faktor\t\t: $GR${MESSWERTE[3]}$WE °C"
                          echo -e "Luftfeuchte Innen\t: $GR${MESSWERTE[4]}$WE %"
                          echo -e "Luftfeuchte Aussen\t: $GR${MESSWERTE[5]}$WE %"
                          echo -e "Windgeschwindkeit\t: $GR${MESSWERTE[6]}$WE km/h"
                          echo -e "max. Windgeschwindkeit\t: $GR${MESSWERTE[7]}$WE km/h"
                          echo -e "Windrichtung\t\t: $GR${MESSWERTE[8]}$WE °"
                          echo -e "Luftdruck absolut\t: $GR${MESSWERTE[9]}$WE hPa"
                          echo -e "Luftdruck relativ\t: $GR${MESSWERTE[10]}$WE hPa"
                          echo -e "Regen aktuell\t\t: $GR${MESSWERTE[11]}$WE mm"
                          echo -e "Regen Tag\t\t: $GR${MESSWERTE[12]}$WE mm"
                          echo -e "Regen Woche\t\t: $GR${MESSWERTE[13]}$WE mm"
                          echo -e "Regen Monat\t\t: $GR${MESSWERTE[14]}$WE mm"
                          echo -e "Regen Jahr\t\t: $GR${MESSWERTE[15]}$WE mm"
                          echo -e "Sonnenstrahlung\t\t: $GR${MESSWERTE[16]}$WE W/m²"
                          echo -e "UV-Index\t\t: $GR${MESSWERTE[17]}$WE"
                          echo -e "Zeitstempel\t\t: $GR${MESSWERTE[18]}$WE"
                          
                          echo -e "\n\nDatenstring für ioBroker:\n$GR$IOB_DATA$WE\n"
                        
                          echo -e "\nDATA von Wetterstation(Passwort auskommentieren!):\n$GR${DAT}$WE\n"
                        
                          echo -e "\nDebug VAR:"
                          echo -e "Installationsverzeichnis: $GE$DIR$WE"
                          echo -e "IPP: $GE${IPP}$WE\tWS_PORT: $GE${WS_PORT}$WE\t\tWS_POLL: $GE${WS_POLL}$WE\tPRE_DP: $GE${PRE_DP}$WE"
                          echo -e "Script-Version: $GE$SH_VER$WE\tConfig-Version: $GE${CONF_V}$WE"
                        
                         #Shell-Skript mit Fehler beenden
                           exit 1
                        }
                        
                        ### ioB-Daten senden
                        iob_send() {
                          #build Data-String
                           IOB_DATA=$(cat <<-EOD
                           ${DP_TEMP_INNEN}=${MESSWERTE[0]}
                           &${DP_TEMP_AUSSEN}=${MESSWERTE[1]}
                           &${DP_TAUPUNKT}=${MESSWERTE[2]}
                           &${DP_CHILL}=${MESSWERTE[3]}
                           &${DP_FEUCHTE_INNEN}=${MESSWERTE[4]}
                           &${DP_FEUCHTE_AUSSEN}=${MESSWERTE[5]}
                           &${DP_WIND}=${MESSWERTE[6]}
                           &${DP_WIND_MAX}=${MESSWERTE[7]}
                           &${DP_WIND_DIR}=${MESSWERTE[8]}
                           &${DP_DRUCK_ABS}=${MESSWERTE[9]}
                           &${DP_DRUCK_REL}=${MESSWERTE[10]}
                           &${DP_REGEN_AKT}=${MESSWERTE[11]}
                           &${DP_REGEN_TAG}=${MESSWERTE[12]}
                           &${DP_REGEN_WOCHE}=${MESSWERTE[13]}
                           &${DP_REGEN_MONAT}=${MESSWERTE[14]}
                               &${DP_REGEN_JAHR}=${MESSWERTE[15]}
                           &${DP_SONNE}=${MESSWERTE[16]}
                           &${DP_UV_INDEX}=${MESSWERTE[17]}
                           EOD
                            )
                          
                          #Leerzeichen entfernen + Zeitstempel wg. Leerzeichen erst hier anhängen
                           IOB_DATA=$(echo $IOB_DATA|tr -d " ")
                           IOB_DATA=${IOB_DATA}\&${DP_ZEITSTEMPEL}=${MESSWERTE[18]}
                        
                        
                          #Daten an den ioB schicken
                           if [ $debug == "true" ]; then 
                           curl --data "$IOB_DATA&prettyPrint" http://${IPP}/setBulk
                             else
                           curl --data "$IOB_DATA" http://${IPP}/setBulk >/dev/null 2>&1
                           fi
                        }
                        
                        
                        
                        ### Daten holen und Integritätscheck
                        function get_DATA(){
                         #auf Daten der Wetterstation warten
                          DATA=$(timeout 10 nc -lv -p ${WS_PORT}|sed '3 p')
                          STRLEN=$(echo -n $DATA | wc -m)
                        
                         #check auf Datenintigrität
                          if [ "$STRLEN" -gt "400" ] && [[ "$DATA" =~ "/weatherstation/updateweatherstation.php?ID=${WS_ID}" ]] ; then return 0; else return 1; fi
                        }
                        
                        
                        
                        ### Datenkonvertierungen
                        convertFtoC() { 
                           MESSWERTE[$i]=`echo "scale=2;(${MESSWERTE[$i]}-32)*5/9" | bc -l`
                        }
                        
                        convertMPHtoKMH() {
                           MESSWERTE[$i]=`echo "scale=2;(${MESSWERTE[$i]}*16094/10000)" | bc -l`
                        }
                        
                        convertLuftdruck() {
                           MESSWERTE[$i]=`echo "scale=2;${MESSWERTE[$i]}*33864/1000" | bc -l`
                        }
                        
                        convertInchtoMM() { 
                           MESSWERTE[$i]=`echo "scale=1;${MESSWERTE[$i]}*254/10" | bc -l`
                        }
                        
                        convertTime() {
                           	MESSWERTE[$i]=$(echo ${MESSWERTE[$i]}|sed -e 's/%20/ /')
                           	MESSWERTE[$i]=$(date --date="${MESSWERTE[$i]} UTC" +'%d.%m.%Y %H:%M:%S')
                           #MESSWERTE[$i]=$(echo ${MESSWERTE[$i]}|awk -F'-|%20' '{printf "%02s.%02s.%s %s", $3, $2, $1, $4}')
                        }
                        
                        
                        
                        ###Befehlszeilenparameter
                        usage() {
                           echo "usage: wetterstation [[--debug] | [-v] | [-h]"
                           echo " --debug    einmaliger Testdurchlauf mit Ausgabe"
                           echo " -v         Ausgabe der Versionsnummer"
                           echo " -h         dieses Hilfemenue"
                        }
                        
                        version() {
                           echo -e "$BL ${SH_VER} - (c) 2019-2020 SBorg"
                        }
                        
                        ###EoF
                        

                        Wetterstation .sh

                        #!/bin/bash
                        
                        # V0.1.2 - 24.01.2020 (c) 2019-2020 SBorg
                        #    Froggit WH4000SE
                        # wertet ein Datenpaket einer WLAN-Wetterstation im Wunderground-Format aus, konvertiert diese und überträgt
                        # die Daten an den ioBroker
                        #
                        # benötigt den 'Simple RESTful API'-Adapter im ioBroker und 'bc' unter Linux
                        #
                        # V0.1.2 / 24.01.2020 - + Prüfung auf Datenintegrität
                        #                       + neuer Datenpunkt bei Kommunikationsfehler
                        #                       + Ausgabe Datenpaket der Wetterstation bei Debug
                        # V0.1.1 / 01.01.2020 - + UTC-Korrektur
                        #			+ Config-Versionscheck
                        #			+ Shell-Parameter -v/-h/--debug
                        # V0.1.0 / 29.12.2019 - erstes Release
                        
                        
                        SH_VER="V0.1.2"
                        CONF_V="V0.1.2"
                        
                        
                        #Installationsverzeichnis feststellen
                         DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
                        
                        #Config-Version prüfen
                         VER_CONFIG=$(cat ${DIR}/wetterstation.conf|grep '### Setting'|cut -d" " -f3)
                         if [ $CONF_V != $VER_CONFIG ]; then
                           echo -e "wetterstation: \e[31mERROR #000 - Config-Version mismatch!\n"
                           echo -e "benutzt: $VER_CONFIG\t benötigt wird: $CONF_V$WE"
                           exit 1
                         fi
                        
                        #Konfiguration lesen
                         . ${DIR}/wetterstation.conf
                        
                        #gibt es Parameter?
                         while [ "$1" != "" ]; do
                           case $1 in
                           --debug	)		debug=true   #override
                           			;;
                           -v | --version )	version
                           			exit
                           			;;
                               -h | --help )		usage
                           			exit
                                                       ;;
                               * )			usage
                                                       exit 1
                           esac
                           shift
                         done
                        
                        
                        declare -a MESSWERTE
                        declare -a MESSWERTERAW
                        
                        #Check ob Pollintervall grösser 30 Sekunden
                         if [ ${WS_POLL} -lt "30" ]; then WS_POLL=30; fi
                        
                        #Fehlermeldungen resetten
                         curl http://${IPP}/set/${DP_KOMFEHLER}?value=false >/dev/null 2>&1
                        
                        
                        #Endlosschleife
                        while true
                        do
                        
                         #Kommunikation herstellen und Daten empfangen
                          get_DATA
                        
                         #KOM-Fehler?
                         if [ "$?" -eq "0" ]; then
                        
                          #DATA zerlegen (Messwerte Block #3-#21)
                          ii=2
                          for ((i=0; i<19; i++))
                           do
                            let "ii++"
                            MESSWERTERAW[$i]=$(echo ${DATA}|cut -d'&' -f${ii} | cut -d"=" -f2)
                            MESSWERTE[$i]=${MESSWERTERAW[$i]}
                             if [ "$i" -ge "0" ] && [ "$i" -lt "4" ]; then convertFtoC; fi
                             if [ "$i" -eq "6" ] || [ "$i" -eq "7" ]; then convertMPHtoKMH; fi
                             if [ "$i" -eq "9" ] || [ "$i" -eq "10" ]; then convertLuftdruck; fi
                             if [ "$i" -ge "11" ] && [ "$i" -lt "16" ]; then convertInchtoMM; fi
                             if [ "$i" -eq "18" ]; then convertTime; fi
                           done
                        
                          #Daten an ioB schicken
                           iob_send
                        
                        
                         else
                          let "KOMFEHLER++"
                          if [ "$KOMFEHLER" -eq "5" ]; then curl http://${IPP}/set/${DP_KOMFEHLER}?value=true&prettyPrint&ack=true >/dev/null 2>&1;fi
                         fi
                        
                        
                         #Debug eingeschaltet?
                          if [ $debug == "true" ]; then debuging; fi
                        
                         #...und schlafen gehen
                          let "schlafe=WS_POLL-5"
                          sleep $schlafe
                        
                        done
                        
                        ###EoF
                        
                        
                        


                        wetterstation.js

                        ///Wetterstation Datenpunkte anlegen
                        let DP="javascript.0.Wetterstation."
                         createState(DP+"Innentemperatur"      ,"", {name: "Temperatur im Haus",          type: "number", role: "state", unit: "°C" });
                         createState(DP+"Aussentemperatur"     ,"", {name: "Temperatur Außen",            type: "number", role: "state", unit: "°C" });
                         createState(DP+"Taupunkt"             ,"", {name: "Taupunkt",                    type: "number", role: "state", unit: "°C" });
                         createState(DP+"Chillfaktor"          ,"", {name: "Chillfaktor",                 type: "number", role: "state", unit: "°C" });
                         createState(DP+"Innenfeuchtigkeit"    ,"", {name: "Luftfeuchtigkeit Innen",      type: "number", role: "state", unit: "%" });
                         createState(DP+"Aussenfeuchtigkeit"   ,"", {name: "Luftfeuchtigkeit Außen",      type: "number", role: "state", unit: "%" });
                         createState(DP+"Wind"                 ,"", {name: "Windgeschwindigkeit",         type: "number", role: "state", unit: "km/h" });
                         createState(DP+"Wind_max"             ,"", {name: "Windgeschwindigkeit maximal", type: "number", role: "state", unit: "km/h" });
                         createState(DP+"Windrichtung"         ,"", {name: "Windrichtung",                type: "number", role: "state", unit: "°" });
                         createState(DP+"Druck_absolut"        ,"", {name: "Luftdruck absolut",           type: "number", role: "state", unit: "hPa" });
                         createState(DP+"Druck_relativ"        ,"", {name: "Luftdruck relativ",           type: "number", role: "state", unit: "hPa" });
                         createState(DP+"Regen_aktuell"        ,"", {name: "aktuelle Regenmenge",         type: "number", role: "state", unit: "mm" });
                         createState(DP+"Regen_Tag"            ,"", {name: "Regenmenge Heute",            type: "number", role: "state", unit: "mm" });
                         createState(DP+"Regen_Woche"          ,"", {name: "Regenmenge Woche",            type: "number", role: "state", unit: "mm" });
                         createState(DP+"Regen_Monat"          ,"", {name: "Regenmenge Monat",            type: "number", role: "state", unit: "mm" });
                         createState(DP+"Regen_Jahr"          ,"", {name: "Regenmenge Jahr",            type: "number", role: "state", unit: "mm" });
                         createState(DP+"Sonnenstrahlung"      ,"", {name: "Sonnenstrahlung",             type: "number", role: "state", unit: "W/m²" });
                         createState(DP+"UV_Index"             ,"", {name: "UV Index",                    type: "number", role: "state" });
                         createState(DP+"Zeitstempel"          ,"", {name: "von wann ist die Messung",    type: "string", role: "state" });
                         createState(DP+"_Kommunikationsfehler","", {name: "liegt ein Problem vor",       type: "boolean",role: "state" });
                        
                        

                        Ausgabe mit nc -lv -p 9999

                        root@raspberrypi:/home/pi# sudo nc -lv -p 9999
                        Listening on [0.0.0.0] (family 0, port 9999)
                        Connection from 192.168.178.42 14965 received!
                        GET /weatherstation/updateweatherstation.php?ID=xxxxxxx&PASSWORD=xxxxxxxxx&indoortempf=59.4&tempf=72.5&dewptf=55.9&windchillf=72.5&indoorhumidity=66&humidity=56&windspeedmph=0.0&windgustmph=0.0&winddir=307&absbaromin=29.534&baromin=29.534&rainin=0.000&dailyrainin=0.012&weeklyrainin=0.012&monthlyrainin=0.012&yearlyrainin=0.012&solarradiation=0.00&UV=0&dateutc=2020-01-30%2022:08:28&softwaretype=EasyWeatherV1.4.4&action=updateraw&realtime=1&rtfreq=5 HTTP/1.0
                        Host: 192.168.178.41
                        Accept:*/*
                        Connection: Close
                        
                        

                        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

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

                          @Glasfaser Supi, danke dir für den String :)
                          Die Änderungen für die 4000er hatte ich schon in die V0.1.3 eingecheckt (kamen von @unltdnetworx per Pull Request) nur fehlte mir der String, um es dann für alle Stationen zu implementieren.
                          Dir ist aber noch ein kleiner Fehler unterlaufen, denn deine Jahresregenmenge ist kleiner als die Monatsregenmenge. Du rechnest die Inch nicht in mm um. Ändere noch in der wetterstation.sh Zeile #85 :

                          if [ "$i" -ge "11" ] && [ "$i" -lt "16" ]; then convertInchtoMM; fi
                          

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

                          GlasfaserG unltdnetworxU 2 Antworten Letzte Antwort
                          1
                          • SBorgS SBorg

                            @Glasfaser Supi, danke dir für den String :)
                            Die Änderungen für die 4000er hatte ich schon in die V0.1.3 eingecheckt (kamen von @unltdnetworx per Pull Request) nur fehlte mir der String, um es dann für alle Stationen zu implementieren.
                            Dir ist aber noch ein kleiner Fehler unterlaufen, denn deine Jahresregenmenge ist kleiner als die Monatsregenmenge. Du rechnest die Inch nicht in mm um. Ändere noch in der wetterstation.sh Zeile #85 :

                            if [ "$i" -ge "11" ] && [ "$i" -lt "16" ]; then convertInchtoMM; fi
                            
                            GlasfaserG Offline
                            GlasfaserG Offline
                            Glasfaser
                            schrieb am zuletzt editiert von
                            #117

                            @SBorg

                            Jipp …. habe ich vergessen auf "16" zu ändern ;)
                            Wurde oben korrigiert .

                            Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

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

                              Dank der Vorarbeit und des testens von @unltdnetworx und @Glasfaser steht die V0.1.3 zum testen bereit :)
                              Neuerungen zur V0.1.2 ist lediglich die Unterstützung für Wetterstationen mit Jahresgesamtregenmenge.
                              Extra dafür konfiguriert muss nichts werden, dies wird automatisch erkannt. Allerdings bleibt der neue Datenpunkt "Regen_Jahr" bei 0 stehen wenn es die Station nicht unterstützt, wen wundert das aber... ;)
                              Dafür könnte man aber ein Blockly hernehmen, welches am Monats ersten um 0:00 Uhr (oder wann die Monatsregenmenge noch verfügbar ist) den Wert aufaddiert und in den Datenpunkt schreibt.

                              Update:

                              • .sh und .conf ersetzen, wetterstation.conf entsprechend konfigurieren
                              • Javascript ersetzen und einmalig ausführen (neuer Datenpunkt "Regen_Jahr")

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

                              1 Antwort Letzte Antwort
                              1
                              • SBorgS SBorg

                                @Glasfaser Supi, danke dir für den String :)
                                Die Änderungen für die 4000er hatte ich schon in die V0.1.3 eingecheckt (kamen von @unltdnetworx per Pull Request) nur fehlte mir der String, um es dann für alle Stationen zu implementieren.
                                Dir ist aber noch ein kleiner Fehler unterlaufen, denn deine Jahresregenmenge ist kleiner als die Monatsregenmenge. Du rechnest die Inch nicht in mm um. Ändere noch in der wetterstation.sh Zeile #85 :

                                if [ "$i" -ge "11" ] && [ "$i" -lt "16" ]; then convertInchtoMM; fi
                                
                                unltdnetworxU Offline
                                unltdnetworxU Offline
                                unltdnetworx
                                Developer
                                schrieb am zuletzt editiert von
                                #119

                                @SBorg
                                Witzigerweise läuft es bei mir. Hab das wirklich nur für den Request vergessen

                                Gruß, Michael
                                Weitere Infos im Profil.
                                Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                                SBorgS 1 Antwort Letzte Antwort
                                0
                                • unltdnetworxU unltdnetworx

                                  @SBorg
                                  Witzigerweise läuft es bei mir. Hab das wirklich nur für den Request vergessen

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

                                  @unltdnetworx :) Mal sehen ob es auch reibungslos auf den anderen Stationen läuft. Ich habe diverse Szenarien durchgespielt, bis mir eine simple Zweizeilerlösung für alle eingefallen ist. Die Stationen gar nicht großartig unterscheiden, sondern immer von der "größten" ausgehen. Ist der "yearlyrainin" nicht vorhanden, einfach in den Datenstring mit Wert "0" einpatchen :grin:

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

                                  R 1 Antwort Letzte Antwort
                                  0
                                  • SBorgS SBorg

                                    @unltdnetworx :) Mal sehen ob es auch reibungslos auf den anderen Stationen läuft. Ich habe diverse Szenarien durchgespielt, bis mir eine simple Zweizeilerlösung für alle eingefallen ist. Die Stationen gar nicht großartig unterscheiden, sondern immer von der "größten" ausgehen. Ist der "yearlyrainin" nicht vorhanden, einfach in den Datenstring mit Wert "0" einpatchen :grin:

                                    R Offline
                                    R Offline
                                    Rushmed
                                    Most Active
                                    schrieb am zuletzt editiert von Rushmed
                                    #121

                                    Also bei meiner W830 kommt über "yearlyrainin" nichts im ioBroker an obwohl die Station selbst eine Gesamtregenmenge anzeigen kann.
                                    Was sagt denn @CiroCool dazu?

                                    "Kommunikationsfehler" scheint zu funktionieren.

                                    R GlasfaserG SBorgS 3 Antworten Letzte Antwort
                                    0
                                    • R Rushmed

                                      Also bei meiner W830 kommt über "yearlyrainin" nichts im ioBroker an obwohl die Station selbst eine Gesamtregenmenge anzeigen kann.
                                      Was sagt denn @CiroCool dazu?

                                      "Kommunikationsfehler" scheint zu funktionieren.

                                      R Offline
                                      R Offline
                                      Rushmed
                                      Most Active
                                      schrieb am zuletzt editiert von Rushmed
                                      #122

                                      gelöscht

                                      1 Antwort Letzte Antwort
                                      0
                                      • R Rushmed

                                        Also bei meiner W830 kommt über "yearlyrainin" nichts im ioBroker an obwohl die Station selbst eine Gesamtregenmenge anzeigen kann.
                                        Was sagt denn @CiroCool dazu?

                                        "Kommunikationsfehler" scheint zu funktionieren.

                                        GlasfaserG Offline
                                        GlasfaserG Offline
                                        Glasfaser
                                        schrieb am zuletzt editiert von
                                        #123

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

                                        Also bei meiner W830 kommt über "yearlyrainin" nichts im ioBroker an obwohl die Station selbst eine Gesamtregenmenge anzeigen kann.

                                        Stelle SBorg dein String zur Verfügung !

                                        Ausgabe mit 
                                        nc -lv -p 9999  ( 9999 dein Port )
                                        

                                        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                        1 Antwort Letzte Antwort
                                        0
                                        • R Rushmed

                                          Also bei meiner W830 kommt über "yearlyrainin" nichts im ioBroker an obwohl die Station selbst eine Gesamtregenmenge anzeigen kann.
                                          Was sagt denn @CiroCool dazu?

                                          "Kommunikationsfehler" scheint zu funktionieren.

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

                                          @Rushmed

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

                                          Stelle SBorg dein String zur Verfügung !

                                          Jepp :)
                                          Wahrscheinlich sendet die Station aber kein "yearlyrainin" und das Display addiert einfach die Monatswerte auf.
                                          Dabei kam mir gleich die Idee noch einen Shell-Parameter zu ergänzen. "--data" wird zukünftig das "Rohdatenpaket" so ausgeben wie es die Station sendet. Mit "--debug" wird das ggf. gepatchte Paket ausgegeben, enthält also immer auch yearlyrainin= ob es die Wetterstation sendet oder nicht ;)

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

                                          "Kommunikationsfehler" scheint zu funktionieren.

                                          Weißt du zufällig durch was ausgelöst? Kommt das zu oft/zu schnell?
                                          @ALL Sollte der Zähler ev. wieder runter zählen wenn ein Datenpaket iO war? Aktuell wird bei 5 aufaddierten Fehlern Alarm ausgelöst, egal über welchen Zeitraum diese auftraten.

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

                                          R 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

                                          550

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