Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Linux Shell-Skript] WLAN-Wetterstation

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • SBorg
      SBorg Forum Testing Most Active last edited by

      Neue Version des JavaScriptes Wetterstation-Statistik auf GitHub V1.0.1

      • ~Bugfixing "error: TypeError: Cannot read property '0' of null"
      • ~Wechsel zu axios

      Wie immer zu finden im GitHub


      Der Wechsel zu axios ist lediglich ein "unter der Haube". Der Support der benötigten "request"-Routine wird bzw. ist seitens NPM eingestellt.

      1 Reply Last reply Reply Quote 1
      • Boronsbruder
        Boronsbruder last edited by

        Ich habe in letzter Zeit immer mal wieder das Problem, dass ich folgenden Eintragungen im Log des Wetterstation.service bekomme:

        Dec 25 11:57:45 ZEROSERVER wetterstation.sh[26522]: Connection to 192.168.116.249 8087 port [tcp/*] succeeded!
        Dec 26 00:41:49 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 26 00:42:08 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 26 00:42:27 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 26 00:42:46 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        
        Dec 18 13:05:06 ZEROSERVER wetterstation.sh[14524]: Connection to 192.168.116.249 8087 port [tcp/*] succeeded!
        Dec 18 14:14:53 ZEROSERVER wetterstation.sh[14524]: (standard_in) 1: syntax error
        Dec 18 14:15:11 ZEROSERVER wetterstation.sh[14524]: (standard_in) 1: syntax error
        Dec 19 03:03:46 ZEROSERVER wetterstation.sh[14524]: (standard_in) 1: syntax error
        

        Zu verschiedenen Zeitpunkten

        Irgendwann aber nicht gleichzeit treten dann im Iobroker-Log

        2021-12-27 08:38:05.097 - info: simple-api.0 (15129) State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Tag" has to be type "number" but received type "string"
        2021-12-27 08:38:05.099 - info: simple-api.0 (15129) State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Woche" has to be type "number" but received type "string"
        2021-12-27 08:38:05.141 - info: simple-api.0 (15129) State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Monat" has to be type "number" but received type "string"
        2021-12-27 08:38:05.141 - info: simple-api.0 (15129) State value to set for "0_userdata.0.Wetterstation.Info.Solarenergie_Jahr" has to be type "number" but received type "string" 
        

        auf

        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        Dec 27 08:38:05 ZEROSERVER wetterstation.sh[26522]: (standard_in) 1: syntax error
        

        die syntax error setzen sich dann fort bis zum Service-Restart...

        Wo kann ich da suchen bzw. wie?

        Boronsbruder 1 Reply Last reply Reply Quote 0
        • Boronsbruder
          Boronsbruder @Boronsbruder last edited by Boronsbruder

          Ich glaube ich habe eine Spur...
          Mir ist aufgefallen, dass gerade auf der WSView-App keine Daten mehr vom Sensor kamen.
          Das Fehlen der Daten scheint die syntax-Error auszulösen...

          Hab jetzt mal das in der .conf das logging aktiviert.

          Dabei trat bei mir mal wieder ein Fehler auf...

          /home/wetter/wetterstation.sub: Zeile 1141: 20211227_station.log: Keine Berechtigung
          

          Erst als ich die Zeile 1141 in der .sub mit "/home/wetter" erweitert habe, durfte er schreiben. Wo wollte er zuvor hin schreiben?

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

            @boronsbruder Anscheinend bekommt er da keine Daten vom "Sonnensensor", deswegen die Meldungen im Log. Darauf deutet dann auch

            "0_userdata.0.Wetterstation.Info.Solarenergie_Tag" has to be type "number" but received type "string"
            usw.
            

            Der Wert ist eigentlich eine Zahl, er bekommt aber wg. der vermutlich fehlgeschlagenen Rechnung (weil er keine Daten zum rechnen hatte) nun einen String ("rechne mit nix" = NULL [also kein Wert; dies wird dann als String interpretiert]) zurück.

            Trotzdem merkwürdig, denn eigentlich sollte der ganze Solarenergie-Part (der wird ja nur kpl. berechnet und basiert auf keinem Wert den die Station so liefert) nur ausgeführt werden wenn auch ein Wert vorliegt:

             if [ "$SONNEN_STRAHLUNG" -gt "0" ]...
            

            Ev. liefert das Log was schlüssigeres. Aktuell fehlt mir da leider der Ansatzpunkt...


            Das Log wird (oder sollte) im aktuellen Verzeichnis angelegt (werden). Wenn er aber als Service gestartet wird (IMO waren meine Tests nur per Shell-Aufruf?) will er sie wohl im "systemd"-Verzeichnis anlegen, was ohne root-Rechte nicht erlaubt ist. Fix kommt dann in die V2.11.0 mit rein:

            
            logging() {
                  local DATUM=$(date '+%Y%m%d')
                  echo -e "\n${DATA}" >> "${DIR}/${DATUM}_station.log"
            }
            
            

            Damit landet es auch wirklich im Installationsverzeichnis 😉

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

              @sborg mannmann, wieder typisch... nachdem vor einigen tagen der strom für 5 std abgedreht war, hatte ich probleme mit der station beim wieder einbinden. hat schon gut angefangen, weil sich das kabelmodem nicht mehr mit dem provider verbunden hat. nach einer stunde dann anruf beim provider, der das modem neu gestartet, auf einmal gings...
              so bin ich jetzt nach und nach am fehler suchen und zu reparieren.
              dann in ws_view nachgeschaut, bei wunderground keine werte! ich schau auf der webpage, meine station ist offline.
              das ganze mit aktuellem stand komplett neu gemacht, alles eingetragen, keine änderung.
              gestern sogar versucht eine neue station bei WU zu machen, genauso offline.
              jetzt seh ich den beitrag, will nachfragen, schau nochmal in ws-view, daten! wunderground.com, die station ist online!
              manchmal ist es echt zum aus der haut fahren...
              so, genug gekotzt, danke fürs lesen... 😄

              1 Reply Last reply Reply Quote 0
              • A
                Andre105 last edited by

                Hallo zusammen,

                Ich hänge mich hier mal rein.
                Habe auch eine Eurochron EFWS2900 mir gekauft.
                Habe sie eingerichtet und die Daten werden schon bei Ecowitt.net angezeigt.
                Leider Kommen die Daten bei Weather Underground nicht an.
                Dort ist die Station immer offline.
                Was muss ich da noch einstellen?

                SBorg 1 Reply Last reply Reply Quote 0
                • Boronsbruder
                  Boronsbruder last edited by Boronsbruder

                  @sborg
                  Also, das Problem entsteht z.B. wenn aus unerklärlichen Gründen (sprich ohne Änderungen an der Funkstrecke) der Sensor keine Daten mehr sendet...

                  dann kommen vom Gateway nur noch

                  PASSKEY=*****&stationtype=GW1000A_V1.6.8&dateutc=2021-12-28+06:09:35&tempinf=80.2&humidityin=29&baromrelin=29.574&baromabsin=27.929&freq=868M&model=GW1000_Pro
                  

                  Das löst den Syntaxerror aus (denke ich)

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

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

                    Was muss ich da noch einstellen?

                    Nur die korrekte Station-ID und -Key. Diese sollte keine Sonderzeichen, Umlaute und Leerzeichen enthalten (sollte so schon seitens WU so sein).
                    Aber @da_Woody hatte ein Post über deinem temporär das gleiche Problem. Ev. hat WU auch aktuell Probleme.

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

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

                      Das löst den Syntaxerror aus (denke ich)

                      Jupp, kein Wert der Sonnenstrahlung. Damit kann man arbeiten. Wir erweitern einfach die Definition (es muss auch eine Außentemperatur geben) wann ein Datenpaket valide ist. Damit führt er dann keine Berechnung aus (setzt aber den Komfehlerzähler hoch, deswegen wäre hier dann der Reset per conf empfehlenswert. "Dauerfehler" lösen ihn dann trotzdem permanent aus).

                      In der sub so um Zeile #265 von

                      if [ "$STRLEN" -gt "150" ] && [[ "$DATA" =~ "PASSKEY=" ]]; then return 0; else return 1; fi
                      

                      in

                      if [ "$STRLEN" -gt "150" ] && [[ "$DATA" =~ "PASSKEY=" ]] && [[ "$DATA" =~ "tempf=" ]]; then return 0; else return 1; fi
                      
                      Boronsbruder 1 Reply Last reply Reply Quote 0
                      • da_Woody
                        da_Woody @SBorg last edited by

                        @sborg wieso meine station auf einmal wieder online ist? k.A.
                        in deinem script hatte ich anscheinend wiedermal sauhaufen drinnen, bei irgendeinem update was falsch gemacht.
                        beim neu machen noch ein kleine blindheitsproblem:

                         #InfluxDB-Konfiguration / ohne InfluxDB alles leer lassen
                          #IP und Port der API [192.168.0.252:8086]
                           INFLUX_API=192.168.0.252:8086
                        

                        die adresse nicht bei INFLUX_API eingetragen, sondern oberhalb. 🙄

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

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

                          die adresse nicht bei INFLUX_API eingetragen, sondern oberhalb.

                          Entschuldige 😊 😀 😂
                          ...der ist aber mal richtig gut...

                          Aber mit WU habe ich nix am Hut. Das macht die Station von alleine wenn man per WS View dort seine Daten einträgt. Ich mache "nur" OpenSenseMap, Windy und wetter.com 😉

                          da_Woody 1 Reply Last reply Reply Quote 1
                          • da_Woody
                            da_Woody @SBorg last edited by

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

                            ...der ist aber mal richtig gut...

                            i know, i know... banane2.gif
                            grafana tut eigentlich auch wieder was soll. allerdings:
                            0_userdata.0.WoodyWetter.Druck_Tendenz das steht im objekt -1 und in grafana
                            4e98d7f8-ddea-49bc-8d2c-420625c41184-grafik.png
                            raw sieht so aus:

                            {
                              "common": {
                                "name": "Luftdrucktendenz",
                                "type": "number",
                                "role": "state",
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "String",
                                    "aliasId": "",
                                    "changesOnly": true,
                                    "debounce": "1000",
                                    "changesRelogInterval": 3600,
                                    "changesMinDelta": "0"
                                  }
                                }
                              },
                              "native": {
                                "name": "Luftdrucktendenz",
                                "type": "number",
                                "role": "state"
                              },
                              "type": "state",
                              "_id": "0_userdata.0.WoodyWetter.Druck_Tendenz",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.influxdb.0",
                              "user": "system.user.admin",
                              "ts": 1640440814575
                            }
                            

                            stimmt da was nicht?

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

                              @da_woody Nö, das ist Ok. Die Tendenz kann +/- 9 sein (idR. allerdings nur -3 bis +3)
                              Du brauchst aber in Grafana das "farski-blendstat-panel" dafür und ein passendes "value range mapping":
                              Bild 1.png
                              Hier mal das JSON mit obigem Doppelpfeil:


                              {
                              "id": 42,
                              "gridPos": {
                              "h": 1,
                              "w": 5,
                              "x": 4,
                              "y": 10
                              },
                              "type": "farski-blendstat-panel",
                              "datasource": {
                              "type": "influxdb",
                              "uid": "000000001"
                              },
                              "pluginVersion": "8.0.1",
                              "maxDataPoints": 100,
                              "links": [],
                              "blendName": "total",
                              "colors": [
                              "#299c46",
                              "rgba(237, 129, 40, 0.89)",
                              "#d44a3a"
                              ],
                              "format": "none",
                              "gauge": {
                              "maxValue": 100,
                              "minValue": 0,
                              "show": false,
                              "thresholdLabels": false,
                              "thresholdMarkers": true
                              },
                              "mappingType": 2,
                              "mappingTypes": [
                              {
                              "$$hashKey": "object:730",
                              "name": "value to text",
                              "value": 1
                              },
                              {
                              "$$hashKey": "object:731",
                              "name": "range to text",
                              "value": 2
                              }
                              ],
                              "nullPointMode": "connected",
                              "postfixFontSize": "50%",
                              "prefix": "Luftdrucktendenz: ",
                              "prefixFontSize": "50%",
                              "rangeMaps": [
                              {
                              "$$hashKey": "object:738",
                              "from": "null",
                              "text": "N/A",
                              "to": "null"
                              },
                              {
                              "$$hashKey": "object:740",
                              "from": "0",
                              "text": "⇐",
                              "to": "0"
                              },
                              {
                              "$$hashKey": "object:742",
                              "from": "0.1",
                              "text": "⇖",
                              "to": "1"
                              },
                              {
                              "$$hashKey": "object:744",
                              "from": "1.1",
                              "text": "⇑",
                              "to": "9"
                              },
                              {
                              "$$hashKey": "object:774",
                              "from": "-1",
                              "text": "⇙",
                              "to": "-0.1"
                              },
                              {
                              "$$hashKey": "object:776",
                              "from": "-9",
                              "text": "⇓",
                              "to": "-1.1"
                              }
                              ],
                              "sparkline": {
                              "fillColor": "rgba(31, 118, 189, 0.18)",
                              "full": false,
                              "lineColor": "rgb(31, 120, 193)",
                              "show": false
                              },
                              "targets": [
                              {
                              "alias": "Luftdrucktendenz",
                              "groupBy": [
                              {
                              "params": [
                              "$__interval"
                              ],
                              "type": "time"
                              },
                              {
                              "params": [
                              "null"
                              ],
                              "type": "fill"
                              }
                              ],
                              "measurement": "javascript.0.Wetterstation.Druck_Tendenz",
                              "orderByTime": "ASC",
                              "policy": "default",
                              "refId": "A",
                              "resultFormat": "time_series",
                              "select": [
                              [
                              {
                              "params": [
                              "value"
                              ],
                              "type": "field"
                              },
                              {
                              "params": [],
                              "type": "last"
                              }
                              ]
                              ],
                              "tags": []
                              }
                              ],
                              "transparent": true,
                              "valueFontSize": "70%",
                              "valueMaps": [
                              {
                              "$$hashKey": "object:733",
                              "op": "=",
                              "text": "N/A",
                              "value": "null"
                              },
                              {
                              "$$hashKey": "object:735",
                              "op": "=",
                              "text": "=",
                              "value": "0"
                              }
                              ],
                              "valueName": "current",
                              "colorBackground": false,
                              "colorValue": false,
                              "postfix": "",
                              "tableColumn": "",
                              "thresholds": "",
                              "interval": null,
                              "cacheTimeout": null,
                              "nullText": null
                              }

                              Bild 2.png

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

                                @sborg alter falter...
                                langsam hauts mir echt den vogel raus. friede.gif
                                ich schau nach, blendstat ist installiert, zurück aufs dash,
                                fc1d9b98-1835-4fbf-89a6-5e5fdec0d0d6-grafik.png
                                es lebt... Cheerlie.gif

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

                                  @sborg said in [Linux Shell-Skript] WLAN-Wetterstation:

                                  deswegen wäre hier dann der Reset per conf empfehlenswert.

                                  Was meinste damit?

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

                                    @boronsbruder In der kommenden 11er: https://github.com/SBorg2014/WLAN-Wetterstation/wiki/FAQ---Troubleshooting/#was-ist-der-datenpunkt-_kommunikationsfehler-

                                    Mit obiger Änderung wird dann jedes Fehlerpaket von dir zu keinem validen Datenpaket. Dann wäre bei dir "Kommunikationsfehler" true Dauerzustand.
                                    Ich habe mal bei mir geschaut, da waren es im Dezember bisher einmalig 4 Pakete direkt hintereinander.
                                    Anscheinend funkt bei dir einer/etwas auf den 868MHz was so (eigentlich) nicht sein darf.

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

                                      @sborg
                                      jetzt im Moment ist wieder alles i.O.
                                      Keine Aussetzer...
                                      Ich versteh es nicht...
                                      Wahrscheinlich gab's bei den Nachbarn China-Spielzeug zu Weihnachten 😄

                                      Das wäre aber zu verkraften, dann kann ich wenigstens was dagegen machen, bevor die Logs überlaufen 😉

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        Andre105 last edited by

                                        Hallo Leute,
                                        ich sehe ihr versteht die Sache schon ganz gut.
                                        Bin erst Neuling in Sachen ioBroker.
                                        Habe ja jetzt auch die Wetterstation am laufen.(eurochron EFWS 2900)
                                        Würde die Daten auch gerne in den ioBroker bekommen.Später visualisieren.
                                        Wie fange ich da an?
                                        Habe schon einiges hier gelesen,aber für mich als Anfänger doch schon etwas schwierig.
                                        Soll ich ein neues Thema aufmachen? oder stört es euch hier nicht?

                                        Latzi 1 Reply Last reply Reply Quote 0
                                        • Latzi
                                          Latzi @Andre105 last edited by

                                          @andre105
                                          Das Wiki dazu ist sehr hilfreich https://github.com/SBorg2014/WLAN-Wetterstation/wiki, damit würde ich starten. Fragen passen hier schon rein 😉

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            Andre105 @Latzi last edited by

                                            @latzi Ok , ich lese mir das mal durch 🙂

                                            da_Woody 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            806
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            144
                                            5514
                                            3316121
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo