Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. ecoflow-connector-Script zur dynamischen Leistungsanpassung

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    ecoflow-connector-Script zur dynamischen Leistungsanpassung

    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      Waly_de @Dreffi last edited by

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

      Ich habe dennoch Fragen:

      Was bedeutet der vom Skript angelegte Wert "TotalPV"? Dieser wird immer größer.

      Das ist einfach die Summe der Leistung aller PV-Module. Ich hab z.B. 2 Powerstream mit insgesamt 4 Modulen.

      Wie oft sendet das Skript den aktuellen Wert, bei jeder Änderung des als Bezug hinterlegten Objektes?

      Nein, alle 30 Sekunden wird geprüft und angepasst.
      Wichtig dabei ist auch der Punkt :
      MinValueMin: 3, //Der Zeitraum in Minuten, aus dem der letzte Gesamtverbrauchs-Minimalwert geholt werden soll

      Kommt das Skript mit negativen Werten für den Sensor den Strombezug klar?

      Klar!

      D 1 Reply Last reply Reply Quote 1
      • D
        Dreffi @Waly_de last edited by

        Ok, der Wert TotalPV scheint bei mir dann nicht zustimmen. Dieser ist wird z.B. mit 1000 angezeigt, wobei die Leistung derzeit im Bereich von 370W liegt (nur ein Powerstream).

        Egal, das ist erstmal für mich persönlich nicht wichtig.
        Ich lasse das erstmal ein paar Stunden laufen, beobachte und werde dann sicher noch mal Fragen haben.

        Dickes Dankeschön bis hier für das Teilen des Skriptes!

        W 1 Reply Last reply Reply Quote 0
        • W
          WALLe 0 @Waly_de last edited by

          @waly_de
          WOW es funktioniert.
          Super Leistung danke.

          Ich werde jetzt das überschussladen mal 1 - 2 Wochen testen und die Regelung noch anpassen. Das kann ich dir dann gern zukommen lassen.

          1 Reply Last reply Reply Quote 1
          • W
            Waly_de @Dreffi last edited by Waly_de

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

            Ok, der Wert TotalPV scheint bei mir dann nicht zustimmen. Dieser ist wird z.B. mit 1000 angezeigt, wobei die Leistung derzeit im Bereich von 370W liegt (nur ein Powerstream).

            Der Faktor ist 10.
            1000 würde also 100W entsprechen. Bei 370W sollte also 3700 angezeigt werden.

            hmm... kannst du bitte mal sehen, was in dem Wert steht:
            0_userdata.0.ecoflow.app_device_property_XXXXXXXXXXXXXXXXXXXXXX.data.item.meta.sumPV

            Ist das der gleiche Wert den dir TotalPV ausgibt?

            D 1 Reply Last reply Reply Quote 0
            • D
              Dreffi @Waly_de last edited by Dreffi

              @waly_de
              Dort steht das gleiche wie unter TotalPV. Das scheint jetzt auch soweit ungefähr zu passen mit dem Faktor 10. Vorhin schwankte die Solarleistung hier sehr stark durch Wolken. Da habe ich wohl unterschiedliche Werte in ioBroker und der App verglichen.
              Alles gut.

              Ich bin immer noch begeistert wie gut das Skript läuft.
              ungefähr seit 12 läuft das Skript. Es gab mittags ein paar Probleme mit meinem Bezugssensor (Tibber pulse), aber seitdem sieht das echt gut aus, obwohl das Script neben meinem Verbrauch auch die Einspeisung des normalen Balkonkraftwerks mit wegregeln muss. Hut ab!
              Bildschirmfoto 2023-07-29 um 14.24.32.png

              W 1 Reply Last reply Reply Quote 0
              • W
                Waly_de @Dreffi last edited by Waly_de

                @dreffi Super. Ist immer toll zu sehen, dass mein Zeug auch woanders funktioniert 😉
                Tibber pulse: Da hab ich auch drüber nachgedacht. Kannst Du den direkt abfragen und in Dein Home Assistant einbinden, oder geht das immer nur über die Cloud (API)?
                Meinen Tasmota-Sensor würde ich nur ungern gegen eine trägere Cloudlösung tauschen.

                D 1 Reply Last reply Reply Quote 0
                • D
                  Dreffi @Waly_de last edited by

                  @waly_de
                  Den Pulse greife ich über die API ab. Dafür gibt es direkt eine Integration in Home Assistant.

                  Die Zuverlässigkeit der API ist nicht perfekt. Da gibt es hier und da regelmäßig mal Aussetzer. Die Integration hängt sich auch gerne mal auf. Ich überwache den Sensor bereits in Home Assistant und starte die Integration neu sobald der Wert sich für fünf Minuten nicht ändert. Wenn die API spinnt hilft das aber auch nicht.
                  Es gibt auch eine Dokumentation auf GitHub um die Bridge des Pulse zu manipulieren und die Daten zumindest dort lokal abzufragen.

                  Vorher hatte ich einen Weidmann Lesekopf am Zähler und direkt per USB mit dem Host von Home Assistant verbunden. Absolut zuverlässig. Leider muss ich den Pulse nutzen um den stündlichen Tarif von Tibber nutzen zu können.

                  Es gäbe Möglichkeiten die Signale des Zählers auf einen weiteren Sendekopf zu spiegeln, aber so kontrolliere ich auch gleich ob alles korrekt auf den Servern von Tibber angekommen ist.

                  W 1 Reply Last reply Reply Quote 1
                  • W
                    Waly_de @Dreffi last edited by

                    @dreffi das hab ich befürchtet 😕

                    Es gäbe Möglichkeiten die Signale des Zählers auf einen weiteren Sendekopf zu spiegeln

                    Hast Du da vielleicht nähere Infos für mich?

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      Dreffi @Waly_de last edited by

                      @waly_de
                      Klar: https://www.photovoltaikforum.com/thread/202377-tibber-doppelter-lesekopf-pulse/

                      Mir ist heute Nachmittag mindestens 2x irgendwas hängen geblieben. Ich weiß noch nicht wo die Ursache lag, aber es wurden dann keine Werte am Powerstream mehr aktualisiert. Ich werde das beobachten. Nach Neustart des Scripts läuft es Moment sofort wieder.

                      W 1 Reply Last reply Reply Quote 0
                      • W
                        Waly_de @Dreffi last edited by Waly_de

                        @dreffi Perfekt, danke 🙂

                        Wie lange waren denn die Hänger? Und gab es dazu Log-Ausgaben?
                        Es ist so, dass der MQTT aufhört Daten zu senden, wenn Du parallel mit der App arbeitest, und diese dann schließt. Das Script überwacht aber, ob Daten kommen und verbindet sich selbst nach einer gewissen Zeit neu. (Am Tag nach einer Minute, ab einer Stunde nach Sonnenuntergang nach 15 Minuten)

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          Dreffi @Waly_de last edited by Dreffi

                          @waly_de
                          Ich kann das noch nicht genau sagen. Ab ca. 16:00 hat sich die Einspeiseleistung des Powerstream nicht mehr geändert und der Netzbezug ging damit teilweise ins Negative (Einspeisung). Gegen 17:30 habe ich das bemerkt und das Skript neu gestartet.
                          Bildschirmfoto 2023-07-30 um 07.20.12.png (Sorry, der erste Pfeil muss etwas weiter nach rechts auf kurz vor 16:00)

                          Abends schien es dann andauernd auszusetzen. Es kann aber auch sein, dass da andere Probleme mit reingespielt haben. Es gab gestern reichlich Updates bei ecoflow. Vielleicht war der MQTT Server schlicht überlastet, weil alle an den Geräten rumgespielt haben.
                          Im PV-Forum gibt es reichlich Beschwerden zu Problemen mit der Cloud bzw. dem Powerstream seit den Updates gestern.

                          Zur Klarstellung: das Skript läuft weiter und die Objekte in ioBroker werden auch aktualisiert. Es scheint irgendwann nur nicht mehr vom Powerstream übernommen zu werden.
                          Welches Objekt (state) in ioBroker entspricht dem Wert "Leistungsbedarf am AC-Ausgang"? Ich würde beobachten wollen ob dieses dann aktualisiert wird und zur tatsächlichen Einspeiseleistung passt.

                          Das mit der App ist ein guter Tipp. Ich werde diese schließen, das Skript 1x neu starten und dann einige Stunden die Finger von der App lassen.

                          Update:
                          es hängt wieder. Aktuell sieht es so aus:
                          Das Skript läuft und der Wert RealPower wird auch fleißig aktualisiert. Die Daten des Powerstream scheinen aber weder aktualisiert zu werden, noch überhaupt zu stimmen.
                          Beispiele:
                          totalPV steht unverändert auf 5762,88. Das kann nicht sein. Der Wert müsste um die 1000 liegen.
                          PV1_Power steht auf 3 und PV2_Power steht auf 6000.
                          PlugPower steht auf 36. Ist das der Wert für die Smart Plugs? Ich habe keine.

                          Ich vermute aktuell es liegt an der WLAN Verbindung des Powerstream.
                          Jepp, ich habe den Powerstream wieder auf den richtigen Repeater gezwungen und die Werte werden aktualisiert. Der Powerstream hat auch gleich wieder mit der Einspeisung begonnen. Das Problem liegt also vermutlich in meinem Netzwerk.

                          W 1 Reply Last reply Reply Quote 1
                          • W
                            Waly_de @Dreffi last edited by

                            @dreffi Ja das ist trügerisch. Ohne WLAN geht da natürlich nichts. In der APP muss man dann aufpassen, das nicht grade eine Bluetooth Verbindung angezeigt wird, sonst merkt man das nicht.

                            Zu dem State kann ich Dir nur dringend empfehlen die Letzte(Beta) version vom Script zu verwenden. Denn die States haben sich, nachdem die Originaldefinitionen von ecoflow eingebaut wurden alle geändert. Aktuell steht der Wert in:
                            0_userdata.0.ecoflow.app_device_property_XXXXXXXXXXXXXXXX.data.InverterHeartbeat.permanentWatts

                            D 1 Reply Last reply Reply Quote 1
                            • D
                              Dreffi @Waly_de last edited by

                              @waly_de
                              Sorry für die doofe Frage, aber wie tausche ich das Skript am besten aus?
                              Ich habe das alte gestoppt, ein neues angelegt und die Nutzereingaben mit den alten überschrieben. Beim Start des Skripts erhalte ich dann massig rote Fehlereinträge im Log.
                              Ich habe daher erstmal eine Sicherung geladen.

                              W 1 Reply Last reply Reply Quote 0
                              • W
                                Waly_de @Dreffi last edited by Waly_de

                                @dreffi war schon richtig so....

                                In den Einstellungen des neuen Scripts gibt es neue Punkte die nicht fehlen dürfen... also nicht einfach die alten komplett rein kopieren.

                                ...sonst brauch ich mal ein paar der Fehlermeldungen

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  Dreffi @Waly_de last edited by

                                  @waly_de
                                  Fehlermeldungen nach Start des Scripts in Version 0.6.2:

                                  30.7.2023, 12:01:00.530	[info ]: javascript.0 (1792) Start javascript script.js.Powerstream_BETA
                                  30.7.2023, 12:01:00.543	[info ]: javascript.0 (1792) script.js.Powerstream_BETA: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
                                  30.7.2023, 12:01:00.923	[info ]: javascript.0 (1792) script.js.Powerstream_BETA: Verbunden mit dem Ecoflow MQTT-Broker
                                  30.7.2023, 12:01:01.036	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:01.037	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:01.037	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:01.052	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:01.052	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:01.053	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:01.065	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:01.066	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:01.066	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:01.077	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:01.078	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:01.078	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:01.176	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:01.177	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:01.177	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:02.833	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:02.834	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:02.834	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:03.046	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:03.047	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:03.047	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:03.248	[error]: javascript.0 (1792) script.js.Powerstream_BETA: TypeError: Cannot convert undefined or null to object
                                  30.7.2023, 12:01:03.249	[error]: javascript.0 (1792)     at decodeAndPrint (script.js.Powerstream_BETA:995:34)
                                  30.7.2023, 12:01:03.249	[error]: javascript.0 (1792)     at MqttClient.<anonymous> (script.js.Powerstream_BETA:832:36)
                                  30.7.2023, 12:01:04.581	[info ]: javascript.0 (1792) Stop script script.js.Powerstream_BETA
                                  30.7.2023, 12:01:04.582	[info ]: javascript.0 (1792) script.js.Powerstream_BETA: Ecoflow MQTT-Client beendet
                                  [/s]
                                  
                                  W 1 Reply Last reply Reply Quote 0
                                  • W
                                    WALLe 0 @Waly_de last edited by WALLe 0

                                    @waly_de

                                    Ich habe hier noch eine kleine unschönheit entdeckt. 🙂
                                    State value to set for "0_userdata.0.ecoflow.app_1668913565281660930_XXXXXXXXXXXXXXXX_thing_property_set.writeables.acChgCfg_D2" has to be type "string" but received type "number"

                                    Das scirpt funktioniert sonst soweit taelos für mich, danke.

                                    1 Reply Last reply Reply Quote 1
                                    • W
                                      Waly_de @Dreffi last edited by

                                      @dreffi kann ich mir so nicht erklären... Einstellungen gecheckt? alle vollständig ?
                                      definition von protoSource2 vorhanden und vollständig ?
                                      sonst vielleicht noch mal ein stück log mit eingeschaltetem debug ..

                                      bin aber jetzt erst mal unterwegs und kann mich nicht kümmern

                                      D 1 Reply Last reply Reply Quote 0
                                      • D
                                        Dreffi @Waly_de last edited by Dreffi

                                        @waly_de said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                                        definition von protoSource2 vorhanden und vollständig ?

                                        Wie prüfe ich das? Ich habe Protobuf und den MQTT Client mit den Befehlen aus dem Script über die Konsole installiert.
                                        Nachtrag: die Werte der Delta 2 werden mit der aktuellen Version des Scripts aktualisiert. Die Werte des Powerstreams bekommt er anscheinend nicht decodiert.

                                        L 1 Reply Last reply Reply Quote 1
                                        • L
                                          LordMinorin @Dreffi last edited by LordMinorin

                                          @dreffi said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                                          @waly_de said in ecoflow-connector-Script zur dynamischen Leistungsanpassung:

                                          definition von protoSource2 vorhanden und vollständig ?

                                          Wie prüfe ich das? Ich habe Protobuf und den MQTT Client mit den Befehlen aus dem Script über die Konsole installiert.
                                          Nachtrag: die Werte der Delta 2 werden mit der aktuellen Version des Scripts aktualisiert. Die Werte des Powerstreams bekommt er anscheinend nicht decodiert.

                                          Hab seid heute dasselbe Problem
                                          Hatte mal die neue Version reigeschrieben.
                                          Bekomme auch lauter Fehler, ausser ich kommentiere den PowerStream aus.

                                          Mit der vorherigen Version des Scriptes geht es auch nicht mehr, es werden nur keine Fehler geschrieben, sondern die Werte einfach nicht mehr aktualisiert.

                                          W 1 Reply Last reply Reply Quote 0
                                          • W
                                            Waly_de @LordMinorin last edited by

                                            @lordminorin ich fürchte das könnte mit den jüngsten updates zusammen hängen.
                                            ich hab noch keine gemacht, weil ich das befürchtet habe.

                                            dennoch: bitte mal mit Debug : true kurz loggen und mir zukommen lassen. gern auch als PM

                                            D 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            718
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            126
                                            1630
                                            529911
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo