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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. ecoflow-connector-Script zur dynamischen Leistungsanpassung

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    11
    2
    207

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

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

ecoflow-connector-Script zur dynamischen Leistungsanpassung

ecoflow-connector-Script zur dynamischen Leistungsanpassung

Scheduled Pinned Locked Moved JavaScript
1.6k Posts 127 Posters 741.2k Views 127 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • DaDue-maxD DaDue-max

    Powerstream nicht mehr mit Ecoflowserver verbunden
    Hintergrund: Betreibe einen Powerstream mit Delta 2 Max / Skript von @Waly_de auf 1.1.2 (super Job!!!)/ abonniert nur für Powerstream und Steuerung disabled / habe aufgrund einiger Besonderheiten meiner Heimanlage eine eigene Nulleinspeisung programmiert. Nutze aber die Daten der Powerstream und das Setzen von Werten für Einspeiseleistung der PS etc.

    Was passiert?
    Morgens läuft alles gut an, aber irgendwann im Laufe des Tages verliert die Powerstream ihre WLAN - Verbindung. In der App nur noch über Bluetooth zu erreichen. Dh. kein Update der Daten im iobroker und das Rausschreiben von Werten an die Powerstream gelingt natürlich auch nicht.
    Abhifle schafft für kurze Zeit ein Disconnect der Powerstream vom Netz (Verbindung zu Panels und Batterie bleibt bestehen). Dann ist die Powerstream wieder online, überträgt und empfängt Daten. Verbinde ich die PS wieder mit dem Netz, verliert sie nach ein paar Minuten wieder den Kontakt zum WLAN.

    Im Log findet sich in dann folgende Einträge:

    14:03:00.245	error	javascript.0 (3704815) script.js.common.Ecoflow_JS_main: Fehler beim Veröffentlichen der MQTT-Nachricht:
    14:03:01.477	info	javascript.0 (3704815) script.js.common.Ecoflow_JS_main: Verbunden mit dem Ecoflow MQTT-Broker
    
    

    Nach einigen weiteren Minuten verschwindet zwar die Fehlerzeile, jedoch wird ca. im Minuten Abstand

    14:09:32.337	info	javascript.0 (3704815) script.js.common.Ecoflow_JS_main: Verbunden mit dem Ecoflow MQTT-Broker
    

    weiter ausgegeben.
    Am nächsten Tag geht es wieder von vorne los...Irgendwie schräg. Eine Ahnung auf was das hindeuten kann?

    Es gibt ja einige Adaptoren wie z.B. Tuya/Smartlife, die haben Probleme, wenn man gleichzeitig über Cloud und MQTT direkt zugreift. Das ist hier aber nicht der Fall.

    Um einen Hinweis wäre ich dankbar.

    F Offline
    F Offline
    foxthefox
    Developer
    wrote on last edited by
    #263

    @dadue-max @Waly_de

    Ich bin mir nicht sicher ob es WLAN instabilität ist, oder ob es nicht doch etwas mit dem Protokoll zu tun hat.
    Ich bau grad ein paar node-red Knoten auf um Power Stream und Power Station einzulesen.
    Was mir dabei auffällt, ist das sich bei mir wohl nichts von WLAN trennt, sondern das Senden einfach aufhört. Das merkt man recht gut bei der Powerstation, da die viel mehr am plaudern ist.
    Obwohl ich auch regelmäßig mal ein "latestQuatas" anfrage, kommt manchmal nach einer gewissen Zeit nichts an. Gehe ich dann mit der App auf das Gerät, gehts wieder los, WLAN ist demzufolge noch an.
    Ich vermute eher, daß hier bei Telegrammen, die ein ACK=1 haben, auch ein ACK zu senden ist.
    Ich hatte mal probehalber den .../set der powerstation im debug, da kommt eine Unmenge an gleichartigen Telegrammen rein, scheinen die ACK zu sein.

    Gruß
    Klaus

    Adapterüberblick: Profil Github;

    Wenn der Adapter gefällt und nützlich ist, bitte ins Repo gehen und Star setzen. Danke

    Ein Aufruf: video

    S W DaDue-maxD 4 Replies Last reply
    0
    • F foxthefox

      @dadue-max @Waly_de

      Ich bin mir nicht sicher ob es WLAN instabilität ist, oder ob es nicht doch etwas mit dem Protokoll zu tun hat.
      Ich bau grad ein paar node-red Knoten auf um Power Stream und Power Station einzulesen.
      Was mir dabei auffällt, ist das sich bei mir wohl nichts von WLAN trennt, sondern das Senden einfach aufhört. Das merkt man recht gut bei der Powerstation, da die viel mehr am plaudern ist.
      Obwohl ich auch regelmäßig mal ein "latestQuatas" anfrage, kommt manchmal nach einer gewissen Zeit nichts an. Gehe ich dann mit der App auf das Gerät, gehts wieder los, WLAN ist demzufolge noch an.
      Ich vermute eher, daß hier bei Telegrammen, die ein ACK=1 haben, auch ein ACK zu senden ist.
      Ich hatte mal probehalber den .../set der powerstation im debug, da kommt eine Unmenge an gleichartigen Telegrammen rein, scheinen die ACK zu sein.

      Gruß
      Klaus

      S Offline
      S Offline
      sirdir
      wrote on last edited by
      #264

      @foxthefox naja, ich habe manchmal pingzeiten zur powerstream von 5 sekunden… Währen der AP von einer 'excellenten' Verbindung mit 30 dB spricht. Irgendwas ist da oberfaul.

      W 1 Reply Last reply
      0
      • F foxthefox

        @dadue-max @Waly_de

        Ich bin mir nicht sicher ob es WLAN instabilität ist, oder ob es nicht doch etwas mit dem Protokoll zu tun hat.
        Ich bau grad ein paar node-red Knoten auf um Power Stream und Power Station einzulesen.
        Was mir dabei auffällt, ist das sich bei mir wohl nichts von WLAN trennt, sondern das Senden einfach aufhört. Das merkt man recht gut bei der Powerstation, da die viel mehr am plaudern ist.
        Obwohl ich auch regelmäßig mal ein "latestQuatas" anfrage, kommt manchmal nach einer gewissen Zeit nichts an. Gehe ich dann mit der App auf das Gerät, gehts wieder los, WLAN ist demzufolge noch an.
        Ich vermute eher, daß hier bei Telegrammen, die ein ACK=1 haben, auch ein ACK zu senden ist.
        Ich hatte mal probehalber den .../set der powerstation im debug, da kommt eine Unmenge an gleichartigen Telegrammen rein, scheinen die ACK zu sein.

        Gruß
        Klaus

        W Offline
        W Offline
        Waly_de
        wrote on last edited by Waly_de
        #265

        @foxthefox damit schlage ich mich auch schon seit Beginn rum. Es kann sicher reproduziert werden. Wenn du dich mit der App verbindest und dann die App schließt (task beenden) hört der MQTT sofort auf zu feuern. Mein Script macht dann ein reconnect und sendet ein paar dieser leeren Telegramme. Danach gehts dann weiter. Vielleicht registriert der Mqtt einfach ein disconnect und hört dann auf, auch wenn noch weitere Clients verbunden sind?
        Ich hoffe immer darauf, das jemand mal den Traffic der App diesbezüglich genauer untersucht. Vielleicht läuft da ja noch mehr, was der Mqtt nicht spiegelt.

        dadue-max sagt ja selbst, es geht das WLAN verloren und in der App ist das Gerät nur per Bluetooth zu erreichen. Das ist ein anderes Problem.

        1 Reply Last reply
        0
        • S sirdir

          @foxthefox naja, ich habe manchmal pingzeiten zur powerstream von 5 sekunden… Währen der AP von einer 'excellenten' Verbindung mit 30 dB spricht. Irgendwas ist da oberfaul.

          W Offline
          W Offline
          Waly_de
          wrote on last edited by
          #266

          @sirdir da ich grade nicht schlafen kann 😉 :

          function getLowestValue(id, minuten = 120) {
              if (minuten === 0) {
                  const value = Math.floor(Number(getState(id).val));
                  setStateNE(ConfigData.statesPrefix + ".lowestValue", value);
                  return Promise.resolve(value);
              }
          ...  Rest unverändert 
          

          das baue ich auch in die nächste Version ein. So kann der Wert für "MinValueMin" auf 0 gestellt werden um direkt auf RealPower zuzugreifen.

          1 Reply Last reply
          1
          • F foxthefox

            @dadue-max @Waly_de

            Ich bin mir nicht sicher ob es WLAN instabilität ist, oder ob es nicht doch etwas mit dem Protokoll zu tun hat.
            Ich bau grad ein paar node-red Knoten auf um Power Stream und Power Station einzulesen.
            Was mir dabei auffällt, ist das sich bei mir wohl nichts von WLAN trennt, sondern das Senden einfach aufhört. Das merkt man recht gut bei der Powerstation, da die viel mehr am plaudern ist.
            Obwohl ich auch regelmäßig mal ein "latestQuatas" anfrage, kommt manchmal nach einer gewissen Zeit nichts an. Gehe ich dann mit der App auf das Gerät, gehts wieder los, WLAN ist demzufolge noch an.
            Ich vermute eher, daß hier bei Telegrammen, die ein ACK=1 haben, auch ein ACK zu senden ist.
            Ich hatte mal probehalber den .../set der powerstation im debug, da kommt eine Unmenge an gleichartigen Telegrammen rein, scheinen die ACK zu sein.

            Gruß
            Klaus

            DaDue-maxD Offline
            DaDue-maxD Offline
            DaDue-max
            wrote on last edited by
            #267

            @foxthefox @Waly_de
            Da mag ich nicht widersprechen....und es kann parallel zu dem Hitzeproblem ein Thema sein.
            Zum Hitzeproblem hier noch ein Test von heute:
            Ich tracke für die Powerstreamtemp "....data InverterHeartbeat llcTemp". Irgendwann heute ist mal wieder ab mittag das WLAN ausgefallen von der PS. Bei der Ilc Temp sind 45 Grad dokumentiert. (Heute morgen waren es ca 25-30 grad ohne Last). Ich habe einen alten PC Lüfter mit Heatpipe und allem Schnickschnack mal auf dem glatten PS Deckel montiert und angeschaltet und siehe da, Ilc Temp auf 42 abgesackt und WLAN funktioniert wieder....🙄

            D 1 Reply Last reply
            0
            • DaDue-maxD DaDue-max

              @foxthefox @Waly_de
              Da mag ich nicht widersprechen....und es kann parallel zu dem Hitzeproblem ein Thema sein.
              Zum Hitzeproblem hier noch ein Test von heute:
              Ich tracke für die Powerstreamtemp "....data InverterHeartbeat llcTemp". Irgendwann heute ist mal wieder ab mittag das WLAN ausgefallen von der PS. Bei der Ilc Temp sind 45 Grad dokumentiert. (Heute morgen waren es ca 25-30 grad ohne Last). Ich habe einen alten PC Lüfter mit Heatpipe und allem Schnickschnack mal auf dem glatten PS Deckel montiert und angeschaltet und siehe da, Ilc Temp auf 42 abgesackt und WLAN funktioniert wieder....🙄

              D Offline
              D Offline
              Dreffi
              wrote on last edited by
              #268

              @dadue-max
              Ich glaube nicht, dass es an der Temperatur liegt.

              Ich habe zwei Powerstreams. Beide werden aktiv gekühlt.
              Der, der immer etwas wärmer läuft, macht so gut wie nie Probleme mit dem WLAN.
              Der Andere, der trotz höherer Last kälter bleibt, macht leider recht oft Probleme.

              Die Effektivste Lösung für mich war bisher bei Problemen den WLAN Kanal am Router zu verstellen. Manchmal will ein Powerstream einfach nur auf einem bestimmten Kanal arbeiten. Nach ein paar Tagen kann das auch wieder ein anderer Kanal sein.

              Es gibt zwar ein paar fremde WLAN in der Nähe, aber die sind vom Signal deutlich schwächer als meins. Auch ein gut platzierter Repeater konnte nicht helfen. Die Powerstreams neigen auch dazu sich auf einen ungünstigen, also weit entfernten, AP zu verbinden und dort zu verbleiben.

              1 Reply Last reply
              0
              • M Offline
                M Offline
                Milchbeck
                wrote on last edited by Milchbeck
                #269

                Erst einmal Super arbeit mit dem Script, nur ich hab ein problem
                bekomme ein error
                SetState more than 1000 times per minute
                und dann hält das script an

                27.8.2023, 12:58:40.938 [info ]: javascript.0 (5490) Start javascript script.js.EcoFlow
                27.8.2023, 12:58:40.961 [info ]: javascript.0 (5490) script.js.EcoFlow: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                27.8.2023, 12:58:41.437 [info ]: javascript.0 (5490) script.js.EcoFlow: Verbunden mit dem Ecoflow MQTT-Broker
                27.8.2023, 13:00:35.459 [error]: javascript.0 (5490) Script script.js.EcoFlow is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                27.8.2023, 13:00:35.462 [info ]: javascript.0 (5490) Stop script script.js.EcoFlow
                27.8.2023, 13:00:35.465 [info ]: javascript.0 (5490) script.js.EcoFlow: Ecoflow MQTT-Client beendet
                27.8.2023, 13:00:59.397 [info ]: javascript.0 (5490) Stop script script.js.EcoFlow

                W 1 Reply Last reply
                0
                • A Offline
                  A Offline
                  anteater321
                  wrote on last edited by
                  #270

                  Hi, sorry ich bin Anfänger in Sachen iobroker (habe es hauptsächlich installiert, weil ich dieses Skript verwenden möchte) und ich bekomme es nicht richtig zum Laufen. Für Hilfe, woran es liegt, wäre ich sehr dankbar.

                  Das Skript habe ich eingefügt und die jeweiligen Daten eingegeben:

                  46129223-1519-41ef-bd99-febd900cdd68-image.png.

                  Auf der Skript-Seite scheint mir auch alles in Ordnung:

                  Capture1.PNG

                  Das Log zeigt auf der Einstellung "silly" laufend viele Einträge an, aber das Skript nimmt keinerlei Einfluss auf die ausgegebene Leistung; die bleibt immer bei dem was in der App händisch eingestellt wurde. Weiß jemand, was ich falsch mache oder was ich hier einblenden muss, damit man es nachvollziehen kann?

                  D 1 Reply Last reply
                  0
                  • A anteater321

                    Hi, sorry ich bin Anfänger in Sachen iobroker (habe es hauptsächlich installiert, weil ich dieses Skript verwenden möchte) und ich bekomme es nicht richtig zum Laufen. Für Hilfe, woran es liegt, wäre ich sehr dankbar.

                    Das Skript habe ich eingefügt und die jeweiligen Daten eingegeben:

                    46129223-1519-41ef-bd99-febd900cdd68-image.png.

                    Auf der Skript-Seite scheint mir auch alles in Ordnung:

                    Capture1.PNG

                    Das Log zeigt auf der Einstellung "silly" laufend viele Einträge an, aber das Skript nimmt keinerlei Einfluss auf die ausgegebene Leistung; die bleibt immer bei dem was in der App händisch eingestellt wurde. Weiß jemand, was ich falsch mache oder was ich hier einblenden muss, damit man es nachvollziehen kann?

                    D Offline
                    D Offline
                    Dreffi
                    wrote on last edited by
                    #271

                    @anteater321
                    Hast du das richtige Objekt mit dem State deines Stromzählers im Script angegeben?

                    A 1 Reply Last reply
                    0
                    • D Dreffi

                      @anteater321
                      Hast du das richtige Objekt mit dem State deines Stromzählers im Script angegeben?

                      A Offline
                      A Offline
                      anteater321
                      wrote on last edited by anteater321
                      #272

                      @dreffi danke für die Antwort. Ich habe aktuell nur einen Smartplug von Ecoflow eingebunden und sonst keine Daten. Aus der Erklärung des skripts erschien mir das optional. Wo muss ich denn den State im Script angeben? Hatte es jetzt mal mit dem folgenden Eintrag versucht, aber das funktioniert nicht:

                      SmartmeterID: "0_userdata.0.ecoflow.app_device_property_*******.data.plug_heartbeat_pack.watts", 
                      

                      Im Debug-Modus erscheinen in regelmäßigen Abständen die folgenden Meldungen:

                      Capture3.PNG

                      Ich möchte eigentlich erreiche, dass sich der vom Wechselrichter ausgegebene Strom im Wesentlichen nach dem von den Panelen eingehenden Strom richtet, aber ich vermute jetzt, dass das so nicht funktioniert? Ich wäre aber auch schon froh, wenn ich den SmartPlug integriert bekäme, um das Prinzip zu verstehen

                      A W 2 Replies Last reply
                      0
                      • A anteater321

                        @dreffi danke für die Antwort. Ich habe aktuell nur einen Smartplug von Ecoflow eingebunden und sonst keine Daten. Aus der Erklärung des skripts erschien mir das optional. Wo muss ich denn den State im Script angeben? Hatte es jetzt mal mit dem folgenden Eintrag versucht, aber das funktioniert nicht:

                        SmartmeterID: "0_userdata.0.ecoflow.app_device_property_*******.data.plug_heartbeat_pack.watts", 
                        

                        Im Debug-Modus erscheinen in regelmäßigen Abständen die folgenden Meldungen:

                        Capture3.PNG

                        Ich möchte eigentlich erreiche, dass sich der vom Wechselrichter ausgegebene Strom im Wesentlichen nach dem von den Panelen eingehenden Strom richtet, aber ich vermute jetzt, dass das so nicht funktioniert? Ich wäre aber auch schon froh, wenn ich den SmartPlug integriert bekäme, um das Prinzip zu verstehen

                        A Offline
                        A Offline
                        aherby
                        wrote on last edited by
                        #273

                        @anteater321 Hi der Smartplug kann eigentlich nur ein- und ausgeschaltet werden und liefert Messwerte vom angeschlossenen Gerät also aktuelle Netzspannung, Strom, Leistung, etc.
                        Wenn du nicht den Powerstream als Gerät mit Seriennummer angibst kann das Script auch nichts steuern.
                        Weiter muss das Script doch einen Wert vom aktuellen Verbrauch bekommen damit es dynamisch regeln kann.
                        Sonst kann es villeicht die Prio "Strom" oder "Akku" umschalten wenn die Batteriegrenzen über oder unterschritten sind.

                        Was möchtest du genau erreichen und welche Geräte hast du verbaut?

                        1 Reply Last reply
                        0
                        • A anteater321

                          @dreffi danke für die Antwort. Ich habe aktuell nur einen Smartplug von Ecoflow eingebunden und sonst keine Daten. Aus der Erklärung des skripts erschien mir das optional. Wo muss ich denn den State im Script angeben? Hatte es jetzt mal mit dem folgenden Eintrag versucht, aber das funktioniert nicht:

                          SmartmeterID: "0_userdata.0.ecoflow.app_device_property_*******.data.plug_heartbeat_pack.watts", 
                          

                          Im Debug-Modus erscheinen in regelmäßigen Abständen die folgenden Meldungen:

                          Capture3.PNG

                          Ich möchte eigentlich erreiche, dass sich der vom Wechselrichter ausgegebene Strom im Wesentlichen nach dem von den Panelen eingehenden Strom richtet, aber ich vermute jetzt, dass das so nicht funktioniert? Ich wäre aber auch schon froh, wenn ich den SmartPlug integriert bekäme, um das Prinzip zu verstehen

                          W Offline
                          W Offline
                          Waly_de
                          wrote on last edited by Waly_de
                          #274

                          @anteater321 sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                          Ich möchte eigentlich erreiche, dass sich der vom Wechselrichter ausgegebene Strom im Wesentlichen nach dem von den Panelen eingehenden Strom richtet, aber ich vermute jetzt, dass das so nicht funktioniert? Ich wäre aber auch schon froh, wenn ich den SmartPlug integriert bekäme, um das Prinzip zu verstehen

                          Ich verstehe noch nicht ganz, was Du versuchst mit dem Skript zu machen. Wenn du mit SmartPlugs arbeitest, benötigst du das Skript eigentlich nicht. Wenn du möchtest, dass die eingespeiste Energie sich nach dem zur Verfügung stehenden Sonnenlicht richtet, benötigst du das Skript auch nicht.
                          Für eine "Null-Einspeisung" ist ein Smartmeter Grundvoraussetzung, dass dem Gesamtverbrauch Deiner Wohneinheit misst.
                          Zwar könntest du theoretisch auch die Ausgabe der Smart Plug als Smartmeter ID konfigurieren. Aber da die Smart Plug nur sehr selten Werte liefert und auch nur dann, wenn ein Gerät angeschlossen ist, und dieses seine Leistungsaufnahme ändert. Bekommst du die No Data Fehlermeldung. Da arbeitet die Smart Plug ganz ohne Skript, direkt mit dem PowerStream sicherlich viel besser.

                          A 1 Reply Last reply
                          0
                          • M Milchbeck

                            Erst einmal Super arbeit mit dem Script, nur ich hab ein problem
                            bekomme ein error
                            SetState more than 1000 times per minute
                            und dann hält das script an

                            27.8.2023, 12:58:40.938 [info ]: javascript.0 (5490) Start javascript script.js.EcoFlow
                            27.8.2023, 12:58:40.961 [info ]: javascript.0 (5490) script.js.EcoFlow: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                            27.8.2023, 12:58:41.437 [info ]: javascript.0 (5490) script.js.EcoFlow: Verbunden mit dem Ecoflow MQTT-Broker
                            27.8.2023, 13:00:35.459 [error]: javascript.0 (5490) Script script.js.EcoFlow is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                            27.8.2023, 13:00:35.462 [info ]: javascript.0 (5490) Stop script script.js.EcoFlow
                            27.8.2023, 13:00:35.465 [info ]: javascript.0 (5490) script.js.EcoFlow: Ecoflow MQTT-Client beendet
                            27.8.2023, 13:00:59.397 [info ]: javascript.0 (5490) Stop script script.js.EcoFlow

                            W Offline
                            W Offline
                            Waly_de
                            wrote on last edited by
                            #275

                            @milchbeck guck mal im Beitrag. Das wurde schon einige Male angesprochen. Du kannst den Wert in den Einstellungen der Javascript-Instanz hoch setzten. Je mehr Geräte Du hast, um so höher muss der Wert konfiguriert werden. Vor allem die Deltas liefern Unmengen an Updates.
                            Wenn Du diese Daten nicht unbedingt brauchst, stelle in den Einstellungen für deinen Delta "subscribe" auf false.

                            1 Reply Last reply
                            0
                            • W Waly_de

                              @anteater321 sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                              Ich möchte eigentlich erreiche, dass sich der vom Wechselrichter ausgegebene Strom im Wesentlichen nach dem von den Panelen eingehenden Strom richtet, aber ich vermute jetzt, dass das so nicht funktioniert? Ich wäre aber auch schon froh, wenn ich den SmartPlug integriert bekäme, um das Prinzip zu verstehen

                              Ich verstehe noch nicht ganz, was Du versuchst mit dem Skript zu machen. Wenn du mit SmartPlugs arbeitest, benötigst du das Skript eigentlich nicht. Wenn du möchtest, dass die eingespeiste Energie sich nach dem zur Verfügung stehenden Sonnenlicht richtet, benötigst du das Skript auch nicht.
                              Für eine "Null-Einspeisung" ist ein Smartmeter Grundvoraussetzung, dass dem Gesamtverbrauch Deiner Wohneinheit misst.
                              Zwar könntest du theoretisch auch die Ausgabe der Smart Plug als Smartmeter ID konfigurieren. Aber da die Smart Plug nur sehr selten Werte liefert und auch nur dann, wenn ein Gerät angeschlossen ist, und dieses seine Leistungsaufnahme ändert. Bekommst du die No Data Fehlermeldung. Da arbeitet die Smart Plug ganz ohne Skript, direkt mit dem PowerStream sicherlich viel besser.

                              A Offline
                              A Offline
                              anteater321
                              wrote on last edited by
                              #276

                              @waly_de @aherby vielen Dank für Eure Antworten:

                              Ich habe einen Powerstream, ne Delta 2 Max und einen Smart Plug von ecoflow. Ist bei mir im Skript alles mit Seriennummern und Zugangsdaten eingegeben. Habe hier nur Sterne als Platzhalter für den Screenshot eingesetzt.

                              Ich würde zunächst gerne das Prinzip verstehen und scheitere aktuell schon daran, den Smartplug zu integrieren. Ich weiß, dass der SmartPlug ohnehin automatisch in der Ecoflow-App berücksichtigt wird, mir geht es ums Grundverständnis (ich hoffe das lässt sich dann auf andere Smartplugs/ein Smartmeter übertragen).

                              Meine Frage zum Einstieg wäre, welchen Wert (Enum?) ich beim Eintrag SmartMeterID angeben muss, damit sich der Output des Powerstream nach dem SmartPlug richtet. Ich vermute es ist "0_userdata.0.ecoflow.app_device_property_****.data.plug_heartbeat_pack.watts", aber dann schaukelt sich der Output innerhalb von ein paar Minuten auf 500W hoch, obwohl am Smartplug ein Verbrauch von 30W ausgegeben wird.

                              W 1 Reply Last reply
                              0
                              • A anteater321

                                @waly_de @aherby vielen Dank für Eure Antworten:

                                Ich habe einen Powerstream, ne Delta 2 Max und einen Smart Plug von ecoflow. Ist bei mir im Skript alles mit Seriennummern und Zugangsdaten eingegeben. Habe hier nur Sterne als Platzhalter für den Screenshot eingesetzt.

                                Ich würde zunächst gerne das Prinzip verstehen und scheitere aktuell schon daran, den Smartplug zu integrieren. Ich weiß, dass der SmartPlug ohnehin automatisch in der Ecoflow-App berücksichtigt wird, mir geht es ums Grundverständnis (ich hoffe das lässt sich dann auf andere Smartplugs/ein Smartmeter übertragen).

                                Meine Frage zum Einstieg wäre, welchen Wert (Enum?) ich beim Eintrag SmartMeterID angeben muss, damit sich der Output des Powerstream nach dem SmartPlug richtet. Ich vermute es ist "0_userdata.0.ecoflow.app_device_property_****.data.plug_heartbeat_pack.watts", aber dann schaukelt sich der Output innerhalb von ein paar Minuten auf 500W hoch, obwohl am Smartplug ein Verbrauch von 30W ausgegeben wird.

                                W Offline
                                W Offline
                                Waly_de
                                wrote on last edited by Waly_de
                                #277

                                "0_userdata.0.ecoflow.app_device_property_****.data.plug_heartbeat_pack.watts" liefert W * 10

                                10 Watt sind also ein Wert vom 100 in dem State.
                                Daher das Verhalten.

                                A 1 Reply Last reply
                                0
                                • Nils_1985N Offline
                                  Nils_1985N Offline
                                  Nils_1985
                                  wrote on last edited by
                                  #278

                                  Vielen Dank für den äußerst nützlichen Script. Ganz tolle Arbeit.....

                                  Der Script läuft bei mir fast ohne Probleme.

                                  Ich möchte gerne, dass bei 95% Akkustand automatisch in den Batterie-Prioritätsmodus gewechselt wird, sofern dieser nicht manuell in der Ecoflow schon eingestellt ist. Ich habe dazu den Wert 95 bei battPozOn eingetragen und battOnSwitchPrio auf true geändert. Nun ist mein Akku bei 99% und der Script schaltet in den Strommodus. Was dann leider dazu führen kann, dass der Akku leergesaugt wird. Da ich Tibber und daher einen dynamischen Strompreis habe, möchte ich den Akkustrom dann nutzen wenn der Preis hoch ist, vorher macht es keinen Sinn für mich.

                                  Habe ich einen Denkfehler, sollte der Script nicht in dem Akkumodus bleiben? Anbei die Meldung aus dem Protokoll.

                                  Screenshot 2023-08-27 185118.jpg

                                  Und wann wird die Zusatzpower (tolle Funktion) ein- und ausgeschaltet? Bei dem Wert von battPozOff?

                                  Hier würde ich mir wünschen, dass bei über 600 Watt Solarleistung 600 Watt in den Akku gehen und der Rest ins Netz, dass funktioniert aber leider nur im Strommodus. Gibt es eine Möglichkeit, dass dann bei einer Leistung von unter 600 Watt nur der Akku gespeist wird dann die Leistungsabgabe ins Netz auf 0 geregelt wird?

                                  Viele Grüße

                                  Nils

                                  W 2 Replies Last reply
                                  0
                                  • W Waly_de

                                    "0_userdata.0.ecoflow.app_device_property_****.data.plug_heartbeat_pack.watts" liefert W * 10

                                    10 Watt sind also ein Wert vom 100 in dem State.
                                    Daher das Verhalten.

                                    A Offline
                                    A Offline
                                    anteater321
                                    wrote on last edited by
                                    #279

                                    @waly_de Danke für den Hinweis, hatte ich auch schon irgendwo im dem langen Thread gelesen, aber wieder vergessen.

                                    Hab nochmal drauf geachtet, der Verbrauch kennt aber nur die Richtung nach oben (also deutlich mehr als Faktor 10). Auch wenn der Verbrauch bspw. auf 15 W absinkt, geht der Output nicht runter sondern hoch. Aber ich scheine der einzige mit dem Problem zu sein, muss also irgendwie an meinem Setup liegen.

                                    W 1 Reply Last reply
                                    0
                                    • A anteater321

                                      @waly_de Danke für den Hinweis, hatte ich auch schon irgendwo im dem langen Thread gelesen, aber wieder vergessen.

                                      Hab nochmal drauf geachtet, der Verbrauch kennt aber nur die Richtung nach oben (also deutlich mehr als Faktor 10). Auch wenn der Verbrauch bspw. auf 15 W absinkt, geht der Output nicht runter sondern hoch. Aber ich scheine der einzige mit dem Problem zu sein, muss also irgendwie an meinem Setup liegen.

                                      W Offline
                                      W Offline
                                      Waly_de
                                      wrote on last edited by Waly_de
                                      #280

                                      @anteater321 das ist klar, denn wenn der powerStream seine Ausgangsleistung steigert, sinkt ja der Messwert des smartplug nicht. Darum möchte das Skript immer mehr Leistungen abgeben und von Messung zu Messung steigt der Wert dadurch. Das Setup funktioniert so einfach nicht. Du brauchst einen unabhängigen Stromzähler oder zumindest muss der Powerstream mit dem Verbraucher hinter der SmartPlug eingesteckt sein. Sinn macht das aber alles nicht wirklich...

                                      A 1 Reply Last reply
                                      1
                                      • W Waly_de

                                        So, meine Anbindung läuft jetzt seit einigen Tagen sauber. Daher spendiere ich dem Skript mal einen eigenen Thread.

                                        Anbei findet ihr ein Skript, das eine Verbindung zwischen euren ecoflow-Geräten und ioBroker herstellen kann. Dabei nutzt es die gleiche Schnittstelle wie die ecoFlow App. Ihr benötigt lediglich eure Zugangsdaten zur App und die Seriennummern eurer Geräte, um dieses Skript nutzen zu können. Alle bekannten übermittelten Daten werden in ioBroker als Zustände angelegt. Viele davon sind noch unbekannt. Wenn ihr herausfindet, was sich hinter den unbekannten Daten verbirgt, kann ich die Zustandsnamen anpassen.

                                        Achtung: Der ecoflow-Server sendet unfassbar viele Nachrichten. Wenn ihr mehrere Geräte habt, kann dies euer System stark belasten und sogar zu Abstürzen führen. Vielleicht bekommt Ihr auch diese Meldung und das Script wird beendet:

                                         [error]: javascript.0 (5490) Script script.js.EcoFlow is calling setState more than 1000 times per minute! Stopping Script now! Please check your script!
                                        

                                        Daher empfehle ich, nicht alle Geräte dauerhaft zu abonnieren (dies kann über einen Parameter in der Einstellungssektion festgelegt werden). Es werden nur die PowerStreams benötigt, um die Einspeiseleistung anpassen zu können.
                                        Sonst kann dieser Grenzwert aber auch in den Einstellungen der Javascript-Instanz heraufgesetzt werden. 3000 dürfte für die meisten Szenarien reichen. (Siehe Screenshot weiter unten. Der Wert befindet sich unten links)

                                        Damit kommen wir zur eigentlichen interessanten Funktion des Skripts:
                                        Wenn ihr ein Smartmeter habt, das euren aktuellen Stromverbrauch in Echtzeit anzeigen kann, könnt ihr es an ioBroker anbinden. Informationen dazu findet ihr im Netz.

                                        Hier hab ich das Ding gekauft (Wenn ihr über die Links kauft, bekomme ich ein paar Cent Provision ab ;-)):
                                        Hichi Wifi, IR Lesekopf für Stromzähler
                                        https://ebay.us/3X1pkH
                                        Der Verkäufer hat auch ein tolles Video gemacht, wie man es einrichtet 😉

                                        Es funktionieren aber auch viele andere Zähler wie z.B.:
                                        Der Shelly 3EM

                                        Tibber-Kunden mit Pulse empfehle ich die lokale Einbindung des Pulse als Smartmeter mit meinem Script:
                                        https://forum.iobroker.net/topic/70758/tibber-pulse-verbrauchsdaten-lokal-auslesen

                                        Das Skript passt dann die Einspeiseleistung des PowerStream dynamisch an, sodass möglichst der gesamte Verbrauch durch die Einspeisung gedeckt wird, aber nichts ins Netz verschenkt wird. Erst wenn die Batterie voll geladen ist, wird die gesamte Leistung ins Netz eingespeist (wenn ihr das möchtet).

                                        Das Smartmeter muss den aktuellen Verbrauch möglichst in Echtzeit und in der Einheit Watt in einem Objekt von IOBroker zur Verfügung stellen. Im Script muss dann nur noch der Pfad zu diesem Objekt unter "SmartmeterID:" eingetragen werden. Am einfachsten geht das über die Adminoberfläche von IOBroker. Klickt auf Objekte und sucht das Objekt eures Smartmeters mit dem "Watt"-Wert im Objektbaum:
                                        Bildschirmfoto 2023-09-04 um 09.55.08.jpg
                                        Wenn Ihr auf das markierte Symbol klickt, ist der Pfad in euerer Zwischenablage gespeichert.
                                        Jetzt müsst Ihr ihn nur noch hinter "SmartmeterID:" im Script einfügen. Achtet darauf, dass Ihr es zwischen die "" einfügt.
                                        Wenn alles geklappt hat, der Pfad stimmt und das Script läuft, solltet Ihr unter Objekte: "0_userdata.0.ecoflow.RealPower" sehen, dass sich dieser Wert regelmäßig anpasst.

                                        Es können mehrere PowerStreams konfiguriert werden. Im Moment wird jedoch nur der erste in der Konfiguration gesteuert. Ich habe zum Beispiel zwei PowerStreams, einen mit und einen ohne Batterie. Dadurch steht tagsüber mehr Leistung zum Laden der Batterie zur Verfügung. Die Daten werden vom Skript verwendet, um die optimale Einspeiseleistung zu berechnen. In Zukunft könnten auch mehrere PowerStreams gesteuert werden.

                                        Nochmals vielen Dank an alle hier im Forum, die mit Ihrer Arbeit die Anbindung erst möglich gemacht haben!
                                        Ursprünglicher Beitrag: https://forum.iobroker.net/topic/54929/adapter-für-ecoflow-einbindung/

                                        Wichtig: Zur Installation müssen 2 Module installiert werden. Einfach in den Einstellungen der Javascriptinstanz unter Zusätzliche Module die beiden Namen eintragen und speichern ("mqtt" und "protobufjs")

                                        Bildschirmfoto 2023-07-17 um 10.56.49.jpg

                                        Erweiterungen:
                                        Tibber Modul
                                        Kann als eigenes, neues Script neben dem Hauptscript angelegt werden.

                                        //*************************************************************
                                        // Tibber Modul
                                        //*************************************************************
                                        // Schaltet die Regelung der Powerstation ab, wenn der Strom billig ist 
                                        // und einen beliebigen Schalter zum Aktivieren der AC-Ladung ein, bis die Batterie 
                                        // den durch der "BatMax" festgelegten Ladestand in % erreicht hat
                                        // 
                                        // Diese Parameter aus dem Hauptscript sind wichtig:
                                        // RegulationOffPower: -2 // Wird die Regulation per State abgestellt, wird die Einspeiseleistung des ersten Powerstreams auf diesen Wert gesetzt (-1 = keine Änderung, -2 = Batterie Priomodus)
                                        // RegulationState: "Regulate" // Erzeugt der State zum Ein und Aus-Schalten der Regulation.
                                        //
                                        // Das Script versucht selbst die ID's für den TibberStatus und den Batteriestand zu ermitteln.
                                        // Wenn das nicht klappt bitte einfach die richtigen ID's hinter "batSocID" und "tibberID" angeben.
                                        //
                                        //*************************************************************
                                        
                                        //*************************************************************
                                        // Konfiguration laden, wenn nicht im Originalscript eingefügt
                                        //*************************************************************
                                        var ConfigData = {
                                            statesPrefix: '0_userdata.0.ecoflow',
                                            RegulationState: "Regulate"
                                        }
                                        if (typeof ConfigData.email === 'undefined') {
                                            try {
                                                let tempConfigData = getState("0_userdata.0.ecoflow.Settings.ConfigData").val
                                                if (typeof tempConfigData !== 'object' && tempConfigData !== null) {
                                                    tempConfigData = JSON.parse(tempConfigData)
                                                }
                                                if (typeof tempConfigData === 'object' && tempConfigData !== null) {
                                                    if (tempConfigData.email !== undefined) {
                                                        ConfigData = tempConfigData;
                                                        //log("wurde geladen als object")
                                                    }
                                                }
                                            } catch (error) {
                                                log("Konfiguration wurde nicht geladen: " + error.message)
                                            }
                                        }
                                        
                                        /***************************************
                                        **********  YOUR DATA HERE  ************ 
                                        ****************************************/
                                        var tibberConfig = {
                                            BatMax: 99,                                  //Bei diesem Ladestand stoppt die AC-Ladung und das Script wird wieder eingeschaltet 
                                            BatMin: 95,                                  //Der Ladestand der Batterie muss kleiner sein als BatMin , damit der Akku per AC-Ladung geladen wird 
                                            SwitchID: "sonoff.0.NOUS-DVES_F0A844.POWER", //ID des Schalters, der die AC-Ladung einschaltet. "true" und "false" werden gesetzt
                                            LevelToSwitch: [                             //Hier die Werte definieren, bei denen die AC-Ladung eingeschaltet werden soll
                                                //"NORMAL",
                                                //"CHEAP",                                 //Einkommentieren falls gewüscht 
                                                "VERY_CHEAP"
                                            ],
                                        }
                                        //***************************************/
                                        // Nur angeben, wenn automatische Ermittlung fehlschlägt
                                        //***************************************/
                                        let batSocID = getState(ConfigData.statesPrefix + ".Settings.Tibber.tibberBatSocID").val
                                        let tibberID = getState(ConfigData.statesPrefix + ".Settings.Tibber.tibberID").val
                                        //***************************************/
                                        
                                        
                                        var idOK = false
                                        if (!batSocID || !tibberID) {
                                            log("Versuche die IDs für Tibber und Batterielevel zu finden")
                                            $("tibberlink.*.Homes.*.CurrentPrice.level").each(function (id, i) {
                                                tibberID = id
                                                createState(ConfigData.statesPrefix + ".Settings.Tibber.tibberID", tibberID, false)
                                                log("TibberID gefunden und gespeichert:" + id)
                                            })
                                            $(ConfigData.statesPrefix + ".app_device_property_*.data.InverterHeartbeat.batSoc").each(function (id, i) {
                                                if (getState(id).val > 0) {
                                                    batSocID = id
                                                    createState(ConfigData.statesPrefix + ".Settings.Tibber.tibberBatSocID", batSocID, false)
                                                    log("batSocID gefunden und gespeichert:" + id)
                                                }
                                            })
                                            if (!batSocID || !tibberID) {
                                                log("Fehler bei der Ermittlung der IDs. Bitte händisch ins Script eintragen", 'error')
                                            } else {
                                                idOK = true
                                            }
                                        } else {
                                            idOK = true
                                        }
                                        if (idOK) {
                                            checkTibber()
                                            on({ id: tibberID, change: "ne" }, function (obj) {
                                                //log("Tibber Modul. tibberID Event:" + obj.state.val)
                                                checkTibber()
                                            });
                                            on({ id: batSocID, change: "ne" }, function (obj) {
                                                //log("Tibber Modul. batSocID Event:" + obj.state.val + "%")
                                                checkTibber()
                                            });
                                        }
                                        function checkTibber() {
                                            if (tibberID && batSocID) {
                                                const RegulateID = ConfigData.statesPrefix + "." + ConfigData.RegulationState
                                                let priceLevel = getState(tibberID).val;
                                                let batsoc = Number(getState(batSocID).val)
                                                let OldRegulate = toBoolean(getState(RegulateID).val)
                                                //log("Tibber Preislevel: " + priceLevel + " OldRegulate: " + OldRegulate + " batsoc: " + (batsoc))
                                                if ((tibberConfig.LevelToSwitch.includes(priceLevel))) {
                                                    if (OldRegulate) {
                                                        if (batsoc <= tibberConfig.BatMin) {
                                                            setState(RegulateID, false);  // Regulierung aus
                                                            setState(tibberConfig.SwitchID, true) //Schalter einschalten
                                                            log("Script abgeschaltet AC-Ladung Ein, weil priceLevel:" + priceLevel + " batsoc:" + batsoc + "%")
                                                        }
                                                    } else {
                                                        if (batsoc >= tibberConfig.BatMax) {
                                                            setState(RegulateID, true);  // Regulierung an
                                                            setState(tibberConfig.SwitchID, false) //Schalter ausschalten
                                                            log(" Batterie bei BatMax. Script eingeschaltet AC-Ladung Aus. priceLevel:" + priceLevel + " batsoc:" + batsoc + "%")
                                                        }
                                                    }
                                                } else {
                                                    if (!OldRegulate) {
                                                        setState(RegulateID, true);  // Regulierung an
                                                        setState(tibberConfig.SwitchID, false) //Schalter ausschalten
                                                        log("Script eingeschaltet AC-Ladung Aus. priceLevel:" + priceLevel + " batsoc:" + batsoc + "%")
                                                    }
                                                }
                                            } else {
                                                //log("checkTibber skip. batsocID und/oder tibberID fehlen.")
                                            }
                                        }
                                        //*************************************************************
                                        

                                        Tibber-Pulse als Smartmeter nutzen und lokal auslesen:
                                        https://forum.iobroker.net/topic/70758/tibber-pulse-verbrauchsdaten-lokal-auslesen

                                        Unterstütze das Projekt 'ecoflow-connector'
                                        Wenn dir das Script zur dynamischen Leistungsanpassung für den IObroker gefällt und du es nützlich findest, ziehe bitte in Erwägung, eine kleine Spende via PayPal zu hinterlassen.
                                        Jeder Beitrag hilft, das Projekt am Laufen zu halten und weitere Updates zu ermöglichen.
                                        Danke für deine Unterstützung!
                                        Jetzt Spenden

                                        Dieses Script wird bei Änderungen und Updates immer aktualisiert:
                                        Nutzung auf eigene Gefahr !

                                        [Bildschirmfoto 2024-03-29 um 09.37.51.jpg

                                        • Installation von ioBroker und Skript unter UNRAID in nur 12 Minuten
                                        • Video mit Erklärung der Basiskonfiguration
                                        • Video mit Erklärung zu AdditionalPower und Überschussladung

                                        Download (neues JS-Script in IOBroker anlegen und den Inhalt der Datei einfügen):

                                        • ecoflow-connector_v125.txt (13.05.2024)
                                        • 1.2.5.f1 Fork von Florian Vogt (25.06.2024)
                                          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 (25.06.2024)

                                        ältere Versionen:

                                        • ecoflow-connector_v124.txt (22.04.2024)
                                        • ecoflow-connector_v123.txt (21.02.2024)
                                        • ecoflow-connector_v121_05.01.2024.txt
                                        • ecoflow-connector_v12_.04.12.2023.txt
                                        • ecoflow-connector_v1162_04.11.2023.txt
                                        • ecoflow-connector_v115_02.10.2023.txt
                                        • ecoflow-connector_v1142_26.09.2023
                                        • ecoflow-connector_v1132_31.08.2023
                                        • ecoflow-connector_v112_17.08.2023)
                                        A Offline
                                        A Offline
                                        aherby
                                        wrote on last edited by
                                        #281

                                        @waly_de Bin immer noch begeistert, dass du die ganze Arbeit und Zeit findest das Script zu verbessern.
                                        herzlichen Dank. Habe gerade mal eine Spende aufn Weg geschickt.

                                        Mein Problem ist dass ich aktuell nicht aus der Ferne an den Rechner mit dem Script komme.
                                        Daher kann ich nicht immer alles hier ausprobieren oder testen wenn ich vor Ort bin.

                                        Was mir jetzt aufgefallen ist, das viele Daten der Delta 2 Max unter MPPT landen.
                                        Hier auch Parameter wie Einstellung der DC Autoeingang 1 und Autoeingang 2 wo die Stromwerte 4, 6 und 8 Ampere als Strombegrenzung einstellen kann.
                                        Ist das nur bei mir so oder gibt es einen Grund dafür?

                                        Was mir aber irgendwie von der Bezeichung fehlt ist das Objekt PV1InAmp, PV1InVol ok sind wohl als InVol und anderen Objekten vorhanden. Liegt das daran, dass wenn ein Zigarettenanzünder zum Laden verwendet werden dann auch diese Werte beschrieben werden?

                                        Kann oder werden noch weitere Tests oder Daten von der Delta 2 Max benötigt?

                                        W 1 Reply Last reply
                                        0
                                        • Nils_1985N Nils_1985

                                          Vielen Dank für den äußerst nützlichen Script. Ganz tolle Arbeit.....

                                          Der Script läuft bei mir fast ohne Probleme.

                                          Ich möchte gerne, dass bei 95% Akkustand automatisch in den Batterie-Prioritätsmodus gewechselt wird, sofern dieser nicht manuell in der Ecoflow schon eingestellt ist. Ich habe dazu den Wert 95 bei battPozOn eingetragen und battOnSwitchPrio auf true geändert. Nun ist mein Akku bei 99% und der Script schaltet in den Strommodus. Was dann leider dazu führen kann, dass der Akku leergesaugt wird. Da ich Tibber und daher einen dynamischen Strompreis habe, möchte ich den Akkustrom dann nutzen wenn der Preis hoch ist, vorher macht es keinen Sinn für mich.

                                          Habe ich einen Denkfehler, sollte der Script nicht in dem Akkumodus bleiben? Anbei die Meldung aus dem Protokoll.

                                          Screenshot 2023-08-27 185118.jpg

                                          Und wann wird die Zusatzpower (tolle Funktion) ein- und ausgeschaltet? Bei dem Wert von battPozOff?

                                          Hier würde ich mir wünschen, dass bei über 600 Watt Solarleistung 600 Watt in den Akku gehen und der Rest ins Netz, dass funktioniert aber leider nur im Strommodus. Gibt es eine Möglichkeit, dass dann bei einer Leistung von unter 600 Watt nur der Akku gespeist wird dann die Leistungsabgabe ins Netz auf 0 geregelt wird?

                                          Viele Grüße

                                          Nils

                                          W Offline
                                          W Offline
                                          Waly_de
                                          wrote on last edited by
                                          #282

                                          @nils_1985 sagte in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                                          Und wann wird die Zusatzpower (tolle Funktion) ein- und ausgeschaltet? Bei dem Wert von battPozOff?

                                          im Moment ist es so eingestellt, dass bei Batteriespeisung von Maxpower(600W ) - BAT_MAX_OFFSET(60 W) angefangen wird Zusatzpower zu geben. 60W deswegen, weil der PS im Betrieb eben oft nicht die 600 W Erreicht, sondern ein paar W davor aufhört. Vielleicht thermische Probleme oder Messabweichungen...

                                          Hier würde ich mir wünschen, dass bei über 600 Watt Solarleistung 600 Watt in den Akku gehen und der Rest ins Netz, dass funktioniert aber leider nur im Strommodus. Gibt es eine Möglichkeit, dass dann bei einer Leistung von unter 600 Watt nur der Akku gespeist wird dann die Leistungsabgabe ins Netz auf 0 geregelt wird?

                                          das geht nur mit dem Batterie-Priomodus bis 600W und würde ich auch nicht empfehlen, denn es belastet den Akku sehr, führt zu verkürzter Lebensdauer und beschert Dir die maximal mögliche Verlustleistung wegen Umwandlungsverlusten PV-Akku und dann Akku-Netz.

                                          Wenn du etwas ähnliches unbedingt wills, spiel doch mal mit den Werten lowBatLimitPozOn,lowBatLimitPozOff und lowBatLimit
                                          z.B:

                                          lowBatLimitPozOn: 95, lowBatLimitPozOff: 99, lowBatLimit: 20,
                                          Ist der Akku weniger als 95% geladen werden nur maximal 20 W eingespeist, der rest geht in den Akku. Dann greift aber Zusatzpower, um vielleicht noch etwas mehr heraus zu holen.

                                          Guck aber das es mit battPozOn:, battPozOff:, battOnSwitchPrio:, keine Überschneidungen gibt.

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          109

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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