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

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [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 @Latzi last edited by

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

      Statistik-Skript V2.0.0 hat sich ein fehlendes _ eingeschlichen...

      Wohl eher davon geschlichen 😊
      ...und noch einer, der aber schon seit langer Zeit drin ist.

      Jepp, jepp, checked, fixed, danke --> V2.0.1


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

      • ~Bugfix Influx-Abfrage "Wind" (@Latzi)
      • ~Bugfix fester Datenpunkt auf "javascript.0..." bei Trockenperiode

      Wie immer zu finden im GitHub


      Update ist erforderlich, da es sich um einen Fehler handelt der die Funktion einschränkt.

      1 Reply Last reply Reply Quote 2
      • R
        Rushmed Most Active @SBorg last edited by

        @sborg Ok, danke. Irgendwie kommen die 24h Werte aber auch nicht. Die sind aber sicher in Influx.
        5bd9986a-90ec-4769-af4e-df3baa22f7b9-image.png

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

          @rushmed Fällt mir nur noch ein, hast du den ioB zwischenzeitlich mal neu gestartet oder zumindest den SimpleAPI? Der macht gelegentlich die "lustigsten" Fehler wenn man neue DPs per Javascript anlegt...
          Mich macht da "Null" stutzig. Sieht so aus als könnte er aktuell den Wert nicht schreiben.

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

            @sborg ich hab gerade gesehen, dass heute Nacht wohl auch was schief lief.. schau mal, hier haste mal die Windboe auf Windboee geaendert aber irgendwie existiert der alte Datenpunkt noch der neue wird nicht geschrieben.. ?

            2023-02-24 01:03:00.013  - info: javascript.0 (976157) script.js.common.Klimatisierung.Wetterstation-Statistik: Auswertung durchgeführt...
            2023-02-24 01:03:00.149  - warn: javascript.0 (976157) State "0_userdata.0.Statistik.Wetter.VorTag.Windboee_max" not found
            2023-02-24 01:03:00.151  - warn: javascript.0 (976157)     at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1731:20)
            2023-02-24 01:03:00.151  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:226:5)
            2023-02-24 01:03:00.151  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.151  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.151  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:00.151  - warn: javascript.0 (976157) getState "0_userdata.0.Statistik.Wetter.aktueller_Monat.Max_Windboee" not found (3)
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:247:8)
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157) State "0_userdata.0.Statistik.Wetter.aktueller_Monat.Max_Windboee" not found
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157)     at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1731:20)
            2023-02-24 01:03:00.152  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:247:78)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157) getState "0_userdata.0.Statistik.Wetter.Jahreswerte.Windboee_max" not found (3)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:283:12)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:00.153  - warn: javascript.0 (976157) State "0_userdata.0.Statistik.Wetter.Jahreswerte.Windboee_max" not found
            2023-02-24 01:03:00.154  - warn: javascript.0 (976157)     at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1731:20)
            2023-02-24 01:03:00.154  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:283:79)
            2023-02-24 01:03:00.154  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.154  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.154  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:00.155  - warn: javascript.0 (976157) getState "0_userdata.0.Statistik.Wetter.Rekordwerte.value.Windboee" not found (3)
            2023-02-24 01:03:00.155  - warn: javascript.0 (976157)     at Rekordwerte (script.js.common.Klimatisierung.Wetterstation-Statistik:655:9)
            2023-02-24 01:03:00.155  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:302:5)
            2023-02-24 01:03:00.155  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.155  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157) State "0_userdata.0.Statistik.Wetter.Rekordwerte.value.Windboee" not found
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1731:20)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at Rekordwerte (script.js.common.Klimatisierung.Wetterstation-Statistik:656:9)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at Object.cb (script.js.common.Klimatisierung.Wetterstation-Statistik:302:5)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at change (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5816:71)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:324:37)
            2023-02-24 01:03:00.156  - warn: javascript.0 (976157)     at processImmediate (node:internal/timers:466:21)
            2023-02-24 01:03:05.159  - warn: javascript.0 (976157) getState "0_userdata.0.Statistik.Wetter.Rekordwerte.value.Windboee" not found (3)
            2023-02-24 01:03:05.160  - warn: javascript.0 (976157)     at Template_Rekordwerte (script.js.common.Klimatisierung.Wetterstation-Statistik:669:16)
            2023-02-24 01:03:05.160  - warn: javascript.0 (976157) script.js.common.Klimatisierung.Wetterstation-Statistik: Object "0_userdata.0.Statistik.Wetter.Rekordwerte.value.Windboee" does not exist
            2023-02-24 01:03:05.164  - error: javascript.0 (976157) script.js.common.Klimatisierung.Wetterstation-Statistik: TypeError: Cannot read properties of null (reading 'common')
            2023-02-24 01:03:05.164  - error: javascript.0 (976157)     at Template_Rekordwerte (script.js.common.Klimatisierung.Wetterstation-Statistik:670:66)
            2023-02-24 01:06:24.817  - info: admin.0 (2420357) <== Disconnect system.user.admin from ::ffff:192.168.0.5 javascript
            
            

            wetterstation V3.0 und javascript 7.0.1

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

              @ilovegym

              hast du die Windboe-DP´s in 0_userdata.0.Statistik.Wetter gemäß Ankündigung geändert?

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

              "Windboe" heißt nun überall korrekt "Windboee". Am einfachsten klont man den alten DP und trägt den neuen korrekten Namen ein, kopiert sich dessen Wert und trägt ihn in den neuen ein

              Wetterstation-Statistik V2.0.1 eingesetzt?

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

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

                @ilovegym

                hast du die Windboe-DP´s in 0_userdata.0.Statistik.Wetter gemäß Ankündigung geändert?

                noe, dachte das Script legt nicht vorhandene automatisch an.. dachte ich..

                Wetterstation-Statistik V2.0.1 eingesetzt?

                ja, mal schauen obs jetzt laeuft.. dachte wenn man sowas im Script aendert dann macht das Script auch die Aenderung.. hach.. ok, der User soll auch noch was zu tun haben.. 🙂

                Edit: kaum macht man's richtig, funktionierts! 🙂

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

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

                  dachte wenn man sowas im Script aendert dann macht das Script auch die Aenderung.. hach.. ok, der User soll auch noch was zu tun haben.

                  😀 Das Script macht da mal nüscht.

                  weniger Arbeit für euch = mehr Arbeit für mich

                  ...und a bisserl dürft ihr auch arbeiten 😇
                  Aber Späßken beiseite, das ist Userseitig in nicht mal 5 Minuten erledigt, ich muss/müsste dann erst mal wieder feststellen in welchem Pfad die Objekte liegen, unter welcher Instanz...
                  Es wäre da halt einfacher eine feste Struktur vorzugeben. Da bin ich aber kein Freund von. Jeder soll da einstellen können was er/sie/diverse will 😉

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

                    @sborg ja klar, verstaendlich, in manchen Dingen ist man verwoehnt.. 👼

                    Laeuft ja jetzt, Daten werden geschrieben, alles gut! Danke nochmals !

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

                      @ilovegym Ich habe es auch nicht negativ aufgefasst 😉
                      Mir fällt nur gerade auf, ich hätte es eh nicht automatisieren können. Ich habe mich noch nie damit beschäftigt, ob ich auch auslesen könnte ob der DP zB. mittels Influx geloggt wird, um dies dann im neuen DP wieder zu setzen.

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

                        Das Grafana-Dashboard habe ich mittlerweile kpl. auf Flux umgestellt, weiß nur nicht woher das noch kommt:
                        Bild 001.png

                        Scheint nicht benutzt zu werden, denn es funktioniert soweit bzw. es fehlt nichts und der entsprechende DP ist in InfluxDB V1 bereits gedroppt und nicht mehr existent. Schön ist das aber nicht 😞

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

                          Ab sofort steht "mein" Dashboard in der V3 auf GitHub zur Verfügung wer denn will: https://github.com/SBorg2014/WLAN-Wetterstation

                          Nur noch für InfluxDB V2.x, Abfrage nur in Flux, konfigurierbar in den Settings per Variablen.
                          Neues Windrose-Plugin (Installation in der Read.Me).

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

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

                            Nur noch für InfluxDB V2.x, Abfrage nur in Flux, konfigurierbar in den Settings per Variablen.

                            Danke für deine Arbeit 🙂

                            Bei mir funktioniert es leider noch nicht. 😞

                            dad8e067-7814-4c28-88c7-d7857b32cacf-image.png

                            Bucket ist bei mir iobroker. Das hab ich in den Variablen eingetragen.
                            cf45d0f4-79c6-4b4d-a7fa-cf1931de99f1-image.png

                            Data_Prefix -_Instanz und -_Ordnername passen auch.
                            0_userdata.0.Wetterstation

                            Hab ich irgendwo noch was vergessen?

                            c928b327-6ced-4727-a2ee-fefdf685e1a8-image.png

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

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

                              Hab ich irgendwo noch was vergessen?

                              Jepp 🤘

                              Zitat aus der Read.ME:

                              Hier besteht die Möglichkeit mit zwei unterschiedlichen Buckets zu arbeiten. Nutzt man nur eines für alles (was ich nicht unbedingt empfehlen würde) trägt man bei beiden den gleichen Bucketnamen ein.

                              Musst also auch beim "shorttermBucket" iobroker eintragen.

                              Überlesen, oder ist das missverständlich ausgedrückt? Falls ja, wie besser? 🙂

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

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

                                Überlesen, oder ist das missverständlich ausgedrückt? Falls ja, wie besser?

                                mittlerweile die Readme gelesen und angepasst 😉

                                Leider noch immer leer 😢

                                5edeb2f2-9970-4fa3-88e1-178275f37e85-image.png
                                c127932f-bbc8-4976-8c2b-391c0f5204ce-image.png

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

                                  @negalein Hast du mal ein refresh/reload der Seite erzwungen (STRG+F5)? Ev. hat er da noch die alte Einstellung gecached.

                                  Falls immer noch nicht:
                                  Wenn du den "Query-Inspector" öffnest sollte es dann in etwa so aussehen:
                                  Bild 001.png
                                  "291" = es wurden 291 Messwerte gelesen (für "Innen" 569) und die Variablen für Bucket etc. wurden in der Abfrage korrekt ersetzt. Der Abfragezeitraum sollte dann "jetzt" - 24 Stunden sein.

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

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

                                    Wenn du den "Query-Inspector" öffnest sollte es dann in etwa so aussehen:

                                    da steht nichts
                                    8e73c4ee-4d08-4242-9001-5f88b2f371fe-image.png

                                    Query schaut so aus:

                                    from(bucket: "${longtermBucket}")
                                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                      |> filter(fn: (r) => r._measurement == "${Data_Prefix}.${Data_Instanz}.${Data_Ordnername}.Aussentemperatur" and r._field == "value")
                                      |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                      |> set(key: "_field", value: "Aussen")
                                      |> yield(name: "Aussen")
                                    

                                    Trage ich den Query von Influx-DataExplorer ein, funktionierts:

                                    from(bucket: "iobroker")
                                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                      |> filter(fn: (r) => r["_measurement"] == "0_userdata.0.Wetterstation.Aussentemperatur")
                                      |> filter(fn: (r) => r["_field"] == "value")
                                      |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)
                                      |> yield(name: "mean")
                                    

                                    5d40b7f0-e9f5-42b8-be60-4f3982c358df-image.png

                                    hast du noch eine Idee?

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

                                      Ich würde gerne eine Windrose in meine Vis einbauen.
                                      Am Bestenüber Grafana. Bekomme aber die Query in Flux nicht hin.
                                      Hat da jemand einen Input für mich?

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

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

                                        hast du noch eine Idee?

                                        Ich weiß leider nicht ob das ein prinzipielles Problem ist, oder nur bei dir. Ich habe es mal unter anderem Namen importiert, Buckets eingetragen, läuft...
                                        Ist dein Grafana aktuell (9.3.6) ?

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

                                          @tritor

                                          Bild 002.png
                                          Installation des Plugins für Grafana: https://github.com/SBorg2014/WLAN-Wetterstation/tree/master/Grafana Dashboard

                                          Flux:

                                          from(bucket: "Bucketname")
                                            |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                            |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Wind_max" or r._measurement == "0_userdata.0.Wetterstation.Windrichtung")
                                            |> filter(fn: (r) => r._field == "value")
                                            |> pivot(rowKey:["_time"], columnKey: ["_measurement"], valueColumn: "_value")
                                            |> filter(fn: (r) => exists r["0_userdata.0.Wetterstation.Windrichtung"] and exists r["0_userdata.0.Wetterstation.Wind_max"])
                                            |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "directionRad", "0_userdata.0.Wetterstation.Wind_max": "speedMps"})
                                            |> map(fn: (r) => ({ r with  direction: r.directionRad / 3.14 * 180.0 }))
                                            |> map(fn: (r) => ({ r with  speed: r.speedMps / 0.514 }))
                                            |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
                                          
                                          T 1 Reply Last reply Reply Quote 0
                                          • Negalein
                                            Negalein Global Moderator @SBorg last edited by Negalein

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

                                            Ist dein Grafana aktuell (9.3.6) ?

                                            9.3.2
                                            Aber ob es da wegen 0.0.4 so viele Unterschiede gibt?
                                            Werde ein Update machen und testen.


                                            mit 9.3.6 scheinen netzt zumindest einige 4b118056-3560-41ab-8c26-21684212c385-image.png auf.

                                            Query ist jetzt zB

                                            from(bucket: "${longtermBucket}")
                                            false
                                            false  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                            false
                                            false  |> filter(fn: (r) => r._measurement == "${Data_Prefix}.${Data_Instanz}.${Data_Ordnername}.Aussentemperatur" and r._field == "value")
                                            false
                                            false  |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)
                                            false
                                            false  |> set(key: "_field", value: "Aussen")
                                            false
                                            false  |> yield(name: "Aussen")Query-Inspektor zeigt weiterhin
                                            ![240c9fc8-b033-4957-afc5-eaacd84a00f1-image.png](/assets/uploads/files/1677371443406-240c9fc8-b033-4957-afc5-eaacd84a00f1-image.png) 
                                            ![8baa348f-b957-40e6-a2ab-1d1222a6b836-image.png](/assets/uploads/files/1677371492982-8baa348f-b957-40e6-a2ab-1d1222a6b836-image.png)
                                            da_Woody 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            923
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            linux shell-script wetterstation wlan-wetterstation
                                            141
                                            5399
                                            2912449
                                            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