Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

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

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    886

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

[Linux Shell-Skript] WLAN-Wetterstation

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Posts 155 Posters 3.9m Views 137 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • NegaleinN Negalein

    @SBorg

    kann man die Trockenperiode wieder zum laufen bekommen?

    NashraN Offline
    NashraN Offline
    Nashra
    Most Active Forum Testing
    wrote on last edited by
    #2883

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

    @SBorg

    kann man die Trockenperiode wieder zum laufen bekommen?

    Bei mir ist der Wert vorhanden

    trockenperiode.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.

    NegaleinN 1 Reply Last reply
    0
    • NashraN Nashra

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

      @SBorg

      kann man die Trockenperiode wieder zum laufen bekommen?

      Bei mir ist der Wert vorhanden

      trockenperiode.png

      NegaleinN Offline
      NegaleinN Offline
      Negalein
      Global Moderator
      wrote on last edited by
      #2884

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

      Bei mir ist der Wert vorhanden

      leider bei mir seit Mitte Oktober tot.
      Habs nicht bemerkt. :(

      ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
      ° Node.js Fixer ---> iob nodejs-update
      ° Fixer ---> iob fix

      1 Reply Last reply
      0
      • a200A a200

        @sborg Die Daten wurden aus v1 exportiert. Bei einigen Datenpunkten, wo man die Einstellungen zum Speichern der Daten ändern kann, steht bei mir unter "speichern als" der Typ Zeichenfolge und manchmal sogar Boolesch, obwohl es Zahlen sind. Ich werde versuchen herauszufinden wann die Umstellung kam. Denn bis zum einem bestimmten Zeitpunkt wurden die Werte als Zahl gespeichert. Aber mein TODO ist jetzt die Einstellungen zu prüfen. Danke!

        SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        wrote on last edited by
        #2885

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

        Die Daten wurden aus v1 exportiert.

        In V1 sind sie soweit auch korrekt, aber du (und ich auch ;) ) weißt halt nicht was er da beim Export macht, wenn er auf eine Zahl trifft die per value aber als String definiert ist. Da würde dann "" passen, sonst wäre es ja float obgleich du explizit String angegeben hast (bzw. der Automatismus)...
        Irgendwie ist die "Automatik" da Käse. Ich hab mich auch seeehr laange darauf verlassen.

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

        1 Reply Last reply
        0
        • NegaleinN Negalein

          @SBorg

          kann man die Trockenperiode wieder zum laufen bekommen?

          SBorgS Offline
          SBorgS Offline
          SBorg
          Forum Testing Most Active
          wrote on last edited by
          #2886

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

          @SBorg

          kann man die Trockenperiode wieder zum laufen bekommen?
          leider bei mir seit Mitte Oktober tot.

          Vertan, oder wirklich seit Okt. 2020 ?
          Eigentlich sollte es genügen wenn du folgende Werte identisch setzt:

          0_userdata.0.Statistik.Wetter.Jahreswerte.Trockenperiode
          0_userdata.0.Statistik.Wetter.Rekordwerte.value.Trockenperiode
          

          Dann sollte er um 01:03 Uhr eigentlich wieder damit rechnen. Nur kann es dann je nach aktueller Regenlage passieren, dass er diesen Rekord dann fälschlich als "xx im August 2021" tituliert, da er sich das Datum aus dem LC zieht (und der wäre natürlich "Heute" wenn du es änderst). Da der Text aber nur bei einem neuen Rekord erzeugt wird, könntest du den auch wieder abändern, sofern du halt noch weist von wann der eigentliche Rekord war ;)
          btw: Es gibt hier keinen Tweak-Schutz. Wenn jemand in der Statistik Werte ändern will, kann er dies natürlich tun (so wie hier bei einem Fehler). Allerdings basiert der ein oder andere Wert halt auch auf dem ein oder anderen anderem Wert.

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

          NegaleinN 1 Reply Last reply
          0
          • M Matt77CHE

            Guten Tag zusammen
            Ich habe eine Frage bezüglich Batteriestände (Konnte nichts finden im Forum):
            Bei den Objekt-Daten sind jeweils die gemessenen Werte (Temp; Feuchte etc) gelistet und jeweils noch Batterielevel.
            Bei keinem meiner Objekte wird jedoch ein Wert bei Batterielevel angezeigt.....
            Ist das nur bei mir so? - Habe ich bei der Installation etwas vergessen oder falsch gemacht?
            Habe die HP1000SE Pro von Froggit & deren Sensoren.

            Gruss
            Matthias

            SBorgS Offline
            SBorgS Offline
            SBorg
            Forum Testing Most Active
            wrote on last edited by
            #2887

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

            Habe ich bei der Installation etwas vergessen oder falsch gemacht?

            Hi, eventuell. Nutzt du als Protokoll "Wunderground [1]" oder "Ecowitt [2]"? Die Batterielevel werden nur bei dem Ecowitt-Protokoll mit übertragen.

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

            M 1 Reply Last reply
            0
            • SBorgS SBorg

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

              Habe ich bei der Installation etwas vergessen oder falsch gemacht?

              Hi, eventuell. Nutzt du als Protokoll "Wunderground [1]" oder "Ecowitt [2]"? Die Batterielevel werden nur bei dem Ecowitt-Protokoll mit übertragen.

              M Offline
              M Offline
              Matt77CHE
              wrote on last edited by
              #2888

              @sborg
              Habe das Protokoll Ecowitt gewählt, da ich im Hinterkopf hatte, dass bei WU einiges nicht geht...

              SBorgS 1 Reply Last reply
              0
              • SBorgS SBorg

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

                @SBorg

                kann man die Trockenperiode wieder zum laufen bekommen?
                leider bei mir seit Mitte Oktober tot.

                Vertan, oder wirklich seit Okt. 2020 ?
                Eigentlich sollte es genügen wenn du folgende Werte identisch setzt:

                0_userdata.0.Statistik.Wetter.Jahreswerte.Trockenperiode
                0_userdata.0.Statistik.Wetter.Rekordwerte.value.Trockenperiode
                

                Dann sollte er um 01:03 Uhr eigentlich wieder damit rechnen. Nur kann es dann je nach aktueller Regenlage passieren, dass er diesen Rekord dann fälschlich als "xx im August 2021" tituliert, da er sich das Datum aus dem LC zieht (und der wäre natürlich "Heute" wenn du es änderst). Da der Text aber nur bei einem neuen Rekord erzeugt wird, könntest du den auch wieder abändern, sofern du halt noch weist von wann der eigentliche Rekord war ;)
                btw: Es gibt hier keinen Tweak-Schutz. Wenn jemand in der Statistik Werte ändern will, kann er dies natürlich tun (so wie hier bei einem Fehler). Allerdings basiert der ein oder andere Wert halt auch auf dem ein oder anderen anderem Wert.

                NegaleinN Offline
                NegaleinN Offline
                Negalein
                Global Moderator
                wrote on last edited by
                #2889

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

                Vertan, oder wirklich seit Okt. 2020 ?

                Ja, wirklich seit Okt. 2020 :(

                Eigentlich sollte es genügen wenn du folgende Werte identisch setzt:

                die stehen beide auf 0 Tage

                Unbenannt-1.png 1.png

                ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                ° Node.js Fixer ---> iob nodejs-update
                ° Fixer ---> iob fix

                SBorgS 1 Reply Last reply
                0
                • M Matt77CHE

                  @sborg
                  Habe das Protokoll Ecowitt gewählt, da ich im Hinterkopf hatte, dass bei WU einiges nicht geht...

                  SBorgS Offline
                  SBorgS Offline
                  SBorg
                  Forum Testing Most Active
                  wrote on last edited by
                  #2890

                  @matt77che Schade ;)
                  Ich habe leider weder Gateway noch Zusatzsensoren, nur immer Test-Strings der User. Damit geht es zumindest und wohl auch bei den Usern, sonst hätte bestimmt schon wer "gemeckert".

                  Poste mal bitte deinen Datenstring (User, ID etc. aus-x-en). Service stoppen, dann im Verzeichnis ./wetterstation.sh --data

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

                  M 1 Reply Last reply
                  0
                  • NegaleinN Negalein

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

                    Vertan, oder wirklich seit Okt. 2020 ?

                    Ja, wirklich seit Okt. 2020 :(

                    Eigentlich sollte es genügen wenn du folgende Werte identisch setzt:

                    die stehen beide auf 0 Tage

                    Unbenannt-1.png 1.png

                    SBorgS Offline
                    SBorgS Offline
                    SBorg
                    Forum Testing Most Active
                    wrote on last edited by
                    #2891

                    @negalein Die anderen Werte gehen aber soweit, bzw. Regenmengetag, -monat hat er mal zwischenzeitlich geändert (ist ja bestimmt mal ein neuer Rekord dabei)?
                    Läuft das Skript aktuell noch unter Instanz 1 oder hast du ev. auf 0 zurückgewechselt?

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

                    NegaleinN 1 Reply Last reply
                    0
                    • SBorgS SBorg

                      @negalein Die anderen Werte gehen aber soweit, bzw. Regenmengetag, -monat hat er mal zwischenzeitlich geändert (ist ja bestimmt mal ein neuer Rekord dabei)?
                      Läuft das Skript aktuell noch unter Instanz 1 oder hast du ev. auf 0 zurückgewechselt?

                      NegaleinN Offline
                      NegaleinN Offline
                      Negalein
                      Global Moderator
                      wrote on last edited by Negalein
                      #2892

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

                      Die anderen Werte gehen aber soweit, bzw. Regenmengetag, -monat hat er mal zwischenzeitlich geändert (ist ja bestimmt mal ein neuer Rekord dabei)?

                      Ja, alles andere läuft 1A!

                      Hab jetzt in Grafana herausgefunden, dass die längste Trockenperiode heuer vom 28.03. - 14.04. war.
                      Kann ich das in die beiden DP übertragen? Wenn ja, wie?

                      Läuft das Skript aktuell noch unter Instanz 1 oder hast du ev. auf 0 zurückgewechselt?

                      Ja, unter Instanz 0.
                      Hab gleich am Anfang mal umgestellt.

                      ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                      ° Node.js Fixer ---> iob nodejs-update
                      ° Fixer ---> iob fix

                      SBorgS 1 Reply Last reply
                      0
                      • SBorgS SBorg

                        @matt77che Schade ;)
                        Ich habe leider weder Gateway noch Zusatzsensoren, nur immer Test-Strings der User. Damit geht es zumindest und wohl auch bei den Usern, sonst hätte bestimmt schon wer "gemeckert".

                        Poste mal bitte deinen Datenstring (User, ID etc. aus-x-en). Service stoppen, dann im Verzeichnis ./wetterstation.sh --data

                        M Offline
                        M Offline
                        Matt77CHE
                        wrote on last edited by
                        #2893

                        @sborg
                        Werde ich heute Abend mal versuchen auszulesen

                        1 Reply Last reply
                        0
                        • I Offline
                          I Offline
                          ioTobias
                          wrote on last edited by
                          #2894

                          Hallo zusammen!

                          Ich habe gestern erfolgreich eine Froggit WH2600 PRO eingerichtet!

                          Funktionert einwandfrei, vielen Dank für die Klasse Arbeit!

                          Grüße an Alle!

                          SBorgS 1 Reply Last reply
                          0
                          • NegaleinN Offline
                            NegaleinN Offline
                            Negalein
                            Global Moderator
                            wrote on last edited by
                            #2895

                            @SBorg

                            ich hätt wiedermal eine Idee (vom Cousin abgeschaut) :grin:

                            240918213_4193859937375857_1437030685762784776_n.png  481×328 .png

                            ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                            ° Node.js Fixer ---> iob nodejs-update
                            ° Fixer ---> iob fix

                            1 Reply Last reply
                            0
                            • NegaleinN Negalein

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

                              Die anderen Werte gehen aber soweit, bzw. Regenmengetag, -monat hat er mal zwischenzeitlich geändert (ist ja bestimmt mal ein neuer Rekord dabei)?

                              Ja, alles andere läuft 1A!

                              Hab jetzt in Grafana herausgefunden, dass die längste Trockenperiode heuer vom 28.03. - 14.04. war.
                              Kann ich das in die beiden DP übertragen? Wenn ja, wie?

                              Läuft das Skript aktuell noch unter Instanz 1 oder hast du ev. auf 0 zurückgewechselt?

                              Ja, unter Instanz 0.
                              Hab gleich am Anfang mal umgestellt.

                              SBorgS Offline
                              SBorgS Offline
                              SBorg
                              Forum Testing Most Active
                              wrote on last edited by
                              #2896

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

                              Hab jetzt in Grafana herausgefunden, dass die längste Trockenperiode heuer vom 28.03. - 14.04. war.
                              Kann ich das in die beiden DP übertragen? Wenn ja, wie?

                              Wenn ich mich nicht gerade verrechnet habe müssten das 18 Tage sein.
                              Als trägst du unter 0_userdata.0.Statistik.Wetter.Jahreswerte.Trockenperiode und 0_userdata.0.Statistik.Wetter.Rekordwerte.value.Trockenperiode jeweils 18 ein ("Bestätigt" an haken).
                              Dann unter 0_userdata.0.Statistik.Wetter.Rekordwerte.Trockenperiode noch 18 Tage im April 2021

                              Allerdings wird das nur die Anzeige korrigieren. Aus irgendeinem Grund läuft aber da etwas bei dir schief. Nenne es Bauchgefühl oder what else, aber mich stört die "javascript-Instanz.1". Den Jahreswechsel-Reset hat er noch durchgeführt, dann war nix mehr. Selbst wenn der Rekordwert flöten ging, hätte er schon einen neuen anlegen müssen, außer es hätte wirklich in den letzten 8 Monaten jeden Tag bei dir geregnet...

                              Deswegen trage obiges erst nach dem hier ein:

                              • lösche mal alle drei obigen Datenpunkte
                              • führe wetterstation.js (oder wie du es genannt hast) wieder einmalig aus, damit er die DPs neu anlegt

                              ev. führt das ja zum Erfolg. Es dürfte sich dann an den TS' und LCs nichts mehr ändern bis "kein Regen" > 18 Tage bzw. beim Jahreswert zum 01.01.2022 der Jahresreset erfolgt.

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

                              NegaleinN 1 Reply Last reply
                              0
                              • I ioTobias

                                Hallo zusammen!

                                Ich habe gestern erfolgreich eine Froggit WH2600 PRO eingerichtet!

                                Funktionert einwandfrei, vielen Dank für die Klasse Arbeit!

                                Grüße an Alle!

                                SBorgS Offline
                                SBorgS Offline
                                SBorg
                                Forum Testing Most Active
                                wrote on last edited by
                                #2897

                                @iotobias :+1: freut mich :)


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

                                ich hätt wiedermal eine Idee (vom Cousin abgeschaut)

                                Schau nicht so viel bei Anderen... :joy:
                                Sind aber dank Influx auch wieder nur zwei relativ einfache Abfragen. Da sich das ja nicht dauernd ändert und zur Lastminimierung wäre es einmalig pro Tag bei den Mitternachtjobs gut aufgehoben.

                                Meteorologischer Sommer ist vom 1.6. - 31.8. wenn ich mich nicht irre?
                                ... und bevor ich es dann falsch mache (ohne deinem Cousin zu Nahe treten zu wollen): fehlt da nicht ein "o", hat ja nix mit einem "Meteor" zu tun?

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

                                NegaleinN 1 Reply Last reply
                                0
                                • SBorgS SBorg

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

                                  Hab jetzt in Grafana herausgefunden, dass die längste Trockenperiode heuer vom 28.03. - 14.04. war.
                                  Kann ich das in die beiden DP übertragen? Wenn ja, wie?

                                  Wenn ich mich nicht gerade verrechnet habe müssten das 18 Tage sein.
                                  Als trägst du unter 0_userdata.0.Statistik.Wetter.Jahreswerte.Trockenperiode und 0_userdata.0.Statistik.Wetter.Rekordwerte.value.Trockenperiode jeweils 18 ein ("Bestätigt" an haken).
                                  Dann unter 0_userdata.0.Statistik.Wetter.Rekordwerte.Trockenperiode noch 18 Tage im April 2021

                                  Allerdings wird das nur die Anzeige korrigieren. Aus irgendeinem Grund läuft aber da etwas bei dir schief. Nenne es Bauchgefühl oder what else, aber mich stört die "javascript-Instanz.1". Den Jahreswechsel-Reset hat er noch durchgeführt, dann war nix mehr. Selbst wenn der Rekordwert flöten ging, hätte er schon einen neuen anlegen müssen, außer es hätte wirklich in den letzten 8 Monaten jeden Tag bei dir geregnet...

                                  Deswegen trage obiges erst nach dem hier ein:

                                  • lösche mal alle drei obigen Datenpunkte
                                  • führe wetterstation.js (oder wie du es genannt hast) wieder einmalig aus, damit er die DPs neu anlegt

                                  ev. führt das ja zum Erfolg. Es dürfte sich dann an den TS' und LCs nichts mehr ändern bis "kein Regen" > 18 Tage bzw. beim Jahreswert zum 01.01.2022 der Jahresreset erfolgt.

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  wrote on last edited by
                                  #2898

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

                                  Dann unter 0_userdata.0.Statistik.Wetter.Rekordwerte.Trockenperiode noch 18 Tage im April 2021

                                  Danke dir!
                                  Hier auch "Bestätigt" an haken?

                                  aber mich stört die "javascript-Instanz.1"

                                  Hatte es nur in der Testphase unter .1 laufen. Läuft jetzt schon ewig in .0

                                  außer es hätte wirklich in den letzten 8 Monaten jeden Tag bei dir geregnet...

                                  Gott sei dank nicht! :grin:

                                  führe wetterstation.js (oder wie du es genannt hast) wieder einmalig aus, damit er die DPs neu anlegt

                                  gemacht und bemerkt, dass er die DP nicht neu anlegt.
                                  Hab dann Lokal und auf Github kontrolliert.
                                  Im Script scheint "Trockenperiode, usw.) nicht auf.

                                  //Wetterstation Datenpunkte anlegen V2.9.0
                                   let DP="javascript.0.Wetterstation.";
                                   let DP50  = 0;  // Anzahl der DP50 Sensoren  (max. 8 Stück)
                                   let DP60  = 0;  // Anzahl der DP60 Sensoren  (max. 1 Stück)
                                   let DP70  = 0;  // Anzahl der DP70 Sensoren  (max. 4 Stück)
                                   let DP100 = 0;  // Anzahl der DP100 Sensoren (max. 8 Stück)
                                   let DP200 = 0;  // Anzahl der DP200 Sensoren (max. 4 Stück)
                                   let DP250 = 0;  // Anzahl der DP250 Sensoren (max. 1 Stück)
                                   //Ende der User-Einstellungen -------------------
                                  
                                    createState(DP+"Innentemperatur"             , 0,    {name: "Temperatur im Haus",                    type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Aussentemperatur"            , 0,    {name: "Temperatur Außen",                      type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Taupunkt"                    , 0,    {name: "Taupunkt",                              type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Gefuehlte_Temperatur"        , 0,    {name: "Windchill",                             type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Innenfeuchtigkeit"           , 0,    {name: "Luftfeuchtigkeit Innen",                type: "number", role: "state", unit: "%" });
                                    createState(DP+"Aussenfeuchtigkeit"          , 0,    {name: "Luftfeuchtigkeit Außen",                type: "number", role: "state", unit: "%" });
                                    createState(DP+"Wind"                        , 0,    {name: "Windgeschwindigkeit",                   type: "number", role: "state", unit: "km/h" });
                                    createState(DP+"Wind_max"                    , 0,    {name: "Windgeschwindigkeit maximal",           type: "number", role: "state", unit: "km/h" });
                                    createState(DP+"Windrichtung"                , 0,    {name: "Windrichtung in Grad",                  type: "number", role: "state", unit: "°" });
                                    createState(DP+"Windrichtung_Text"           ," ",   {name: "Windrichtung als Text",                 type: "string", role: "state" });
                                    createState(DP+"Druck_absolut"               , 0,    {name: "Luftdruck absolut",                     type: "number", role: "state", unit: "hPa" });
                                    createState(DP+"Druck_relativ"               , 0,    {name: "Luftdruck relativ",                     type: "number", role: "state", unit: "hPa" });
                                    createState(DP+"Druck_Tendenz"               ,"",    {name: "Luftdrucktendenz",                      type: "mixed",  role: "state" });
                                    createState(DP+"Wetter_Trend"                ," ",   {name: "Wettertrend",                           type: "string", role: "state" });
                                    createState(DP+"Wetter_aktuell"              ," ",   {name: "aktuelles Wetter",                      type: "string", role: "state" });
                                    createState(DP+"Regenrate"                   , 0,    {name: "Regenrate",                             type: "number", role: "state", unit: "mm/h" });
                                    createState(DP+"Regenstatus"                 ,"--",  {name: "aktueller Regenstatus",                 type: "string", role: "state" });
                                    createState(DP+"Regen_Tag"                   , 0,    {name: "Regenmenge Heute",                      type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Regen_Woche"                 , 0,    {name: "Regenmenge Woche",                      type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Regen_Monat"                 , 0,    {name: "Regenmenge Monat",                      type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Regen_Jahr"                  , 0,    {name: "Regenmenge Jahr aus Station",           type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Regen_Jahr_kumuliert"        , 0,    {name: "Regenmenge Jahr berechnet",             type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Sonnenstrahlung"             , 0,    {name: "Sonnenstrahlung",                       type: "number", role: "state", unit: "W/m²" });
                                    createState(DP+"UV_Index"                    , 0,    {name: "UV Index",                              type: "number", role: "state" });
                                    createState(DP+"UV_Belastung"                ," ",   {name: "UV-Belastung",                          type: "string", role: "state" });
                                    createState(DP+"Zeitstempel"                 ," ",   {name: "von wann ist die Messung",              type: "string", role: "state" });
                                    createState(DP+"_Kommunikationsfehler"       , false,{name: "liegt ein Problem vor",                 type: "boolean",role: "state" });
                                    createState(DP+"tempData.Wetterdaten"        ," ",   {name: "temporär gespeicherte Wetterdaten",     type: "string" ,role: "state" });
                                    createState(DP+"tempData.Sonnenschein"       ," ",   {name: "temporäre Daten Tag, Woche, Monat, Jahr",type: "string",role: "state" });
                                    createState(DP+"tempData.Solarenergie"       ,"0",   {name: "temporäre Daten Tag, Woche, Monat, Jahr",type: "string",role: "state" });
                                    createState(DP+"Info.FW_Upgrade"             , false,{name: "neue Firmware für die Station",         type: "boolean",role: "state" });
                                    createState(DP+"Info.FW_Version"             ," ",   {name: "Firmwareversion der Station",           type: "string", role: "state" });
                                    createState(DP+"Info.Hitzeindex"             , 0,    {name: "Hitzeindex (erst ab 20°C)",             type: "mixed", role: "state", unit: "°C" });
                                    createState(DP+"Info.openSenseMap"           , false,{name: "Datenübertragung openSenseMap erfolgreich",type: "boolean",role: "state" });
                                    createState(DP+"Info.Windy"                  , false,{name: "Datenübertragung Windy erfolgreich",    type: "boolean",role: "state" });
                                    createState(DP+"Info.Wetter_com"             , false,{name: "Datenübertragung Wetter.com erfolgreich",type: "boolean",role: "state" });
                                    createState(DP+"Info.Sonnenschein_VorTag"    , 0,    {name: "Sonnenscheindauer Gestern",             type: "number", role: "state", unit: "Sek." });
                                    createState(DP+"Info.Sonnenschein_Tag"       , 0,    {name: "Sonnenscheindauer Heute",               type: "number", role: "state", unit: "Sek." });
                                    createState(DP+"Info.Sonnenschein_Woche"     , 0,    {name: "Sonnenscheindauer diese Woche",         type: "number", role: "state", unit: "Sek." });
                                    createState(DP+"Info.Sonnenschein_Monat"     , 0,    {name: "Sonnenscheindauer diesen Monat",        type: "number", role: "state", unit: "Sek." });
                                    createState(DP+"Info.Sonnenschein_Jahr"      , 0,    {name: "Sonnenscheindauer dieses Jahr",         type: "number", role: "state", unit: "Sek." });
                                    createState(DP+"Info.Sonnenschein_Tag_Text"  ," ",   {name: "Sonnenscheindauer Heute als Text",      type: "string", role: "state" });
                                    createState(DP+"Info.Sonnenschein_Woche_Text"," ",   {name: "Sonnenscheindauer diese Woche als Text",type: "string", role: "state" });
                                    createState(DP+"Info.Sonnenschein_Monat_Text"," ",   {name: "Sonnenscheindauer diesen Monat als Text",type: "string", role: "state" });
                                    createState(DP+"Info.Sonnenschein_Jahr_Text" ," ",   {name: "Sonnenscheindauer dieses Jahr als Text",type: "string", role: "state" });
                                    createState(DP+"Info.Sonnenschein_VorJahr"   , 0,    {name: "Sonnenscheindauer letztes Jahr",        type: "number", role: "state", unit: "Sek." });
                                    createState(DP+"Info.Regenmenge_VorJahr"     , 0,    {name: "Regenmenge letztes Jahr",               type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Info.Solarenergie_VorTag"    , 0,    {name: "Solarenergie Gestern",                  type: "number", role: "state", unit: "Wh/m²" });
                                    createState(DP+"Info.Solarenergie_Tag"       , 0,    {name: "Solarenergie Heute",                    type: "number", role: "state", unit: "Wh/m²" });
                                    createState(DP+"Info.Solarenergie_Woche"     , 0,    {name: "Solarenergie diese Woche",              type: "number", role: "state", unit: "kWh/m²" });
                                    createState(DP+"Info.Solarenergie_Monat"     , 0,    {name: "Solarenergie diesen Monat",             type: "number", role: "state", unit: "kWh/m²" });
                                    createState(DP+"Info.Solarenergie_Jahr"      , 0,    {name: "Solarenergie dieses Jahr",              type: "number", role: "state", unit: "kWh/m²" });
                                    createState(DP+"Info.Solarenergie_VorJahr"   , 0,    {name: "Solarenergie letztes Jahr",             type: "number", role: "state", unit: "kWh/m²" });
                                    createState(DP+"Info.Letzter_Regen"          ," ",   {name: "letztes Regenereignis",                 type: "string", role: "state" });
                                    createState(DP+"Info.Letzte_Regenmenge"      , 0,    {name: "letzte Regenmenge",                     type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Info.Station_Batteriestatus" , 0,    {name: "Batteriestatus [0=OK, 1=Alarm]",        type: "number", role: "state" });
                                    createState(DP+"Info.Wetterstation_Gateway"  , 0,    {name: "Gateway Informationen",                 type: "string", role: "state" });
                                    createState(DP+"Info.Temp_Aussen_Heute_max"  , 0,    {name: "bisher höchste Aussentemperatur des heutigen Tages",type: "number", role: "value", unit: "°C" });
                                    createState(DP+"Info.Temp_Aussen_Heute_min"  , 0,    {name: "bisher niedrigste Aussentemperatur des heutigen Tages",type: "number", role: "value", unit: "°C" });
                                    createState(DP+"Info.Temp_Aussen_24h_max"    , 0,    {name: "höchste Aussentemperatur der letzten 24 Stunden",type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Info.Temp_Aussen_24h_min"    , 0,    {name: "tiefste Aussentemperatur der letzten 24 Stunden",type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Info.Temp_Aussen_365t_min"   , 0,    {name: "tiefste Aussentemperatur vor einem Jahr",type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Info.Temp_Aussen_365t_max"   , 0,    {name: "höchste Aussentemperatur vor einem Jahr",type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Info.Temp_Aussen_365t_avg"   , 0,    {name: "durchschnittliche Aussentemperatur vor einem Jahr",type: "number", role: "state", unit: "°C" });
                                    createState(DP+"Windboeen_max"               , 0,    {name: "Windböengeschwindigkeit maximal",       type: "number", role: "state", unit: "km/h" });
                                    createState(DP+"Regen_Event"                 , 0,    {name: "Regenmenge Event",                      type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Regen_Stunde"                , 0,    {name: "Regenmenge Stunde",                     type: "number", role: "state", unit: "mm" });
                                    createState(DP+"Regen_Total"                 , 0,    {name: "Regenmenge Insgesammt",                 type: "number", role: "state", unit: "mm" });
                                  
                                  
                                  
                                  if (DP50>0 && DP50<=8)  {
                                    if (!existsState(DP + "DP50")) {createState(DP + "DP50", '', { name: "Mehrkanal Thermo-Hygrometersensoren" });}
                                    for(var i=1; i<=DP50; i++) {
                                      if (!existsState(DP + "DP50." + i + ".Temperatur")) {
                                          createState(DP + "DP50." + i + ".Temperatur", "", {
                                              "name": "DP50 Kanal " + i + " Temperatur",
                                              "type": "number",
                                              "role": "state",
                                              "unit": "°C"
                                          });
                                      }
                                      if (!existsState(DP + "DP50." + i + ".Feuchtigkeit")) {
                                          createState(DP + "DP50." + i + ".Feuchtigkeit", "", {
                                              "name": "DP50 Kanal " + i + " Feuchtigkeit",
                                              "type": "number",
                                              "role": "state",
                                              "unit": "%"
                                          });
                                      }
                                      if (!existsState(DP + "DP50." + i + ".Batterie")) {
                                          createState(DP + "DP50." + i + ".Batterie", "", {
                                              "name": "DP50 Kanal " + i + " Batterie",
                                              "type": "number",
                                              "role": "state",
                                          });
                                      }
                                    }
                                  }
                                  
                                  if (DP60>0 && DP60<=1)  {
                                    if (!existsState(DP + "DP60")) {createState(DP + "DP60", '', { name: "Blitzdetektor" });}
                                    for(let i=1; i<=DP60; i++) {
                                      if (!existsState(DP + "DP60." + i + ".Entfernung")) {
                                          createState(DP + "DP60." + i + ".Entfernung", "", {
                                              "name": "DP60 Kanal " + i + " Entfernung",
                                              "type": "number",
                                              "role": "state",
                                              "unit": "km"
                                          });
                                      }
                                      if (!existsState(DP + "DP60." + i + ".Zeitpunkt")) {
                                          createState(DP + "DP60." + i + ".Zeitpunkt", "", {
                                              "name": "DP60 Kanal " + i + " Zeitpunkt (Unix-Timestamp)",
                                              "type": "number",
                                              "role": "state"
                                          });
                                      }
                                      if (!existsState(DP + "DP60." + i + ".Anzahl")) {
                                          createState(DP + "DP60." + i + ".Anzahl", "", {
                                              "name": "DP60 Kanal " + i + " Anzahl innerhalb von 24 Stunden",
                                              "type": "number",
                                              "role": "state"
                                          });
                                      }
                                      if (!existsState(DP + "DP60." + i + ".Batterie")) {
                                          createState(DP + "DP60." + i + ".Batterie", "", {
                                              "name": "DP60 Kanal " + i + " Batterie (5 = max)",
                                              "type": "number",
                                              "role": "state",
                                          });
                                      }
                                    }
                                  }
                                  
                                  if (DP70>0 && DP70<=4) {
                                    if (!existsState(DP + "DP70")) {createState(DP + "DP70", '', { name: "Mehrkanal-Wasserlecksensoren" });}
                                    for(var i=1; i<=DP70; i++) {
                                      if (!existsState(DP + "DP70." + i + ".Status")) {
                                          createState(DP + "DP70." + i + ".Status", "", {
                                              "name": "DP70 Kanal " + i + " Status (normal/Alarm)",
                                              "type": "string",
                                              "role": "state"
                                          });
                                      }
                                      if (!existsState(DP + "DP70." + i + ".Batterie")) {
                                          createState(DP + "DP70." + i + ".Batterie", "", {
                                              "name": "DP70 Kanal " + i + " Batterie",
                                              "type": "number",
                                              "role": "state",
                                          });
                                      }
                                    }
                                  }
                                  
                                  if (DP100>0 && DP100<=8) {
                                    if (!existsState(DP + "DP100")) {createState(DP + "DP100", '', { name: "Mehrkanal Bodenfeuchtesensoren" });}
                                    for(var i=1; i<=DP100; i++) {
                                      if (!existsState(DP + "DP100." + i + ".Bodenfeuchtigkeit")) {
                                          createState(DP + "DP100." + i + ".Bodenfeuchtigkeit", "", {
                                              "name": "DP100 Kanal " + i + " Bodenfeuchtigkeit",
                                              "type": "number",
                                              "role": "state",
                                              "unit": "%"
                                          });
                                      }
                                      if (!existsState(DP + "DP100." + i + ".Batterie")) {
                                          createState(DP + "DP100." + i + ".Batterie", "", {
                                              "name": "DP100 Kanal " + i + " Batterie",
                                              "type": "number",
                                              "role": "state",
                                          });
                                      }
                                    }
                                  }
                                  
                                  if (DP200>0 && DP200<=4) {
                                    if (!existsState(DP + "DP200")) {createState(DP + "DP200", '', { name: "Feinstaub Emissionssensoren" });}
                                    for(var i=1; i<=DP200; i++) {
                                      if (!existsState(DP + "DP200." + i + ".PM25")) {
                                          createState(DP + "DP200." + i + ".PM25", "", {
                                              "name": "DP200 Kanal " + i + " 2.5µm Partikel",
                                              "type": "number",
                                              "role": "state",
                                              "unit": "µg/m³"
                                          });
                                      }
                                      if (!existsState(DP + "DP200." + i + ".PM25_24h")) {
                                          createState(DP + "DP200." + i + ".PM25_24h", "", {
                                              "name": "DP200 Kanal " + i + " Durchschnitt per 24h",
                                              "type": "number",
                                              "role": "state",
                                              "unit": "µg/m³"
                                          });
                                      }
                                      if (!existsState(DP + "DP200." + i + ".Batterie")) {
                                          createState(DP + "DP200." + i + ".Batterie", "", {
                                              "name": "DP200 Kanal " + i + " Batterie (5 = max)",
                                              "type": "number",
                                              "role": "state",
                                          });
                                      }
                                    }
                                  }
                                  
                                  if (DP250>0 && DP250<=1)  {
                                    if (!existsState(DP + "DP250")) {createState(DP + "DP250", '', { name: "5-In-1 CO2 / PM2.5 / PM10 / Temperatur / Luftfeuchte Innenraumsensor" });}
                                    for(let i=1; i<=DP250; i++) {
                                      if (!existsState(DP + "DP250." + i + ".Temperatur")) {
                                          createState(DP + "DP250." + i + ".Temperatur", "", {
                                              "name": "DP250 Kanal " + i + " Temperatur",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "°C"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".Luftfeuchtigkeit")) {
                                          createState(DP + "DP250." + i + ".Luftfeuchtigkeit", "", {
                                              "name": "DP250 Kanal " + i + " Luftfeuchtigkeit",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "%"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".PM25")) {
                                          createState(DP + "DP250." + i + ".PM25", "", {
                                              "name": "DP250 Kanal " + i + " 2.5µm Partikel",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "µg/m³"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".PM25_24h")) {
                                          createState(DP + "DP250." + i + ".PM25_24h", "", {
                                              "name": "DP250 Kanal " + i + " Durchschnitt per 24h",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "µg/m³"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".PM10")) {
                                          createState(DP + "DP250." + i + ".PM10", "", {
                                              "name": "DP250 Kanal " + i + " 10µm Partikel",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "µg/m³"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".PM10_24h")) {
                                          createState(DP + "DP250." + i + ".PM10_24h", "", {
                                              "name": "DP250 Kanal " + i + " Durchschnitt per 24h",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "µg/m³"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".CO2")) {
                                          createState(DP + "DP250." + i + ".CO2", "", {
                                              "name": "DP250 Kanal " + i + " CO2-Konzentration",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "ppm"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".CO2_24h")) {
                                          createState(DP + "DP250." + i + ".CO2_24h", "", {
                                              "name": "DP250 Kanal " + i + " Durchschnitt per 24h",
                                              "type": "number",
                                              "role": "value",
                                              "unit": "ppm"
                                          });
                                      }
                                      if (!existsState(DP + "DP250." + i + ".Batterie")) {
                                          createState(DP + "DP250." + i + ".Batterie", "", {
                                              "name": "DP250 Kanal " + i + " Batterie (6 = max)",
                                              "type": "number",
                                              "role": "value",
                                          });
                                      }
                                    }
                                  }
                                  

                                  ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                  ° Node.js Fixer ---> iob nodejs-update
                                  ° Fixer ---> iob fix

                                  SBorgS 1 Reply Last reply
                                  0
                                  • SBorgS SBorg

                                    @iotobias :+1: freut mich :)


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

                                    ich hätt wiedermal eine Idee (vom Cousin abgeschaut)

                                    Schau nicht so viel bei Anderen... :joy:
                                    Sind aber dank Influx auch wieder nur zwei relativ einfache Abfragen. Da sich das ja nicht dauernd ändert und zur Lastminimierung wäre es einmalig pro Tag bei den Mitternachtjobs gut aufgehoben.

                                    Meteorologischer Sommer ist vom 1.6. - 31.8. wenn ich mich nicht irre?
                                    ... und bevor ich es dann falsch mache (ohne deinem Cousin zu Nahe treten zu wollen): fehlt da nicht ein "o", hat ja nix mit einem "Meteor" zu tun?

                                    NegaleinN Offline
                                    NegaleinN Offline
                                    Negalein
                                    Global Moderator
                                    wrote on last edited by
                                    #2899

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

                                    Meteorologischer Sommer ist vom 1.6. - 31.8. wenn ich mich nicht irre?

                                    genau

                                    ... und bevor ich es dann falsch mache (ohne deinem Cousin zu Nahe treten zu wollen): fehlt da nicht ein "o", hat ja nix mit einem "Meteor" zu tun?

                                    :joy: :joy: :joy:

                                    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                    ° Node.js Fixer ---> iob nodejs-update
                                    ° Fixer ---> iob fix

                                    1 Reply Last reply
                                    0
                                    • NegaleinN Negalein

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

                                      Dann unter 0_userdata.0.Statistik.Wetter.Rekordwerte.Trockenperiode noch 18 Tage im April 2021

                                      Danke dir!
                                      Hier auch "Bestätigt" an haken?

                                      aber mich stört die "javascript-Instanz.1"

                                      Hatte es nur in der Testphase unter .1 laufen. Läuft jetzt schon ewig in .0

                                      außer es hätte wirklich in den letzten 8 Monaten jeden Tag bei dir geregnet...

                                      Gott sei dank nicht! :grin:

                                      führe wetterstation.js (oder wie du es genannt hast) wieder einmalig aus, damit er die DPs neu anlegt

                                      gemacht und bemerkt, dass er die DP nicht neu anlegt.
                                      Hab dann Lokal und auf Github kontrolliert.
                                      Im Script scheint "Trockenperiode, usw.) nicht auf.

                                      //Wetterstation Datenpunkte anlegen V2.9.0
                                       let DP="javascript.0.Wetterstation.";
                                       let DP50  = 0;  // Anzahl der DP50 Sensoren  (max. 8 Stück)
                                       let DP60  = 0;  // Anzahl der DP60 Sensoren  (max. 1 Stück)
                                       let DP70  = 0;  // Anzahl der DP70 Sensoren  (max. 4 Stück)
                                       let DP100 = 0;  // Anzahl der DP100 Sensoren (max. 8 Stück)
                                       let DP200 = 0;  // Anzahl der DP200 Sensoren (max. 4 Stück)
                                       let DP250 = 0;  // Anzahl der DP250 Sensoren (max. 1 Stück)
                                       //Ende der User-Einstellungen -------------------
                                      
                                        createState(DP+"Innentemperatur"             , 0,    {name: "Temperatur im Haus",                    type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Aussentemperatur"            , 0,    {name: "Temperatur Außen",                      type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Taupunkt"                    , 0,    {name: "Taupunkt",                              type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Gefuehlte_Temperatur"        , 0,    {name: "Windchill",                             type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Innenfeuchtigkeit"           , 0,    {name: "Luftfeuchtigkeit Innen",                type: "number", role: "state", unit: "%" });
                                        createState(DP+"Aussenfeuchtigkeit"          , 0,    {name: "Luftfeuchtigkeit Außen",                type: "number", role: "state", unit: "%" });
                                        createState(DP+"Wind"                        , 0,    {name: "Windgeschwindigkeit",                   type: "number", role: "state", unit: "km/h" });
                                        createState(DP+"Wind_max"                    , 0,    {name: "Windgeschwindigkeit maximal",           type: "number", role: "state", unit: "km/h" });
                                        createState(DP+"Windrichtung"                , 0,    {name: "Windrichtung in Grad",                  type: "number", role: "state", unit: "°" });
                                        createState(DP+"Windrichtung_Text"           ," ",   {name: "Windrichtung als Text",                 type: "string", role: "state" });
                                        createState(DP+"Druck_absolut"               , 0,    {name: "Luftdruck absolut",                     type: "number", role: "state", unit: "hPa" });
                                        createState(DP+"Druck_relativ"               , 0,    {name: "Luftdruck relativ",                     type: "number", role: "state", unit: "hPa" });
                                        createState(DP+"Druck_Tendenz"               ,"",    {name: "Luftdrucktendenz",                      type: "mixed",  role: "state" });
                                        createState(DP+"Wetter_Trend"                ," ",   {name: "Wettertrend",                           type: "string", role: "state" });
                                        createState(DP+"Wetter_aktuell"              ," ",   {name: "aktuelles Wetter",                      type: "string", role: "state" });
                                        createState(DP+"Regenrate"                   , 0,    {name: "Regenrate",                             type: "number", role: "state", unit: "mm/h" });
                                        createState(DP+"Regenstatus"                 ,"--",  {name: "aktueller Regenstatus",                 type: "string", role: "state" });
                                        createState(DP+"Regen_Tag"                   , 0,    {name: "Regenmenge Heute",                      type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Regen_Woche"                 , 0,    {name: "Regenmenge Woche",                      type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Regen_Monat"                 , 0,    {name: "Regenmenge Monat",                      type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Regen_Jahr"                  , 0,    {name: "Regenmenge Jahr aus Station",           type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Regen_Jahr_kumuliert"        , 0,    {name: "Regenmenge Jahr berechnet",             type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Sonnenstrahlung"             , 0,    {name: "Sonnenstrahlung",                       type: "number", role: "state", unit: "W/m²" });
                                        createState(DP+"UV_Index"                    , 0,    {name: "UV Index",                              type: "number", role: "state" });
                                        createState(DP+"UV_Belastung"                ," ",   {name: "UV-Belastung",                          type: "string", role: "state" });
                                        createState(DP+"Zeitstempel"                 ," ",   {name: "von wann ist die Messung",              type: "string", role: "state" });
                                        createState(DP+"_Kommunikationsfehler"       , false,{name: "liegt ein Problem vor",                 type: "boolean",role: "state" });
                                        createState(DP+"tempData.Wetterdaten"        ," ",   {name: "temporär gespeicherte Wetterdaten",     type: "string" ,role: "state" });
                                        createState(DP+"tempData.Sonnenschein"       ," ",   {name: "temporäre Daten Tag, Woche, Monat, Jahr",type: "string",role: "state" });
                                        createState(DP+"tempData.Solarenergie"       ,"0",   {name: "temporäre Daten Tag, Woche, Monat, Jahr",type: "string",role: "state" });
                                        createState(DP+"Info.FW_Upgrade"             , false,{name: "neue Firmware für die Station",         type: "boolean",role: "state" });
                                        createState(DP+"Info.FW_Version"             ," ",   {name: "Firmwareversion der Station",           type: "string", role: "state" });
                                        createState(DP+"Info.Hitzeindex"             , 0,    {name: "Hitzeindex (erst ab 20°C)",             type: "mixed", role: "state", unit: "°C" });
                                        createState(DP+"Info.openSenseMap"           , false,{name: "Datenübertragung openSenseMap erfolgreich",type: "boolean",role: "state" });
                                        createState(DP+"Info.Windy"                  , false,{name: "Datenübertragung Windy erfolgreich",    type: "boolean",role: "state" });
                                        createState(DP+"Info.Wetter_com"             , false,{name: "Datenübertragung Wetter.com erfolgreich",type: "boolean",role: "state" });
                                        createState(DP+"Info.Sonnenschein_VorTag"    , 0,    {name: "Sonnenscheindauer Gestern",             type: "number", role: "state", unit: "Sek." });
                                        createState(DP+"Info.Sonnenschein_Tag"       , 0,    {name: "Sonnenscheindauer Heute",               type: "number", role: "state", unit: "Sek." });
                                        createState(DP+"Info.Sonnenschein_Woche"     , 0,    {name: "Sonnenscheindauer diese Woche",         type: "number", role: "state", unit: "Sek." });
                                        createState(DP+"Info.Sonnenschein_Monat"     , 0,    {name: "Sonnenscheindauer diesen Monat",        type: "number", role: "state", unit: "Sek." });
                                        createState(DP+"Info.Sonnenschein_Jahr"      , 0,    {name: "Sonnenscheindauer dieses Jahr",         type: "number", role: "state", unit: "Sek." });
                                        createState(DP+"Info.Sonnenschein_Tag_Text"  ," ",   {name: "Sonnenscheindauer Heute als Text",      type: "string", role: "state" });
                                        createState(DP+"Info.Sonnenschein_Woche_Text"," ",   {name: "Sonnenscheindauer diese Woche als Text",type: "string", role: "state" });
                                        createState(DP+"Info.Sonnenschein_Monat_Text"," ",   {name: "Sonnenscheindauer diesen Monat als Text",type: "string", role: "state" });
                                        createState(DP+"Info.Sonnenschein_Jahr_Text" ," ",   {name: "Sonnenscheindauer dieses Jahr als Text",type: "string", role: "state" });
                                        createState(DP+"Info.Sonnenschein_VorJahr"   , 0,    {name: "Sonnenscheindauer letztes Jahr",        type: "number", role: "state", unit: "Sek." });
                                        createState(DP+"Info.Regenmenge_VorJahr"     , 0,    {name: "Regenmenge letztes Jahr",               type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Info.Solarenergie_VorTag"    , 0,    {name: "Solarenergie Gestern",                  type: "number", role: "state", unit: "Wh/m²" });
                                        createState(DP+"Info.Solarenergie_Tag"       , 0,    {name: "Solarenergie Heute",                    type: "number", role: "state", unit: "Wh/m²" });
                                        createState(DP+"Info.Solarenergie_Woche"     , 0,    {name: "Solarenergie diese Woche",              type: "number", role: "state", unit: "kWh/m²" });
                                        createState(DP+"Info.Solarenergie_Monat"     , 0,    {name: "Solarenergie diesen Monat",             type: "number", role: "state", unit: "kWh/m²" });
                                        createState(DP+"Info.Solarenergie_Jahr"      , 0,    {name: "Solarenergie dieses Jahr",              type: "number", role: "state", unit: "kWh/m²" });
                                        createState(DP+"Info.Solarenergie_VorJahr"   , 0,    {name: "Solarenergie letztes Jahr",             type: "number", role: "state", unit: "kWh/m²" });
                                        createState(DP+"Info.Letzter_Regen"          ," ",   {name: "letztes Regenereignis",                 type: "string", role: "state" });
                                        createState(DP+"Info.Letzte_Regenmenge"      , 0,    {name: "letzte Regenmenge",                     type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Info.Station_Batteriestatus" , 0,    {name: "Batteriestatus [0=OK, 1=Alarm]",        type: "number", role: "state" });
                                        createState(DP+"Info.Wetterstation_Gateway"  , 0,    {name: "Gateway Informationen",                 type: "string", role: "state" });
                                        createState(DP+"Info.Temp_Aussen_Heute_max"  , 0,    {name: "bisher höchste Aussentemperatur des heutigen Tages",type: "number", role: "value", unit: "°C" });
                                        createState(DP+"Info.Temp_Aussen_Heute_min"  , 0,    {name: "bisher niedrigste Aussentemperatur des heutigen Tages",type: "number", role: "value", unit: "°C" });
                                        createState(DP+"Info.Temp_Aussen_24h_max"    , 0,    {name: "höchste Aussentemperatur der letzten 24 Stunden",type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Info.Temp_Aussen_24h_min"    , 0,    {name: "tiefste Aussentemperatur der letzten 24 Stunden",type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Info.Temp_Aussen_365t_min"   , 0,    {name: "tiefste Aussentemperatur vor einem Jahr",type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Info.Temp_Aussen_365t_max"   , 0,    {name: "höchste Aussentemperatur vor einem Jahr",type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Info.Temp_Aussen_365t_avg"   , 0,    {name: "durchschnittliche Aussentemperatur vor einem Jahr",type: "number", role: "state", unit: "°C" });
                                        createState(DP+"Windboeen_max"               , 0,    {name: "Windböengeschwindigkeit maximal",       type: "number", role: "state", unit: "km/h" });
                                        createState(DP+"Regen_Event"                 , 0,    {name: "Regenmenge Event",                      type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Regen_Stunde"                , 0,    {name: "Regenmenge Stunde",                     type: "number", role: "state", unit: "mm" });
                                        createState(DP+"Regen_Total"                 , 0,    {name: "Regenmenge Insgesammt",                 type: "number", role: "state", unit: "mm" });
                                      
                                      
                                      
                                      if (DP50>0 && DP50<=8)  {
                                        if (!existsState(DP + "DP50")) {createState(DP + "DP50", '', { name: "Mehrkanal Thermo-Hygrometersensoren" });}
                                        for(var i=1; i<=DP50; i++) {
                                          if (!existsState(DP + "DP50." + i + ".Temperatur")) {
                                              createState(DP + "DP50." + i + ".Temperatur", "", {
                                                  "name": "DP50 Kanal " + i + " Temperatur",
                                                  "type": "number",
                                                  "role": "state",
                                                  "unit": "°C"
                                              });
                                          }
                                          if (!existsState(DP + "DP50." + i + ".Feuchtigkeit")) {
                                              createState(DP + "DP50." + i + ".Feuchtigkeit", "", {
                                                  "name": "DP50 Kanal " + i + " Feuchtigkeit",
                                                  "type": "number",
                                                  "role": "state",
                                                  "unit": "%"
                                              });
                                          }
                                          if (!existsState(DP + "DP50." + i + ".Batterie")) {
                                              createState(DP + "DP50." + i + ".Batterie", "", {
                                                  "name": "DP50 Kanal " + i + " Batterie",
                                                  "type": "number",
                                                  "role": "state",
                                              });
                                          }
                                        }
                                      }
                                      
                                      if (DP60>0 && DP60<=1)  {
                                        if (!existsState(DP + "DP60")) {createState(DP + "DP60", '', { name: "Blitzdetektor" });}
                                        for(let i=1; i<=DP60; i++) {
                                          if (!existsState(DP + "DP60." + i + ".Entfernung")) {
                                              createState(DP + "DP60." + i + ".Entfernung", "", {
                                                  "name": "DP60 Kanal " + i + " Entfernung",
                                                  "type": "number",
                                                  "role": "state",
                                                  "unit": "km"
                                              });
                                          }
                                          if (!existsState(DP + "DP60." + i + ".Zeitpunkt")) {
                                              createState(DP + "DP60." + i + ".Zeitpunkt", "", {
                                                  "name": "DP60 Kanal " + i + " Zeitpunkt (Unix-Timestamp)",
                                                  "type": "number",
                                                  "role": "state"
                                              });
                                          }
                                          if (!existsState(DP + "DP60." + i + ".Anzahl")) {
                                              createState(DP + "DP60." + i + ".Anzahl", "", {
                                                  "name": "DP60 Kanal " + i + " Anzahl innerhalb von 24 Stunden",
                                                  "type": "number",
                                                  "role": "state"
                                              });
                                          }
                                          if (!existsState(DP + "DP60." + i + ".Batterie")) {
                                              createState(DP + "DP60." + i + ".Batterie", "", {
                                                  "name": "DP60 Kanal " + i + " Batterie (5 = max)",
                                                  "type": "number",
                                                  "role": "state",
                                              });
                                          }
                                        }
                                      }
                                      
                                      if (DP70>0 && DP70<=4) {
                                        if (!existsState(DP + "DP70")) {createState(DP + "DP70", '', { name: "Mehrkanal-Wasserlecksensoren" });}
                                        for(var i=1; i<=DP70; i++) {
                                          if (!existsState(DP + "DP70." + i + ".Status")) {
                                              createState(DP + "DP70." + i + ".Status", "", {
                                                  "name": "DP70 Kanal " + i + " Status (normal/Alarm)",
                                                  "type": "string",
                                                  "role": "state"
                                              });
                                          }
                                          if (!existsState(DP + "DP70." + i + ".Batterie")) {
                                              createState(DP + "DP70." + i + ".Batterie", "", {
                                                  "name": "DP70 Kanal " + i + " Batterie",
                                                  "type": "number",
                                                  "role": "state",
                                              });
                                          }
                                        }
                                      }
                                      
                                      if (DP100>0 && DP100<=8) {
                                        if (!existsState(DP + "DP100")) {createState(DP + "DP100", '', { name: "Mehrkanal Bodenfeuchtesensoren" });}
                                        for(var i=1; i<=DP100; i++) {
                                          if (!existsState(DP + "DP100." + i + ".Bodenfeuchtigkeit")) {
                                              createState(DP + "DP100." + i + ".Bodenfeuchtigkeit", "", {
                                                  "name": "DP100 Kanal " + i + " Bodenfeuchtigkeit",
                                                  "type": "number",
                                                  "role": "state",
                                                  "unit": "%"
                                              });
                                          }
                                          if (!existsState(DP + "DP100." + i + ".Batterie")) {
                                              createState(DP + "DP100." + i + ".Batterie", "", {
                                                  "name": "DP100 Kanal " + i + " Batterie",
                                                  "type": "number",
                                                  "role": "state",
                                              });
                                          }
                                        }
                                      }
                                      
                                      if (DP200>0 && DP200<=4) {
                                        if (!existsState(DP + "DP200")) {createState(DP + "DP200", '', { name: "Feinstaub Emissionssensoren" });}
                                        for(var i=1; i<=DP200; i++) {
                                          if (!existsState(DP + "DP200." + i + ".PM25")) {
                                              createState(DP + "DP200." + i + ".PM25", "", {
                                                  "name": "DP200 Kanal " + i + " 2.5µm Partikel",
                                                  "type": "number",
                                                  "role": "state",
                                                  "unit": "µg/m³"
                                              });
                                          }
                                          if (!existsState(DP + "DP200." + i + ".PM25_24h")) {
                                              createState(DP + "DP200." + i + ".PM25_24h", "", {
                                                  "name": "DP200 Kanal " + i + " Durchschnitt per 24h",
                                                  "type": "number",
                                                  "role": "state",
                                                  "unit": "µg/m³"
                                              });
                                          }
                                          if (!existsState(DP + "DP200." + i + ".Batterie")) {
                                              createState(DP + "DP200." + i + ".Batterie", "", {
                                                  "name": "DP200 Kanal " + i + " Batterie (5 = max)",
                                                  "type": "number",
                                                  "role": "state",
                                              });
                                          }
                                        }
                                      }
                                      
                                      if (DP250>0 && DP250<=1)  {
                                        if (!existsState(DP + "DP250")) {createState(DP + "DP250", '', { name: "5-In-1 CO2 / PM2.5 / PM10 / Temperatur / Luftfeuchte Innenraumsensor" });}
                                        for(let i=1; i<=DP250; i++) {
                                          if (!existsState(DP + "DP250." + i + ".Temperatur")) {
                                              createState(DP + "DP250." + i + ".Temperatur", "", {
                                                  "name": "DP250 Kanal " + i + " Temperatur",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "°C"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".Luftfeuchtigkeit")) {
                                              createState(DP + "DP250." + i + ".Luftfeuchtigkeit", "", {
                                                  "name": "DP250 Kanal " + i + " Luftfeuchtigkeit",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "%"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".PM25")) {
                                              createState(DP + "DP250." + i + ".PM25", "", {
                                                  "name": "DP250 Kanal " + i + " 2.5µm Partikel",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "µg/m³"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".PM25_24h")) {
                                              createState(DP + "DP250." + i + ".PM25_24h", "", {
                                                  "name": "DP250 Kanal " + i + " Durchschnitt per 24h",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "µg/m³"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".PM10")) {
                                              createState(DP + "DP250." + i + ".PM10", "", {
                                                  "name": "DP250 Kanal " + i + " 10µm Partikel",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "µg/m³"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".PM10_24h")) {
                                              createState(DP + "DP250." + i + ".PM10_24h", "", {
                                                  "name": "DP250 Kanal " + i + " Durchschnitt per 24h",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "µg/m³"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".CO2")) {
                                              createState(DP + "DP250." + i + ".CO2", "", {
                                                  "name": "DP250 Kanal " + i + " CO2-Konzentration",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "ppm"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".CO2_24h")) {
                                              createState(DP + "DP250." + i + ".CO2_24h", "", {
                                                  "name": "DP250 Kanal " + i + " Durchschnitt per 24h",
                                                  "type": "number",
                                                  "role": "value",
                                                  "unit": "ppm"
                                              });
                                          }
                                          if (!existsState(DP + "DP250." + i + ".Batterie")) {
                                              createState(DP + "DP250." + i + ".Batterie", "", {
                                                  "name": "DP250 Kanal " + i + " Batterie (6 = max)",
                                                  "type": "number",
                                                  "role": "value",
                                              });
                                          }
                                        }
                                      }
                                      

                                      SBorgS Offline
                                      SBorgS Offline
                                      SBorg
                                      Forum Testing Most Active
                                      wrote on last edited by
                                      #2900

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

                                      Hier auch "Bestätigt" an haken?

                                      Da es ein reiner "Anzeige-DP" ist, ist es da egal. Mich stört halt immer nur die Einfärbung bei "unbestätigt", dass hat so irgendwie etwas von einem Fehlercharakter ;)

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

                                      Hab dann Lokal und auf Github kontrolliert.

                                      Kann ja auch nicht, schei*e wenn man blöd ist...
                                      Das ist doch nicht Shell-Skript, sondern Statistik...:upside_down_face:
                                      Sorry, einfach das Statistik-Skript stoppen, da sind die DPs mit drin. Dann ~#69 editieren:

                                      const DP_Check='Rekordwerte.Regenmengemonat';
                                      

                                      in

                                      const DP_Check='Rekordwerte.Trockenperiode';
                                      

                                      Dann werden alle fehlenden DPs nach Start des Skriptes wieder angelegt :)

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

                                      NegaleinN 1 Reply Last reply
                                      0
                                      • SBorgS SBorg

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

                                        Hier auch "Bestätigt" an haken?

                                        Da es ein reiner "Anzeige-DP" ist, ist es da egal. Mich stört halt immer nur die Einfärbung bei "unbestätigt", dass hat so irgendwie etwas von einem Fehlercharakter ;)

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

                                        Hab dann Lokal und auf Github kontrolliert.

                                        Kann ja auch nicht, schei*e wenn man blöd ist...
                                        Das ist doch nicht Shell-Skript, sondern Statistik...:upside_down_face:
                                        Sorry, einfach das Statistik-Skript stoppen, da sind die DPs mit drin. Dann ~#69 editieren:

                                        const DP_Check='Rekordwerte.Regenmengemonat';
                                        

                                        in

                                        const DP_Check='Rekordwerte.Trockenperiode';
                                        

                                        Dann werden alle fehlenden DPs nach Start des Skriptes wieder angelegt :)

                                        NegaleinN Offline
                                        NegaleinN Offline
                                        Negalein
                                        Global Moderator
                                        wrote on last edited by
                                        #2901

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

                                        Sorry, einfach das Statistik-Skript stoppen, da sind die DPs mit drin. Dann ~#69 editieren:

                                        erledigt

                                        Dann hat er deswegen die Periode nicht berechnet?

                                        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                        ° Node.js Fixer ---> iob nodejs-update
                                        ° Fixer ---> iob fix

                                        SBorgS 1 Reply Last reply
                                        0
                                        • NegaleinN Negalein

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

                                          Sorry, einfach das Statistik-Skript stoppen, da sind die DPs mit drin. Dann ~#69 editieren:

                                          erledigt

                                          Dann hat er deswegen die Periode nicht berechnet?

                                          SBorgS Offline
                                          SBorgS Offline
                                          SBorg
                                          Forum Testing Most Active
                                          wrote on last edited by
                                          #2902

                                          @negalein Nein, die Änderung ist nur weil er sonst die Datenpunkte nicht mehr anlegt.
                                          Ich vermute einen Fehler bzgl. des/der Datenpunkte/s wie bspw. "Read Only" oä.

                                          Met. Sommer-Temp :blush:
                                          Bild 1.png

                                          Regen ist aber K*cke, da er hier die Werte fort schreibt. Da muss ich mir in einer ruhigen Minute (=also nie :joy: ) erst mal wieder Gedanken machen.
                                          Die Berechnungen/Datenbankabfrage macht eigentlich auch nur Sinn vom 01.06. - ~September
                                          Die restlichen 9 Monate wäre sie ja unnütz, aber wie käme man aktuell an die Daten für den Met.-Sommer 2021? Einfach immer laufen lassen ist mehr als kontraproduktiv, da die Regenmenge wohl wieder in einem "Datenbankabfragedesaster" endet. Soll heißen, auf einem PI kann das wieder 1-2 Minuten dauern...


                                          btw: so sieht die neue Version des Statistik-Skriptes derzeit aus. Alles wg. des JSC 3.x ... ;)
                                          Bild 2.png

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

                                          NegaleinN 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          349

                                          Online

                                          32.6k

                                          Users

                                          82.1k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe