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.5k

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

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

[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 Offline
    NashraN Offline
    Nashra
    Most Active Forum Testing
    schrieb am zuletzt editiert von Nashra
    #5050

    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:

    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 SBorgS 2 Antworten Letzte Antwort
    0
    • 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:

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

      Windrose

      meine aktuelle Windrose in Grafana wird anscheinend nicht mehr unterstützt.
      "Angular plugin
      This plugin uses a deprecated, legacy platform based on AngularJS and will stop working in future releases of Grafana."

      Hat jemand eine funktioierende Windrose vorzugsweise in Grafana?

      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
      • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          771

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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