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

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

Community Forum

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

NEWS

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

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

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

[Linux Shell-Skript] WLAN-Wetterstation

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Beiträge 153 Kommentatoren 3.8m Aufrufe 135 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • NashraN Nashra

    Hallo Leute,
    jetzt bin ich wirklich sauer.
    Letzten Sonntag hatte sich ja die Außeneinheit verabschiedet, die Displayeinheit funktionierte
    zwar noch aber seit langem konnte man kaum noch was darauf erkennen.
    Hatte noch das Solarmodul sauber gemacht und auch mal neue Batterien eingelegt, aber nichts.
    Ok, am Dienstag ein neues Set bestellt, eine Ecowitt WS2910 :-)
    Das Teil kam schon Mittwoch an und was muß ich feststellen.....
    Die alte Außeneinheit funkt auf einmal wieder :grimacing: als wenn sie nur darauf
    gewartet hat das die Neue kommt.
    Egal, die fliegt jetzt raus und die Neue geht in den Betrieb.
    Frau freut sich auf neue Displayeinheit, da schon lange gemeckert wegen der alten.
    Und ich, schau mal Schatzi, deine neue Wetterstation schon mal vorab zu Weihnachten.
    Ups, der Blick hätte töten können. :grin:

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

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

    Ups, der Blick hätte töten können.

    Wie hieß das in der Werbung "Für alles hat man... Alles andere ist unbezahlbar" :v:


    @tritor
    AngularJS ist ein Sicherheitsrisiko. Das hatten sie schon zu Anfang der 10er angekündigt es nicht weiter unterstützen zu wollen. Mit der aktuellen Grafana-Version haben sie es jetzt endgültig abgeschaltet.
    Einen Ersatz für das Windrose-Plugin habe ich bis dato leider auch noch nicht gefunden :(
    Hilft wohl nur warten und hoffen...

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

    BoronsbruderB T 2 Antworten Letzte Antwort
    0
    • SBorgS SBorg

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

      Ups, der Blick hätte töten können.

      Wie hieß das in der Werbung "Für alles hat man... Alles andere ist unbezahlbar" :v:


      @tritor
      AngularJS ist ein Sicherheitsrisiko. Das hatten sie schon zu Anfang der 10er angekündigt es nicht weiter unterstützen zu wollen. Mit der aktuellen Grafana-Version haben sie es jetzt endgültig abgeschaltet.
      Einen Ersatz für das Windrose-Plugin habe ich bis dato leider auch noch nicht gefunden :(
      Hilft wohl nur warten und hoffen...

      BoronsbruderB Online
      BoronsbruderB Online
      Boronsbruder
      schrieb am zuletzt editiert von Boronsbruder
      #5053

      @sborg
      Ouch das hatte auch das AngularJS als Basis

      Aber es gibt opensource Varianten:
      https://github.com/spectraphilic/grafana-windrose/

      SBorgS 1 Antwort Letzte Antwort
      0
      • BoronsbruderB Boronsbruder

        @sborg
        Ouch das hatte auch das AngularJS als Basis

        Aber es gibt opensource Varianten:
        https://github.com/spectraphilic/grafana-windrose/

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

        @boronsbruder
        Genau die ist in meinem Demo-Dashboard drin und geht nicht mehr ;)

        Aber es hat sich bei Grafana was getan, nur getestet habe ich es noch nicht: https://grafana.com/grafana/plugins/operato-windrose-panel/

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

        1 Antwort Letzte Antwort
        0
        • SBorgS SBorg

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

          Ups, der Blick hätte töten können.

          Wie hieß das in der Werbung "Für alles hat man... Alles andere ist unbezahlbar" :v:


          @tritor
          AngularJS ist ein Sicherheitsrisiko. Das hatten sie schon zu Anfang der 10er angekündigt es nicht weiter unterstützen zu wollen. Mit der aktuellen Grafana-Version haben sie es jetzt endgültig abgeschaltet.
          Einen Ersatz für das Windrose-Plugin habe ich bis dato leider auch noch nicht gefunden :(
          Hilft wohl nur warten und hoffen...

          T Offline
          T Offline
          tritor
          schrieb am zuletzt editiert von tritor
          #5055

          @sborg

          merci für die Info, das hilft schon sehr weiter, dann werd ich mal die Windinfo "zu Fuß" darstellen.
          die Operato Windrose hab ich gesehen, und ein wenig experimentiert: Zumindest wird mal was angezeigt:

          InfluxDB - Windrose - Operato

          from(bucket: "ioBroker")
            |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
            |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung_10min" or r._measurement == "0_userdata.0.Wetterstation.Wind_10min")
            |> filter(fn: (r) => r._field == "value")
            |> pivot(rowKey:["_time"], columnKey: ["_measurement"], valueColumn: "_value")
            |> filter(fn: (r) => exists r["0_userdata.0.Wetterstation.Windrichtung_10min"] and exists r["0_userdata.0.Wetterstation.Wind_10min"])
            |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung_10min": "wind_direction", "0_userdata.0.Wetterstation.Wind_10min": "wind_speed"})
            |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
            |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
            |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
          

          WindroseOperator.png

          Die Legende skalieren läßt sich nur mit dem Auswählen der "speed-buckets". Also wieviele "Farben" man darstellen möchte.
          8 sind der Standard, ich habs auf 5 reduziert, dann passt es auch mit meiner Vis.
          WindroseOperatorVis.png WindroseOperatorVis2.png

          Gernot

          Host: i9 server Proxmox , Debian 12.0 for ioBroker
          ioBroker: 7.7.19, Node.js: 22.21.1, NPM: 10.9.3, JS-controller: 7.0.7
          Wetterstation: HP1000SEPro V1.9.0 Easeweather V1.7.0
          Grafana 12.0.2 / InfluxDB 2.7.11

          SBorgS 1 Antwort Letzte Antwort
          3
          • T tritor

            @sborg

            merci für die Info, das hilft schon sehr weiter, dann werd ich mal die Windinfo "zu Fuß" darstellen.
            die Operato Windrose hab ich gesehen, und ein wenig experimentiert: Zumindest wird mal was angezeigt:

            InfluxDB - Windrose - Operato

            from(bucket: "ioBroker")
              |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
              |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung_10min" or r._measurement == "0_userdata.0.Wetterstation.Wind_10min")
              |> filter(fn: (r) => r._field == "value")
              |> pivot(rowKey:["_time"], columnKey: ["_measurement"], valueColumn: "_value")
              |> filter(fn: (r) => exists r["0_userdata.0.Wetterstation.Windrichtung_10min"] and exists r["0_userdata.0.Wetterstation.Wind_10min"])
              |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung_10min": "wind_direction", "0_userdata.0.Wetterstation.Wind_10min": "wind_speed"})
              |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
              |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
              |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
            

            WindroseOperator.png

            Die Legende skalieren läßt sich nur mit dem Auswählen der "speed-buckets". Also wieviele "Farben" man darstellen möchte.
            8 sind der Standard, ich habs auf 5 reduziert, dann passt es auch mit meiner Vis.
            WindroseOperatorVis.png WindroseOperatorVis2.png

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

            @tritor Supi, danke fürs testen. Dann werde ich es mal bei Gelegenheit einbauen.
            ...und wieder was für die ToDo-Liste... :face_with_head_bandage:

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

            1 Antwort Letzte Antwort
            0
            • NashraN Offline
              NashraN Offline
              Nashra
              Most Active Forum Testing
              schrieb am zuletzt editiert von
              #5057

              @tritor
              schade, der Code von dir funktioniert bei mir nicht.
              Oben links das rote Zeichen und wenn ich mit der Maus darauf gehe
              zeigt er an: t.fields[0] is undefined

              Gruß Ralf
              Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              T 1 Antwort Letzte Antwort
              0
              • NashraN Nashra

                @tritor
                schade, der Code von dir funktioniert bei mir nicht.
                Oben links das rote Zeichen und wenn ich mit der Maus darauf gehe
                zeigt er an: t.fields[0] is undefined

                T Offline
                T Offline
                tritor
                schrieb am zuletzt editiert von tritor
                #5058

                @nashra

                ich hab das in Grafana 10.1 eingegeben mit einer InfluxDB2 ver. 2.7 als Datensource eingegeben.
                Eventuell postest mal einen Screenshot?
                sieht bei mir so aus:
                windroseOperato.png

                Gernot

                Host: i9 server Proxmox , Debian 12.0 for ioBroker
                ioBroker: 7.7.19, Node.js: 22.21.1, NPM: 10.9.3, JS-controller: 7.0.7
                Wetterstation: HP1000SEPro V1.9.0 Easeweather V1.7.0
                Grafana 12.0.2 / InfluxDB 2.7.11

                NashraN 1 Antwort Letzte Antwort
                0
                • T tritor

                  @nashra

                  ich hab das in Grafana 10.1 eingegeben mit einer InfluxDB2 ver. 2.7 als Datensource eingegeben.
                  Eventuell postest mal einen Screenshot?
                  sieht bei mir so aus:
                  windroseOperato.png

                  NashraN Offline
                  NashraN Offline
                  Nashra
                  Most Active Forum Testing
                  schrieb am zuletzt editiert von
                  #5059

                  @tritor
                  Grafana 10.2.2
                  InflusDB 2.7.4

                  windrose.png

                  Gruß Ralf
                  Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  T 1 Antwort Letzte Antwort
                  0
                  • NashraN Nashra

                    @tritor
                    Grafana 10.2.2
                    InflusDB 2.7.4

                    windrose.png

                    T Offline
                    T Offline
                    tritor
                    schrieb am zuletzt editiert von tritor
                    #5060

                    @nashra

                    na dann stellen sich folgende Fragen:

                    1. deine Datensource (Bucket) heisst: iobroker (hast du zumindest geändert)
                    2. deine WetterstionsDPs sind alle unter 0_userdata.0 oder sind die unter javascript.0.Wetterstation....
                    3. die Datenpunkte sind bei dir genauso vorhanden

                    Sonst kann ich es mir nicht erklären, wo es sonst noch haken könnte.

                    Gernot

                    Host: i9 server Proxmox , Debian 12.0 for ioBroker
                    ioBroker: 7.7.19, Node.js: 22.21.1, NPM: 10.9.3, JS-controller: 7.0.7
                    Wetterstation: HP1000SEPro V1.9.0 Easeweather V1.7.0
                    Grafana 12.0.2 / InfluxDB 2.7.11

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

                      @Nashra
                      Du hast wahrscheinlich keine Daten im Bucket. Wenn es relativ Windstill ist oder sich die Richtung im 10 Minutenraster nicht ändert, steht kaum was in der DB.
                      Entweder musst du beim loggen bspw. jede Stunde mal das schreiben eines Wertes erzwingen, oder die aktuellen Werte nutzen (also nicht den 10 Minuten Durchschnitt):

                      from(bucket: "${DatenBucket}")
                        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                        |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung" or r._measurement == "0_userdata.0.Wetterstation.Wind")
                        |> 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"])
                        |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "wind_direction", "0_userdata.0.Wetterstation.Wind": "wind_speed"})
                        |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
                        |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
                        |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
                      

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

                      Chris76eC NashraN 2 Antworten Letzte Antwort
                      0
                      • SBorgS SBorg

                        @Nashra
                        Du hast wahrscheinlich keine Daten im Bucket. Wenn es relativ Windstill ist oder sich die Richtung im 10 Minutenraster nicht ändert, steht kaum was in der DB.
                        Entweder musst du beim loggen bspw. jede Stunde mal das schreiben eines Wertes erzwingen, oder die aktuellen Werte nutzen (also nicht den 10 Minuten Durchschnitt):

                        from(bucket: "${DatenBucket}")
                          |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                          |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung" or r._measurement == "0_userdata.0.Wetterstation.Wind")
                          |> 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"])
                          |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "wind_direction", "0_userdata.0.Wetterstation.Wind": "wind_speed"})
                          |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
                          |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
                          |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
                        
                        Chris76eC Online
                        Chris76eC Online
                        Chris76e
                        schrieb am zuletzt editiert von
                        #5062

                        @sborg

                        Hatte das gleiche Problem wie @Nashra

                        Ohne die _10min klappte es.

                        Screenshot 2023-11-27 224631.png

                        Danke und danke natürlich auch an

                        @tritor

                        Wie hast du diese Ansicht gemacht?

                        Screenshot 2023-11-27 224436.png

                        T SBorgS 2 Antworten Letzte Antwort
                        1
                        • Chris76eC Chris76e

                          @sborg

                          Hatte das gleiche Problem wie @Nashra

                          Ohne die _10min klappte es.

                          Screenshot 2023-11-27 224631.png

                          Danke und danke natürlich auch an

                          @tritor

                          Wie hast du diese Ansicht gemacht?

                          Screenshot 2023-11-27 224436.png

                          T Offline
                          T Offline
                          tritor
                          schrieb am zuletzt editiert von tritor
                          #5063

                          @chris76e

                          Also erst mal Visualisierung Bar Gauge und dann 4 Queries:

                          Jahr

                          from(bucket: "ioBroker")
                            |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                            |> filter(fn: (r) =>
                              r._measurement == "0_userdata.0.Wetterstation.Regen_Jahr" and
                              r._field == "value"
                            )
                          

                          Monat

                          from(bucket: "ioBroker")
                            |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                            |> filter(fn: (r) =>
                              r._measurement == "0_userdata.0.Wetterstation.Regen_Monat" and
                              r._field == "value"
                            )
                          

                          Woche

                          from(bucket: "ioBroker")
                            |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                            |> filter(fn: (r) =>
                              r._measurement == "0_userdata.0.Wetterstation.Regen_Woche" and
                              r._field == "value"
                            )
                          

                          Tag

                          from(bucket: "ioBroker")
                            |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                            |> filter(fn: (r) =>
                              r._measurement == "0_userdata.0.Wetterstation.Regen_Tag" and
                              r._field == "value"
                            )
                          

                          Und dann die settings & Overrides:
                          Regen01.png

                          Regen02.png
                          Regen03.png
                          Regen04.png

                          Die Max Werte mußt du halt so wählen damit es dann auch passt, z.B. beim Jahr hab ich 900 als max Wert genommen, das kann natürlich abhängig von deiner Region, wie oft und wieviel es da regnet, auch zu hoch sein. Ich habe noch kein ganzes Jahr gelogged, deshalb hab ich es mal auf 900 gesetzt.

                          Gernot

                          Host: i9 server Proxmox , Debian 12.0 for ioBroker
                          ioBroker: 7.7.19, Node.js: 22.21.1, NPM: 10.9.3, JS-controller: 7.0.7
                          Wetterstation: HP1000SEPro V1.9.0 Easeweather V1.7.0
                          Grafana 12.0.2 / InfluxDB 2.7.11

                          Chris76eC 1 Antwort Letzte Antwort
                          0
                          • T tritor

                            @nashra

                            na dann stellen sich folgende Fragen:

                            1. deine Datensource (Bucket) heisst: iobroker (hast du zumindest geändert)
                            2. deine WetterstionsDPs sind alle unter 0_userdata.0 oder sind die unter javascript.0.Wetterstation....
                            3. die Datenpunkte sind bei dir genauso vorhanden

                            Sonst kann ich es mir nicht erklären, wo es sonst noch haken könnte.

                            NashraN Offline
                            NashraN Offline
                            Nashra
                            Most Active Forum Testing
                            schrieb am zuletzt editiert von
                            #5064

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

                            @nashra

                            na dann stellen sich folgende Fragen:

                            1. deine Datensource (Bucket) heisst: iobroker (hast du zumindest geändert)
                            2. deine WetterstionsDPs sind alle unter 0_userdata.0 oder sind die unter javascript.0.Wetterstation....
                            3. die Datenpunkte sind bei dir genauso vorhanden

                            Sonst kann ich es mir nicht erklären, wo es sonst noch haken könnte.

                            Ja, alles unter 0_userdata.0, DP vorhanden und auch befüllt. Aber ohne die ....__10min funktioniert es.

                            Gruß Ralf
                            Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            1 Antwort Letzte Antwort
                            0
                            • SBorgS SBorg

                              @Nashra
                              Du hast wahrscheinlich keine Daten im Bucket. Wenn es relativ Windstill ist oder sich die Richtung im 10 Minutenraster nicht ändert, steht kaum was in der DB.
                              Entweder musst du beim loggen bspw. jede Stunde mal das schreiben eines Wertes erzwingen, oder die aktuellen Werte nutzen (also nicht den 10 Minuten Durchschnitt):

                              from(bucket: "${DatenBucket}")
                                |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung" or r._measurement == "0_userdata.0.Wetterstation.Wind")
                                |> 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"])
                                |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "wind_direction", "0_userdata.0.Wetterstation.Wind": "wind_speed"})
                                |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
                                |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
                                |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
                              
                              NashraN Offline
                              NashraN Offline
                              Nashra
                              Most Active Forum Testing
                              schrieb am zuletzt editiert von Nashra
                              #5065

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

                              @Nashra
                              Du hast wahrscheinlich keine Daten im Bucket. Wenn es relativ Windstill ist oder sich die Richtung im 10 Minutenraster nicht ändert, steht kaum was in der DB.
                              Entweder musst du beim loggen bspw. jede Stunde mal das schreiben eines Wertes erzwingen, oder die aktuellen Werte nutzen (also nicht den 10 Minuten Durchschnitt):

                              from(bucket: "${DatenBucket}")
                                |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung" or r._measurement == "0_userdata.0.Wetterstation.Wind")
                                |> 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"])
                                |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "wind_direction", "0_userdata.0.Wetterstation.Wind": "wind_speed"})
                                |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
                                |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
                                |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
                              

                              Moin, die ..._10min rausgenommen und läuft. Obwohl Daten ohne Ende in den Datenpunkten.
                              Schau mir das am Wochenende mal genau an, da habe ich mehr Zeit.

                              windrose1.png

                              Gruß Ralf
                              Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              SBorgS 1 Antwort Letzte Antwort
                              0
                              • NashraN Nashra

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

                                @Nashra
                                Du hast wahrscheinlich keine Daten im Bucket. Wenn es relativ Windstill ist oder sich die Richtung im 10 Minutenraster nicht ändert, steht kaum was in der DB.
                                Entweder musst du beim loggen bspw. jede Stunde mal das schreiben eines Wertes erzwingen, oder die aktuellen Werte nutzen (also nicht den 10 Minuten Durchschnitt):

                                from(bucket: "${DatenBucket}")
                                  |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                  |> filter(fn: (r) => r._measurement == "0_userdata.0.Wetterstation.Windrichtung" or r._measurement == "0_userdata.0.Wetterstation.Wind")
                                  |> 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"])
                                  |> rename(columns: {"0_userdata.0.Wetterstation.Windrichtung": "wind_direction", "0_userdata.0.Wetterstation.Wind": "wind_speed"})
                                  |> map(fn: (r) => ({ r with  direction: r.wind_direction}))
                                  |> map(fn: (r) => ({ r with  speed: r.wind_speed}))
                                  |> aggregateWindow(every: 2m0s, fn: first, column: "direction", createEmpty: false)
                                

                                Moin, die ..._10min rausgenommen und läuft. Obwohl Daten ohne Ende in den Datenpunkten.
                                Schau mir das am Wochenende mal genau an, da habe ich mehr Zeit.

                                windrose1.png

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

                                @nashra Kommt halt auf beide DPs an. Bei mir sah bspw. gestern die 10 Min Windrichtung so aus (also bis kurz vor Mitternacht ein einziger Wert; ich erzwinge hier kein zusätzliches schreiben):
                                Bild 001.png

                                Man muss für die Anzeige nicht unbedingt den 10 Minutenwert nehmen, sondern erhöht einfach bei der Abfrage #10 das aggregieren auf 10 Minuten, hat den gleichen Effekt, umgeht aber das Problem zu wenig Werte zu haben.

                                aggregateWindow(every: 10m0s, fn: first, column: "direction", createEmpty: true)
                                

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

                                1 Antwort Letzte Antwort
                                0
                                • Chris76eC Chris76e

                                  @sborg

                                  Hatte das gleiche Problem wie @Nashra

                                  Ohne die _10min klappte es.

                                  Screenshot 2023-11-27 224631.png

                                  Danke und danke natürlich auch an

                                  @tritor

                                  Wie hast du diese Ansicht gemacht?

                                  Screenshot 2023-11-27 224436.png

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

                                  @chris76e
                                  Du musst im Plugin noch auf "km/h" umstellen, denn der gelieferte Wert ist nicht "m/s" ;)

                                  btw: das "unschöne" Datenpunktwirrwarr bei der Temperatur kannst du umgehen:
                                  1701167180364.png
                                  Zeile #5 einfügen (value natürlich anpassen ;) ) : |> set(key: "_field", value: "Aussen")
                                  Dann in den Optionen eintragen: ${__field.name} (sind wirklich zwei Unterstriche)
                                  Dann noch bei den "Overrides" eintragen: ${__field.name} und die neue Datenquelle auswählen.
                                  Bild 003.png
                                  Sollte die noch nicht in der Liste auftauchen, Panel speichern, schließen und Panel erneut zum editieren öffnen, dann sollte es nun auch in der Liste auftauchen.

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

                                  1 Antwort Letzte Antwort
                                  0
                                  • T tritor

                                    @chris76e

                                    Also erst mal Visualisierung Bar Gauge und dann 4 Queries:

                                    Jahr

                                    from(bucket: "ioBroker")
                                      |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                                      |> filter(fn: (r) =>
                                        r._measurement == "0_userdata.0.Wetterstation.Regen_Jahr" and
                                        r._field == "value"
                                      )
                                    

                                    Monat

                                    from(bucket: "ioBroker")
                                      |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                                      |> filter(fn: (r) =>
                                        r._measurement == "0_userdata.0.Wetterstation.Regen_Monat" and
                                        r._field == "value"
                                      )
                                    

                                    Woche

                                    from(bucket: "ioBroker")
                                      |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                                      |> filter(fn: (r) =>
                                        r._measurement == "0_userdata.0.Wetterstation.Regen_Woche" and
                                        r._field == "value"
                                      )
                                    

                                    Tag

                                    from(bucket: "ioBroker")
                                      |> range(start: v.timeRangeStart, stop:v.timeRangeStop)
                                      |> filter(fn: (r) =>
                                        r._measurement == "0_userdata.0.Wetterstation.Regen_Tag" and
                                        r._field == "value"
                                      )
                                    

                                    Und dann die settings & Overrides:
                                    Regen01.png

                                    Regen02.png
                                    Regen03.png
                                    Regen04.png

                                    Die Max Werte mußt du halt so wählen damit es dann auch passt, z.B. beim Jahr hab ich 900 als max Wert genommen, das kann natürlich abhängig von deiner Region, wie oft und wieviel es da regnet, auch zu hoch sein. Ich habe noch kein ganzes Jahr gelogged, deshalb hab ich es mal auf 900 gesetzt.

                                    Chris76eC Online
                                    Chris76eC Online
                                    Chris76e
                                    schrieb am zuletzt editiert von
                                    #5068

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

                                    Regen_Woche

                                    Danke, hat funktioniert

                                    Screenshot 2023-11-29 193119.png

                                    @SBorg

                                    Danke für die Hinweise, ist geändert

                                    Screenshot 2023-11-29 193154.png

                                    T 1 Antwort Letzte Antwort
                                    1
                                    • R Offline
                                      R Offline
                                      Rushmed
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #5069

                                      Bekommt man das neue Windrose Panel auch mit InfluxQL zum Laufen? Bei mir wird nichts angezeigt.
                                      Hier steht:
                                      477359f4-3791-4ccb-8721-5d59d9b56a07-grafik.png
                                      Habe meine beiden Datenreihen wind_speed und wind_direction genannt.

                                      SBorgS 1 Antwort Letzte Antwort
                                      0
                                      • Chris76eC Chris76e

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

                                        Regen_Woche

                                        Danke, hat funktioniert

                                        Screenshot 2023-11-29 193119.png

                                        @SBorg

                                        Danke für die Hinweise, ist geändert

                                        Screenshot 2023-11-29 193154.png

                                        T Offline
                                        T Offline
                                        tritor
                                        schrieb am zuletzt editiert von
                                        #5070

                                        @chris76e

                                        hier wie mein komplettes Grafana Dashboard aussieht:
                                        WetterstationDashboard.png

                                        Gernot

                                        Host: i9 server Proxmox , Debian 12.0 for ioBroker
                                        ioBroker: 7.7.19, Node.js: 22.21.1, NPM: 10.9.3, JS-controller: 7.0.7
                                        Wetterstation: HP1000SEPro V1.9.0 Easeweather V1.7.0
                                        Grafana 12.0.2 / InfluxDB 2.7.11

                                        1 Antwort Letzte Antwort
                                        0
                                        • M Offline
                                          M Offline
                                          MartyBr
                                          schrieb am zuletzt editiert von
                                          #5071

                                          @tritor Hallo Gernot,
                                          ich fange gerade an mich mit Grafana zu beschäftigen. Könntest du die Datei für dein Dashboard hier posten?

                                          Vielen Dank

                                          Martin

                                          Gruß
                                          Martin


                                          Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                          Raspeberry mit USB Leseköpfen für Smartmeter
                                          Homematic und Homematic IP

                                          T 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          907

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe