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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Linux Shell-Skript] WLAN-Wetterstation

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      Rand @Boronsbruder last edited by Rand

      @boronsbruder Danke.

      2x access denied heute mittag, aber seitdem nichts - nehme an das waren Versuche von mir. Hab den wetterstation service neu gestartet um einen etwaigen "habe aufgegeben" Status zu resetten - nichts...

      dafür habe ich aber nochmal nach der Doku geschaut und auch eine test option gefunden... aber das ergebnis sagt mir jetzt leider nicht so richtig was:

      INFLUX_WEB=HTTP
         INFLUX_API=127.0.0.1:8086
         INFLUX_BUCKET=wetterstation
         INFLUX_TOKEN=<token>
         INFLUX_ORG=<org>
      
      ~/wetterstation$ ./wetterstation.sh --influx_test
      Testing InfluxDB... min/max Aussentemperatur 24h: °C °C
      

      Vieleicht habe ich auch ein falsches Verständnis - schreibt das shell skript nach Influx oder ist das der Influx Logger im IOBroker?

      Hab natürlich dummerweise auch die Variablen umgebogen weil ich 2 Basis Stationen habe und nicht beide 0_userdata.0.Wetterstation.Aussentemperatur nutzen können...
      Das ist mir schon bewusst geworden, wollte dann einfach das Statistik js anpassen um die anderen DP zu nehme, aber dann bin ich über den leeren Bucket gestolpert

      Wenn das shell skript in den konfigurierten Bucket schreibt, dann müssten ja zu mindestens die Werte dort stehen (mit dem Standard Namen)- das Statistik Script würde sie nicht finden aber es wäre nicht leer.

      Das impliziert, dass das Logging nach Influx über IOBroker läuft... und da logge ich gar nichts in die zweite Influx Instanz, sondern alles in meine alte Influx1 (weil da Grafana drauf zugreift). Das würde dann wohl erklären warum alles leer ist.

      Das sollte aber dann ja kein Problem sein ein zusätzliches Logging in die 2. Influx instanz zu machen... muss ich nur mal rausfinden wie man den bucket anspricht oder ob das der dbname ist den ich dann gerade auf iobroker habe.
      Muss ich die Tage mal weiterschauen, aber klingt jetzt erstmal logisch, danke.

      Edit - ah ich sehe, Bucket=DB, das ich brauche also 3 Log Adapter, einmal Influx v1 (alt), je einmal v2 pro Wetterstation.
      Dann kann ich auch die default Namen nehmen, muss aber dann die v1 Influx Daten in die neue db übernehmen und dabei umnennen.

      Fragt sich dann nur wie ich das Statistik Skript für ältere Zeiträume laufen lassen kann (wenn es das nicht automatisch macht...)

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

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

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

        Heute habe ich wieder komische Fehlermeldungen im Log.

        Heute 01:03 	error 	javascript.0 	at processTicksAndRejections (node:internal/process/task_queues:95:5)
        Heute 01:03 	error 	javascript.0 	at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38
        Heute 01:03 	error 	javascript.0 	Statistik:639:27)
        Heute 01:03 	error 	javascript.0 	Error in callback: TypeError: Cannot read properties of null (reading '0')
        

        Das muß vom Statistik Script herkommen, vielleicht hast du mal zeit und schaust drüber. Danke

        An alle Statistik-Skript Nutzer:

        Auch hier erkennt er wohl wie er will. Der Datenpunkt-Inhalt [neue Version des Statistik-Skripts vorhanden?] ist ein String ("---" oder die GitHub-URL). Den Datenpunkt auf "gemischt" umstellen, dann ist Ruhe und die Fehlermeldung im Log ist weg:

        Bild 001.png

        Habe den DP auf "gemischt" umgestellt, Fehlermeldung kommt aber noch

        Screenshot 2025-05-19 011016.png

        1 Reply Last reply Reply Quote 1
        • B
          babl @SBorg last edited by

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

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

          Heute habe ich wieder komische Fehlermeldungen im Log.

          Heute 01:03 	error 	javascript.0 	at processTicksAndRejections (node:internal/process/task_queues:95:5)
          Heute 01:03 	error 	javascript.0 	at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38
          Heute 01:03 	error 	javascript.0 	Statistik:639:27)
          Heute 01:03 	error 	javascript.0 	Error in callback: TypeError: Cannot read properties of null (reading '0')
          

          Das muß vom Statistik Script herkommen, vielleicht hast du mal zeit und schaust drüber. Danke

          An alle Statistik-Skript Nutzer:

          Auch hier erkennt er wohl wie er will. Der Datenpunkt-Inhalt [neue Version des Statistik-Skripts vorhanden?] ist ein String ("---" oder die GitHub-URL). Den Datenpunkt auf "gemischt" umstellen, dann ist Ruhe und die Fehlermeldung im Log ist weg:

          Bild 001.png

          Habe auch den Datenpunkt auf gemischt umgestellt,

          Fehlermeldung kommt trotzdem noch.

          Heute 01:03 	error 	javascript.0 	[2 Einträge] at processTicksAndRejections (node:internal/process/task_queues:95:5)
          Heute 01:03 	error 	javascript.0 	[2 Einträge] at /opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1228:38
          Heute 01:03 	error 	javascript.0 	[2 Einträge] Statistik:639:27)
          Heute 01:03 	error 	javascript.0 	[2 Einträge] Error in callback: TypeError: Cannot read properties of null (reading '0')
          

          Gruß

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

            @rand
            Meines Wissens sagte @Sborg irgendwann "Mein Skript schreibt nichts in die InfluxDB"
            Du musst die Objekte selbst mitschreiben.

            Zitat aus der Installationsanleitung "Wetterstation-Statistik":

            Voraussetzung: laufendes WLAN-Wetterstation Shellscript, laufender Javascript- und InfluxDB-Adapter im ioBroker, aktiviertes logging per InfluxDB der drei benötigten Datenpunkte "Aussentemperatur", "Wind_max" und "Regen_Tag" (falls diese noch nicht für Grafana oä. schon geloggt werden)
            
            R SBorg 2 Replies Last reply Reply Quote 0
            • R
              Rand @Boronsbruder last edited by Rand

              @boronsbruder

              Ja, mein letzter Beitrag war mehr eine Dokumentation meines Denkprozesses bei dem ich zum gleichen Ergebnis gekommen bin;)

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

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

                Meines Wissens sagte @Sborg irgendwann "Mein Skript schreibt nichts in die InfluxDB"

                Mehr als einmal 😀
                Das macht der Influx-Adapter schon gut und komfortabel, da muss ich nicht nochmals das Rad erfinden.

                An alle Statistiker:

                V2.0.7 liegt auf GitHub

                Beseitigt den mitternächtlichen Fehler (DP kann auf "gemischt" bleiben oder wieder auf "Text" zurückgestellt werden).
                Der Grund war/ist eine Änderung auf GitHub. Da schlug einfach die Update-Prüfung fehl.
                Wie üblich bei Javascripten: Script stoppen, dann ersetzen und speichern, dann wieder starten. Man kann es zwar auch im laufenden Betrieb ersetzen/speichern und dann das Script nur restarten. Dann funktioniert es aber nicht, da die geänderte Funktion nicht ausgeführt (die wird nur beim Start [und nicht beim Restart] geladen) wird, sondern die alte aus dem Arbeitsspeicher.

                B R 2 Replies Last reply Reply Quote 2
                • B
                  babl @SBorg last edited by babl

                  @sborg 3.5.0 ist installiert, fehlerfrei bis jetzt

                  statistikscript v2.07 ebenfalls installiert, bisher fehlerfrei, alles andere ob die Fehler nun nach Mitternacht weg sind, schreibe ich dir die nächsten Tage.

                  Update: Fehler sind weg

                  P.S.

                  Danke für deine Arbeit.

                  Gruß

                  1 Reply Last reply Reply Quote 1
                  • R
                    Rand @SBorg last edited by

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

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

                    Meines Wissens sagte @Sborg irgendwann "Mein Skript schreibt nichts in die InfluxDB"

                    Mehr als einmal 😀
                    Das macht der Influx-Adapter schon gut und komfortabel, da muss ich nicht nochmals das Rad erfinden.

                    Lange nicht mitgelesen, lief ja;)

                    Noch eine (ggf schonmal beantwortete Frage) - wenn das Shell Skript ja keine direkte DB Verbindung hat, warum ist dann die Umstellung auf Influx2 relevant?
                    Das Interface zu Influx ist dann ja nur der Logging Adapter, der ja sowohl mit Influx 1 als auch 2 umgehen kann (neue Grafana Dashboards sind ein anderes Thema) ?

                    Und wenn ich schon doofe Fragen stelle - ich nehme an die neueren "Smart" Geräte von Ecowitt (in meinem Fall WittFlow WFC01) werden eher nicht integriert werden oder?
                    Die pushen ja keine Wetterdaten sondern müssten per API abgefragt oder gesteuert werden, das ist ja ne völlig andere Logik...

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

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

                      Noch eine (ggf schonmal beantwortete Frage) - wenn das Shell Skript ja keine direkte DB Verbindung hat, warum ist dann die Umstellung auf Influx2 relevant?

                      Nicht zwingend. Guggst du https://github.com/SBorg2014/WLAN-Wetterstation/wiki bei den Werten.
                      Wenn du die Werte mit Punkt "4" nicht willst/brauchst, benötigst du auch keine InfluxDB. ZB. der Wert "Höchsttemperatur der letzten 24h" liefert die Station/Gateway nicht. Um den aber zu bestimmen brauche ich die Messwerte der letzten 24h = eine Datenbank. InfluxDB werden die meisten schon wegen Grafana haben, also brauche ich keine eigene programmieren. Selbst wenn, würde die nix besser machen (...und jeder Entwickler ist wohl faul, zumindest ich 😊 , also warum nicht auf was fertiges zurückgreifen? ) 😉

                      Und wenn ich schon doofe Fragen stelle - ich nehme an die neueren "Smart" Geräte von Ecowitt (in meinem Fall WittFlow WFC01) werden eher nicht integriert werden oder?
                      Die pushen ja keine Wetterdaten sondern müssten per API abgefragt oder gesteuert werden, das ist ja ne völlig andere Logik...

                      Gübbet keine doofen Fragen 🙂
                      Da ich, anders als manch Youtuber (nein, das kritisiere ich nicht), nicht davon lebe, ist die benötigte Hardware mein "Privatvergnügen". Soll heißen, ich muss es kaufen und kann es dann gar nicht selbst gebrauchen. Für eine API-Abfrage, welche natürlich implementierbar wäre falls sie zugänglich ist, genügt mir anders als bei den Stationen kein Datenstring den ich nach meinen Wünschen auch manipulieren (also bspw. einen statischen Messwert einpatche, um ihn zu simulieren) kann, braucht es hier schon Hardware.
                      Ich hatte mal bei Ecowitt zwecks Support/Unterstützung angefragt und sogar eine Zusage bekommen. Leider kam nie etwas an und das Ganze verlief im Sande. Wer also will und Zeit hat kann gerne mal einen Vorab-Kontakt herstellen. Vielleicht wollen sie jetzt ja auch schon gar nicht mehr.

                      1 Reply Last reply Reply Quote 1
                      • T
                        tritor last edited by tritor

                        [erledigt]: DPs auf gemischt umgestellt.
                        Hab seit heute nach Update auf Ver 3.5 folgende Fehlermeldungen im log

                        
                        simple-api.0
                        2025-05-26 01:43:13.088	info	State value to set for "0_userdata.0.Wetterstation.Regen_Stunde" has to be type "number" but received type "string"
                        
                        simple-api.0
                        2025-05-26 01:43:13.086	info	State value to set for "0_userdata.0.Wetterstation.Sonnenstrahlung" has to be type "number" but received type "string"
                        
                        simple-api.0
                        2025-05-26 01:43:13.083	info	State value to set for "0_userdata.0.Wetterstation.Wind" has to be type "number" but received type "string"
                        
                        simple-api.0
                        2025-05-26 01:43:13.082	info	State value to set for "0_userdata.0.Wetterstation.Taupunkt" has to be type "number" but received type "string"
                        
                        simple-api.0
                        2025-05-26 01:43:13.081	info	State value to set for "0_userdata.0.Wetterstation.Innentemperatur" has to be type "number" but received type "string"
                        

                        Im wetterstation.js sind die DPs aber auch mit number definiert.
                        Wie bekomme ich das korrigiert?

                        Neuschwansteini 1 Reply Last reply Reply Quote 0
                        • Neuschwansteini
                          Neuschwansteini @tritor last edited by

                          @tritor

                          eigentlich ist alles richtig, aber... bei Werten mit Komma oder Punkt wertet der Simple-Api wohl das als String, daher musst du
                          entweder alle angemeckerten Datenpunkte manuell auf String aendern
                          oder
                          die Datenpunkte loeschen, und im Script anstatt Number String schreiben.

                          T 1 Reply Last reply Reply Quote 0
                          • T
                            tritor @Neuschwansteini last edited by

                            @neuschwansteini

                            und das Statistikskript funktioniert dann weiter wenn Daen als String kommen?

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

                              @tritor Ich habe es oben zwar gelesen, möchte aber trotzdem noch mal für ALLE darauf eingehen.

                              Die Datenpunkte die angemeckert werden bitte auf gemischt umstellen. "String", wie in der Fehlermeldung, mag zwar auch funktionieren, aber ich konnte den genauen Fehler nicht analysieren. Entweder ist die Datenmenge für den Simple-API zu groß oder es kommt zu einem Timing-Problem. Eigentlich ist ein Wert von 1.2 (also float) immer eine Zahl, selbst 1 (also integer) sollte als Zahl erkannt werden.
                              Leider wird es mal als Zahl erkannt, mal als Text. Deswegen auch auf "gemischt" stellen, sonst meckert er dann wieder genau anders herum

                              ...has to be type "string" but received type "number"

                              Naxhteil von "gemischt" gibt es keinen direkten. InfluxDB loggt es als Zahl, History ebenfalls, das Statisk-Script interessiert es ebenfalls nicht. Nur wenn man per Javascript den Datentyp ("typeOf") abfragt erhält man nun nicht mehr "Number".

                              Ich muss mal schauen ob das mit der Rest-API besser funktioniert. Aber ihr ahnt es sicherlich schon, die Liebe Zeit... 🙃

                              1 Reply Last reply Reply Quote 1
                              • M
                                MartyBr @SBorg last edited by

                                @sborg
                                Ich habe gestern die Ecowitt WG3000A erfolgreich eingebunden. Damit wird die Liste der kompatiblen Geräte wieder größer 😀
                                👍

                                Negalein SBorg 2 Replies Last reply Reply Quote 1
                                • Negalein
                                  Negalein Global Moderator @MartyBr last edited by

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

                                  Ecowitt WG3000A

                                  welche ist das? Finde nur eine GW3000

                                  M 1 Reply Last reply Reply Quote 0
                                  • M
                                    MartyBr @Negalein last edited by

                                    @negalein
                                    Ist auch eine GW3000A. Tippfehler, sorry 😞

                                    Negalein 1 Reply Last reply Reply Quote 0
                                    • Negalein
                                      Negalein Global Moderator @MartyBr last edited by

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

                                      GW3000A

                                      Merci

                                      Ah, das ist nur das Gateway.
                                      Was hast du da alles angebunden?

                                      M Boronsbruder 2 Replies Last reply Reply Quote 0
                                      • M
                                        MartyBr @Negalein last edited by MartyBr

                                        @negalein
                                        Das Gateway soll alle Ecowitt Geräte anbinden. Ich habe die alte Wetterstation, die ich mit dem Gateway GW1000A zusammen gekauft hatte ohne Probleme am neuen GW3000 anmelden und in den ioBroker integrieren konnte.
                                        Zusätzlich habe ich den Bodefeuchtesensor DP51 (heisst DP100 bei Froggit) angebunden.

                                        Der GW3000 hat zusätzlich eine LAN-Schnittstelle, das erleichtert die Anbindung wenn man die zusätzliche Sicherheit einer LAN präferiert.
                                        Ich hatte vor dem Umbau nach Kompatibilität und Anbindung recherchiert. Aber der GW3000 unterstützt das gesamte Ecowitt / Froggit Angebot. Die Einrichtung war wirklich einfach.

                                        Edit:
                                        Beim großen Online Kaufhaus mit A*** gerade für ca. ca. 59 € im Angebot.

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

                                          @negalein
                                          ist quasi der große Bruder vom GW2000 mit externer Antenne und glaube ich sogar ne SD-Karte ist möglich und in der Regel funktioneren alle Geräte der älteren Gateways.
                                          Zumindest hat der Umstieg bzw. im Moment der Parallelbetrieb des gw1000 und gw2000 ohne Probleme funktionert.
                                          Das GW1000 empfängt nur die Bodenfeuchte-Sensoren für die Steuerung meiner Bewässerung (und die Aussentemperatur weil sonst das Skript von @SBorg zickt :D)
                                          So kannst übrigens auch nen Testlauf wegen Empfang machen. Einfach alle Sensoren in die neue Station einpflegen und dann die alte später abschalten.

                                          Gw3000 Daten im Ecowitt-Shop

                                          M 1 Reply Last reply Reply Quote 1
                                          • M
                                            MartyBr @Boronsbruder last edited by

                                            @boronsbruder
                                            Da war bei mir einfacher. Der GW3000 hat alle Geräte/Sensoren gefunden und automatisch eingelesen.
                                            Und ja, er hat eine SD-Karte, die man Remote auslesen kann. Da läuft wohl ein kleiner Web-Server. Die Abfrage der Web-Schnittstelle ist nun auch per PW gesichert.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.2k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            141
                                            5469
                                            3248732
                                            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