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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Gibt es einen Adapter für ecoflow PowerOcean ?

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    23
    1
    1.3k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Gibt es einen Adapter für ecoflow PowerOcean ?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
48 Beiträge 10 Kommentatoren 6.3k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C CatShape

    @allodo sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

    Also ich habe gestern 2 Datenpunkte angelegt, jedoch passiert dort gar nix. Weder wird mpptPower aktualisiert, noch wird bei mpptEnergyToday etwas angezeigt :(

    Ich habe mich bei der Definition des Zustands "mpptPower" auf die API-Doku von EcoFlow zu mpptPwr verlassen; möglicherweise ist die nicht korrekt. Da ich keine PowerOcean habe, kann ich selber leider nichts testen, was die Sache für mich etwas schwierig macht.

    .
    @allodo sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

    Oder habe ich dort etwas falsch gemacht? Sorry, kenne mich mit den Inhalten von Datenpunkten gar nicht aus. Musste mich damit bisher allerdings auch noch nicht auseinandersetzen ;)

    Mein Adapter basiert im Wesentlichen darauf, dass der Benutzer Zustände in der Instanz selber anlegt und den Inhalt von "native":{} direkt in den Objektdaten konfiguriert. Für Leute die das nicht möchten, ist mein Adapter nicht so geeignet.

    Wenn Du willst, kannst Du mir die Objektdaten von Deinem Datenpunkt "Solarertrag" zeigen (bei eingeschaltetem Expertenmodus rechte Maustaste auf Datenpunkt und "Objekt bearbeiten" wählen, Seriennummer unkenntlich machen). Dann könnte ich Dir sagen was zu tun ist, damit "mpptEnergyToday" richtig befüllt wird.

    A Offline
    A Offline
    Allodo
    schrieb am zuletzt editiert von
    #36

    @catshape
    Hier mal mein Eintrag für den Solarertrag:

    {
      "common": {
        "name": "Solarertrag",
        "desc": "Manuell erzeugt",
        "role": "state",
        "type": "number",
        "unit": "W",
        "read": true,
        "write": false,
        "def": 0,
        "color": "#ffff00"
      },
      "type": "state",
      "native": {
        "ecoflowApi": {
          "quotaValueKey": "mpptPwr",
          "valueFactor": 1
        }
      },
      "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxx.Solarertrag",
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      },
      "from": "system.adapter.admin.0",
      "user": "system.user.admin",
      "ts": 1747114450505
    }
    
    C 1 Antwort Letzte Antwort
    0
    • A Allodo

      @catshape
      Hier mal mein Eintrag für den Solarertrag:

      {
        "common": {
          "name": "Solarertrag",
          "desc": "Manuell erzeugt",
          "role": "state",
          "type": "number",
          "unit": "W",
          "read": true,
          "write": false,
          "def": 0,
          "color": "#ffff00"
        },
        "type": "state",
        "native": {
          "ecoflowApi": {
            "quotaValueKey": "mpptPwr",
            "valueFactor": 1
          }
        },
        "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxx.Solarertrag",
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1747114450505
      }
      
      C Offline
      C Offline
      CatShape
      schrieb am zuletzt editiert von CatShape
      #37

      @allodo
      Ok, dann war meine Definition von "mpptPower" und "mpptEnergyToday" eigentlich richtig. Ich verstehe nicht warum dann der Wert von "mpptPower" nicht genauso aktualisiert wird wie "Solarertrag". Das müsste er eigentlich, denn mein Adapter schaut dazu nur darauf was in native.ecoflowApi steht, und so weit ich sehe ist das bei beiden Datenpunkten identisch.
      Bin gerade etwas ratlos.

      Nun gut, Du könntest einen neuen Datenpunkt "SolarertragHeute" vom Typ "Zahl" am selben Ort wie "Solarertrag" (also in ecoflow_catshape.0.HJxxxxxxxxxxxx) erstellen.
      Danach im Datenpunkt "Solarertrag" in den Objektdaten den "native"-Teil mit "cumulateDailyByTimeId": "SolarertragHeute", ergänzen, so dass er wie folgt aussieht:

        "native": {
          "cumulateDailyByTimeId": "SolarertragHeute",
          "ecoflowApi": {
            "quotaValueKey": "mpptPwr",
            "valueFactor": 1
          }
        }
      

      Eigentlich müsste dann (ab sofort) jedes mal wenn "Solarertrag" aktualisiert wird, auch "SolarertragHeute" aktualisiert werden.
      Selbstverständlich kannst Du statt "SolarertragHeute" auch irgend einen anderen Namen für den neuen Datenpunkt wählen. (Du musst nur sicherstellen, dass in "Solarertrag" bei "native.cumulateDailyByTimeId" genau dieser Name steht.)

      Das ist natürlich im Prinzip dasselbe, was ich bereits mit "mpptPower" und "mpptEnergyToday" versuchen wollte, aber vielleicht ist dort beim erstellen der Datenpunkte irgend etwas schief gelaufen.

      Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

      A 1 Antwort Letzte Antwort
      0
      • C CatShape

        @allodo
        Ok, dann war meine Definition von "mpptPower" und "mpptEnergyToday" eigentlich richtig. Ich verstehe nicht warum dann der Wert von "mpptPower" nicht genauso aktualisiert wird wie "Solarertrag". Das müsste er eigentlich, denn mein Adapter schaut dazu nur darauf was in native.ecoflowApi steht, und so weit ich sehe ist das bei beiden Datenpunkten identisch.
        Bin gerade etwas ratlos.

        Nun gut, Du könntest einen neuen Datenpunkt "SolarertragHeute" vom Typ "Zahl" am selben Ort wie "Solarertrag" (also in ecoflow_catshape.0.HJxxxxxxxxxxxx) erstellen.
        Danach im Datenpunkt "Solarertrag" in den Objektdaten den "native"-Teil mit "cumulateDailyByTimeId": "SolarertragHeute", ergänzen, so dass er wie folgt aussieht:

          "native": {
            "cumulateDailyByTimeId": "SolarertragHeute",
            "ecoflowApi": {
              "quotaValueKey": "mpptPwr",
              "valueFactor": 1
            }
          }
        

        Eigentlich müsste dann (ab sofort) jedes mal wenn "Solarertrag" aktualisiert wird, auch "SolarertragHeute" aktualisiert werden.
        Selbstverständlich kannst Du statt "SolarertragHeute" auch irgend einen anderen Namen für den neuen Datenpunkt wählen. (Du musst nur sicherstellen, dass in "Solarertrag" bei "native.cumulateDailyByTimeId" genau dieser Name steht.)

        Das ist natürlich im Prinzip dasselbe, was ich bereits mit "mpptPower" und "mpptEnergyToday" versuchen wollte, aber vielleicht ist dort beim erstellen der Datenpunkte irgend etwas schief gelaufen.

        A Offline
        A Offline
        Allodo
        schrieb am zuletzt editiert von
        #38

        @catshape
        Danke, jetzt werden Werte eingetragen.

        Werden diese auch gelöscht bzw. auf 0 zurückgesetzt, so dass man den Tagesertrag hat?
        Das kann ich dann natürlich erst morgen genauer sehen, inwiefern es mit den Werten des WR übereinstimmt ;)

        C 1 Antwort Letzte Antwort
        0
        • A Allodo

          @catshape
          Danke, jetzt werden Werte eingetragen.

          Werden diese auch gelöscht bzw. auf 0 zurückgesetzt, so dass man den Tagesertrag hat?
          Das kann ich dann natürlich erst morgen genauer sehen, inwiefern es mit den Werten des WR übereinstimmt ;)

          C Offline
          C Offline
          CatShape
          schrieb am zuletzt editiert von CatShape
          #39

          @allodo
          Ja, sie werden täglich auf 0 zurückgesetzt und zwar um die Zeit, welche in der Instanz-Einstellung ("Reset Zeit für kumuliere täglich Zustände") gesetzt ist.
          Dabei wird der Wert (vor dem zurücksetzen) auch ins Log geschrieben, das heisst Du kannst die jeweiligen Tages-Werte im Log vom Folgetag finden.

          Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

          A 1 Antwort Letzte Antwort
          0
          • C CatShape

            @allodo
            Ja, sie werden täglich auf 0 zurückgesetzt und zwar um die Zeit, welche in der Instanz-Einstellung ("Reset Zeit für kumuliere täglich Zustände") gesetzt ist.
            Dabei wird der Wert (vor dem zurücksetzen) auch ins Log geschrieben, das heisst Du kannst die jeweiligen Tages-Werte im Log vom Folgetag finden.

            A Offline
            A Offline
            Allodo
            schrieb am zuletzt editiert von
            #40

            @catshape
            Super :)

            C 1 Antwort Letzte Antwort
            0
            • A Allodo

              @catshape
              Super :)

              C Offline
              C Offline
              CatShape
              schrieb am zuletzt editiert von CatShape
              #41

              @allodo
              Ich hätte da noch eine Frage.

              @milo58 sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

              @ulofemi Hallo Ulofemi, da ich meine PowerOcean auch mit dem Adapter von @CatShape betreibe würde mich mal interessieren, ob ein bei mir auftretendes Problem auch bei Dir (oder natürlich auch anderen Usern) besteht: Wie verhält sich der Adapter, wenn die Handy-App von Ecoflow längere Zeit inaktiv ist? Bei mir werden nach ca 10 bis 15 Minuten die Leistungsdaten in der Cloud nicht mehr aktualisiert und in der Quota ändert sich offenbar nur der Timestamp. Daten wie mpptPwr sind dann immer unverändert und falsch. Sobald ich die Handy-App wieder starte, bekommt der Adapter auch aktualisierte Daten.

              Hast Du bei Dir auch schon mal dieses Problem beobachtet?
              Hier der ursprüngliche Beitrag zu diesem Thema: Adapter ecoflow_catshape - Problem bei inaktiver App

              Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

              A 1 Antwort Letzte Antwort
              0
              • C CatShape

                @allodo
                Ich hätte da noch eine Frage.

                @milo58 sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

                @ulofemi Hallo Ulofemi, da ich meine PowerOcean auch mit dem Adapter von @CatShape betreibe würde mich mal interessieren, ob ein bei mir auftretendes Problem auch bei Dir (oder natürlich auch anderen Usern) besteht: Wie verhält sich der Adapter, wenn die Handy-App von Ecoflow längere Zeit inaktiv ist? Bei mir werden nach ca 10 bis 15 Minuten die Leistungsdaten in der Cloud nicht mehr aktualisiert und in der Quota ändert sich offenbar nur der Timestamp. Daten wie mpptPwr sind dann immer unverändert und falsch. Sobald ich die Handy-App wieder starte, bekommt der Adapter auch aktualisierte Daten.

                Hast Du bei Dir auch schon mal dieses Problem beobachtet?
                Hier der ursprüngliche Beitrag zu diesem Thema: Adapter ecoflow_catshape - Problem bei inaktiver App

                A Offline
                A Offline
                Allodo
                schrieb am zuletzt editiert von
                #42

                @catshape
                Ja, das Problem besteht leider :(

                A 1 Antwort Letzte Antwort
                0
                • M milo58

                  @ulofemi Hallo Ulofemi, da ich meine PowerOcean auch mit dem Adapter von @CatShape betreibe würde mich mal interessieren, ob ein bei mir auftretendes Problem auch bei Dir (oder natürlich auch anderen Usern) besteht: Wie verhält sich der Adapter, wenn die Handy-App von Ecoflow längere Zeit inaktiv ist? Bei mir werden nach ca 10 bis 15 Minuten die Leistungsdaten in der Cloud nicht mehr aktualisiert und in der Quota ändert sich offenbar nur der Timestamp. Daten wie mpptPwr sind dann immer unverändert und falsch. Sobald ich die Handy-App wieder starte, bekommt der Adapter auch aktualisierte Daten.

                  U Offline
                  U Offline
                  ulofemi
                  schrieb am zuletzt editiert von
                  #43

                  @milo58
                  Tschuldige für die späte Rückmeldung.
                  Ja leider ist es so. Die Daten in der Cloud werden nur aktualisiert, wenn z.B. die App geöffnet wird. Ich selber habe ein EcoFlow PowerInsight, das läuft Tag und Nacht und darüber bekomme ich dann immer aktuelle Daten über die API. Schön ist das allerdings nicht und ich wollte hier auch schon fragen, ob es noch eine alternative Lösung gibt.

                  @CatShape
                  Ja du hast dich verständlich ausgedrückt. Danke - habe die Anpassungen denke ich korrekt durchgeführt :-)
                  Ich wollte mich ja auch noch bzgl. der cummulated Values melden. Das scheint doch ganz gut zu funktionieren, sofern es keine Aussetzer während des Tages gab.
                  Hierzu noch eine Frage: Teilweise muss ich meinen EcoFlow Adapter neustarten, da er sich irgendwie aufgehängt hat. Wann das genau apsiert konnte ich noch nicht feststellen, aber ungefähr alle 2-3 Tage. Die Daten von dem Tag kann ich dann eigentlich in die Tonne werfen. Ist das Problem bekannt? Sonst müsste ich das bei mir nochmal genauer analysieren.

                  C 1 Antwort Letzte Antwort
                  0
                  • A Allodo

                    @catshape
                    Ja, das Problem besteht leider :(

                    A Offline
                    A Offline
                    Allodo
                    schrieb am zuletzt editiert von
                    #44

                    Leider ist die Berechnung nicht sehr präzise, da mitunter ja fehlerhafte Werte von der Cloud übertragen werden :(

                    Deshalb wäre es echt super, wenn die Historydaten ebenfalls zur Verfügung gestellt werden könnten.

                    Komischerweise scheinen die einzelnen Stringdaten aber immer zu stimmen. Zumindest ist mir auf meinem Monitor mit "Energiefluss erweitert " aufgefallen, dass die beiden Werte addiert scheinbar den korrekten Solarertrag ermitteln. Der eigentliche Solarertrag aber erst nach öffnen der App wieder korrekt übertragen wird.

                    Werde mir mal einen Datenpunkt anlegen, wo ich die beiden Werte addiere.

                    C 1 Antwort Letzte Antwort
                    0
                    • U ulofemi

                      @milo58
                      Tschuldige für die späte Rückmeldung.
                      Ja leider ist es so. Die Daten in der Cloud werden nur aktualisiert, wenn z.B. die App geöffnet wird. Ich selber habe ein EcoFlow PowerInsight, das läuft Tag und Nacht und darüber bekomme ich dann immer aktuelle Daten über die API. Schön ist das allerdings nicht und ich wollte hier auch schon fragen, ob es noch eine alternative Lösung gibt.

                      @CatShape
                      Ja du hast dich verständlich ausgedrückt. Danke - habe die Anpassungen denke ich korrekt durchgeführt :-)
                      Ich wollte mich ja auch noch bzgl. der cummulated Values melden. Das scheint doch ganz gut zu funktionieren, sofern es keine Aussetzer während des Tages gab.
                      Hierzu noch eine Frage: Teilweise muss ich meinen EcoFlow Adapter neustarten, da er sich irgendwie aufgehängt hat. Wann das genau apsiert konnte ich noch nicht feststellen, aber ungefähr alle 2-3 Tage. Die Daten von dem Tag kann ich dann eigentlich in die Tonne werfen. Ist das Problem bekannt? Sonst müsste ich das bei mir nochmal genauer analysieren.

                      C Offline
                      C Offline
                      CatShape
                      schrieb am zuletzt editiert von CatShape
                      #45

                      @ulofemi sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

                      @CatShape
                      Hierzu noch eine Frage: Teilweise muss ich meinen EcoFlow Adapter neustarten, da er sich irgendwie aufgehängt hat. Wann das genau apsiert konnte ich noch nicht feststellen, aber ungefähr alle 2-3 Tage. Die Daten von dem Tag kann ich dann eigentlich in die Tonne werfen. Ist das Problem bekannt? Sonst müsste ich das bei mir nochmal genauer analysieren.

                      Nein, das Problem ist mir nicht bekannt.
                      Bei mir hat sich der Adapter noch nie aufgehängt und er lief auch schon mehrere Wochen am Stück ohne Neustart.
                      Gibt es irgendwelche Fehler oder Warnungen im Log?

                      Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

                      1 Antwort Letzte Antwort
                      0
                      • A Allodo

                        Leider ist die Berechnung nicht sehr präzise, da mitunter ja fehlerhafte Werte von der Cloud übertragen werden :(

                        Deshalb wäre es echt super, wenn die Historydaten ebenfalls zur Verfügung gestellt werden könnten.

                        Komischerweise scheinen die einzelnen Stringdaten aber immer zu stimmen. Zumindest ist mir auf meinem Monitor mit "Energiefluss erweitert " aufgefallen, dass die beiden Werte addiert scheinbar den korrekten Solarertrag ermitteln. Der eigentliche Solarertrag aber erst nach öffnen der App wieder korrekt übertragen wird.

                        Werde mir mal einen Datenpunkt anlegen, wo ich die beiden Werte addiere.

                        C Offline
                        C Offline
                        CatShape
                        schrieb am zuletzt editiert von CatShape
                        #46

                        @allodo sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

                        Komischerweise scheinen die einzelnen Stringdaten aber immer zu stimmen. Zumindest ist mir auf meinem Monitor mit "Energiefluss erweitert " aufgefallen, dass die beiden Werte addiert scheinbar den korrekten Solarertrag ermitteln. Der eigentliche Solarertrag aber erst nach öffnen der App wieder korrekt übertragen wird.

                        Interessant - könnte es demnach sein, dass die Cloud einen Teil der Daten gar nicht vom PowerOcean-Gerät selbst, sondern von der App übertragen bekommt?
                        Sprich das Gerät selbst nur gewisse "Rohdaten" (zum Beispiel mpptHeartBeat.mpptPv) an die Cloud liefert, und die App daraus weitere Daten (zum Beispiel mpptPwr) berechnet und diese dann separat an die Cloud überträgt?
                        Und heisst das dann, dass die "Rohdaten" immer korrekt aktualisiert werden, auch wenn die App nicht aktiv ist?

                        Falls dem so ist, wäre das ja eine gute Nachricht, weil man dann ja alles was man braucht aus diesen "Rohdaten" rausholen könnte.

                        Ich hätte in dem Zusammenhang noch eine Bitte:
                        Könntest Du mal den Wert vom Datenpunkt quota auslesen und hier reinschreiben (die Seriennummer natürlich unkenntlich machen).
                        Dann wüsste ich endlich welche Daten in welcher Struktur für PowerOceans überhaupt geliefert werden. Die API-Dokumentation von EcoFlow für die PowerOcean ist da leider ziemlich schlecht.
                        Ich könnte dann eine Vorlage zum Anlegen der Datenpunkte machen. Analog zu https://github.com/CatShape/ioBroker.ecoflow_catshape/blob/main/doc/PowerStream.json

                        Raspberry Pi 5 8GB; Raspberry Pi OS; ioBroker; ecoflow_catshape, shelly-http-cs, tuya-cs

                        A U 2 Antworten Letzte Antwort
                        0
                        • C CatShape

                          @allodo sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

                          Komischerweise scheinen die einzelnen Stringdaten aber immer zu stimmen. Zumindest ist mir auf meinem Monitor mit "Energiefluss erweitert " aufgefallen, dass die beiden Werte addiert scheinbar den korrekten Solarertrag ermitteln. Der eigentliche Solarertrag aber erst nach öffnen der App wieder korrekt übertragen wird.

                          Interessant - könnte es demnach sein, dass die Cloud einen Teil der Daten gar nicht vom PowerOcean-Gerät selbst, sondern von der App übertragen bekommt?
                          Sprich das Gerät selbst nur gewisse "Rohdaten" (zum Beispiel mpptHeartBeat.mpptPv) an die Cloud liefert, und die App daraus weitere Daten (zum Beispiel mpptPwr) berechnet und diese dann separat an die Cloud überträgt?
                          Und heisst das dann, dass die "Rohdaten" immer korrekt aktualisiert werden, auch wenn die App nicht aktiv ist?

                          Falls dem so ist, wäre das ja eine gute Nachricht, weil man dann ja alles was man braucht aus diesen "Rohdaten" rausholen könnte.

                          Ich hätte in dem Zusammenhang noch eine Bitte:
                          Könntest Du mal den Wert vom Datenpunkt quota auslesen und hier reinschreiben (die Seriennummer natürlich unkenntlich machen).
                          Dann wüsste ich endlich welche Daten in welcher Struktur für PowerOceans überhaupt geliefert werden. Die API-Dokumentation von EcoFlow für die PowerOcean ist da leider ziemlich schlecht.
                          Ich könnte dann eine Vorlage zum Anlegen der Datenpunkte machen. Analog zu https://github.com/CatShape/ioBroker.ecoflow_catshape/blob/main/doc/PowerStream.json

                          A Offline
                          A Offline
                          Allodo
                          schrieb am zuletzt editiert von
                          #47

                          @catshape

                          {"sn":"HJ3xxxxxxxxxxxxx",
                          "deviceName":"PowerOcean",
                          "online":1,
                          "productName":"PowerOcean",
                          "ems_change_report.pcsOverVolDeratingDaleyTime":0,
                          "ems_change_report.emsBackupEvent":0,
                          "ems_edev_sys.dispatchType":1,
                          "ems_change_report.devMaxPower":0,
                          "ems_change_report.evBindList.evSn":["AC3xxxxxxxxxxxxxx"],
                          "ems_change_report.pcsHighVolOnGrid":253,
                          "ems_change_report.pcsPowerDeratingFlag":9,
                          "ems_change_report.sysCalStat":0,
                          "ems_change_report.pcs10minOverVol":253,
                          "ems_ev.orderEndTimestamp":1749014250,
                          "ems_change_report.parallelTypeCur":0,
                          "ems_change_report.pcsUfpProtectValue":0,
                          "ems_change_report.pcsLowVolOnGrid":195.5,
                          "emsBpAliveNum":2,
                          "ems_change_report.pcsActivePowerSoftstartSwitch":1,
                          "ems_change_report.pcsFreqExternalSignal":0,
                          "ems_param_change_report.updateTime":"2025-06-04 13:08:39",
                          "ems_change_report.emsCtrlLedBright":10,
                          "pcsAPhase.amp":0.5876168,
                          "ems_change_report.bpReverseFlag":0,
                          "ems_change_report.pcsUfpProtectCnt":0,
                          "ems_ev.updateTime":"2025-06-04 13:17:31",
                          "ems_edev_sys.startState":8,
                          "ems_change_report.pcsReconnectGridDetectSwitch":1,
                          "ems_change_report.pcsPfValue":1,
                          "error_code.pcsErrCode.errCode":[],
                          "ems_change_report.pcsSafetyCountryCodeSelection":4,
                          "ems_edev_sys.socDev":100,
                          "ems_change_report.pcsOverVolDeratingStartingPower":1,
                          "ems_change_report.pcs10minOverVolSwitch":1,
                          "ems_change_report.pcsUnderFreqIncrementEndDelay":0,
                          "ems_change_report.emsFeedRatio":100,
                          "ems_change_report.pcsAcWarningCode":0,
                          "ems_change_report.iot4gSta":2,
                          "pcsBPhase.vol":231.5745,
                          "ems_change_report.sysStateBit":0,
                          "ems_change_report.emsWorkState":0,
                          "ems_change_report.pcsOngridReconnectFlag":0,
                          "ems_change_report.pcsOverFreqRecover":50.1,
                          "pvInvPwr":0,
                          "ems_ev_charge_timer.updateTime":"2025-04-26 17:34:34",
                          "ems_change_report.pcsFaultRecoverHighFreqOnGrid":50.1,
                          "ems_change_report.sysHeatStat":0,
                          "ems_change_report.batRelayCloseFailFlag":0,
                          "sysLoadPwr":400,
                          "ems_change_report.pcsLowFreq2":47.5,
                          "ems_ev.workMode":2,
                          "ems_change_report.pcsLowFreq1":47.5,
                          "ems_change_report.emsSysSelfCheckStat":0,
                          "ems_change_report.pcsFaultRecoverLowFreqOnGrid":47.53,
                          "ems_change_report.pcsQuLockinPower":0,
                          "ems_change_report.afciFaultFlagCh1":0,
                          "ems_change_report.afciFaultFlagCh2":0,
                          "bp_addr.HJ3xxxxxxxxxxxxxx":"{\n  \"bpPwr\": 1091.6641,\n  \"bpSoc\": 51,\n  \"bpSoh\": 100,\n  \"bpTemp\": [22.0, 24.0, 22.0, 23.0, 23.0, 21.0, 21.0, 22.0, 22.0],\n  \"bpCellMaxVol\": 3348.0,\n  \"bpCellMinVol\": 3344.0,\n  \"bpRunSta\": \"RUNSTA_RUN\",\n  \"bpVol\": 53.692,\n  \"bpAmp\": 20.331968,\n  \"bpBusVol\": 805.32654,\n  \"bpErrCode\": 0,\n  \"bpCellVol\": [3345.0, 3345.0, 3344.0, 3345.0, 3347.0, 3347.0, 3345.0, 3347.0, 3346.0, 3348.0, 3346.0, 3345.0, 3348.0, 3346.0, 3347.0, 3345.0],\n  \"bpDsrc\": 1,\n  \"bpSn\": \"SEozQVpESDVaRzNCMDE2Mw==\",\n  \"bpCycles\": 178,\n  \"bpBalanceState\": 0,\n  \"bpHvMosTemp\": 32.0,\n  \"bpLvMosTemp\": 30.0,\n  \"bpPtcTemp\": 22.0,\n  \"bpHtsTemp\": 28.0,\n  \"bpBusNegTemp\": 28.0,\n  \"bpBusPosTemp\": 29.0,\n  \"bpEnvTemp\": 28.0,\n  \"bpAccuChgCap\": 16895912,\n  \"bpAccuDsgCap\": 16880767,\n  \"bpDesignCap\": 100000,\n  \"bpFullCap\": 100000,\n  \"bpMaxCellTemp\": 24.0,\n  \"bpMinCellTemp\": 21.0,\n  \"bpMaxMosTemp\": 32.0,\n  \"bpMinMosTemp\": 30.0,\n  \"bpBmsFault\": 0,\n  \"bpEcloundSoc\": 65535,\n  \"bpHeartbeatVer\": 33,\n  \"bpTimestamp\": 1749014047,\n  \"bpRealSoc\": 52.0,\n  \"bpRealSoh\": 99.56748,\n  \"bpGlobalProtect\": 0,\n  \"bpDownLimitSoc\": 5,\n  \"bpUpLimitSoc\": 100,\n  \"bpActiveCalReqStat\": 0,\n  \"bpActiveCalRunStat\": 0,\n  \"moduleProductInfo\": 21251,\n  \"moduleProgramSta\": 1,\n  \"moduleAplSwVer\": 67177043,\n  \"moduleLoaderSwVer\": 67174401,\n  \"bmsRunSta\": \"PB_BMS_STATE_NORMAL\",\n  \"bmsChgDsgSta\": \"PB_CHG_STATE\",\n  \"dabModSta\": \"PB_MOD_STA_NORMAL\",\n  \"bpChgSop\": 50,\n  \"bpDsgSop\": 80,\n  \"bpRemainWatth\": 2611.2,\n  \"bpTargetSoc\": 51.455944,\n  \"bpDiffSoc\": 1.5236664,\n  \"bpMaxSoc\": 52.43557,\n  \"bpMinSoc\": 50.914646,\n  \"bpLimitSoc\": 0.5,\n  \"bpCalendarSoh\": 98.97656,\n  \"bpCycleSoh\": 98.97656,\n  \"bpAcRechargeFlag\": false,\n  \"bpPtcHeatFlag\": false,\n  \"bpPtcExitEvent\": \"PB_PTC_OT_STATE\",\n  \"bpAccuChgEnergy\": 913030,\n  \"bpAccuDsgEnergy\": 881282,\n  \"bpPtcTemp2\": 23.0,\n  \"bpSysState\": \"NORMAL_STATE\",\n  \"bpAuxCellVol01\": 3346.0\n}",
                          "pcsCPhase.amp":0.5789599,
                          "ems_change_report.pcsFaultRecoverLowVolOnGrid":195.5,
                          "ems_change_report.emsFeedPwr":10000,
                          "pcsAPhase.apparentPwr":130.2111,
                          "ems_change_report.pcsOverVolTime3":0,
                          "ems_change_report.pcsQuLockoutPower":0,
                          "ems_change_report.pcsOverFreqDeratingEnd":50.2,
                          "ems_change_report.pcsPcsAntiBackFlowProtectSwitch":0,
                          "ems_change_report.pcsOvpProtectValue":0,
                          "ems_change_report.emsFeedMode":3,
                          "ems_change_report.afciSellfTestResult":0,
                          "ems_change_report.pcsOverVolTime2":60,
                          "ems_change_report.pcsOverVolTime1":60,
                          "ems_change_report.bpSoc":50,
                          "ems_change_report.pcsAutoTestPercent":0,
                          "ems_change_report.sysBatDsgDownLimit":0,
                          "ems_edev_sys.sysFlag":35,
                          "ems_change_report.afciFaultMaxValueCh1":0,
                          "ems_change_report.pcsLowFreqOnGrid":47.53,
                          "ems_change_report.afciFaultMaxValueCh2":0,
                          "ems_change_report.parallelType":0,
                          "ems_ev.evPlugAndPlay":1,
                          "ems_change_report.userRole":0,
                          "ems_change_report.bpTotalChgEnergy":1826051,
                          "ems_change_report.pcsOverFreqDeratingSwitch":0,
                          "ems_change_report.pcsOfpProtectCnt":0,
                          "ems_change_report.mppt2WarningCode":0,
                          "ems_change_report.ethWanStat":0,
                          "ems_change_report.pcsOverVolDeratingSwitch":0,
                          "ems_change_report.pcsUvp2ProtectCnt":0,
                          "ems_change_report.afciIsExist":0,
                          "ems_change_report.pcsFaultRecoverOnGridWaitTime":60000,
                          "ems_change_report.emsStopAll":0,
                          "ems_change_report.mppt1WarningCode":0,
                          "ems_change_report.iot4gErr":7,
                          "ems_ev.useGridFirst":1,
                          "ems_change_report.duration":0,
                          "ems_change_report.pcsFreqRecoverTime":1000,
                          "ems_change_report.pcsUnderFreqIncrementEnd":49.8,
                          "ems_change_report.pcsLowVolTime2":300,
                          "bp_addr.HJ3xxxxxxxxxxxxx":"{\n  \"bpPwr\": -0.62918574,\n  \"bpSoc\": 52,\n  \"bpSoh\": 100,\n  \"bpTemp\": [23.0, 25.0, 23.0, 24.0, 25.0, 22.0, 23.0, 23.0, 24.0],\n  \"bpCellMaxVol\": 3315.0,\n  \"bpCellMinVol\": 3312.0,\n  \"bpRunSta\": \"RUNSTA_RUN\",\n  \"bpVol\": 52.966,\n  \"bpAmp\": -0.011879049,\n  \"bpBusVol\": 804.7164,\n  \"bpErrCode\": 0,\n  \"bpCellVol\": [3312.0, 3312.0, 3312.0, 3312.0, 3312.0, 3313.0, 3312.0, 3314.0, 3312.0, 3312.0, 3312.0, 3312.0, 3312.0, 3315.0, 3312.0, 3312.0],\n  \"bpDsrc\": 2,\n  \"bpSn\": \"SEozQVpESDVaRzNCMDAyMA==\",\n  \"bpCycles\": 186,\n  \"bpBalanceState\": 0,\n  \"bpHvMosTemp\": 37.0,\n  \"bpLvMosTemp\": 34.0,\n  \"bpPtcTemp\": 24.0,\n  \"bpHtsTemp\": 31.0,\n  \"bpBusNegTemp\": 31.0,\n  \"bpBusPosTemp\": 32.0,\n  \"bpEnvTemp\": 31.0,\n  \"bpAccuChgCap\": 17346140,\n  \"bpAccuDsgCap\": 17375309,\n  \"bpDesignCap\": 100000,\n  \"bpFullCap\": 100000,\n  \"bpMaxCellTemp\": 25.0,\n  \"bpMinCellTemp\": 22.0,\n  \"bpMaxMosTemp\": 37.0,\n  \"bpMinMosTemp\": 34.0,\n  \"bpBmsFault\": 0,\n  \"bpEcloundSoc\": 65535,\n  \"bpHeartbeatVer\": 33,\n  \"bpTimestamp\": 1749014052,\n  \"bpRealSoc\": 52.0,\n  \"bpRealSoh\": 100.3914,\n  \"bpGlobalProtect\": 0,\n  \"bpDownLimitSoc\": 5,\n  \"bpUpLimitSoc\": 100,\n  \"bpActiveCalReqStat\": 0,\n  \"bpActiveCalRunStat\": 0,\n  \"moduleProductInfo\": 21251,\n  \"moduleProgramSta\": 1,\n  \"moduleAplSwVer\": 67177043,\n  \"moduleLoaderSwVer\": 67174401,\n  \"bmsRunSta\": \"PB_BMS_STATE_NORMAL\",\n  \"bmsChgDsgSta\": \"PB_STANDBY_STATE\",\n  \"dabModSta\": \"PB_MOD_STA_NORMAL\",\n  \"bpChgSop\": 50,\n  \"bpDsgSop\": 80,\n  \"bpRemainWatth\": 2662.4001,\n  \"bpTargetSoc\": 51.98056,\n  \"bpDiffSoc\": 1.8217125,\n  \"bpMaxSoc\": 53.117714,\n  \"bpMinSoc\": 51.27372,\n  \"bpLimitSoc\": 0.5,\n  \"bpCalendarSoh\": 98.92969,\n  \"bpCycleSoh\": 98.92969,\n  \"bpAcRechargeFlag\": false,\n  \"bpPtcHeatFlag\": false,\n  \"bpPtcExitEvent\": \"PB_PTC_OT_STATE\",\n  \"bpAccuChgEnergy\": 934152,\n  \"bpAccuDsgEnergy\": 904229,\n  \"bpPtcTemp2\": 24.0,\n  \"bpSysState\": \"NORMAL_STATE\",\n  \"bpAuxCellVol01\": 3313.0\n}",
                          "ems_change_report.pcsLowVolTime1":3000,
                          "ems_edev_sys.solarFlag":985,
                          "chargingStatus":"EV_CHG_STS_SUSPENDED_EVSE",
                          "error_code.emsErrCode.moduleSn":"SEozMVpESDRaRjdMMDAyMg==",
                          "ems_change_report.pcsLowVolTime3":240,
                          "ems_change_report.pcsOfpProtectValue":0,
                          "ems_change_report.pcsAntiBackFlowImportCurrentLimit":0,
                          "ems_change_report.pcsUnderFreqIncrementRecoverSlopeSwitch":1,
                          "ems_change_report.pcsUvp1ProtectValue":0,
                          "ems_change_report.pcsUnderFreqIncrementRecoverSlope":0.09,
                          "ems_change_report.pcsOverFreqDeratingFrozeSwitch":0,
                          "ems_change_report.afciEnableCmdState":0,
                          "ems_change_report.pcsFaultRecoverHighVolOnGrid":253,
                          "bp_addr.updateTime":"2025-06-04 13:14:19",
                          "error_code.updateTime":"2025-06-04 13:08:42",
                          "ems_param_change_report.devSoc":100,
                          "ems_param_change_report.breakerEnableState":true,
                          "ems_change_report.pcsOverFreqDeratingStart":50.2,
                          "error_code_mark_report.errorCode":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
                          "ems_change_report.pcsOverFreqDeratingRecoverSlope":0.09,
                          "ems_ev.stopChargingSoc":0,
                          "ems_change_report.pcsReactPwrPercent":0,
                          "ems_change_report.sysBatBackupRatio":0,
                          "ems_change_report.emsCtrlLedType":1,
                          "ems_change_report.pcsQuMinimumCosphi":0.4,
                          "ems_change_report.virtualHardEdition":1,
                          "ems_ev.evChargingEnergy":4556,
                          "ems_logy_dev.updateTime":"2025-06-04 07:50:41",
                          "ems_change_report.pcsOverVolRideThroughProtectTime2":1000,
                          "ems_change_report.pcsOverVolRideThroughProtectTime1":5500,
                          "ems_change_report.emsKeepSoc":0,
                          "ems_change_report.pcsQuQ4":-0.6,
                          "ems_change_report.pcsQuQ2":0,
                          "pcsBPhase.actPwr":-60.512993,
                          "ems_change_report.pcsQuQ3":0,
                          "ems_change_report.sysRateCtrlTime":60,
                          "ems_ev.chargingStatus":"EV_CHG_STS_SUSPENDED_EVSE",
                          "ems_change_report.pcsQuQ1":0.6,
                          "ems_ev.orderState":2,
                          "ems_change_report.bpLineOffFlag":0,
                          "ems_edev_sys.updateTime":"2025-06-04 13:16:04",
                          "ems_change_report.pcsActivePowerSoftstartTime":666,
                          "ems_edev_sys.devLastMinInfo":31,
                          "ems_change_report.emsWordMode":"WORKMODE_SELFUSE",
                          "ems_change_report.mppt1FaultCode":0,
                          "ems_change_report.bpTotalDsgEnergy":1768115,
                          "ems_change_report.pcsCospPf4":0,
                          "ems_change_report.pcsUvp1ProtectCnt":0,
                          "ems_change_report.sysMeterCfg":0,
                          "ems_change_report.pcsCospPf1":-1,
                          "ems_edev_sys.stratType":1,
                          "ems_change_report.pcsCospPf3":-0.9,
                          "ems_change_report.pcsCospPf2":-1,
                          "ems_change_report.pcsOverFreqDeratingPowerBased":2,
                          "pcsCPhase.apparentPwr":129.32365,
                          "ems_change_report.afciFaultCntCh2":0,
                          "ems_change_report.pcsActivePowerNormalRampUpRate":60,
                          "ems_change_report.afciFaultCntCh1":0,
                          "ems_change_report.pcsRunFsmState":58861650,
                          "ems_change_report.pcsOvpProtectCnt":0,
                          "ems_ev.chargeVehicleId":"137",
                          "ems_change_report.pcsIslandDetectSwitch":1,
                          "ems_change_report.afciSelfTestCmdState":0,
                          "ems_change_report.emsSgReadyEn":false,
                          "ems_change_report.pcsOverFreqDeratingEndDelay":0,
                          "ems_param_change_report.bpBurst":false,
                          "ems_change_report.pcsFunctionEnable":0,
                          "ems_change_report.pcsQuTimeConst":10,
                          "ems_change_report.sysTypeCfg":0,
                          "ems_change_report.pcsFreqLocalCommand":1,
                          "ems_change_report.pcsOverFreqDeratingRecoverSlopeSwitch":1,
                          "ems_change_report.iot4gPdp":-1,
                          "ems_change_report.pcsOverVolRecover":253,
                          "ems_change_report.pcsOverFreqDeratingStartDelay":0,
                          "pcsAPhase.vol":231.32935,
                          "ems_ev.evOnoffSet":0,
                          "evPwr":0,
                          "ems_change_report.pcsActivePowerSoftStartRate":0.1,
                          "ems_change_report.emsSgRunStat":0,
                          "pcsBPhase.amp":0.5566908,
                          "ems_change_report.pcsPowerDeratingSet":200,
                          "ems_ev.evSn":"AC3xxxxxxxxxxxxxx",
                          "ems_edev_sys.devFirstInfo":32,
                          "ems_change_report.pcsOverVol1":287.5,
                          "ems_change_report.pcsAntiBackFlowExportCurrentLimit":0,
                          "pcsBPhase.apparentPwr":123.53667,
                          "ems_change_report.pcsOverVol2":287.5,
                          "ems_change_report.pcsOverVol3":0,
                          "ems_change_report.pcsReactPwrCompensation":0.0049,
                          "ems_change_report.pcsCospP3":1,
                          "ems_change_report.pcsCospP2":0.5,
                          "ems_change_report.pcsLowFreqRecover":47.53,
                          "ems_change_report.pcsCospP4":0,
                          "ems_change_report.pcsLowVolRideThroughProtectTime3":1000,
                          "ems_change_report.pcsLowVolRideThroughProtectTime2":3000,
                          "ems_change_report.pcsLowFreqTime1":60,
                          "ems_change_report.pcsLowVolRideThroughProtectTime1":5200,
                          "ems_change_report.pcsLowFreqTime2":100,
                          "ems_change_report.pcsCospP1":0.1,
                          "ems_change_report.pcsSendEnd":0,
                          "pcsCPhase.reactPwr":113.762436,
                          "ems_change_report.pcsAutoTestFlag":0,
                          "ems_change_report.pcsActivePowerDeratingPercent":1,
                          "ems_ev_charge_timer.timeTaskCfg":[],
                          "ems_change_report.pcsUnderFreqIncrementStartDelay":0,
                          "ems_ev.evPwr":0,
                          "ems_param_change_report.smartCtrl":false,
                          "ems_change_report.batSoftRelayStatus":0,
                          "ems_change_report.afciEn":0,
                          "ems_change_report.pcsOverVolDeratingEnd":257.6,
                          "ems_change_report.pcsOverFreqDeratingCutoffPower":0,
                          "ems_change_report.afciFaultValueCh1":0,
                          "pcsCPhase.vol":230.42331,
                          "ems_change_report.parallelAllowState":false,
                          "ems_change_report.pcsRelaySelfCheckSta":10,
                          "ems_change_report.afciFaultValueCh2":0,
                          "ems_edev_sys.feedPwrCap":10000,
                          "sysGridPwr":-10,
                          "ems_change_report.pcs10minOverVolTime":100,
                          "ems_ev.onlineBits":2,
                          "ems_change_report.pcsAntiBackFlowSwitch":1,
                          "ems_param_change_report.sysTimeTab":19662120,
                          "ems_ev.orderStartTimestamp":1748951640,
                          "ems_edev_sys.devInfoVar.devSubInfoVar":[{"allocatedPower":0,
                          "realPowerLock":0,
                          "refPower":0,
                          "devInfo":{"devAddr":209,
                          "devSn":"AC3xxxxxxxxxxxxxx",
                          "subAddr":1}}],
                          "ems_eco_logy_dev.HPReport.errorCode":"",
                          "mpptPwr":1590,
                          "ems_change_report.pcsOverVolDeratingTimeConst":10,
                          "ems_change_report.pcsUnderFreqIncrementSlope":0.4,
                          "error_code.pcsErrCode.moduleSn":"SEozMTIwMDBCRjZMMDgyNg==",
                          "ems_change_report.sys14aEnable":false,
                          "ems_change_report.wifiStaStat":0,
                          "ems_change_report.pcsReactPwrModeSelect":0,
                          "ems_priority.updateTime":"2025-06-04 07:50:40",
                          "ems_change_report.pcsUnderFreqIncrementFrozeSwitch":0,
                          "ems_change_report.pcsHighFreqOnGrid":50.1,
                          "ems_eco_logy_dev.HPReport.online":0,
                          "ems_change_report.pcsQuickSelfcheckEn":0,
                          "ems_change_report.afciFaultClearState":0,
                          "ems_change_report.afciEnSet":0,
                          "ems_change_report.pcsFastCheck":0,
                          "ems_change_report.bpRestartFlag":1,
                          "ems_change_report.pcsOverFreqDeratingSlope":0.4,
                          "ems_change_report.batRealyStatus":2,
                          "bpPwr":1180,
                          "ems_ev.errorCode":"AAAAAAAAAAA=",
                          "ems_change_report.afciProtectValueCh1":0,
                          "ems_change_report.pcsOverFreq1":51.5,
                          "ems_change_report.pcsHighVolRideThroughRecover":253,
                          "ems_change_report.afciProtectValueCh2":0,
                          "ems_change_report.pcsOverFreq2":51.5,
                          "ems_change_report.pcsHvrtLvrtSwitch":1,
                          "errorCode":"AAAAAAAAAAA=",
                          "ems_change_report.wireless4gIccid":"",
                          "ems_priority.devPrioReport":[{"devPrio":1,
                          "data":"Aw==",
                          "enable":true,
                          "devInfo":{"devAddr":209,
                          "devSn":"AC3xxxxxxxxxxxxxx",
                          "subAddr":1}}],
                          "ems_change_report.sys14aType":1,
                          "emsErrCode.errCode":[],
                          "ems_change_report.sysMulPeakTime":1200,
                          "ems_change_report.bpChgDsgSta":1,
                          "ems_change_report.updateTime":"2025-06-04 13:15:53",
                          "ems_change_report.mppt2FaultCode":0,
                          "pcsBPhase.reactPwr":107.700905,
                          "ems_ev.evUserManual":0,
                          "bp_addr.":"{\n  \"bpTemp\": [],\n  \"bpCellVol\": []\n}",
                          "ems_change_report.pcsUvp2ProtectValue":0,
                          "ems_change_report.pcsAvgOvpProtectValue":0,
                          "ems_ev.orderTime":62610,
                          "ems_ev.evDetectPhase":1,
                          "ems_edev_sys.devInfoFix.devSubInfoFix":[{"devAttrCur":197424,
                          "bindType":1,
                          "devInfo":{"devAddr":209,
                          "devSn":"AC3xxxxxxxxxxxxxx",
                          "subAddr":1},
                          "devFlag":131175,
                          "errorCode":0,
                          "onlineBits":2,
                          "modbusAddr":77,
                          "warnCode":0,
                          "memDevIdx":0,
                          "targetMax":11000,
                          "faultCode":0,
                          "sceneType":3,
                          "currentPrio":1,
                          "devStateInfo":5}],
                          "ems_edev_sys.freeNum":35,
                          "error_code_mark_report.updateTime":"2025-06-04 07:50:39",
                          "ems_change_report.iot4gOn":1,
                          "ems_ev.switchBits":0,
                          "ems_logy_dev.devItem":[],
                          "ems_ev_charge_timer.evSn":"AC3xxxxxxxxxxxxxx",
                          "ems_change_report.pcsUnderFreqIncrementSwitch":0,
                          "ems_eco_logy_dev.updateTime":"2025-06-04 13:08:39",
                          "ems_change_report.endTimestamp":0,
                          "ems_change_report.pcsUnderFreqIncrementStart":49.8,
                          "error_code.emsErrCode.errCode":[],
                          "ems_param_change_report.energyEfficientEnable":true,
                          "ems_change_report.pcsOnGridWaitTime":60000,
                          "ems_change_report.sysBatChgUpLimit":100,
                          "ems_ev.defaultVehicleId":"137",
                          "ems_change_report.pcsLowVolRecover":195.5,
                          "ems_change_report.pcsQuV3":236.9,
                          "ems_change_report.pcsAvgOvpProtectCnt":0,
                          "ems_change_report.pcsQuV4":246.1,
                          "ems_change_report.pcsVolRecoverTime":1000,
                          "ems_param_change_report.lowerPowerStat":false,
                          "ems_change_report.pcsQuV1":213.90001,
                          "ems_ev.evPhaseSet":1,
                          "ems_change_report.pcsQuV2":223.1,
                          "ems_change_report.pcsOverVolDeratingStart":253,
                          "bpSoc":50,
                          "mpptHeartBeat":[{"mpptPv":[{"vol":486.18207,
                          "amp":0.69050086,
                          "pwr":335.70914},{"vol":428.0433,
                          "amp":2.9284537,
                          "pwr":1253.505}]}],
                          "ems_param_change_report.breakerCapacityMax":400,
                          "ems_change_report.sysGridSta":0,
                          "ems_change_report.pcsOverVolRideThroughStart1":265.65,
                          "pcsAPhase.reactPwr":115.4446,
                          "ems_change_report.pcsOverVolRideThroughStart2":287.5,
                          "error_code.bpErrCode":[{"errCode":[],
                          "moduleSn":"SEozQVpESDVaRzNCMDE2Mw=="},{"errCode":[],
                          "moduleSn":"SEozQVpESDVaRzNCMDAyMA=="}],
                          "ems_edev_sys.usedNum":1,
                          "ems_change_report.pcsOverVolDeratingEndPower":0,
                          "ems_change_report.rateCtrlSwtich":true,
                          "ems_ev.evCurrSet":0,
                          "ems_change_report.bpOnlineSum":2,
                          "ems_change_report.pcsActivePowerDeratingSwitch":0,
                          "ems_change_report.pcsLowVolRideThroughStart3":57.5,
                          "ems_change_report.pcsRunSta":"RUNSTA_RUN",
                          "ems_change_report.pcsLowVolRideThroughStart1":184,
                          "pcsCPhase.actPwr":-61.50378,
                          "ems_change_report.pcsLowVolRideThroughStart2":103.5,
                          "ems_change_report.pcsDcErrCode":0,
                          "ems_change_report.relay14a":0,
                          "ems_change_report.pcsLowVolRideThroughRecover":195.5,
                          "ems_edev_sys.socCur":51.729965,
                          "pcsAPhase.actPwr":-60.22852,
                          "ems_eco_logy_dev.HPReport.devSn":"",
                          "ems_edev_sys.pclPwrBase":-3846.0308,
                          "ems_change_report.pcsOverFreqTime2":100,
                          "ems_change_report.sysMulPeakSwitch":false,
                          "ems_ev.evExeMode":2,
                          "ems_change_report.chgDsgPwr":0,
                          "ems_change_report.parallelTypeSet":0,
                          "ems_edev_sys.devLastInfo":31,
                          "ems_change_report.pcsAutoTestState":0,
                          "ems_change_report.pcsOverFreqTime1":60,
                          "ems_change_report.chgDsgMode":0,
                          "ems_change_report.afciSwitchFreqCh2":0,
                          "ems_change_report.afciSwitchFreqCh1":0,
                          "ems_change_report.sysWorkSta":0,
                          "ems_ev.expectChargingEnergy":0,
                          "ems_param_change_report.sysZone":4,
                          "ems_change_report.pcsAcErrCode":0,
                          "ems_change_report.pcsRelayStateShow":676432975,
                          "ems_change_report.sysOnOffMachineStat":0,
                          "ems_change_report.pcsLowVol2":103.5,
                          "ems_change_report.pcsLowVol3":57.5,
                          "ems_change_report.pcsLowVol1":184,
                          "ems_change_report.pcsActivePowerGradient":0.0033}
                          
                          1 Antwort Letzte Antwort
                          1
                          • C CatShape

                            @allodo sagte in Gibt es einen Adapter für ecoflow PowerOcean ?:

                            Komischerweise scheinen die einzelnen Stringdaten aber immer zu stimmen. Zumindest ist mir auf meinem Monitor mit "Energiefluss erweitert " aufgefallen, dass die beiden Werte addiert scheinbar den korrekten Solarertrag ermitteln. Der eigentliche Solarertrag aber erst nach öffnen der App wieder korrekt übertragen wird.

                            Interessant - könnte es demnach sein, dass die Cloud einen Teil der Daten gar nicht vom PowerOcean-Gerät selbst, sondern von der App übertragen bekommt?
                            Sprich das Gerät selbst nur gewisse "Rohdaten" (zum Beispiel mpptHeartBeat.mpptPv) an die Cloud liefert, und die App daraus weitere Daten (zum Beispiel mpptPwr) berechnet und diese dann separat an die Cloud überträgt?
                            Und heisst das dann, dass die "Rohdaten" immer korrekt aktualisiert werden, auch wenn die App nicht aktiv ist?

                            Falls dem so ist, wäre das ja eine gute Nachricht, weil man dann ja alles was man braucht aus diesen "Rohdaten" rausholen könnte.

                            Ich hätte in dem Zusammenhang noch eine Bitte:
                            Könntest Du mal den Wert vom Datenpunkt quota auslesen und hier reinschreiben (die Seriennummer natürlich unkenntlich machen).
                            Dann wüsste ich endlich welche Daten in welcher Struktur für PowerOceans überhaupt geliefert werden. Die API-Dokumentation von EcoFlow für die PowerOcean ist da leider ziemlich schlecht.
                            Ich könnte dann eine Vorlage zum Anlegen der Datenpunkte machen. Analog zu https://github.com/CatShape/ioBroker.ecoflow_catshape/blob/main/doc/PowerStream.json

                            U Offline
                            U Offline
                            ulofemi
                            schrieb am zuletzt editiert von
                            #48

                            @catshape

                            Da fällt mir ein, dass ich meine Config ja auch gerne einmal teilen wollte.

                            Meine Ausfälle des Adapters habe ich leider weiterhin.
                            An Tagen, an denen der Adapter von morgens bis abends läuft und mein PowerInsight keine Probleme macht passts. So die Daten von gestern:

                            • App Verbrauch 18,31, API 18,4
                            • App Erzeugung 51,51, API 51,4

                            Also hier meine 9 Datenpunkte, die ich aus quota auslese, bzw. ableite:

                            • bpPwr = Batterie Leistung
                            • pbPwrEnergyToday = Batterie Energie
                            • bpSoc = Ladestand in % der Batterie
                            • mpptPwr = PV Leistung
                            • mpptPwrEnergyToday = PV Energie
                            • sysGridPwr = Netz Leistung
                            • sysGridPwrEnergyToday = Netz Energie
                            • sysLoadPwr = Haus Leistung
                            • sysLoadPwrEnergyToday = Haus Energie
                            {
                              "common": {
                                "name": "bpPwr",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "unit": "W",
                                "read": true,
                                "write": false,
                                "def": 0,
                                "color": "#00ff40",
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {
                                "cumulateDailyByTimeId": "heartbeat.bpPwrEnergyToday",
                                "ecoflowApi": {
                                  "quotaValueKey": "bpPwr",
                                  "valueFactor": 1
                                }
                              },
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.bpPwr",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893658503
                            },
                            {
                              "common": {
                                "name": "bpPwrEnergyToday",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "read": true,
                                "write": true,
                                "def": 0,
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {},
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.bpPwrEnergyToday",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893669271
                            },
                            {
                              "common": {
                                "name": "bpSoc",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "read": true,
                                "write": false,
                                "def": 0,
                                "color": "#00ff40",
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {
                                "ecoflowApi": {
                                  "quotaValueKey": "bpSoc",
                                  "valueFactor": 1
                                }
                              },
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.bpSoc",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893675261
                            },
                            {
                              "common": {
                                "name": "mpptEnergyToday",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "unit": "Wh",
                                "read": true,
                                "write": false,
                                "def": 0,
                                "color": "#ffff00",
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {},
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.mpptEnergyToday",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893679857
                            },
                            {
                              "common": {
                                "name": "mpptPwr",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "unit": "W",
                                "read": true,
                                "write": false,
                                "def": 0,
                                "color": "#ffff00",
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {
                                "cumulateDailyByTimeId": "heartbeat.mpptEnergyToday",
                                "ecoflowApi": {
                                  "quotaValueKey": "mpptPwr",
                                  "valueFactor": 1
                                }
                              },
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.mpptPwr",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893684204
                            },
                            {
                              "common": {
                                "name": "sysGridPwr",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "unit": "W",
                                "read": true,
                                "write": false,
                                "def": 0,
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {
                                "cumulateDailyByTimeId": "heartbeat.sysGridPwrEnergyToday",
                                "ecoflowApi": {
                                  "quotaValueKey": "sysGridPwr",
                                  "valueFactor": 1
                                }
                              },
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.sysGridPwr",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893688049
                            },
                            {
                              "common": {
                                "name": "sysGridPwrEnergyToday",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "read": true,
                                "write": true,
                                "def": 0,
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {},
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.sysGridPwrEnergyToday",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893691700
                            },
                            {
                              "common": {
                                "name": "sysLoadPwr",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "unit": "W",
                                "read": true,
                                "write": false,
                                "def": 0,
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {
                                "cumulateDailyByTimeId": "heartbeat.sysLoadPwrEnergyToday",
                                "ecoflowApi": {
                                  "quotaValueKey": "sysLoadPwr",
                                  "valueFactor": 1
                                }
                              },
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.sysLoadPwr",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893695549
                            },
                            {
                              "common": {
                                "name": "sysLoadPwrEnergyToday",
                                "desc": "Manuell erzeugt",
                                "role": "state",
                                "type": "number",
                                "read": true,
                                "write": true,
                                "def": 0,
                                "custom": {
                                  "influxdb.0": {
                                    "enabled": true,
                                    "storageType": "",
                                    "aliasId": "",
                                    "debounceTime": 0,
                                    "blockTime": 0,
                                    "changesOnly": true,
                                    "changesRelogInterval": 0,
                                    "changesMinDelta": 0,
                                    "ignoreBelowNumber": "",
                                    "disableSkippedValueLogging": false,
                                    "enableDebugLogs": false,
                                    "debounce": 1000
                                  }
                                }
                              },
                              "type": "state",
                              "native": {},
                              "_id": "ecoflow_catshape.0.HJxxxxxxxxxxxxxx.heartbeat.sysLoadPwrEnergyToday",
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1744893699718
                            }
                            
                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate
                            FAQ Cloud / IOT
                            HowTo: Node.js-Update
                            HowTo: Backup/Restore
                            Downloads
                            BLOG

                            604

                            Online

                            32.5k

                            Benutzer

                            81.7k

                            Themen

                            1.3m

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

                            • Du hast noch kein Konto? Registrieren

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