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

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

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

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

[Linux Shell-Skript] WLAN-Wetterstation

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
linuxshell-scriptwetterstationwlan-wetterstation
5.7k Beiträge 152 Kommentatoren 3.8m Aufrufe 134 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.
  • NegaleinN Offline
    NegaleinN Offline
    Negalein
    Global Moderator
    schrieb am zuletzt editiert von
    #2895

    @SBorg

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

    240918213_4193859937375857_1437030685762784776_n.png  481×328 .png

    ° Node.js: 20.17.0 NPM: 10.8.2
    ° Proxmox, Ubuntu 22.04.3 LTS
    ° Fixer ---> iob fix

    1 Antwort Letzte Antwort
    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
      schrieb am zuletzt editiert von
      #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 Antwort Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von
          #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: 20.17.0 NPM: 10.8.2
          ° Proxmox, Ubuntu 22.04.3 LTS
          ° Fixer ---> iob fix

          SBorgS 1 Antwort Letzte Antwort
          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
            schrieb am zuletzt editiert von
            #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: 20.17.0 NPM: 10.8.2
            ° Proxmox, Ubuntu 22.04.3 LTS
            ° Fixer ---> iob fix

            1 Antwort Letzte Antwort
            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
              schrieb am zuletzt editiert von
              #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 Antwort Letzte Antwort
              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
                schrieb am zuletzt editiert von
                #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: 20.17.0 NPM: 10.8.2
                ° Proxmox, Ubuntu 22.04.3 LTS
                ° Fixer ---> iob fix

                SBorgS 1 Antwort Letzte Antwort
                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
                  schrieb am zuletzt editiert von
                  #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 Antwort Letzte Antwort
                  0
                  • SBorgS SBorg

                    @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

                    NegaleinN Offline
                    NegaleinN Offline
                    Negalein
                    Global Moderator
                    schrieb am zuletzt editiert von Negalein
                    #2903

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

                    Ich vermute einen Fehler bzgl. des/der Datenpunkte/s wie bspw. "Read Only" oä.

                    Quasi dieses ACK-Ding? Oder kann ich das selbst überprüfen?

                    in einer ruhigen Minute (=also nie )

                    Ich schick dir ein Ommmm :grin:

                    Die Berechnungen/Datenbankabfrage macht eigentlich auch nur Sinn vom 01.06. - ~September

                    Ja, eigentlich nur bis 31. 8.! Also am 1. 9. um 1:03 müsste er es berechnen.

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

                    Eventuell vorerst für 2021 als Option (true/false).
                    Wer will solls machen, wer eine schwache Maschine hat, kann dann eh entscheiden ob ers macht.

                    btw: so sieht die neue Version des Statistik-Skriptes derzeit aus. Alles wg. des JSC 3.x ... 😉

                    Also so wie oben gemeint mit dem ACK-Ding?

                    ° Node.js: 20.17.0 NPM: 10.8.2
                    ° Proxmox, Ubuntu 22.04.3 LTS
                    ° Fixer ---> iob fix

                    SBorgS 1 Antwort Letzte Antwort
                    0
                    • NegaleinN Negalein

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

                      Ich vermute einen Fehler bzgl. des/der Datenpunkte/s wie bspw. "Read Only" oä.

                      Quasi dieses ACK-Ding? Oder kann ich das selbst überprüfen?

                      in einer ruhigen Minute (=also nie )

                      Ich schick dir ein Ommmm :grin:

                      Die Berechnungen/Datenbankabfrage macht eigentlich auch nur Sinn vom 01.06. - ~September

                      Ja, eigentlich nur bis 31. 8.! Also am 1. 9. um 1:03 müsste er es berechnen.

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

                      Eventuell vorerst für 2021 als Option (true/false).
                      Wer will solls machen, wer eine schwache Maschine hat, kann dann eh entscheiden ob ers macht.

                      btw: so sieht die neue Version des Statistik-Skriptes derzeit aus. Alles wg. des JSC 3.x ... 😉

                      Also so wie oben gemeint mit dem ACK-Ding?

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

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

                      Quasi dieses ACK-Ding? Oder kann ich das selbst überprüfen?

                      Jein. Ack ist nur für die "Weiterverarbeitung" ggf. nötig. Damit wird der Wert "bestätigt", quasi ein "schalte xyz ein" und der meldet dann zurück "eingeschaltet". Ich setze den Ack=true wo es möglich ist (bei Bulk-Updates per Simple-API-Adapter geht es bspw. nicht) nur weil die Einfärbung der DPs wie ein Fehler aussieht. Das verursacht bei dem ein oder anderen User dann schon Schnappatmung ;)
                      Nachschauen kann man dann beim DP in den Objektdaten ob dort read/write auf true/false steht. Bei keinem Eintrag ist es automatisch true, also erlaubt

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

                      Ich schick dir ein Ommmm

                      :joy:

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

                      Ja, eigentlich nur bis 31. 8.! Also am 1. 9. um 1:03 müsste er es berechnen.

                      01:03 Uhr wäre Statistik, das macht aber das Shell-Skript. Deswegen kann ich es einfach für die Monate 6,7 und 8 ausführen lassen, da die Mitternachtjobs gegen 23:58 Uhr laufen. Somit läuft es letztmalig am 31.08. gegen 23:58 Uhr. Man möge die dann ggf. fehlenden 1-2 Messwerte verzeihen :grin:
                      Da ich die Regenabfrage relativ komfortabel lösen konnte was die Verarbeitungszeit angeht, wird es bei aktiver InfluxDB automatisch aktiv. Muss es "nur" noch implementieren. Die Ausführung für dieses Jahr (wir haben ja bereits September, da läuft die Auswertung nicht mehr ;) ) geht dann manuell per Parameter, sogar bei aktivem/laufendem Service:
                      Bild 1.png

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

                      Also so wie oben gemeint mit dem ACK-Ding?

                      Nö, mit dem JSC 3.x muss ein JSON-String ein Array sein (aktuell passiert zwar noch nix, kann sich aber mit einer neuen Version jederzeit ändern). Das habe ich zwar geändert, dabei aber vergessen, dass ich es dann im Umkehrschluss auch als Array wieder einlesen muss. Als letzte Werte steht halt im JSON-String dann zufällig "ack: true", was er dann als Datenpunktwert nutzt...

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

                      1 Antwort Letzte Antwort
                      0
                      • NegaleinN Offline
                        NegaleinN Offline
                        Negalein
                        Global Moderator
                        schrieb am zuletzt editiert von Negalein
                        #2905

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

                        geht dann manuell per Parameter, sogar bei aktivem/laufendem Service:

                        Cool, freu mich! :)

                        ° Node.js: 20.17.0 NPM: 10.8.2
                        ° Proxmox, Ubuntu 22.04.3 LTS
                        ° Fixer ---> iob fix

                        da_WoodyD 1 Antwort Letzte Antwort
                        0
                        • NegaleinN Negalein

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

                          geht dann manuell per Parameter, sogar bei aktivem/laufendem Service:

                          Cool, freu mich! :)

                          da_WoodyD Online
                          da_WoodyD Online
                          da_Woody
                          schrieb am zuletzt editiert von
                          #2906

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

                          Coll

                          ahja? :D

                          gruß vom Woody
                          HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

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

                            Flasche all, habe fertig :joy:

                            Bereit zum testen:
                            Bild 1.png

                            • sh + sub ersetzen
                            • js ebenfalls + einmalig ausführen wg. neuer DPs (.Info.Regenmenge_Met_Sommer + .Info.Temp_Met_Sommer_avg)
                            • zur Berechnung im Verzeichnis ./wetterstation.sh --metsommer ausführen

                            Changelog:

                            + Min-/Max-Aussentemperatur des heutigen Tages
                            ~ Änderung bei Datenübertragung per Simple-API wg. InfluxDB 2.x
                            + Meteorologischer Sommer Durchschnittstemperatur und Regenmenge
                            + neuer Shell-Parameter --metsommer (zur manuellen Berechnung der Werte des meteorologischen Sommers)
                            

                            Die meteoroligischen Sommerwerte werden bei aktivierter InfluxDB automatisch vom 01.06. bis zum 31.08. des Jahres ermittelt. Per Option "--metsommer" (Service muss dazu nicht deaktiviert werden!) lassen sich die Werte auch nachträglich für das laufende Jahr ermitteln, solange Daten für den Zeitraum vorliegen.
                            Die Ausführung in der Zeit vom 01.01. bis 31.05. wird mangels Daten nicht ausgeführt.

                            Wie immer im GitHub...

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

                            NegaleinN 1 Antwort Letzte Antwort
                            2
                            • NashraN Online
                              NashraN Online
                              Nashra
                              Most Active Forum Testing
                              schrieb am zuletzt editiert von
                              #2908

                              :grin:

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

                              1 Antwort Letzte Antwort
                              0
                              • SBorgS SBorg

                                Flasche all, habe fertig :joy:

                                Bereit zum testen:
                                Bild 1.png

                                • sh + sub ersetzen
                                • js ebenfalls + einmalig ausführen wg. neuer DPs (.Info.Regenmenge_Met_Sommer + .Info.Temp_Met_Sommer_avg)
                                • zur Berechnung im Verzeichnis ./wetterstation.sh --metsommer ausführen

                                Changelog:

                                + Min-/Max-Aussentemperatur des heutigen Tages
                                ~ Änderung bei Datenübertragung per Simple-API wg. InfluxDB 2.x
                                + Meteorologischer Sommer Durchschnittstemperatur und Regenmenge
                                + neuer Shell-Parameter --metsommer (zur manuellen Berechnung der Werte des meteorologischen Sommers)
                                

                                Die meteoroligischen Sommerwerte werden bei aktivierter InfluxDB automatisch vom 01.06. bis zum 31.08. des Jahres ermittelt. Per Option "--metsommer" (Service muss dazu nicht deaktiviert werden!) lassen sich die Werte auch nachträglich für das laufende Jahr ermitteln, solange Daten für den Zeitraum vorliegen.
                                Die Ausführung in der Zeit vom 01.01. bis 31.05. wird mangels Daten nicht ausgeführt.

                                Wie immer im GitHub...

                                NegaleinN Offline
                                NegaleinN Offline
                                Negalein
                                Global Moderator
                                schrieb am zuletzt editiert von
                                #2909

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

                                zur Berechnung im Verzeichnis ./wetterstation.sh --metsommer ausführen

                                Super :)

                                /home/iobroker/wetterstation.conf: Zeile 136: am: Kommando nicht gefunden.
                                
                                 Daten vom 01.06.2021 bis 31.08.2021 wurden ermittelt...
                                
                                         Ø-Temperatur: 20.04 °C
                                         Regenmenge  : 343.9 l/m²
                                
                                dietpi@DietPi:/home/iobroker$
                                

                                was bedeutet, /home/iobroker/wetterstation.conf: Zeile 136: am: Kommando nicht gefunden.?

                                ° Node.js: 20.17.0 NPM: 10.8.2
                                ° Proxmox, Ubuntu 22.04.3 LTS
                                ° Fixer ---> iob fix

                                BoronsbruderB 1 Antwort Letzte Antwort
                                0
                                • NegaleinN Negalein

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

                                  zur Berechnung im Verzeichnis ./wetterstation.sh --metsommer ausführen

                                  Super :)

                                  /home/iobroker/wetterstation.conf: Zeile 136: am: Kommando nicht gefunden.
                                  
                                   Daten vom 01.06.2021 bis 31.08.2021 wurden ermittelt...
                                  
                                           Ø-Temperatur: 20.04 °C
                                           Regenmenge  : 343.9 l/m²
                                  
                                  dietpi@DietPi:/home/iobroker$
                                  

                                  was bedeutet, /home/iobroker/wetterstation.conf: Zeile 136: am: Kommando nicht gefunden.?

                                  BoronsbruderB Offline
                                  BoronsbruderB Offline
                                  Boronsbruder
                                  schrieb am zuletzt editiert von Boronsbruder
                                  #2910

                                  @negalein
                                  Dass er das Kommando in Zeile 136 nicht gefunden hat
                                  (sorry der musste sein) :rolling_on_the_floor_laughing:

                                  NegaleinN 1 Antwort Letzte Antwort
                                  1
                                  • BoronsbruderB Boronsbruder

                                    @negalein
                                    Dass er das Kommando in Zeile 136 nicht gefunden hat
                                    (sorry der musste sein) :rolling_on_the_floor_laughing:

                                    NegaleinN Offline
                                    NegaleinN Offline
                                    Negalein
                                    Global Moderator
                                    schrieb am zuletzt editiert von
                                    #2911

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

                                    Das er das Kommando in Zeile 136 nicht gefunden hat
                                    (sorry der musste sein)

                                    :tongue:
                                    Ja, mit dem hätt ich rechnen müssen! ;)

                                    ° Node.js: 20.17.0 NPM: 10.8.2
                                    ° Proxmox, Ubuntu 22.04.3 LTS
                                    ° Fixer ---> iob fix

                                    SBorgS 1 Antwort Letzte Antwort
                                    0
                                    • NegaleinN Negalein

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

                                      Das er das Kommando in Zeile 136 nicht gefunden hat
                                      (sorry der musste sein)

                                      :tongue:
                                      Ja, mit dem hätt ich rechnen müssen! ;)

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

                                      @negalein Das muss aber schon länger sein, ist jetzt nur durch das händische starten aufgefallen.

                                      wetterstation.conf mittels nano öffnen, dann STRG+[Unterstrich/Gedankenstrich] drücken, 138 eingeben und [ENTER] drücken.
                                      Wie sieht die Zeile aus? Du musst da ein "am:" drin stehen haben, was da nix zu suchen hat ;)
                                      #138 ist im Original eine Leerzeile

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

                                      NegaleinN 1 Antwort Letzte Antwort
                                      0
                                      • SBorgS SBorg

                                        @negalein Das muss aber schon länger sein, ist jetzt nur durch das händische starten aufgefallen.

                                        wetterstation.conf mittels nano öffnen, dann STRG+[Unterstrich/Gedankenstrich] drücken, 138 eingeben und [ENTER] drücken.
                                        Wie sieht die Zeile aus? Du musst da ein "am:" drin stehen haben, was da nix zu suchen hat ;)
                                        #138 ist im Original eine Leerzeile

                                        NegaleinN Offline
                                        NegaleinN Offline
                                        Negalein
                                        Global Moderator
                                        schrieb am zuletzt editiert von
                                        #2913

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

                                        Das muss aber schon länger sein, ist jetzt nur durch das händische starten aufgefallen.

                                        gefunden

                                        Nach WETTERCOM_PW= waren bei mir nur 3 Leerzeilen.
                                        Im Original aber 4.

                                        Das am ist von Wernstein am Inn gekommen.

                                        ° Node.js: 20.17.0 NPM: 10.8.2
                                        ° Proxmox, Ubuntu 22.04.3 LTS
                                        ° Fixer ---> iob fix

                                        SBorgS 1 Antwort Letzte Antwort
                                        0
                                        • NegaleinN Negalein

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

                                          Das muss aber schon länger sein, ist jetzt nur durch das händische starten aufgefallen.

                                          gefunden

                                          Nach WETTERCOM_PW= waren bei mir nur 3 Leerzeilen.
                                          Im Original aber 4.

                                          Das am ist von Wernstein am Inn gekommen.

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

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

                                          Nach WETTERCOM_PW= waren bei mir nur 3 Leerzeilen.
                                          Im Original aber 4.

                                          Das kann es aber nicht gewesen sein. Die Leerzeilen sind nur für die Übersichtlichkeit und die Abstände werden nicht ausgewertet (so ala "lies Zeile xyz"). Nur die Kopfzeile der Datei muss so bleiben wie sie ist, da hier die Versionsinformation der Datei ermittelt wird. Ansonsten sind die Einrückungen und Gruppierungen nur rein Optik.

                                          Ev. hattest du auch ein unsichtbares CR drin, dass mag Linux überhaupt nicht ;)

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

                                          NegaleinN 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

                                          414

                                          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