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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. E3DC Hauskraftwerk steuern

NEWS

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

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

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

E3DC Hauskraftwerk steuern

Geplant Angeheftet Gesperrt Verschoben JavaScript
3.5k Beiträge 70 Kommentatoren 1.6m Aufrufe 61 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.
  • M Modulo-N

    @arnod
    Hi Arno... Version 1.3.6 läuft seit gestern abend und das bisher fehlerfrei. Ich behalte das trotzdem mal im Auge, da die möglichen Fehlerbedingungen ja durchaus komplex sind und natürlich dann, wenn man drauf schaut, eben nicht auftreten.

    Gruß Michael

    @arnod said in E3DC Hauskraftwerk steuern:

    @modulo-n
    Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
    Kannst du mal die neue Version bei dir testen.

    M Offline
    M Offline
    Modulo-N
    schrieb am zuletzt editiert von
    #3013

    Und prompt kommen wieder Fehler... allerdings lässt sich der bestLoadTime-Fehler

    2024-11-28 02:49:00.357 - error: javascript.0 (6178) script.js.E3DC-Control.Tibber-1_3_6: Fehler in Funktion bestLoadTime: Cannot read properties of undefined (reading 'startsAt')

    ziemlich gut eingrenzen, da es in der Funktion nur ein einziges 'startsAt' gibt und zwar hier:

        for (let i = 0; i < datenTibberLink48h.length - ladezeit_h; i++) {
            const startEntry = datenTibberLink48h[i];
            const startTime = new Date(startEntry.startsAt);
    

    Der Aufruf findet also keinen gültigen Eintrag, entweder weil der Index i nicht stimmt oder einfach kein Eintrag an Stelle i da ist.

    Der andere Fehler dürfte wieder ein Folgefehler sein, denn er kommt jeweils direkt nach einem bestLoadTime Fehler:

    2024-11-28 02:49:00.363 - error: javascript.0 (6178) script.js.E3DC-Control.Tibber-1_3_6: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')

    Ich hab jetzt mal folgendes ergänzt:

        for (let i = 0; i < datenTibberLink48h.length - ladezeit_h; i++) {
            let startEntry = datenTibberLink48h[i];
            let startTime = new Date(new Date().getTime() + 48 * 60 * 60 * 1000);;
            if (!startEntry) 
            {
                log('Keinen Eintrag für i='+i+' in den Tibberdaten48h gefunden','error');
                }
            else
            {
              startTime = new Date(startEntry.startsAt);
            }
    

    Mit der Vorbelegung von startTime auf einen Wert in 48h wird im Fehlerfall die j-Schleife definitiv übersprungen. Auf jeden Fall sehe ich dann auch den Wert für i (bzw. die Werte, falls es mehrere sein sollten.)

    @modulo-n said in E3DC Hauskraftwerk steuern:

    @arnod
    Hi Arno... Version 1.3.6 läuft seit gestern abend und das bisher fehlerfrei. Ich behalte das trotzdem mal im Auge, da die möglichen Fehlerbedingungen ja durchaus komplex sind und natürlich dann, wenn man drauf schaut, eben nicht auftreten.

    Gruß Michael

    @arnod said in E3DC Hauskraftwerk steuern:

    @modulo-n
    Ich habe jetzt mehrere Versuche durchgeführt und kann den Fehler bei mir nicht mehr reproduzieren.
    Kannst du mal die neue Version bei dir testen.

    1 Antwort Letzte Antwort
    0
    • A Online
      A Online
      ArnoD
      schrieb am zuletzt editiert von
      #3014

      @psrelax sagte in E3DC Hauskraftwerk steuern:

      Heute war den ganzen Nachmittag die Entladesperre drin. Unter Tags lass ich es mir eingehen aber sobald ab ca. 16 Uhr kein Solar mehr kommt, sollte schon wieder entladen werden.

      Das ist aber auch richtig. Der Batteriepreis war bei 0.3974 und der Tibber Preis war günstiger bei 0.3173, warum soll dann der teure Strom aus der Batterie verwendet werden? Das ergibt nur Sinn, wenn mit PV-Leistung gerechnet wird und man Platz schaffen will.

      1 Antwort Letzte Antwort
      0
      • A Online
        A Online
        ArnoD
        schrieb am zuletzt editiert von
        #3015

        @psrelax sagte in E3DC Hauskraftwerk steuern:

        Es wurde vorhin der Akku voll geladen und das nicht beim niedrigsten Preis.

        Ja, diesen Fehler hatte ich auch und ist in der Version 1.3.7 behoben.

        1 Antwort Letzte Antwort
        0
        • A Online
          A Online
          ArnoD
          schrieb am zuletzt editiert von ArnoD
          #3016

          @modulo-n sagte in E3DC Hauskraftwerk steuern:

          Und prompt kommen wieder Fehler... allerdings lässt sich der bestLoadTime-Fehler

          Das ist ja interessant, da jetzt datenTibberLink48h auf jeden Fall ein gültiges Array ist und auch daten enthält.
          Ich würde die if abfrage für die LOG Ausgabe noch um startEntry.startsAt ergänzen, da ja eventuell startEntry einen Wert enthält, aber die Eigenschaft startEntry.startsAt nicht.

          let startTime
          if (!startEntry || !startEntry.startsAt){
                 log(`Keinen Eintrag für i = ${i} in den Tibberdaten48h = ${JSON.stringify(datenTibberLink48h[i])} gefunden. datenTibberLink48h.length = ${datenTibberLink48h.length} ladezeit_h = ${ladezeit_h}`,'error');
          } else {
                 startTime = new Date(startEntry.startsAt);
          } 
          
          M 1 Antwort Letzte Antwort
          0
          • A Online
            A Online
            ArnoD
            schrieb am zuletzt editiert von
            #3017

            Tibber Skript,
            Version: 1.3.7 auf Github hochgeladen.

            Änderungen:

            • Mehrere Fehler Ladelogik Normalphase behoben.
            • Weitere Abfrage für Fehler startEntry.startsAt in Funktion bestLoadTime().
            A 1 Antwort Letzte Antwort
            1
            • A ArnoD

              Tibber Skript,
              Version: 1.3.7 auf Github hochgeladen.

              Änderungen:

              • Mehrere Fehler Ladelogik Normalphase behoben.
              • Weitere Abfrage für Fehler startEntry.startsAt in Funktion bestLoadTime().
              A Online
              A Online
              as
              schrieb am zuletzt editiert von
              #3018

              @arnod kann das skript auch ohne tibber vertrag genutzt werden
              wo kommen dann die aktuellen preise her , der ungefähre preisverlauf würde ja grundsätzlich reichen um zu günstiger zeit zu laden z.b

              A 1 Antwort Letzte Antwort
              0
              • A as

                @arnod kann das skript auch ohne tibber vertrag genutzt werden
                wo kommen dann die aktuellen preise her , der ungefähre preisverlauf würde ja grundsätzlich reichen um zu günstiger zeit zu laden z.b

                A Online
                A Online
                ArnoD
                schrieb am zuletzt editiert von
                #3019

                @as
                Generell ja, wenn du ein JSON Objekt erstellst, das so aussieht und mindestens die Eigenschaften "total" und "startsAt" enthält:

                [
                  {
                    "total": 0.2299,
                    "energy": 0.0492,
                    "tax": 0.1807,
                    "startsAt": "2024-11-28T00:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2204,
                    "energy": 0.0412,
                    "tax": 0.1792,
                    "startsAt": "2024-11-28T01:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2106,
                    "energy": 0.033,
                    "tax": 0.1776,
                    "startsAt": "2024-11-28T02:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2095,
                    "energy": 0.0321,
                    "tax": 0.1774,
                    "startsAt": "2024-11-28T03:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2091,
                    "energy": 0.0317,
                    "tax": 0.1774,
                    "startsAt": "2024-11-28T04:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2336,
                    "energy": 0.0523,
                    "tax": 0.1813,
                    "startsAt": "2024-11-28T05:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2487,
                    "energy": 0.065,
                    "tax": 0.1837,
                    "startsAt": "2024-11-28T06:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "CHEAP"
                  },
                  {
                    "total": 0.2762,
                    "energy": 0.0881,
                    "tax": 0.1881,
                    "startsAt": "2024-11-28T07:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.2992,
                    "energy": 0.1074,
                    "tax": 0.1918,
                    "startsAt": "2024-11-28T08:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.2992,
                    "energy": 0.1074,
                    "tax": 0.1918,
                    "startsAt": "2024-11-28T09:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.281,
                    "energy": 0.0921,
                    "tax": 0.1889,
                    "startsAt": "2024-11-28T10:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.2888,
                    "energy": 0.0987,
                    "tax": 0.1901,
                    "startsAt": "2024-11-28T11:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.2858,
                    "energy": 0.0962,
                    "tax": 0.1896,
                    "startsAt": "2024-11-28T12:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.2864,
                    "energy": 0.0967,
                    "tax": 0.1897,
                    "startsAt": "2024-11-28T13:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.2878,
                    "energy": 0.0979,
                    "tax": 0.1899,
                    "startsAt": "2024-11-28T14:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.3042,
                    "energy": 0.1116,
                    "tax": 0.1926,
                    "startsAt": "2024-11-28T15:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.3292,
                    "energy": 0.1326,
                    "tax": 0.1966,
                    "startsAt": "2024-11-28T16:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.3491,
                    "energy": 0.1493,
                    "tax": 0.1998,
                    "startsAt": "2024-11-28T17:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "EXPENSIVE"
                  },
                  {
                    "total": 0.3597,
                    "energy": 0.1582,
                    "tax": 0.2015,
                    "startsAt": "2024-11-28T18:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "EXPENSIVE"
                  },
                  {
                    "total": 0.3545,
                    "energy": 0.1539,
                    "tax": 0.2006,
                    "startsAt": "2024-11-28T19:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "EXPENSIVE"
                  },
                  {
                    "total": 0.3427,
                    "energy": 0.144,
                    "tax": 0.1987,
                    "startsAt": "2024-11-28T20:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.329,
                    "energy": 0.1325,
                    "tax": 0.1965,
                    "startsAt": "2024-11-28T21:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.3167,
                    "energy": 0.1222,
                    "tax": 0.1945,
                    "startsAt": "2024-11-28T22:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  },
                  {
                    "total": 0.3054,
                    "energy": 0.1126,
                    "tax": 0.1928,
                    "startsAt": "2024-11-28T23:00:00.000+01:00",
                    "currency": "EUR",
                    "level": "NORMAL"
                  }
                ]
                
                A 1 Antwort Letzte Antwort
                0
                • A ArnoD

                  Neue Version Charge-Control auf GitHub hochgeladen.
                  Version: 1.5.11
                  Änderungen:

                  • Fehler behoben, dass die Autonomiezeit nicht auf 0:00 h gesetzt wurde, obwohl der Batterie SOC 0 % hatte.
                  A Online
                  A Online
                  as
                  schrieb am zuletzt editiert von
                  #3020

                  @arnod habe aktuell das Problem mit meinem Netzbetreiber der ein IMSYS verbauen will da ich eine Erweiterung angemeldet habe
                  nun fordert dieser die Umsetzung nach §14a für die Battieladung/Netzbezug ist es möglich über dein Skript soetwas zu integrieren das das E3DC nur mit 4,2 KW den Akku laden würde bei Anforderung! und möglicherweise auch eine gesamte Leistungsbegrenzung des Bezuges für andere Verbraucher oder gar alle im Haus vorhandenen zb WP und Wallbox

                  die externen Signale könnte man ja irgendwie vom IMSYS entgegennehmen und per Iobroker ans E3DC umsetzten
                  aktuell gibt es ja nichts von irgendeinem WR Hersteller

                  1 Antwort Letzte Antwort
                  0
                  • A ArnoD

                    @as
                    Generell ja, wenn du ein JSON Objekt erstellst, das so aussieht und mindestens die Eigenschaften "total" und "startsAt" enthält:

                    [
                      {
                        "total": 0.2299,
                        "energy": 0.0492,
                        "tax": 0.1807,
                        "startsAt": "2024-11-28T00:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2204,
                        "energy": 0.0412,
                        "tax": 0.1792,
                        "startsAt": "2024-11-28T01:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2106,
                        "energy": 0.033,
                        "tax": 0.1776,
                        "startsAt": "2024-11-28T02:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2095,
                        "energy": 0.0321,
                        "tax": 0.1774,
                        "startsAt": "2024-11-28T03:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2091,
                        "energy": 0.0317,
                        "tax": 0.1774,
                        "startsAt": "2024-11-28T04:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2336,
                        "energy": 0.0523,
                        "tax": 0.1813,
                        "startsAt": "2024-11-28T05:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2487,
                        "energy": 0.065,
                        "tax": 0.1837,
                        "startsAt": "2024-11-28T06:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "CHEAP"
                      },
                      {
                        "total": 0.2762,
                        "energy": 0.0881,
                        "tax": 0.1881,
                        "startsAt": "2024-11-28T07:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.2992,
                        "energy": 0.1074,
                        "tax": 0.1918,
                        "startsAt": "2024-11-28T08:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.2992,
                        "energy": 0.1074,
                        "tax": 0.1918,
                        "startsAt": "2024-11-28T09:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.281,
                        "energy": 0.0921,
                        "tax": 0.1889,
                        "startsAt": "2024-11-28T10:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.2888,
                        "energy": 0.0987,
                        "tax": 0.1901,
                        "startsAt": "2024-11-28T11:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.2858,
                        "energy": 0.0962,
                        "tax": 0.1896,
                        "startsAt": "2024-11-28T12:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.2864,
                        "energy": 0.0967,
                        "tax": 0.1897,
                        "startsAt": "2024-11-28T13:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.2878,
                        "energy": 0.0979,
                        "tax": 0.1899,
                        "startsAt": "2024-11-28T14:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.3042,
                        "energy": 0.1116,
                        "tax": 0.1926,
                        "startsAt": "2024-11-28T15:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.3292,
                        "energy": 0.1326,
                        "tax": 0.1966,
                        "startsAt": "2024-11-28T16:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.3491,
                        "energy": 0.1493,
                        "tax": 0.1998,
                        "startsAt": "2024-11-28T17:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "EXPENSIVE"
                      },
                      {
                        "total": 0.3597,
                        "energy": 0.1582,
                        "tax": 0.2015,
                        "startsAt": "2024-11-28T18:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "EXPENSIVE"
                      },
                      {
                        "total": 0.3545,
                        "energy": 0.1539,
                        "tax": 0.2006,
                        "startsAt": "2024-11-28T19:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "EXPENSIVE"
                      },
                      {
                        "total": 0.3427,
                        "energy": 0.144,
                        "tax": 0.1987,
                        "startsAt": "2024-11-28T20:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.329,
                        "energy": 0.1325,
                        "tax": 0.1965,
                        "startsAt": "2024-11-28T21:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.3167,
                        "energy": 0.1222,
                        "tax": 0.1945,
                        "startsAt": "2024-11-28T22:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      },
                      {
                        "total": 0.3054,
                        "energy": 0.1126,
                        "tax": 0.1928,
                        "startsAt": "2024-11-28T23:00:00.000+01:00",
                        "currency": "EUR",
                        "level": "NORMAL"
                      }
                    ]
                    
                    A Online
                    A Online
                    as
                    schrieb am zuletzt editiert von
                    #3021

                    @arnod irgendwo müssen ja die Tibber Preise abgerufen werden
                    die option hatte ich im hinterkopf

                    1 Antwort Letzte Antwort
                    0
                    • A Online
                      A Online
                      ArnoD
                      schrieb am zuletzt editiert von
                      #3022

                      @as sagte in E3DC Hauskraftwerk steuern:

                      ist es möglich über dein Skript soetwas zu integrieren das das E3DC nur mit 4,2 KW den Akku laden würde bei Anforderung!

                      Das ist bereits jetzt möglich.

                      irgendwo müssen ja die Tibber Preise abgerufen werden

                      Das alleine wird dir aber nicht helfen ohne Liefervertrag der die Börsenpreise berücksichtigt.

                      1 Antwort Letzte Antwort
                      0
                      • A ArnoD

                        @modulo-n sagte in E3DC Hauskraftwerk steuern:

                        Und prompt kommen wieder Fehler... allerdings lässt sich der bestLoadTime-Fehler

                        Das ist ja interessant, da jetzt datenTibberLink48h auf jeden Fall ein gültiges Array ist und auch daten enthält.
                        Ich würde die if abfrage für die LOG Ausgabe noch um startEntry.startsAt ergänzen, da ja eventuell startEntry einen Wert enthält, aber die Eigenschaft startEntry.startsAt nicht.

                        let startTime
                        if (!startEntry || !startEntry.startsAt){
                               log(`Keinen Eintrag für i = ${i} in den Tibberdaten48h = ${JSON.stringify(datenTibberLink48h[i])} gefunden. datenTibberLink48h.length = ${datenTibberLink48h.length} ladezeit_h = ${ladezeit_h}`,'error');
                        } else {
                               startTime = new Date(startEntry.startsAt);
                        } 
                        
                        M Offline
                        M Offline
                        Modulo-N
                        schrieb am zuletzt editiert von Modulo-N
                        #3023

                        @arnod said in E3DC Hauskraftwerk steuern:

                        @modulo-n sagte in E3DC Hauskraftwerk steuern:

                        Und prompt kommen wieder Fehler... allerdings lässt sich der bestLoadTime-Fehler

                        Das ist ja interessant, da jetzt datenTibberLink48h auf jeden Fall ein gültiges Array ist und auch daten enthält.

                        Mit meiner "temporären" Ergänzung habe ich heute nacht die folgenden Fehler bekommen:

                        2024-11-29 02:01:00.243 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                        2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                        2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                        

                        Sieht so aus, als wäre das Array nur noch "halb-voll" (length=24, also [0..23]) und das Skript greift auf Indizes [24] und [25] zu ...

                        Besonders interessant finde ich den Zeitstempel, den ich bisher nicht so im Fokus hatte: 02:01 ... Ich hatte erst die "Zwangstrennung" der Fritz!Box in Verdacht, aber die hat sich erst gegen 02:43 neu verbunden. Passiert in deinem Skript etwas um 02:00, was dann beim ersten Neuberechnen der besten Ladezeit eine Minute später ein Problem erzeugt?

                        Auf jeden Fall installiere ich erstmal Version 1.3.7...

                        Nachtrag:
                        Vielleicht auch noch interessant => der Kontext der Fehlermeldungen... Direkt vor Auftreten der ersten Meldung wurde Batterieladen auf true gesetzt:

                        2024-11-29 02:00:00.052 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in true geändert ====-
                        2024-11-29 02:00:00.258 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== EMS Laden/Entladen der Batterie ist eingeschaltet ====- "}##
                        2024-11-29 02:01:00.243 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                        2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                        2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                        

                        und das ging dann durchgängig im Minutentakt weiter bis das Laden wieder auf false gesetzt wurde

                        2024-11-29 03:37:00.251 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                        2024-11-29 03:37:00.251 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                        2024-11-29 03:37:00.252 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                        2024-11-29 03:38:00.282 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in false geändert ====-
                        2024-11-29 03:38:03.253 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== Notstrom Reserve erreicht, Laden/Entladen der Batterie ist ausgeschaltet ====- "}##
                        

                        Dann war 20min Ruhe und nach dem Einschalten des Batterieladens ging es wieder los... bis zum erneuten Abschalten (war aber nur kurz)

                        2024-11-29 03:57:00.235 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in true geändert ====-
                        2024-11-29 03:57:03.132 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== EMS Laden/Entladen der Batterie ist eingeschaltet ====- "}##
                        2024-11-29 03:58:00.195 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                        2024-11-29 03:58:00.196 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                        2024-11-29 03:58:00.196 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                        2024-11-29 03:58:00.198 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: 2024-11-29 03:59:00.290 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in false geändert ====-
                        2024-11-29 03:59:03.206 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== Notstrom Reserve erreicht, Laden/Entladen der Batterie ist ausgeschaltet ====- "}##
                        
                        
                        A 1 Antwort Letzte Antwort
                        0
                        • M Modulo-N

                          @arnod said in E3DC Hauskraftwerk steuern:

                          @modulo-n sagte in E3DC Hauskraftwerk steuern:

                          Und prompt kommen wieder Fehler... allerdings lässt sich der bestLoadTime-Fehler

                          Das ist ja interessant, da jetzt datenTibberLink48h auf jeden Fall ein gültiges Array ist und auch daten enthält.

                          Mit meiner "temporären" Ergänzung habe ich heute nacht die folgenden Fehler bekommen:

                          2024-11-29 02:01:00.243 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                          2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                          2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                          

                          Sieht so aus, als wäre das Array nur noch "halb-voll" (length=24, also [0..23]) und das Skript greift auf Indizes [24] und [25] zu ...

                          Besonders interessant finde ich den Zeitstempel, den ich bisher nicht so im Fokus hatte: 02:01 ... Ich hatte erst die "Zwangstrennung" der Fritz!Box in Verdacht, aber die hat sich erst gegen 02:43 neu verbunden. Passiert in deinem Skript etwas um 02:00, was dann beim ersten Neuberechnen der besten Ladezeit eine Minute später ein Problem erzeugt?

                          Auf jeden Fall installiere ich erstmal Version 1.3.7...

                          Nachtrag:
                          Vielleicht auch noch interessant => der Kontext der Fehlermeldungen... Direkt vor Auftreten der ersten Meldung wurde Batterieladen auf true gesetzt:

                          2024-11-29 02:00:00.052 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in true geändert ====-
                          2024-11-29 02:00:00.258 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== EMS Laden/Entladen der Batterie ist eingeschaltet ====- "}##
                          2024-11-29 02:01:00.243 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                          2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                          2024-11-29 02:01:00.244 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                          

                          und das ging dann durchgängig im Minutentakt weiter bis das Laden wieder auf false gesetzt wurde

                          2024-11-29 03:37:00.251 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                          2024-11-29 03:37:00.251 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                          2024-11-29 03:37:00.252 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                          2024-11-29 03:38:00.282 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in false geändert ====-
                          2024-11-29 03:38:03.253 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== Notstrom Reserve erreicht, Laden/Entladen der Batterie ist ausgeschaltet ====- "}##
                          

                          Dann war 20min Ruhe und nach dem Einschalten des Batterieladens ging es wieder los... bis zum erneuten Abschalten (war aber nur kurz)

                          2024-11-29 03:57:00.235 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in true geändert ====-
                          2024-11-29 03:57:03.132 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== EMS Laden/Entladen der Batterie ist eingeschaltet ====- "}##
                          2024-11-29 03:58:00.195 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=24 in den Tibberdaten48h gefunden
                          2024-11-29 03:58:00.196 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: Keinen Eintrag für i=25 in den Tibberdaten48h gefunden
                          2024-11-29 03:58:00.196 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                          2024-11-29 03:58:00.198 - error: javascript.0 (187) script.js.E3DC-Control.Tibber-1_3_6: 2024-11-29 03:59:00.290 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: -==== Tibber output signal BatterieLaden wurde in false geändert ====-
                          2024-11-29 03:59:03.206 - warn: javascript.0 (187) script.js.E3DC-Control.Charge-Control-1_5_11: ##{"from":"Charge-Control", "message":" -==== Notstrom Reserve erreicht, Laden/Entladen der Batterie ist ausgeschaltet ====- "}##
                          
                          
                          A Online
                          A Online
                          ArnoD
                          schrieb am zuletzt editiert von ArnoD
                          #3024

                          @modulo-n
                          Ok, jetzt kommen wir dem Fehler schon mal näher :-)
                          Ab 0:00 Uhr sollte das Array auch nur noch "halb-voll" sein, bis ca. 13:00 Uhr, wo dann die neuen Daten für den nächsten Tag von Tibber übermittelt werden.
                          Ich schaue mir das mal an, warum auf Indizes [24] und [25] zugegriffen wird obwohl, length=24 ist.
                          Wichtig wäre jetzt der Wert von ladeZeit_h.

                          Nachtrag:
                          Bei mir ist jetzt endlich auch der Fehler aufgetreten :-) und habe folgenden Eintrag im LOG:

                          2024-11-30 07:40:00.126  - error: javascript.0 (228) script.js.common.Tibber: Keinen Eintrag für i = 24 in den Tibberdaten48h = undefined gefunden. datenTibberLink48h.length = 24 ladezeit_h = -1.0000269444444445
                          

                          Der Fehler ist die Variable ladezeit_h, die einen negativen Wert hat und da zweimal minus wieder plus ergibt....
                          Warum bei der Ladezeit ein negativer Wert herauskommen kann, muss ich mal anschauen.

                          M 1 Antwort Letzte Antwort
                          0
                          • A Online
                            A Online
                            ArnoD
                            schrieb am zuletzt editiert von ArnoD
                            #3025

                            Tibber Skript,
                            Version: 1.3.8 auf Github hochgeladen.

                            Änderungen:

                            • Fehler in Funktion bestLoadTime() behoben. Die Variable ladezeit_h sollte jetzt immer mindestens 1 sein.
                            P 1 Antwort Letzte Antwort
                            1
                            • A ArnoD

                              Tibber Skript,
                              Version: 1.3.8 auf Github hochgeladen.

                              Änderungen:

                              • Fehler in Funktion bestLoadTime() behoben. Die Variable ladezeit_h sollte jetzt immer mindestens 1 sein.
                              P Offline
                              P Offline
                              psrelax
                              schrieb am zuletzt editiert von
                              #3026

                              @arnod
                              Hab wieder mal ein Problem wenn ich ein neues Script starte. Ich weiß nicht, was das immer ist. Behebt sich bestimmt wieder von alleine :-)

                              
                              javascript.0
                              2024-12-01 00:06:00.156	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                              
                              javascript.0
                              2024-12-01 00:06:00.154	error	script.js.E3DC_ChargeControl.Tibber: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                              
                              javascript.0
                              2024-12-01 00:05:00.101	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                              
                              javascript.0
                              2024-12-01 00:05:00.096	error	script.js.E3DC_ChargeControl.Tibber: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                              
                              javascript.0
                              2024-12-01 00:04:17.196	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                              
                              javascript.0
                              2024-12-01 00:04:17.195	error	script.js.E3DC_ChargeControl.Tibber: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                              
                              A 1 Antwort Letzte Antwort
                              0
                              • P psrelax

                                @arnod
                                Hab wieder mal ein Problem wenn ich ein neues Script starte. Ich weiß nicht, was das immer ist. Behebt sich bestimmt wieder von alleine :-)

                                
                                javascript.0
                                2024-12-01 00:06:00.156	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                                
                                javascript.0
                                2024-12-01 00:06:00.154	error	script.js.E3DC_ChargeControl.Tibber: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                                
                                javascript.0
                                2024-12-01 00:05:00.101	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                                
                                javascript.0
                                2024-12-01 00:05:00.096	error	script.js.E3DC_ChargeControl.Tibber: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                                
                                javascript.0
                                2024-12-01 00:04:17.196	error	script.js.E3DC_ChargeControl.Tibber: Fehler in Funktion tibberSteuerungHauskraftwerk: Cannot read properties of undefined (reading 'getTime')
                                
                                javascript.0
                                2024-12-01 00:04:17.195	error	script.js.E3DC_ChargeControl.Tibber: function bestLoadTime: Kein Eintrag gefunden datenTibberLink48h.length = 24 billigsteZeit = null
                                
                                A Online
                                A Online
                                ArnoD
                                schrieb am zuletzt editiert von
                                #3027

                                @psrelax
                                Hast du die neuste Version vom Script?
                                Sind das alle Fehlermeldungen oder ist im LOG vor diesem Fehler noch eine weitere Fehlermeldung eingetragen?

                                Frage nur, weil dieser Fehler so eigentlich nicht mehr auftreten kann, außer Javascript würde die For-Schleife nicht abwarten.

                                P 1 Antwort Letzte Antwort
                                0
                                • A Online
                                  A Online
                                  ArnoD
                                  schrieb am zuletzt editiert von
                                  #3028

                                  Tibber Skript,
                                  Version: 1.3.9 auf Github hochgeladen.

                                  Änderungen:

                                  • Weitere Absicherung in der Funktion bestLoadTime() eingebaut, um Fehler billigsteZeit = null zu verhindern.
                                  1 Antwort Letzte Antwort
                                  0
                                  • A ArnoD

                                    @modulo-n
                                    Ok, jetzt kommen wir dem Fehler schon mal näher :-)
                                    Ab 0:00 Uhr sollte das Array auch nur noch "halb-voll" sein, bis ca. 13:00 Uhr, wo dann die neuen Daten für den nächsten Tag von Tibber übermittelt werden.
                                    Ich schaue mir das mal an, warum auf Indizes [24] und [25] zugegriffen wird obwohl, length=24 ist.
                                    Wichtig wäre jetzt der Wert von ladeZeit_h.

                                    Nachtrag:
                                    Bei mir ist jetzt endlich auch der Fehler aufgetreten :-) und habe folgenden Eintrag im LOG:

                                    2024-11-30 07:40:00.126  - error: javascript.0 (228) script.js.common.Tibber: Keinen Eintrag für i = 24 in den Tibberdaten48h = undefined gefunden. datenTibberLink48h.length = 24 ladezeit_h = -1.0000269444444445
                                    

                                    Der Fehler ist die Variable ladezeit_h, die einen negativen Wert hat und da zweimal minus wieder plus ergibt....
                                    Warum bei der Ladezeit ein negativer Wert herauskommen kann, muss ich mal anschauen.

                                    M Offline
                                    M Offline
                                    Modulo-N
                                    schrieb am zuletzt editiert von
                                    #3029

                                    @arnod
                                    Super, dass dir das geholfen hat... Ich war bis eben gerade unterwegs und habe im Log genau diese negative Ladezeit gesehen und gedacht "Aha, da haben wir's ja... -(- ) => +"... mal sehen, was die 1.3.9 bringt. Langsam sollten wir das ja mal ausgemerzt haben...

                                    Gruß

                                    Michael

                                    1 Antwort Letzte Antwort
                                    0
                                    • A ArnoD

                                      @psrelax
                                      Hast du die neuste Version vom Script?
                                      Sind das alle Fehlermeldungen oder ist im LOG vor diesem Fehler noch eine weitere Fehlermeldung eingetragen?

                                      Frage nur, weil dieser Fehler so eigentlich nicht mehr auftreten kann, außer Javascript würde die For-Schleife nicht abwarten.

                                      P Offline
                                      P Offline
                                      psrelax
                                      schrieb am zuletzt editiert von psrelax
                                      #3030

                                      @arnod sagte in E3DC Hauskraftwerk steuern:

                                      Hast du die neuste Version vom Script?

                                      Ja war die neueste Version.

                                      Jetzt bei 1.3.9 gab es keinen Fehler bei mir.

                                      1 Antwort Letzte Antwort
                                      0
                                      • P Offline
                                        P Offline
                                        psrelax
                                        schrieb am zuletzt editiert von psrelax
                                        #3031

                                        Heute wurde um 21 Uhr geladen. SOC war voll genug. Hätte auch locker gereicht, wenn im nächsten Tal geladen worden wäre, zumal eh eine Entladesperre gesetzt ist.
                                        27e5e907-0e7b-4ac4-a707-64498f765f8a-image.png

                                        Brauchst du Logs?

                                        A 1 Antwort Letzte Antwort
                                        0
                                        • P psrelax

                                          Heute wurde um 21 Uhr geladen. SOC war voll genug. Hätte auch locker gereicht, wenn im nächsten Tal geladen worden wäre, zumal eh eine Entladesperre gesetzt ist.
                                          27e5e907-0e7b-4ac4-a707-64498f765f8a-image.png

                                          Brauchst du Logs?

                                          A Online
                                          A Online
                                          ArnoD
                                          schrieb am zuletzt editiert von
                                          #3032

                                          @psrelax
                                          Ja vom Start und vom Ende der Ladefreigabe um erkennen zu können warum geladen wurde.
                                          Ich vermute aber das die Reichweite der Batterie um 21:00 Uhr noch nicht bis zum nächsten Tal gereicht hätte.

                                          P 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

                                          596

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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