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.
    • B
      babl @SBorg last edited by

      @sborg danke 2.05 läuft

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

        @babl Danke für die Rückmeldung 😉

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

          @sborg

          Hallo

          sagt dir dieser Error etwas?

          javascript.1 2024-11-20 01:03:00.022	error	at processImmediate (node:internal/timers:483:21)
          javascript.1 2024-11-20 01:03:00.022	error	at Immediate._onImmediate (file:///opt/iobroker/node_modules/@iobroker/db-states-redis/src/lib/states/statesInRedisClient.ts:381:37)
          javascript.1 2024-11-20 01:03:00.022	error	at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:10886:45)
          javascript.1 2024-11-20 01:03:00.022	error	at Object.cb (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:3097:38)
          javascript.1 2024-11-20 01:03:00.021	error	at Object.<anonymous> (script.js.Wetter.Wetterstatistik:195:43)
          javascript.1 2024-11-20 01:03:00.021	error	at Array.reduce (<anonymous>)
          javascript.1 2024-11-20 01:03:00.021	error	Error in callback: TypeError: Reduce of empty array with no initial value
          javascript.1 2024-11-20 01:03:00.019	error	script.js.Wetter.Wetterstatistik: Fehler beim Lesen der InfluxDB: Invalid call
          influxdb.0 2024-11-20 01:03:00.014	error	query: Error: error parsing query: found FROM, expected SELECT, DELETE, SHOW, CREATE, DROP, EXPLAIN, GRANT, REVOKE, ALTER, SET, KILL at line 1, char 1
          

          was geschiet da in Zeile 195?

          let MonatsTemp_Durchschnitt = Math.round(((((getState(PRE_DP+'.aktueller_Monat.Temperatur_Durchschnitt').val)*(zeitstempel.getDate()-1))+Temp_Durchschnitt)/zeitstempel.getDate())*100)/100;
          

          irgendwas passt da nicht. wenn du dir die Werte anschaust.

          26f754fa-6292-4754-817b-dcba2f23ee98-image.png

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

            @negalein
            Die Ursache ist eine falsche Abfrage der InfluxDB

            influxdb.0 2024-11-20 01:03:00.014	error	query: Error: error parsing query: found FROM, expected ...
            

            Das Ergebnis ist dann ein leeres Array was zu dem Fehler in Zeile 195 führt:

            Reduce of empty array with no initial value
            
            Negalein 1 Reply Last reply Reply Quote 0
            • Negalein
              Negalein Global Moderator @Boronsbruder last edited by Negalein

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

              Die Ursache ist eine falsche Abfrage der InfluxDB

              komisch.
              Hab gerade nochmal das Script gecheckt.

              Da ist das richtige Bucket eingetragen.


              Edit: ah, ich Depp!! Hab die falsche Influx Instanz eingetragen gehabt.

              1 Reply Last reply Reply Quote 0
              • I
                ioTobias last edited by

                Hallo zusammen.

                Nun bräuchte auch ich mal eure Hilfe.
                Ich hatte meine Wetterstation bereits ca. 2 Jahre problemlos als Docker-Container auf einer Synology am laufen.
                Nun bin ich dabei, mein gesamtes System auf unRaid umzuziehen. Aber an der Wetterstation, bzw. an der Einrichtung des Containers dafür scheitere ich momentan kläglich. Wie bereits erwähnt, habe ich das ganze ja schonmal erfolgreich eingerichtet.... Leider kann ich mich daran nicht mehr wirklich erinnern (was dafür spricht, dass es damals problemlos klappte).
                Mein erster Versuch war nun, einfach meinen (funktionierenden) Synology-Container in Unraid zu importieren und die Adressierungen anpassen. Leider funzte das nicht (k.A. warum).
                Beim 2. Versuch, den Container neu (mithilfe der docker-compose.yml von github) auszurollen, ist das Ergebnis im Endeffekt das gleiche. --> Container läuft, aber keine Daten im iobroker.
                Deshalb mal eine grundsätzliche Frage: Wenn der Container nach der vorgeschlagenen .yml erstellt ist, und die wetterstation.conf, wetterstation.sh und wetterstation.sub im gemounteten Ordner liegen, was muss dann innerhalb des Containers noch konfiguriert werden?

                Danke 😀

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

                  So, auch mal wieder im Lande 🙃
                  Waren jetzt doch schon wieder fast 4 Wochen, wird auch in naher Zukunft nicht besser werden.

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

                  was geschiet da in Zeile 195?

                  Auch wenn schon erledigt, dies ist Javascript typisch. Die ausgegebene Fehlerzeile ist meist nicht das ursächliche Problem, nur da hat es dann letztendlich "geknallt". Der Fehler war, wie bereits behoben, Eingangs die fehlerhafte Influx-Abfrage.

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

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

                    Nun bräuchte auch ich mal eure Hilfe.

                    Da muss ich leider passen. Docker nutze ich nicht und kenne mich damit auch mehr als bescheiden aus. Die YAML stammt von einem User 😉

                    Eine mögliche Ursache wäre aber ein nicht geöffneter Port oder falsche IP-Adresse. Dann schickt die Station die Daten nicht an den Container bzw. blockt sie ab.

                    Test ob Daten ankommen (Display/Gateway läuft): ./wetterstation.sh --data im Installationsverzeichnis ausführen.
                    Bild 001.png
                    Die 1. Zeile ist die IP meines ioB-Rechners mit Port des SimpleAPI-Adapters
                    "Listening 0.0.0.0 1080" bedeutet dann lausche auf allen Netzwerkinterfaces (also bspw. LAN, WLAN,...) auf Port 1080
                    "1080" ist der Port an den das Display/Gateway seine Daten sendet. Ev. musst du da nun einen anderen nutzen als den Beispielport.

                    btw: bei mir kam da kein Paket, da das Skript aktiv bei mir lief. Zwei Programme/Dienste auf einem Port geht nicht gut.

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

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

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

                      Nun bräuchte auch ich mal eure Hilfe.

                      Da muss ich leider passen. Docker nutze ich nicht und kenne mich damit auch mehr als bescheiden aus. Die YAML stammt von einem User 😉

                      Eine mögliche Ursache wäre aber ein nicht geöffneter Port oder falsche IP-Adresse. Dann schickt die Station die Daten nicht an den Container bzw. blockt sie ab.

                      Test ob Daten ankommen (Display/Gateway läuft): ./wetterstation.sh --data im Installationsverzeichnis ausführen.
                      Bild 001.png
                      Die 1. Zeile ist die IP meines ioB-Rechners mit Port des SimpleAPI-Adapters
                      "Listening 0.0.0.0 1080" bedeutet dann lausche auf allen Netzwerkinterfaces (also bspw. LAN, WLAN,...) auf Port 1080
                      "1080" ist der Port an den das Display/Gateway seine Daten sendet. Ev. musst du da nun einen anderen nutzen als den Beispielport.

                      btw: bei mir kam da kein Paket, da das Skript aktiv bei mir lief. Zwei Programme/Dienste auf einem Port geht nicht gut.

                      Vielen Dank für die Antwort.
                      Ja, diese Dinge habe ich bereits getestet. In punkto Container komm ich nicht weiter. 🤷‍♂️
                      Mittlerweile habe ich die Installation in einer schlanken Ubuntu-VM aufgesetzt, dies hat auf Anhieb geklappt. Das lass ich nun erstmal so, wenn auch vielleicht etwas "übertrieben". 🙂

                      1 Reply Last reply Reply Quote 0
                      • H
                        hoschi2007 last edited by

                        Re: [Linux Shell-Skript] WLAN-Wetterstation

                        Hallo zusammen, u.a. die DP Temp_Aussen_Heute_max & Temp_Aussen_Heute_max sind bei mir immer die aktuelle Tempertur und sind identisch. Offensichtlich bekomme ich keine Verbindung zur Influxdb2 hin:

                        wetter@iobroker:~/wetterstation $ sudo systemctl stop wetterstation
                        wetter@iobroker:~/wetterstation $ . ./wetterstation.conf
                        wetter@iobroker:~/wetterstation $ . ./wetterstation.sub
                        wetter@iobroker:~/wetterstation $ minmax24h DEBUG
                        Testing InfluxDB... min/max Aussentemperatur 24h: °C °C
                        

                        Die "wetterstation.conf" sieht meiner Meinung nach ok aus:

                         #InfluxDB-Konfiguration / ohne InfluxDB alles leer lassen
                          #Protokoll (HTTP oder HTTPS) / default: HTTP
                           INFLUX_WEB=HTTP
                          #IP und Port der API [xxx.xxx.xxx.xxx:xxxxx]
                           INFLUX_API=192.168.2.77:8086
                          #Bucket, Token und Organisation der InfluxDB
                           INFLUX_BUCKET=IOB
                           INFLUX_TOKEN=rjg55z...abgekürzt........_Q==
                           INFLUX_ORG=Logical-Industries
                        

                        "systemctl status wetterstation" bringt auch keine Fehlermeldung.
                        Was kann ich denn noch wo & wie prüfen?

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

                          @hoschi2007
                          Dienst stoppen und mit

                          ./wetterstation.sh --debug
                          

                          testen.
                          Damit wird meines Wissens auch die Influx-Verbindung getestet.
                          Und mal ins Log der Influx-Datenbank reinschauen, ob dort irgendewelche Verbindungen fehlerhaft sind.

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

                            @boronsbruder
                            das hatte ich auch schon gemacht und es sieht alles ok aus. Da sehe ich aber leider gar keine Infos zur Influxdb-Verbindung.

                            Kannst du einen Hinweis geben wo ich in der GUI von Influxdb nach den Logs gucken kann? Oder müssen die erst eingeschaltet werden?

                            Die Werte werden doch vom Wetterstation-Script direkt in die Influxdb geschrieben und nicht über die DP im Iobroker bzw dem Influx-Adapter, oder?

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

                              @hoschi2007
                              In den Versionshinweisen des Skripts ist der Parameter "--influx_test" vermerkt:

                              V3.1.0 / 16.03.2023    + Windböe max für Stationen die den Wert nicht liefern
                                                     + Option "k" für selbstsignierte Zertifikate bei der Influx-Abfrage hinzugefügt
                                                     + Parameter "--influx_test" zum test der Influx-Konnektivität
                                                     + Fix "MetSommer" (Skript bleibt bei den Mitternachtjobs hängen)
                              

                              Zu den Influx-Logs sagte mir Google -> https://docs.influxdata.com/influxdb/v2/admin/logs/#logs-when-running-influxdb-as-a-service

                              sudo journalctl -u influxdb.service
                              
                              H 1 Reply Last reply Reply Quote 0
                              • H
                                hoschi2007 @Boronsbruder last edited by

                                @boronsbruder
                                oh man! Man sollte Installationsanleitungen zuende Lesen!😖
                                Die Lösung war: die Objekte in die DB zu schreiben indem das Logging der drei Objekte aktiviert wird:

                                0_userdata.0.Wetterstation.Aussentemperatur
                                0_userdata.0.Wetterstation.Wind_max
                                0_userdata.0.Wetterstation.Regen_Tag
                                

                                Hat mich jetzt fast zwei Tage gekostet, aber ich habe wieder einiges gelernt 😊

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

                                  Hatte heute folgenden Fehler im Log.

                                  2025-01-01 01:03:00.043 - info: javascript.0 (2232791) script.js.common.Wetterstation.Statistik: Auswertung durchgeführt...
                                  2025-01-01 01:03:00.168 - info: javascript.0 (2232791) script.js.common.Wetterstation.Statistik: Ausführung zum Monatsersten beendet...
                                  2025-01-01 01:03:00.313 - error: javascript.0 (2232791) script.js.common.Wetterstation.Statistik: null
                                  

                                  Kann mir hier jemand helfen, was das sein könnte. Danke euch

                                  P.S: Wünsche allen noch ein gesundes neues Jahr 2025

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

                                    @SBorg
                                    Ich hab mal wieder ein Statistik-"Fehler"(?):
                                    bc53c27d-117e-48f8-9dc8-a5b19948ea2a-grafik.png
                                    43l/m²?
                                    aber gestern hat es nicht geregnet:
                                    14891b7e-5b83-4a34-8cfa-1a1d0c726451-grafik.png
                                    Das wurde wohl zum Jahres-Ersten nicht zurückgesetzt?

                                    P.S.:
                                    63fee75f-2aa0-44ee-bceb-5e331af9b1ad-grafik.png
                                    Die Station hat sich aber brav zum 1.1. zurückgesetzt

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

                                      @boronsbruder genau das meinte ich auch 1 Post über deinen mit meinem Fehler, der regenmengenmonat wird nicht zurückgesetzt, alles andere funktioniert. Das wird dann wahrscheinlich der Wert (Null) sein.

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

                                        Zwar drei Wochen her, deswegen zur üblichen Info "alle Jahre mal wieder": ich schreibe nichts in die InfluxDB 😉

                                        Der "Null"-Fehler ist nur ein Schönheitsfehler, außer man hat gerade mit der Statistik angefangen. Im 1. Jahr der Statistik wird diese einmalig resettet, da kein kpl. Jahr vorliegt, dies also auch keine Jahresstatistik ist.
                                        Mit einer Änderung am JS/JSC funktioniert mittlerweile das Lesen des Timestamps auf einem "Folder" nicht mehr = ergibt "Null". Da die Funktion aber immer nur am 01.01. ausgeführt wird ist es wohl bisher nie aufgefallen.
                                        Die Änderung ist easy: anstelle getState muss einfach getObject benutzt werden 😉
                                        Neue Version liegt auf GitHub.

                                        @Boronsbruder
                                        Das hängt mit https://github.com/SBorg2014/WLAN-Wetterstation/issues/74 zusammen. Fix gibt es aktuell noch keinen, da es sich um einen Designfehler (oder Denkfehler) meinerseits handelt. Am Monatsletzten wird im Grunde keine Auswertung mehr gefahren und Teile mit auf den 01. des Folgemonats gezogen. Da brauche ich Ruhe und Zeit dafür. Beides aktuell absolute Mangelware.

                                        ludda78 created this issue in SBorg2014/WLAN-Wetterstation

                                        open Wetterstatistik - Tiefstwert vom letzten Tag des Monats nicht erfasst #74

                                        Boronsbruder B 2 Replies Last reply Reply Quote 3
                                        • Boronsbruder
                                          Boronsbruder @SBorg last edited by

                                          @sborg
                                          Alles easy! Kein Stress wegen sowas!

                                          1 Reply Last reply Reply Quote 0
                                          • C
                                            chka last edited by

                                            Ich brauche eure Hilfe meine Bresser Basis Station hat das zeitliche gesegnet, in dem sich das WLAN Modul verabschiedet hat. Resetten und co geht auch nicht mehr, schaltet man den AP Modus ein, erstellt er auch kein neues Netz mehr.

                                            Also schnell dank A ein neues Set bestellt, und nur die Basis Station in Betrieb genommen.
                                            Diese ist von der Bauform gleich, einzig sie wird jetzt mittels USB C bestrom.

                                            Die Inbetriebnahme ist allerdings neu, hierfür wird jetzt ein App WS Link benötigt.
                                            In dieser kann ich Wlan und die wunderground daten setzen.
                                            Lösche ich in der Host-Datei vom pihole den Eintrag für "rtupdate.wunderground.com" schickt die Station die Daten direkt zu Wundergrount.

                                            Trage ich in die host wieder meine 192.168.X.159 rtupdate.wunderground.com ein kommen keine Daten bei wunderground an und eigendlich sollte jetzt auch das shell skript laufen.

                                            ping vom Rechner landet auf der 159

                                            Macht es aber nicht:

                                            WLAN-Wetterstation V3.4.0 - (c)2019-2024 by SBorg
                                             Config-Version: V3.4.0
                                             Sub-Version   : V3.4.0
                                            
                                             'bc' installiert: [✓]
                                             'jq' installiert: [✓] 
                                            
                                             'dc' installiert: [✓] 
                                            
                                             'nc' in der Openbsd-Variante installiert:  [✓]
                                             'netcat' in Openbsd-Variante aktiv, alles korrekt [✓]
                                            
                                            
                                            Connection to 192.168.X.152 8087 port [tcp/*] succeeded!
                                            
                                            
                                            Messwerteblock: 
                                            
                                            
                                            Nicht alle Werte werden unterstützt (abhängig vom Modell der Wetterstation und dem verwendeten Protokoll)!
                                            
                                             Temperatur Innen               :  °C
                                             Temperatur Aussen              :  °C
                                             Taupunkt                       :  °C
                                             Gefühlte Temperatur            :  °C
                                             Luftfeuchte Innen              :  %
                                             Luftfeuchte Aussen             :  %
                                             Windgeschwindigkeit            :  km/h
                                             Windgeschwindigkeit 10min      :  km/h
                                             Windböengeschwindigkeit        :  km/h
                                             Windböe max.                   :  km/h
                                             Windrichtung                   :  °
                                             Windrichtung                   : 
                                             Windrichtung 10min             :  °
                                             Luftdruck absolut              :  hPa
                                             Luftdruck relativ              :  hPa
                                             Regenrate                      :  mm/h
                                             Regenstatus                    : 
                                             Regen seit Regenbeginn         :  mm
                                             Regen Stunde                   :  mm
                                             Regen Tag                      :  mm
                                             Regen Woche                    :  mm
                                             Regen Monat                    :  mm
                                             Regen Jahr                     :  mm
                                             Regen Gesamt                   :  mm
                                             Sonnenstrahlung                :  W/m²
                                             UV-Index                       : 
                                             Zeitstempel                    : 
                                             Firmware                       : 
                                             Batteriestand:                 : 
                                             Gateway-Modell                 : 
                                            
                                            Zusatzsensoren: keine 
                                            
                                            
                                            Datenstring für ioBroker:
                                            
                                            
                                            
                                            DATA von Wetterstation:
                                            
                                            
                                            
                                            Debug VAR:
                                             Installationsverzeichnis: /home/wetter/wetterstation
                                             IPP: 192.168.X.152:8087      WS_PORT: 1080           WS_POLL: 30             PRE_DP: 0_userdata.0.Wetterstation
                                             WEB: HTTP              WS_PROT: Wunderground
                                            
                                            Zusatzsensoren:
                                             DP10/35/40/50/60/70/100/200/250/300: 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 
                                             WH31: 0 || WS90: 0
                                             Bresser: 7009999 [0]
                                            
                                            Script-Version: V3.4.0  Config-Version: V3.4.0  Sub-Version: V3.4.0
                                            
                                            Kommunikationsfehler!
                                            
                                            
                                            Kommunikationsfehler! Stimmt die WS_ID in der Konfiguration mit der der WS View-App überein? 
                                            

                                            ich habe ehrlich keine Idee mehr, es kommen keine Daten am Script an aber wiso?

                                            Das Skript läuft auf Proxmox in einer eigenen VM, Pihole ist eine separate Maschine,

                                            sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 1080
                                            

                                            Ist auch ausgeführt

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            555
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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