Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Neuer Adapter ecoflow-mqtt

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Neuer Adapter ecoflow-mqtt

    This topic has been deleted. Only users with topic management privileges can see it.
    • bentschik
      bentschik @foxthefox last edited by

      @foxthefox Ich habe es direkt mal ausprobiert. Das Resultat passt noch nicht so ganz, aber dafür ist das Testen ja da:

      Screenshot 2025-09-04 at 09.11.18.png

      F 1 Reply Last reply Reply Quote 1
      • F
        foxthefox Developer @bentschik last edited by

        @bentschik
        Ok, dann schau doch mal was im debug mode so geloggt wird. Dazu in der Gerätezeile und auf der ersten Seite msgSetGet msg Update ein Häckchen setzen. Es müsste die neue Objektstruktur Parallel… dabei sein.
        Gern auch das log posten bzw. als persönliche Nachricht

        bentschik 1 Reply Last reply Reply Quote 0
        • M
          mouk @foxthefox last edited by

          @foxthefox
          Tausend Dank. Es geht nun.
          Sollte was auffallen, melde ich mich.

          F 1 Reply Last reply Reply Quote 1
          • F
            foxthefox Developer @mouk last edited by

            @mouk
            Danke für die Rückmeldung.

            1 Reply Last reply Reply Quote 0
            • bentschik
              bentschik @foxthefox last edited by bentschik

              @foxthefox Bin endlich mal dazu gekommen, die logs einzusammeln...

              adapter-debug.json

              Den "grossen" log kann ich Dir vermutlich ersparen, weil ich darin schon folgendes sehe:

              2025-09-08 09:54:14.553  - debug: ecoflow-mqtt.0 (19640) [PROTOBUF decode] <snip> [get_reply] msg#10 =>
              ParallelEnergyStreamReport {
              	"paraEnergyStream": [
              		{
              			"sysLoadPwr": 433.5506591796875,
              			"sysGridPwr": -50.13569641113281,
              			"mpptPwr": 2.5528552532196045,
              			"bpPwr": -481.1335144042969,
              			"bpSoc": 42,
              			"unknown9": 2.5528552532196045
              		},
              		{
              			"sysLoadPwr": 406.5067443847656,
              			"sysGridPwr": 156.0901641845703,
              			"mpptPwr": 2.5528552532196045,
              			"bpPwr": -247.8637237548828,
              			"bpSoc": 42,
              			"devSn": "<snip>",
              			"unknown9": 2.5528552532196045
              		},
              		{
              			"sysLoadPwr": -18.66717529296875,
              			"sysGridPwr": -251.9369659423828,
              			"bpPwr": -233.26979064941406,
              			"bpSoc": 41,
              			"devSn": "<snip>"
              		}
              	]
              }
              

              D.h. es sieht für mich so aus, als wenn die Daten (zumindest teilweise) korrekt kommen, aber noch nicht in den entsprechenden iobroker Objekten landen.

              Ich bin mal durch das log gegangen und stelle fest, dass in dem StreamReport bislang keine der ocean_* oder system1_* Datenpunkte dabei waren.

              Falls Du doch noch den grossen log benötigst, muss ich die Sache mit der PN noch lernen, da ich die Funktion einfach noch nicht gefunden habe 😉

              F 1 Reply Last reply Reply Quote 1
              • F
                foxthefox Developer @bentschik last edited by

                @bentschik
                Danke für die Info. Ich glaube mit nem kurzen Blick das Problem schon zu sehen. Es braucht noch eine Schleife um durch die einzelnen Datenpunkte zu gehen.
                Nächste Versuch kommt wahrscheinlich heute Abend.

                1 Reply Last reply Reply Quote 0
                • K
                  KlausN @foxthefox last edited by

                  @foxthefox

                  Anbei das LOG.

                  ecoflow.log

                  F 1 Reply Last reply Reply Quote 1
                  • F
                    foxthefox Developer @KlausN last edited by

                    @klausn sagte in Neuer Adapter ecoflow-mqtt:

                    @foxthefox

                    Anbei das LOG.

                    Super. Danke.
                    Kannst du mal prüfen, ob die Häckchen drin sind?
                    Bildschirmfoto 2025-09-11 um 22.13.12.png

                    Ich glaube, die fehlen.
                    Falls ja, bitte nochmal ein log posten.

                    K 1 Reply Last reply Reply Quote 0
                    • K
                      KlausN @foxthefox last edited by

                      @foxthefox

                      msgUpdate und msgSetGet waren angekreuzt, so wie Du gesagt hattest.
                      Ich hab jetzt mal noch msgUpdateValue und msgCmd angekreuzt.

                      Voila:

                      ecoflow_2.txt

                      F 1 Reply Last reply Reply Quote 1
                      • F
                        foxthefox Developer @KlausN last edited by

                        @klausn

                        @klausn sagte in Neuer Adapter ecoflow-mqtt:

                        @foxthefox

                        msgUpdate und msgSetGet waren angekreuzt, so wie Du gesagt hattest.
                        Ich hab jetzt mal noch msgUpdateValue und msgCmd angekreuzt.

                        Danke, irgendwas passt noch nicht. 😞
                        Es müsste mindestens nach dem Start eine Zeile:

                        ecoflow-mqtt.0 (4820) [PROTOBUF decode] R37xxxxxx  [get_reply] raw (hex): 0a83030.....
                        

                        auftauchen.

                        Laut log ist das Telegramm auch angekommen und funktioniert bis zur msg7. Dann gibt es noch Probleme die noch Ursachenforschung brauchen. Aber dazu brauch ich die vermissten Anteile im Log.

                        Kannst du hier nochmal überprüfen (debug, Häckchen gesetzt)?!

                        Bildschirmfoto 2025-09-12 um 08.02.03.png

                        Bildschirmfoto 2025-09-12 um 08.00.30.png

                        Danke.

                        K 1 Reply Last reply Reply Quote 0
                        • K
                          KlausN @foxthefox last edited by

                          @foxthefox

                          Sorry, war mein Fehler, Asche auf mein Haupt.

                          ecoflow_3.txt

                          F 1 Reply Last reply Reply Quote 1
                          • F
                            foxthefox Developer @KlausN last edited by

                            @klausn sagte in Neuer Adapter ecoflow-mqtt:

                            @foxthefox

                            Sorry, war mein Fehler, Asche auf mein Haupt.

                            ecoflow_3.txt

                            Danke. Jetzt passt es und ich kann mich um die Unterschiede zur anderen Ocean kümmern.

                            F 1 Reply Last reply Reply Quote 0
                            • F
                              foxthefox Developer @foxthefox last edited by

                              Eine neue Version ist auf npm und git verfügbar.
                              Hauptsächlich Dinge für Powerocean, speziel der Heizstab ist nun dabei.
                              Und auch ein paar Kleinigkeiten im Zusammenspiel mit Homeassistant.

                              @bentschik
                              Parallelenergie ist nun mit powerPv drin, die alten unknown9/10 Datenpunkte können gelsöcht werden.

                              @KlausN
                              Die Daten sollten nun richtig verarbeitet werden. Das Problem der <20 habe ich noch nicht angegangen, da braucht es eine Umstrukturierung.
                              Aber die Batterien und Heizstab sollte nun richtig angezeigt werden.

                              1.4.4 (npm)

                              • (foxthefox) new datapoints for PowerOcean (HeatingRod, ParallelEnergy)
                              • (foxthefox) improvements tp powerocean plus
                              • (foxthefox) corrections for powerocean
                              • (foxthefox) testing JSON->buffer
                              F bentschik 2 Replies Last reply Reply Quote 1
                              • F
                                foxthefox Developer @foxthefox last edited by

                                die Version 1.4.5 ist neu auf git und npm verfügbar

                                @KlausN
                                Das Problem mit den <20 hoffe ich gelöst zu haben, da jetzt alle ankommenden Telegramme (auch die mehrfachen zu einem Objektbaum) nun verarbeitet werden.

                                1.4.5 (npm)

                                • (foxthefox) change from object to array for messages (for telegrams with multiple messages of same type i.e. powerocean)
                                • (foxthefox) change of cmdId/CmdFunc structure
                                K 1 Reply Last reply Reply Quote 0
                                • K
                                  KlausN @foxthefox last edited by

                                  @foxthefox

                                  Kurze Rückmeldung zu 1.4.5:

                                  HeatingRodEnergyStreamShow.rod1_temp zeigt keine Temperatur an,
                                  statusReportBattery2 und 3 fehlen noch,
                                  Werte mit 0 W, z.B. JTS1_ENERGY_STREAM_REPORT.mpptPwr (und andere) werden nicht angezeigt, es verbleibt im MQTT-Objekt der vorherige Wert > 0.

                                  Danke für Deine Mühe!

                                  F 1 Reply Last reply Reply Quote 1
                                  • F
                                    foxthefox Developer @KlausN last edited by

                                    @klausn sagte in Neuer Adapter ecoflow-mqtt:

                                    @foxthefox

                                    Kurze Rückmeldung zu 1.4.5:

                                    HeatingRodEnergyStreamShow.rod1_temp zeigt keine Temperatur an,
                                    statusReportBattery2 und 3 fehlen noch,
                                    Werte mit 0 W, z.B. JTS1_ENERGY_STREAM_REPORT.mpptPwr (und andere) werden nicht angezeigt, es verbleibt im MQTT-Objekt der vorherige Wert > 0.

                                    Danke für Deine Mühe!

                                    Danke für die Rückmeldung.
                                    Hmm. Das die Batterien nicht mit Daten befüllt werden, wundert mich. Hattest du in der Zwischenzeit mal die EF-App offen? Die fordert an sich das gleiche Telegramm an, wie beim starten des Adapters. Dieses vom Start und auch Updates habe ich erfolgreich bei mir durchgetestet. Sehr merkwürdig, dass 2 Batterien keine Daten haben.
                                    Evtl mal das log anschauen. Ob da was an Fehlern kommt und wie oft dort eine Telegramm reinkommt. Evtl. Kommen bestimmte Telegramme nur wen die App offen ist.
                                    Im log sind auch die nach json gewandelten Daten zu sehen, dort mal drauf achten ob hier rod1_temp mit drin ist. Bzw mpptPwr.

                                    1 Reply Last reply Reply Quote 0
                                    • bentschik
                                      bentschik @foxthefox last edited by bentschik

                                      @foxthefox Auch an dieser Stelle nochmals vielen Dank für Deine Arbeit 🙂

                                      Für mein eigenes Verständnis zum Update der Werte habe ich noch eine Frage. Soweit ich das verstanden habe, soll das 5-minütige getLatestQuotas sicherstellen, dass die Daten mindestens in diesem Intervall aktualisiert werden. Ich habe mir das Ganze mal mit dem ParallelEnergyStreamReport angeschaut. Alle Werte dort aktualisieren sich nicht mehr, solange die App nicht aktiv ist. Ich sehe im debug log, dass das getLatestQuotas läuft. Im log sehe ich auch folgendes, wobei ich mir nicht ganz sicher bin, ob das eine Antwort auf getLatestQuotas ist:

                                      [PROTOBUF decode] HJXXXXX [get_reply] msg#10 => ParallelEnergyStreamReport 
                                      {
                                      	"paraEnergyStream": [
                                      		{
                                      			"sysLoadPwr": 397.404296875,
                                      			"sysGridPwr": -12.054679870605469,
                                      			"bpPwr": -409.458984375,
                                      			"bpSoc": 44
                                      		},
                                      		{
                                      			"sysLoadPwr": 400.8734436035156,
                                      			"sysGridPwr": 245.0974884033203,
                                      			"bpPwr": -155.7759552001953,
                                      			"bpSoc": 43,
                                      			"devSn": "HJXXXXX"
                                      		},
                                      		{
                                      			"sysLoadPwr": -1.880767822265625,
                                      			"sysGridPwr": -255.56381225585938,
                                      			"bpPwr": -253.68304443359375,
                                      			"bpSoc": 44,
                                      			"devSn": "BKXXXX"
                                      		}
                                      	]
                                      }
                                      

                                      D.h. diese Werte kommen wohl an, aber die entsprechenden IOB-Objekte werden nicht aktualisiert. Das zweite Datenset entspricht vermutlich den Daten für ocean und das dritte für system1:

                                      ad846c87-f75b-4b05-ad7f-aed0115cf2de-image.png

                                      Die Daten hier wurden letztmalig gestern um 21:27 aktualisiert.

                                      Weiterhin sieht es dann wohl so aus, als wenn getLatestQuotas nicht alle Datenpunkte des ParallelEnergyStreamReports bekommt. Ist zumindest dieser Punkt erwartetes Verhalten?

                                      F 1 Reply Last reply Reply Quote 1
                                      • F
                                        foxthefox Developer @bentschik last edited by

                                        @bentschik
                                        Danke für diese detaillierte Rückmeldung.
                                        Zur Ursache habe ich noch keine Idee, aber die Erkenntnis des Problems ist schonmal wichtig.

                                        Also, es sollte eigentlich anders laufen.

                                        GetLatestQuotas taucht als [get] im log auf, wird auch von der App in gleicher Weise benutzt.
                                        Das [get_reply] ist die Antwort darauf und in dem Telegramm sind mehrere Messages msg.
                                        Msg#10 ist in dem Fall das Update zu den Leistungen.
                                        Das kommt als Array und das erste Objekt sollte das gesamt System sein und die anderen haben dann de prefix von mir. So wie du es beschreibst.
                                        Grundsätzlich wird das Telegramm und damit die enthaltenen Messages und dann die Datenpunkte durchlaufen und bei Abweichungen zum derzeitigen IOB-Wert wird das Neue übernommen.

                                        Gemäß deiner Schilderung werden die Daten geholt und auch dekodiert, aber es wird nichts abgespeichert.
                                        Du könntest mal noch bei msgUpdateValue noch ein Häckchen setzen. Evtl kommt da etwas zum Vorschein.

                                        Ich schau heute Abend mal im Code, vielleicht sehe ich da auch was.

                                        1 Reply Last reply Reply Quote 0
                                        • bentschik
                                          bentschik last edited by

                                          @foxthefox Was ich noch sehe, ist folgendes:

                                          [PROTOBUF decode] HJ37ZDH5ZGCF0067 [update] msg#0 =>
                                          {
                                          	"paraEnergyStreamDetail": [
                                          		{
                                          			"loadPwr": 814.7593994140625,
                                          			"gridPwr": -350.96319580078125,
                                          			"mpptPwr": 1390.2650146484375,
                                          			"bpPwr": 224.54238891601562,
                                          			"timestamp": 1757936700,
                                          			"bpSoc": 69,
                                          			"devSn": "HJXXXXXX"
                                          		},
                                          		{
                                          			"loadPwr": 823.8870849609375,
                                          			"gridPwr": 4.56684684753418,
                                          			"mpptPwr": 1390.2650146484375,
                                          			"bpPwr": 570.94482421875,
                                          			"timestamp": 1757936700,
                                          			"bpSoc": 66
                                          		},
                                          		[....]
                                          	],
                                          	"paraSysSeq": 41630
                                          }
                                          

                                          In dem log Eintrag sind auch noch die Daten für 4 weitere timestamps, die ich weggelassen habe.

                                          Ich vermute, dass Du Einträge, wie z.B. den hier meinst:

                                          [Compare] update .JTS1_EMS_HEARTBEAT.pcsVgridThd 0 -> 0.04
                                          

                                          Sowas bekomme ich für so ziemlich alles andere, aber nicht für den ParallelEnergyStreamReport. Erst, wenn ich die App anreisse kommt was (gekürzter log):

                                          [Compare] update .ParallelEnergyStreamReport.powerPv2 202.36 -> 203.8
                                          [Compare] update .ParallelEnergyStreamReport.powerPv1 223.48 -> 225.1
                                          [Compare] update .ParallelEnergyStreamReport.bpPwr -259.36 -> -236.75
                                          [Compare] update .ParallelEnergyStreamReport.mpptPwr 425.84 -> 428.9
                                          [Compare] update .ParallelEnergyStreamReport.sysGridPwr -13.65 -> -5.79
                                          [Compare] update .ParallelEnergyStreamReport.sysLoadPwr 671.54 -> 659.86
                                          
                                          F 2 Replies Last reply Reply Quote 1
                                          • F
                                            foxthefox Developer @bentschik last edited by

                                            @bentschik
                                            Super Recherche deinerseits.

                                            Genau, für jede Änderung sollte es ein Vergleich geben und bei einem Unterschied gibt es diese [Compare] Einträge im log. Wenn das bei allen anderen kommt, ist das schonmal gut und zeigt, dass Daten kommen und der Mechanismus seinen Dienst tut.

                                            Nun zu den Energiewerten, es gibt immerhin schon einen Unterschied. Bei get_reply scheint es parallelEnergyStream zu geben und bei den Updates ist es parallelEnergyStreamDetail. Also ein klein wenig anders und wahrscheinlich habe ich dieses Telegramm noch nicht verarbeitet. Das nehme ich mal noch mit auf.
                                            Das ist zumindest die Begründung warum keine Updates zu den Werten kommen.
                                            Eine Erklärung warum alle 5min über get_reply nichts verarbeitet wird, ist es noch nicht.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            897
                                            Online

                                            32.1k
                                            Users

                                            80.6k
                                            Topics

                                            1.3m
                                            Posts

                                            46
                                            625
                                            152285
                                            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