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. Skripten / Logik
  4. JavaScript
  5. ecoflow-connector-Script zur dynamischen Leistungsanpassung

NEWS

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

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

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

ecoflow-connector-Script zur dynamischen Leistungsanpassung

Geplant Angeheftet Gesperrt Verschoben JavaScript
1.6k Beiträge 127 Kommentatoren 743.9k Aufrufe 127 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 MikeRow

    @maik-becker Ich kann das bei meiner Delta Pro auch feststellen. Konntest du das Problem lösen?

    Maik BeckerM Offline
    Maik BeckerM Offline
    Maik Becker
    schrieb am zuletzt editiert von
    #1313

    @MikeRow ja ich habe die werte noch einmal wo anderes her geholt.

    1 Antwort Letzte Antwort
    0
    • Maik BeckerM Offline
      Maik BeckerM Offline
      Maik Becker
      schrieb am zuletzt editiert von
      #1314

      Hallo,

      ich habe jetzt eine Delta Pro und eine Delta Max mit je einem Powerstream und einer Sellysteckdose zum einschalten der AC Ladung, wie kann ich die Überschussladung für beide Geräte einstellen?

      1 Antwort Letzte Antwort
      0
      • M Mario1995

        @accu Ich habe die Outdoor Batterie (2 Kwh). Das Skript funktioniert damit. Allerdings werden die Ganzen Werte (Akkustand etc.) direkt vom PowerStream geliefert. Zu deiner anderen Frage mit der Delta kann ich dir keine Auskunft geben.

        A Offline
        A Offline
        Accu
        schrieb am zuletzt editiert von
        #1315

        @mario1995 scheint leider ausverkauft zu sein :(

        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          MikeRow
          schrieb am zuletzt editiert von
          #1316

          Hallo, irgendwie bekomme ich das Script nicht zum laufen. Die an AC angeschlossene Fritz Dect wird nicht geschaltet!

          Ich habe eine existierende PV Anlage und habe den WR unter Additional Power angelegt. Als Smartmeter ist der Tibber Pulse angegeben. Am AC Eingang der Delta Pro ist eine Fritz Dect angeschlossen. Ich habe das Script nun schon mehrfach geprüft und die Videos kann ich fast auswendig. Egal was ich einstelle, die Fritz Dect wird nicht geschaltet. Hat jemand eine Idee für mich? @Waly_de kannst du dir mal vielleicht die angehängte Config ansehen. Ich bin sonst mit meinem Latein am Ende :-(

          Screenshot 2024-06-18 130625.png

          email: "XXXXXX@outlook.de",                             // Die App-Zugangsdaten von ecoFlow
          passwort: "XXXXXX",
          SmartmeterID: "tibberlink.0.Homes.XXXXXX.LiveMeasurement.power",     // State, der den aktuellen Gesamtverbrauch in Watt anzeigt
          seriennummern: [
              //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
              {
                  seriennummer: "XXXXXXXXXXXXX",              // Die Seriennummer des Gerätes
                  name: "PowerStream",                        // beliebiger Name
                  MaxPower: 600,                              // Der höchstmögliche Wert in Watt für die Einspeiseleistung
                  subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                  typ: "PS",                                  // Welches Gerät ist es: PowerStream:"PS"; DeltaMax:"DM"; Delta2: "D2" ; Delta2 Max/Delta Pro: "D2M"; SmartPlug: "SM"; Andere: "NA" 
                  // Parameter an hier nur für PowerStream.     
                  regulation: true,                           // "true": Dieser PowerStream soll vom Script reguliert werden
                  RegulationOffPower: -1,                     // Wird die Regulation per State abgestellt, wird die Einspeiseleistung des ersten Powerstreams auf diesen Wert gesetzt (-1 = keine Änderung, -2 = Batterie Priomodus)
                  hasBat: true,                               // "true": Eine Batterie ist angeschlossen. Nur für PowerStream relevant.
                  battPozOn: 100, battPozOff: 97,              // Wenn die Batterie bei battPozOn ist, Einspeisung auf MaxPower. Bei BattPozOff Normalbetrieb
                  battOnSwitchPrio: true,                     // "true": Bei battPozOn wird in den Batterie-Prioritätsmodus gewechselt
                  prioOffOnDemand: 30,                        // Wattwert des Bedarfs, bei dem zurück in den Strom-Priomodus geschaltet wird. 0 für kein Rückschalten.   
                  lowBatLimitPozOn: 5, lowBatLimitPozOff: 15, // Bei Unterschreiten der Batterieladung von "lowBatLimitPozOn" % ist die maximale Einspeiseleistung auf 
                  lowBatLimit: 250,                           // "lowBatLimit" limitiert, bis der Ladezustand wieder bei "lowBatLimitPozOff" ist
              },
              //#######################################################################
              {
                  seriennummer: "XXXXXXX",
                  name: "DELTA PRO",
                  typ: "D2M",
                  subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
              },
              //#######################################################################
              {
                  seriennummer: "XXXXXXXXXXXXX",
                  name: "SmartPlug 1",
                  typ: "SM",
                  subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
              },
              //#######################################################################
          ],
          AdditionalPowerAvgPeriod: 15000,                    // Zeitraum in ms in denen ein Durchschittswert der Summe von AdditionalPower erstellt wird
          AdditionalPower: [                                  // Wenn es weitere Wechselrichter gibt, die in IOBroker erfasst werden, können diese hier Angelegt werden
              //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
              {
                  name: "STP8",                       // Beliebiger Name
                  id: "modbus.0.inputRegisters.30775_PV_Leistung_Gesamt_Aktuell",      // Der Objektpfad zu dem Leistungswert in Watt (W)
                  factor: 1,                                  // Divisionsfaktor für den Leistungswert. (10 für die Delta)
                  offset: 0,                                  // Wert wird zum Messwert addiert um Messabweichungen ausgleichen zu können 
                  NoFeedIn: false,                            // true setzen, wenn die enthaltene Leistung nicht ins Hausnetz fließt. (Nur in PVTotal aufnehmen)
                  NoPV: false,                                // true setzen, wenn die enthaltene Leistung nicht in TotalPV einfließen soll. (Nur in Realpower aufnehmen)   
          
          //#######################################################################
          //****************************************
          // Erweiterte Einstellungen:
          //****************************************
          SmartmeterTimeoutMin: 4,                            // Wenn der letzte Wert vom Smartmeter älter als "SmartmeterTimeoutMin" ist, wird das Script mit...
          SmartmeterFallbackPower: 150,                       // SmartmeterFallbackPower als aktuellem Realpowerwert weiter arbeiten, bis wieder aktuelle Daten geliefert werden. 
          RegulationIntervalSec: 15,                          // Intervall in Sekunden in denen gemessen und reguliert wird 
          Regulation: true,                                   // 'false' stellt das Setzen der Einspeiseleistung ab 
          RegulationState: "Regulate",                        // Wenn angegeben, kann mit diesem State die Regulation ein- und ausgeschaltet werden (Wird automatisch unter 0_userdata.0.ecoflow angelegt)
          RegulationMultiPsMode: 0,                           // Wenn mehrere PS reguliert werden sollen. "balance" = 0 oder "serial" = 1
          SerialReverse: false,                               // true: im serial Mode (RegulationMultiPsMode: 1) werden die PS in umgekehrter Rheihenfolge duchfaufen 
          BasePowerOffset: 30,                                // Wird vom aktuellen Verbrauch abgezogen, um die Einspeiseleistung zu berechnen 
          Zusatzpower_Offset: 10,                             // Zusatzpower startet ab einer Batterieladeleistung von MaxPower - Zusatzpower_Offset
          MinValueMin: 2,                                     // Der Zeitraum in Minuten, aus dem der niedrigste Gesamtverbrauchswert geholt werden soll. 0 für Echtzeitwert
          MinValueAg: 0,                                      // Art der Ermittlung des kleinsten Wertes: 0 = Minimalwert, 1 = Durchschnittswert
          ReconnectMin: 30,                                   // Zeit in Minuten, nach der die Anwendung neu gestartet wird, wenn keine neuen Daten eintreffen
          statesPrefix: "0_userdata.0.ecoflow",               // Hier werden die ecoFlow States angelegt
          latitude: latitude,                                 // Breitengrad des Standortes (wird automatisch eingesetzt)
          longitude: longitude,                               // Längengrad des Standortes (wird automatisch eingesetzt)
          //****************************************
          // Überschussladung:
          //****************************************
          ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                              //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
          ExcessChargePowerID: "0_userdata.0.ecoflow.app_XXXXXXXXXXX_thing_property_set.writeables.slowChgPower",
                                                              //ID des aktuellen Ladestandes des Speichers in %: 
          ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_XXXXXXXXXXX.data.params.bmsMaster.soc",
          ExcessChargeSwitchMin: 5,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
          ExcessChargeMaxPower: 2000,                         //Maximale Ladeleistung des Speichers in Watt
          ExcessChargeOffsetPower: 0,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
          ExcessChargeStartPower: 50,                         //Mindest-Überschussleistung zum Einschalten des Speichers
          ExcessChargeStopPower: 0,                           //Überschussleistung bei der der Speicher abgeschaltet werden soll.
          ExcessChargeStartPowerDurationMin: 1,               //Mindestdauer in Minuten, die ExcessChargeStartPower nicht unterschritten werden darf, bevor der Speicher eingeschaltet wird.
          ExcessChargeMinRegulatePause: 1,                    //Mindestpause in Minuten zwischen einzelnen Regelbefehlen (EEPROM-Schutz)
          ExcessChargeRegulateSteps: 100,                     //Stufen in Watt, in denen die Werte geändert werden sollen 
          ExcessChargeBatSocMax: 95,                          // Batterieladestand muss <= sein damit die Überschussladung gestartet wird
          ExcessChargeBatSocOff: 100,                         // Batterieladestand bei dem die Überschussladung abgeschaltet wird
          //----------------------------------------
          // Beispiel für Delta-Nutzung ohne Schlaltersteckdose:
          // Wird an einer Delta auch der PV-Eingang genutzt, bitte die PV-Leistung unter AdditionalPower anlegen. Die passende ID ist:
          // 0_userdata.0.ecoflow.app_device_property_xxx.data.params.mppt.inWatts
          // Bei der Delta: "subscribe: true" konfigurieren
          //----------------------------------------
                                                              //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
          //ExcessActualPowerID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.inv.inputWatts",
                                                              //ID des Schalters, der den Speicher aktiviert: 
          //ExcessChargeSwitchID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.chgPause", 
          //ExcessChargeSwitchOn: 0,                          //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
          //ExcessChargeSwitchOff: 1,                         //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
          //----------------------------------------
          // Beispiel für Nutzung einer Schlaltersteckdose:
          //----------------------------------------
                                                              //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
          ExcessActualPowerID: "fritzdect.0.DECT_116570551682.power",
                                                              //ID des Schalters, der den Speicher aktiviert: 
          ExcessChargeSwitchID: "fritzdect.0.DECT_116570551682.state", 
          ExcessChargeSwitchOn: true,                         //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
          ExcessChargeSwitchOff: false,                       //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
          //----------------------------------------
          //****************************************
          Debug: false, mlog: true,
          PlotCmdID: 99999,
          

          U 1 Antwort Letzte Antwort
          0
          • D DerSmily

            Ich versuche gerade das Skript mal wieder zum Laufen zu bringen:

            Wie bekomme ich diesen Fehler weg?
            javascript.0 11:31:21.934 info script.js.Ecoflow.DL: Fehler beim Abrufen des niedrigsten Werts: timeout
            javascript.0 11:31:36.912 info script.js.Ecoflow.DL: getLowestValue-error: timeout

            Zur Info vielleicht: Ich habe eine PS und nur einen Zusatzakku Delta

            Thomas BucherT Offline
            Thomas BucherT Offline
            Thomas Bucher
            schrieb am zuletzt editiert von
            #1317

            @dersmily schau mal ob der History Adapter läuft

            Maik BeckerM 1 Antwort Letzte Antwort
            0
            • Thomas BucherT Thomas Bucher

              @dersmily schau mal ob der History Adapter läuft

              Maik BeckerM Offline
              Maik BeckerM Offline
              Maik Becker
              schrieb am zuletzt editiert von
              #1318

              @Waly_de kann man das Skript prüfen lassen ob der Powerstream Strom einspeist.

              Ich habe zur Zeit eine Delta Pro und Max mit je einem Powerstream, aber zur Zeit ist es wieder mal ab und zu, dass er die Batterie ladet und aber auch über den Powerstream 300 Watt einspeist

              1 Antwort Letzte Antwort
              0
              • M MikeRow

                Hallo, irgendwie bekomme ich das Script nicht zum laufen. Die an AC angeschlossene Fritz Dect wird nicht geschaltet!

                Ich habe eine existierende PV Anlage und habe den WR unter Additional Power angelegt. Als Smartmeter ist der Tibber Pulse angegeben. Am AC Eingang der Delta Pro ist eine Fritz Dect angeschlossen. Ich habe das Script nun schon mehrfach geprüft und die Videos kann ich fast auswendig. Egal was ich einstelle, die Fritz Dect wird nicht geschaltet. Hat jemand eine Idee für mich? @Waly_de kannst du dir mal vielleicht die angehängte Config ansehen. Ich bin sonst mit meinem Latein am Ende :-(

                Screenshot 2024-06-18 130625.png

                email: "XXXXXX@outlook.de",                             // Die App-Zugangsdaten von ecoFlow
                passwort: "XXXXXX",
                SmartmeterID: "tibberlink.0.Homes.XXXXXX.LiveMeasurement.power",     // State, der den aktuellen Gesamtverbrauch in Watt anzeigt
                seriennummern: [
                    //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
                    {
                        seriennummer: "XXXXXXXXXXXXX",              // Die Seriennummer des Gerätes
                        name: "PowerStream",                        // beliebiger Name
                        MaxPower: 600,                              // Der höchstmögliche Wert in Watt für die Einspeiseleistung
                        subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                        typ: "PS",                                  // Welches Gerät ist es: PowerStream:"PS"; DeltaMax:"DM"; Delta2: "D2" ; Delta2 Max/Delta Pro: "D2M"; SmartPlug: "SM"; Andere: "NA" 
                        // Parameter an hier nur für PowerStream.     
                        regulation: true,                           // "true": Dieser PowerStream soll vom Script reguliert werden
                        RegulationOffPower: -1,                     // Wird die Regulation per State abgestellt, wird die Einspeiseleistung des ersten Powerstreams auf diesen Wert gesetzt (-1 = keine Änderung, -2 = Batterie Priomodus)
                        hasBat: true,                               // "true": Eine Batterie ist angeschlossen. Nur für PowerStream relevant.
                        battPozOn: 100, battPozOff: 97,              // Wenn die Batterie bei battPozOn ist, Einspeisung auf MaxPower. Bei BattPozOff Normalbetrieb
                        battOnSwitchPrio: true,                     // "true": Bei battPozOn wird in den Batterie-Prioritätsmodus gewechselt
                        prioOffOnDemand: 30,                        // Wattwert des Bedarfs, bei dem zurück in den Strom-Priomodus geschaltet wird. 0 für kein Rückschalten.   
                        lowBatLimitPozOn: 5, lowBatLimitPozOff: 15, // Bei Unterschreiten der Batterieladung von "lowBatLimitPozOn" % ist die maximale Einspeiseleistung auf 
                        lowBatLimit: 250,                           // "lowBatLimit" limitiert, bis der Ladezustand wieder bei "lowBatLimitPozOff" ist
                    },
                    //#######################################################################
                    {
                        seriennummer: "XXXXXXX",
                        name: "DELTA PRO",
                        typ: "D2M",
                        subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                    },
                    //#######################################################################
                    {
                        seriennummer: "XXXXXXXXXXXXX",
                        name: "SmartPlug 1",
                        typ: "SM",
                        subscribe: true,                            // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
                    },
                    //#######################################################################
                ],
                AdditionalPowerAvgPeriod: 15000,                    // Zeitraum in ms in denen ein Durchschittswert der Summe von AdditionalPower erstellt wird
                AdditionalPower: [                                  // Wenn es weitere Wechselrichter gibt, die in IOBroker erfasst werden, können diese hier Angelegt werden
                    //############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
                    {
                        name: "STP8",                       // Beliebiger Name
                        id: "modbus.0.inputRegisters.30775_PV_Leistung_Gesamt_Aktuell",      // Der Objektpfad zu dem Leistungswert in Watt (W)
                        factor: 1,                                  // Divisionsfaktor für den Leistungswert. (10 für die Delta)
                        offset: 0,                                  // Wert wird zum Messwert addiert um Messabweichungen ausgleichen zu können 
                        NoFeedIn: false,                            // true setzen, wenn die enthaltene Leistung nicht ins Hausnetz fließt. (Nur in PVTotal aufnehmen)
                        NoPV: false,                                // true setzen, wenn die enthaltene Leistung nicht in TotalPV einfließen soll. (Nur in Realpower aufnehmen)   
                
                //#######################################################################
                //****************************************
                // Erweiterte Einstellungen:
                //****************************************
                SmartmeterTimeoutMin: 4,                            // Wenn der letzte Wert vom Smartmeter älter als "SmartmeterTimeoutMin" ist, wird das Script mit...
                SmartmeterFallbackPower: 150,                       // SmartmeterFallbackPower als aktuellem Realpowerwert weiter arbeiten, bis wieder aktuelle Daten geliefert werden. 
                RegulationIntervalSec: 15,                          // Intervall in Sekunden in denen gemessen und reguliert wird 
                Regulation: true,                                   // 'false' stellt das Setzen der Einspeiseleistung ab 
                RegulationState: "Regulate",                        // Wenn angegeben, kann mit diesem State die Regulation ein- und ausgeschaltet werden (Wird automatisch unter 0_userdata.0.ecoflow angelegt)
                RegulationMultiPsMode: 0,                           // Wenn mehrere PS reguliert werden sollen. "balance" = 0 oder "serial" = 1
                SerialReverse: false,                               // true: im serial Mode (RegulationMultiPsMode: 1) werden die PS in umgekehrter Rheihenfolge duchfaufen 
                BasePowerOffset: 30,                                // Wird vom aktuellen Verbrauch abgezogen, um die Einspeiseleistung zu berechnen 
                Zusatzpower_Offset: 10,                             // Zusatzpower startet ab einer Batterieladeleistung von MaxPower - Zusatzpower_Offset
                MinValueMin: 2,                                     // Der Zeitraum in Minuten, aus dem der niedrigste Gesamtverbrauchswert geholt werden soll. 0 für Echtzeitwert
                MinValueAg: 0,                                      // Art der Ermittlung des kleinsten Wertes: 0 = Minimalwert, 1 = Durchschnittswert
                ReconnectMin: 30,                                   // Zeit in Minuten, nach der die Anwendung neu gestartet wird, wenn keine neuen Daten eintreffen
                statesPrefix: "0_userdata.0.ecoflow",               // Hier werden die ecoFlow States angelegt
                latitude: latitude,                                 // Breitengrad des Standortes (wird automatisch eingesetzt)
                longitude: longitude,                               // Längengrad des Standortes (wird automatisch eingesetzt)
                //****************************************
                // Überschussladung:
                //****************************************
                ExcessCharge: true,                                //Überschussladung AN/AUS (true/false)
                                                                    //ID zum Einstellen der Ladeleistung des Speichers in Watt: 
                ExcessChargePowerID: "0_userdata.0.ecoflow.app_XXXXXXXXXXX_thing_property_set.writeables.slowChgPower",
                                                                    //ID des aktuellen Ladestandes des Speichers in %: 
                ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_XXXXXXXXXXX.data.params.bmsMaster.soc",
                ExcessChargeSwitchMin: 5,                           //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss. 
                ExcessChargeMaxPower: 2000,                         //Maximale Ladeleistung des Speichers in Watt
                ExcessChargeOffsetPower: 0,                         //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen. 
                ExcessChargeStartPower: 50,                         //Mindest-Überschussleistung zum Einschalten des Speichers
                ExcessChargeStopPower: 0,                           //Überschussleistung bei der der Speicher abgeschaltet werden soll.
                ExcessChargeStartPowerDurationMin: 1,               //Mindestdauer in Minuten, die ExcessChargeStartPower nicht unterschritten werden darf, bevor der Speicher eingeschaltet wird.
                ExcessChargeMinRegulatePause: 1,                    //Mindestpause in Minuten zwischen einzelnen Regelbefehlen (EEPROM-Schutz)
                ExcessChargeRegulateSteps: 100,                     //Stufen in Watt, in denen die Werte geändert werden sollen 
                ExcessChargeBatSocMax: 95,                          // Batterieladestand muss <= sein damit die Überschussladung gestartet wird
                ExcessChargeBatSocOff: 100,                         // Batterieladestand bei dem die Überschussladung abgeschaltet wird
                //----------------------------------------
                // Beispiel für Delta-Nutzung ohne Schlaltersteckdose:
                // Wird an einer Delta auch der PV-Eingang genutzt, bitte die PV-Leistung unter AdditionalPower anlegen. Die passende ID ist:
                // 0_userdata.0.ecoflow.app_device_property_xxx.data.params.mppt.inWatts
                // Bei der Delta: "subscribe: true" konfigurieren
                //----------------------------------------
                                                                    //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
                //ExcessActualPowerID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.inv.inputWatts",
                                                                    //ID des Schalters, der den Speicher aktiviert: 
                //ExcessChargeSwitchID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.chgPause", 
                //ExcessChargeSwitchOn: 0,                          //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                //ExcessChargeSwitchOff: 1,                         //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                //----------------------------------------
                // Beispiel für Nutzung einer Schlaltersteckdose:
                //----------------------------------------
                                                                    //ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
                ExcessActualPowerID: "fritzdect.0.DECT_116570551682.power",
                                                                    //ID des Schalters, der den Speicher aktiviert: 
                ExcessChargeSwitchID: "fritzdect.0.DECT_116570551682.state", 
                ExcessChargeSwitchOn: true,                         //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                ExcessChargeSwitchOff: false,                       //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
                //----------------------------------------
                //****************************************
                Debug: false, mlog: true,
                PlotCmdID: 99999,
                

                U Offline
                U Offline
                ub35bo
                schrieb am zuletzt editiert von
                #1319

                @mikerow
                Hallo, so wie du es beschreibst, willst du die Delta Pro zeitgesteuert über einem FritzDect-Schalter laden. Damit ist die Steuerung der FritzDect zunächst unabhängig vom Leistungsanpassungsscript, sie kann maximal von dort aufgerufen werden.
                Ich habe daher zunächst iobroker alle meine FritzDect-Schalter ermitteln lassen, dann den entsprechenden Schalter ausgewählt und schreibe dann in "fritzdect.0.DECT_123456789012.state" (bitte an deine Steckdose anpassen) den Wert "0" für aus bzw. "1" für an.

                1 Antwort Letzte Antwort
                0
                • G Offline
                  G Offline
                  gooflo
                  schrieb am zuletzt editiert von
                  #1320

                  @Waly_de das Skript ist einfach toll!! Heute habe ich für einen Anwendungsfall bei zwei Powerstream mit Batterien zusätzlich zum Füllstand noch die Batteriekapazität bei der Watt-Verteilung mit einbezogen, damit wenn ein PS ne 4 kWh Batterie dran hat und der andere eine 2kWh tatsächlich beide gleich schnell entladen werden. Sowas macht einfach Spaß :-)

                  Falls jemand Interesse hat oder Du @Waly_de die Option einbauen willst (schöner wäre natürlich die Kapazität auszulesen, aber das geht leider nicht so einfach soweit ich das Beurteilen kann):

                  Bei der Konfiguration pro PS einfügen

                              battCapacity: 4.096, // Kapazität der angeschlossenen Batterie
                  

                  Bei der Berechnung von psBatSumme:

                   let psCounter = 0, psBatSumme = 0
                   let psBatSummekWh = 0 // new
                   for (var i = 0; i < ConfigData.seriennummern.length; i++) {
                       const asn = ConfigData.seriennummern[i].seriennummer
                       if (ConfigData.seriennummern[i].typ == "PS" && ConfigData.seriennummern[i].seriennummer != "XXXXXXXXXXXXX" && GlobalObj[asn].regulieren) {
                           psCounter = psCounter + 1
                           psBatSumme = psBatSumme + GlobalObj[asn].batstate
                           psBatSummekWh = psBatSummekWh + GlobalObj[asn].batstate / 100 * ConfigData.seriennummern[i].battCapacity // new
                           //gapSumme = gapSumme + GlobalObj[asn].GAPdurchschnitt
                       }
                   }
                  

                  Bei der Berechnung von Batfaktor:

                  let Batfaktor = 1
                  let BatfaktorkWh = 1 // new
                  if (psBatSumme != 0) {
                    Batfaktor = (BatBedarf / psBatSumme)
                    BatfaktorkWh = (BatBedarf / psBatSummekWh) // new
                  }
                  

                  Und abschließend die Verwendung im Balance Mode:

                  // Setpower = Setpower + (GlobalObj[asn].batstate * Batfaktor)
                  // mlog("PS:" + GlobalObj[asn].PsName + " Setpower =  " + Math.floor(Setpower) + " batstate = " + GlobalObj[asn].batstate + " Batfaktor = " + Batfaktor )
                  Setpower = Setpower + (GlobalObj[asn].batstate/100 * ConfigData.seriennummern[i].battCapacity * BatfaktorkWh) // new
                  mlog("PS:" + GlobalObj[asn].PsName + " Setpower =  " + Math.floor(Setpower) + " batstate = " + GlobalObj[asn].batstate + " BatfaktorkWH = " + BatfaktorkWh ) // new
                  
                    
                  
                  Maik BeckerM W 2 Antworten Letzte Antwort
                  0
                  • G gooflo

                    @Waly_de das Skript ist einfach toll!! Heute habe ich für einen Anwendungsfall bei zwei Powerstream mit Batterien zusätzlich zum Füllstand noch die Batteriekapazität bei der Watt-Verteilung mit einbezogen, damit wenn ein PS ne 4 kWh Batterie dran hat und der andere eine 2kWh tatsächlich beide gleich schnell entladen werden. Sowas macht einfach Spaß :-)

                    Falls jemand Interesse hat oder Du @Waly_de die Option einbauen willst (schöner wäre natürlich die Kapazität auszulesen, aber das geht leider nicht so einfach soweit ich das Beurteilen kann):

                    Bei der Konfiguration pro PS einfügen

                                battCapacity: 4.096, // Kapazität der angeschlossenen Batterie
                    

                    Bei der Berechnung von psBatSumme:

                     let psCounter = 0, psBatSumme = 0
                     let psBatSummekWh = 0 // new
                     for (var i = 0; i < ConfigData.seriennummern.length; i++) {
                         const asn = ConfigData.seriennummern[i].seriennummer
                         if (ConfigData.seriennummern[i].typ == "PS" && ConfigData.seriennummern[i].seriennummer != "XXXXXXXXXXXXX" && GlobalObj[asn].regulieren) {
                             psCounter = psCounter + 1
                             psBatSumme = psBatSumme + GlobalObj[asn].batstate
                             psBatSummekWh = psBatSummekWh + GlobalObj[asn].batstate / 100 * ConfigData.seriennummern[i].battCapacity // new
                             //gapSumme = gapSumme + GlobalObj[asn].GAPdurchschnitt
                         }
                     }
                    

                    Bei der Berechnung von Batfaktor:

                    let Batfaktor = 1
                    let BatfaktorkWh = 1 // new
                    if (psBatSumme != 0) {
                      Batfaktor = (BatBedarf / psBatSumme)
                      BatfaktorkWh = (BatBedarf / psBatSummekWh) // new
                    }
                    

                    Und abschließend die Verwendung im Balance Mode:

                    // Setpower = Setpower + (GlobalObj[asn].batstate * Batfaktor)
                    // mlog("PS:" + GlobalObj[asn].PsName + " Setpower =  " + Math.floor(Setpower) + " batstate = " + GlobalObj[asn].batstate + " Batfaktor = " + Batfaktor )
                    Setpower = Setpower + (GlobalObj[asn].batstate/100 * ConfigData.seriennummern[i].battCapacity * BatfaktorkWh) // new
                    mlog("PS:" + GlobalObj[asn].PsName + " Setpower =  " + Math.floor(Setpower) + " batstate = " + GlobalObj[asn].batstate + " BatfaktorkWH = " + BatfaktorkWh ) // new
                    
                      
                    
                    Maik BeckerM Offline
                    Maik BeckerM Offline
                    Maik Becker
                    schrieb am zuletzt editiert von
                    #1321

                    @gooflo Hallo, ich hätte Interesse und da ich zwei Powerstreams mit einer Batterie habe

                    1x Powerstream mit Delta Pro
                    1x Powerstream mit Delta Max

                    Kannst du mir beim Einbau helfen.

                    G 1 Antwort Letzte Antwort
                    0
                    • Maik BeckerM Maik Becker

                      @gooflo Hallo, ich hätte Interesse und da ich zwei Powerstreams mit einer Batterie habe

                      1x Powerstream mit Delta Pro
                      1x Powerstream mit Delta Max

                      Kannst du mir beim Einbau helfen.

                      G Offline
                      G Offline
                      gooflo
                      schrieb am zuletzt editiert von gooflo
                      #1322

                      @maik-becker klar, gerne. Du musst eigentlich nur die Code-Schnipsel an die richtige Stelle im Code kopieren und den alten Code damit ersetzen. "battCapacity" natürlich pro PS einmal in die Config aufnehmen bei den ganzen anderen Parametern und die Werte für Deine Speichergröße anpassen (Größe in kWh).

                      Und zur Sicherheit natürlich vorher mal ein Backup des gerade bei Dir laufenden Skripts machen :-)

                      Maik BeckerM 1 Antwort Letzte Antwort
                      0
                      • G gooflo

                        @maik-becker klar, gerne. Du musst eigentlich nur die Code-Schnipsel an die richtige Stelle im Code kopieren und den alten Code damit ersetzen. "battCapacity" natürlich pro PS einmal in die Config aufnehmen bei den ganzen anderen Parametern und die Werte für Deine Speichergröße anpassen (Größe in kWh).

                        Und zur Sicherheit natürlich vorher mal ein Backup des gerade bei Dir laufenden Skripts machen :-)

                        Maik BeckerM Offline
                        Maik BeckerM Offline
                        Maik Becker
                        schrieb am zuletzt editiert von
                        #1323

                        @gooflo danke, werde ich probieren, kannst du das auch für das laden einstellen, ich lade nur über AC.

                        G 1 Antwort Letzte Antwort
                        0
                        • Maik BeckerM Maik Becker

                          @gooflo danke, werde ich probieren, kannst du das auch für das laden einstellen, ich lade nur über AC.

                          G Offline
                          G Offline
                          gooflo
                          schrieb am zuletzt editiert von
                          #1324

                          @maik-becker mit AC Laden habe ich mich noch nicht beschäftigt. Kannst Du mir die Stelle im Code sagen? Wir bei AC Laden nicht sowieso immer so viel geladen wie geht?

                          Maik BeckerM 1 Antwort Letzte Antwort
                          0
                          • G gooflo

                            @maik-becker mit AC Laden habe ich mich noch nicht beschäftigt. Kannst Du mir die Stelle im Code sagen? Wir bei AC Laden nicht sowieso immer so viel geladen wie geht?

                            Maik BeckerM Offline
                            Maik BeckerM Offline
                            Maik Becker
                            schrieb am zuletzt editiert von
                            #1325

                            @gooflo Hallo, leider nein. Ich nutze zur Zeit die Überschussladung mit Steckdose.

                            1 Antwort Letzte Antwort
                            0
                            • G gooflo

                              @Waly_de das Skript ist einfach toll!! Heute habe ich für einen Anwendungsfall bei zwei Powerstream mit Batterien zusätzlich zum Füllstand noch die Batteriekapazität bei der Watt-Verteilung mit einbezogen, damit wenn ein PS ne 4 kWh Batterie dran hat und der andere eine 2kWh tatsächlich beide gleich schnell entladen werden. Sowas macht einfach Spaß :-)

                              Falls jemand Interesse hat oder Du @Waly_de die Option einbauen willst (schöner wäre natürlich die Kapazität auszulesen, aber das geht leider nicht so einfach soweit ich das Beurteilen kann):

                              Bei der Konfiguration pro PS einfügen

                                          battCapacity: 4.096, // Kapazität der angeschlossenen Batterie
                              

                              Bei der Berechnung von psBatSumme:

                               let psCounter = 0, psBatSumme = 0
                               let psBatSummekWh = 0 // new
                               for (var i = 0; i < ConfigData.seriennummern.length; i++) {
                                   const asn = ConfigData.seriennummern[i].seriennummer
                                   if (ConfigData.seriennummern[i].typ == "PS" && ConfigData.seriennummern[i].seriennummer != "XXXXXXXXXXXXX" && GlobalObj[asn].regulieren) {
                                       psCounter = psCounter + 1
                                       psBatSumme = psBatSumme + GlobalObj[asn].batstate
                                       psBatSummekWh = psBatSummekWh + GlobalObj[asn].batstate / 100 * ConfigData.seriennummern[i].battCapacity // new
                                       //gapSumme = gapSumme + GlobalObj[asn].GAPdurchschnitt
                                   }
                               }
                              

                              Bei der Berechnung von Batfaktor:

                              let Batfaktor = 1
                              let BatfaktorkWh = 1 // new
                              if (psBatSumme != 0) {
                                Batfaktor = (BatBedarf / psBatSumme)
                                BatfaktorkWh = (BatBedarf / psBatSummekWh) // new
                              }
                              

                              Und abschließend die Verwendung im Balance Mode:

                              // Setpower = Setpower + (GlobalObj[asn].batstate * Batfaktor)
                              // mlog("PS:" + GlobalObj[asn].PsName + " Setpower =  " + Math.floor(Setpower) + " batstate = " + GlobalObj[asn].batstate + " Batfaktor = " + Batfaktor )
                              Setpower = Setpower + (GlobalObj[asn].batstate/100 * ConfigData.seriennummern[i].battCapacity * BatfaktorkWh) // new
                              mlog("PS:" + GlobalObj[asn].PsName + " Setpower =  " + Math.floor(Setpower) + " batstate = " + GlobalObj[asn].batstate + " BatfaktorkWH = " + BatfaktorkWh ) // new
                              
                                
                              
                              W Offline
                              W Offline
                              Waly_de
                              schrieb am zuletzt editiert von
                              #1326

                              @gooflo das ist ja cool! :-) sehr schöne Idee!
                              Ich hab leider im Moment privat so viel um die Ohren, dass ich mich um nichts kümmern kann.
                              Wenn du magst, schick mir doch bitte die letzte Version vom Skript mit deinem Code. Dann stelle ich das so online für alle. ich denke, wenn standardmäßig die Batteriekapazität auf null eingestellt wird, dürfte die Regelung auch wenn man es nicht eingestellt keinen Unterschied machen, oder?
                              Ich muss dieses Skript unbedingt mal auf github bringen, damit sowas einfacher wird.

                              Maik BeckerM 1 Antwort Letzte Antwort
                              0
                              • W Waly_de

                                @gooflo das ist ja cool! :-) sehr schöne Idee!
                                Ich hab leider im Moment privat so viel um die Ohren, dass ich mich um nichts kümmern kann.
                                Wenn du magst, schick mir doch bitte die letzte Version vom Skript mit deinem Code. Dann stelle ich das so online für alle. ich denke, wenn standardmäßig die Batteriekapazität auf null eingestellt wird, dürfte die Regelung auch wenn man es nicht eingestellt keinen Unterschied machen, oder?
                                Ich muss dieses Skript unbedingt mal auf github bringen, damit sowas einfacher wird.

                                Maik BeckerM Offline
                                Maik BeckerM Offline
                                Maik Becker
                                schrieb am zuletzt editiert von
                                #1327

                                @waly_de Hallo, auch wenn du Privat viel zu tun hast, wäre es möglich, wenn das mit einbaust noch prüfen zu lassen ob die PS schon Strom einspeisen. Wenn ja den soll er die DM D2M nicht weiter laden. Wäre nett von dir.

                                W 1 Antwort Letzte Antwort
                                0
                                • Maik BeckerM Maik Becker

                                  @waly_de Hallo, auch wenn du Privat viel zu tun hast, wäre es möglich, wenn das mit einbaust noch prüfen zu lassen ob die PS schon Strom einspeisen. Wenn ja den soll er die DM D2M nicht weiter laden. Wäre nett von dir.

                                  W Offline
                                  W Offline
                                  Waly_de
                                  schrieb am zuletzt editiert von
                                  #1328

                                  @maik-becker sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                                  @waly_de Hallo, auch wenn du Privat viel zu tun hast, wäre es möglich, wenn das mit einbaust noch prüfen zu lassen ob die PS schon Strom einspeisen. Wenn ja den soll er die DM D2M nicht weiter laden. Wäre nett von dir.

                                  Das verstehe ich nicht:
                                  PV Energie von 400 W steht zur Verfügung Dein Haus Strombedarf ist 200 W.
                                  Also gehen 200 W ins Haus und 200 W in die Batterie. Oder reden wir vom Überschuss laden? Das ist bereits so programmiert, dass es bei fehlenden Überschuss abgeschaltet wird.
                                  Verzögerung, schalt Zeiten und Bedingungen dafür lassen sich in den Settings einstellen

                                  Maik BeckerM 1 Antwort Letzte Antwort
                                  0
                                  • W Waly_de

                                    @maik-becker sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                                    @waly_de Hallo, auch wenn du Privat viel zu tun hast, wäre es möglich, wenn das mit einbaust noch prüfen zu lassen ob die PS schon Strom einspeisen. Wenn ja den soll er die DM D2M nicht weiter laden. Wäre nett von dir.

                                    Das verstehe ich nicht:
                                    PV Energie von 400 W steht zur Verfügung Dein Haus Strombedarf ist 200 W.
                                    Also gehen 200 W ins Haus und 200 W in die Batterie. Oder reden wir vom Überschuss laden? Das ist bereits so programmiert, dass es bei fehlenden Überschuss abgeschaltet wird.
                                    Verzögerung, schalt Zeiten und Bedingungen dafür lassen sich in den Settings einstellen

                                    Maik BeckerM Offline
                                    Maik BeckerM Offline
                                    Maik Becker
                                    schrieb am zuletzt editiert von
                                    #1329

                                    @waly_de wie reden von Überschussladung, ich arbeite ohne Solar. Da ich eine 3600 W Anlage auf dem Dach habe. Aber ab und zu gibt der PS Strom ins Netz aber lädt auch zur gleichen Zeit die Delat über die Überschussladung. Das Probelm ist aber auch nicht nur bei mir siehe Betrag: 15 Jun 2024, 09:07.

                                    1 Antwort Letzte Antwort
                                    0
                                    • G Offline
                                      G Offline
                                      gooflo
                                      schrieb am zuletzt editiert von
                                      #1330

                                      @waly_de hab's Dir per Mail geschickt. Wenn man überall den gleichen Wert einträgt (Defaultwert = 1.0) hat man das alte Verhalten. "0" sollte man nicht setzen, dann funktioniert's nicht ;-)

                                      W 1 Antwort Letzte Antwort
                                      0
                                      • G gooflo

                                        @waly_de hab's Dir per Mail geschickt. Wenn man überall den gleichen Wert einträgt (Defaultwert = 1.0) hat man das alte Verhalten. "0" sollte man nicht setzen, dann funktioniert's nicht ;-)

                                        W Offline
                                        W Offline
                                        Waly_de
                                        schrieb am zuletzt editiert von Waly_de
                                        #1331

                                        @gooflo Vielen Dank.. ich lade es hoch (Ich kann es aber auch nicht testen, weil ich nur eine Delta Batterie habe. Aber es wird schon laufen. ;-) )

                                        Hier die Version von Florian:
                                        1.2.5.f1 Fork von Florian Vogt

                                        • Feature hinzugefügt, um die Größe der Delta-Speicher beim Ausbalancieren der Entladeleistung zu berücksichtigen, damit die Batterien gleichmäßig geleert werden
                                          Parameter battCapacity bei den Einstellungen für PowerStream = Kapazität der angeschlossenen Batterie in kWh, default = 1

                                        ecoflow-connector_v125_mod_FV.txt

                                        Maik BeckerM B 2 Antworten Letzte Antwort
                                        0
                                        • W Waly_de

                                          @gooflo Vielen Dank.. ich lade es hoch (Ich kann es aber auch nicht testen, weil ich nur eine Delta Batterie habe. Aber es wird schon laufen. ;-) )

                                          Hier die Version von Florian:
                                          1.2.5.f1 Fork von Florian Vogt

                                          • Feature hinzugefügt, um die Größe der Delta-Speicher beim Ausbalancieren der Entladeleistung zu berücksichtigen, damit die Batterien gleichmäßig geleert werden
                                            Parameter battCapacity bei den Einstellungen für PowerStream = Kapazität der angeschlossenen Batterie in kWh, default = 1

                                          ecoflow-connector_v125_mod_FV.txt

                                          Maik BeckerM Offline
                                          Maik BeckerM Offline
                                          Maik Becker
                                          schrieb am zuletzt editiert von
                                          #1332

                                          @waly_de Hallo, kannst du mir bitte noch Helfen, arbeite mit einer DELTA Pro und DELTA Max über AC Laden, aber bekomme es nicht richtig hin.

                                          Des weiteren ist noch das Probelm, das er teilweise lädt über AC und den Aber auch über den PS die Leitung raus gibt.

                                          W 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

                                          536

                                          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