Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Einbindung von Geräten
    5. Adapter für Ecoflow Einbindung

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Adapter für Ecoflow Einbindung

    This topic has been deleted. Only users with topic management privileges can see it.
    • haus-automatisierung
      haus-automatisierung Developer Most Active @Netfreak25 last edited by haus-automatisierung

      Hallo zusammen, ich lese hier schon fleißig mit und teste parallel. Wahnsinns Arbeit! Danke an @Netfreak25 - da steckt wirklich viel Zeit drin!

      Meine MQTT-Verbindung steht und es werden jede Menge Werte erfasst. Aber:

      @netfreak25 sagte in Adapter für Ecoflow Einbindung:

      AC Enable/Disable
      Published nach:
      /app/UserID/Seriennummer/thing/property/set

      Das funktioniert bei mir nicht. Habe die UserID und die Seriennummer im Topic mehrfach kontrolliert. Muss moduleType je nach angesteuertem Wert angepasst werden? Oder kann man da immer mit 0 arbeiten? Im Status bekommt man ja auch unterschiedliche Infos für alle möglichen Module Types.

      Ist es wichtig, wie JSON formatiert ist (Spaces, Tabs, Line Breaks)? Laut Spezifikation sind Whitespaces zwar egal, aber manche implementieren das nicht so super gründlich. Daher die Frage.

      Hier noch ein Script, mit welchem ich alle Datenpunkte automatisch anlege und aktualisiere. Die ID muss natürlich angepasst werden.

      const prefix = '0_userdata.0.ecoflow';
      const valueCache = {};
      
      on({ id: 'mqtt.1.app.device.property.R621XXXXX', change: 'ne', ack: true }, async (obj) => {
          try {
              const msgObj = JSON.parse(obj.state.val);
      
              for (let [key, value] of Object.entries(msgObj.params)) {
                  const vType = typeof value;
                  const isObject = vType === 'object';
      
                  if (!await existsObjectAsync(`${prefix}.${key}`)) {
                      await createStateAsync(`${prefix}.${key}`, {
                          name: key,
                          role: isObject ? 'json' : 'state',
                          type: isObject ? 'string' : vType,
                          read: true,
                          write: false
                      });
                  }
      
                  if (isObject) {
                      value = JSON.stringify(value);
                  }
      
                  if (!Object.prototype.hasOwnProperty.call(valueCache, key) || valueCache[key] !== value) {
                      await setStateAsync(`${prefix}.${key}`, { val: value, ack: true });
                      valueCache[key] = value;
                  }
              }
          } catch (err) {
              console.error(JSON.stringify(err));
          }
      });
      
      haus-automatisierung 1 Reply Last reply Reply Quote 1
      • haus-automatisierung
        haus-automatisierung Developer Most Active @haus-automatisierung last edited by haus-automatisierung

        Okay ich bin einen Schritt weiter. Ich habe einfach mal das Topic /app/<UserID>/<Seriennummer>/thing/property/set abonniert (mit meiner User-ID und meiner Seriennummer). Dann habe ich in der App eine Aktion ausgelöst (AC-Output eingeschaltet) und konnte ja dann die Nachricht sehen, welche von der App versendet wurde:

        {
            "params": {
                "enabled": 1,
                "out_freq": 255,
                "out_voltage": 4294967295,
                "xboost": 255
            },
            "from": "iOS",
            "lang": "en-us",
            "id": "132790809",
            "moduleSn": "R6XXXXXXXXXXXXXXX",
            "moduleType": 5,
            "operateType": "acOutCfg",
            "version": "1.0"
        }
        

        Beispiel-Payload 12V DC aktivieren:

        {
            "params": {
                "enabled": 1
            },
            "from": "iOS",
            "lang": "en-us",
            "id": "824661624",
            "moduleSn": "R6XXXXXXXXXXXXXXX",
            "moduleType": 5,
            "operateType": "mpptCar",
            "version": "1.0"
        }
        

        Beispiel-Payload Charging-Speed setzen:

        {
            "params": {
                "chgWatts": 940,
                "chgPauseFlag": 0
            },
            "from": "iOS",
            "lang": "en-us",
            "id": "901577499",
            "moduleSn": "R6XXXXXXXXXXXXXXX",
            "moduleType": 5,
            "operateType": "acChgCfg",
            "version": "1.0"
        }
        

        Beispiel-Payload Charging-Limit auf 90% setzen:

        {
            "params": {
                "maxChgSoc": 90
            },
            "from": "iOS",
            "lang": "en-us",
            "id": "956431191",
            "moduleSn": "R6XXXXXXXXXXXXXXX",
            "moduleType": 2,
            "operateType": "upsConfig",
            "version": "1.0"
        }
        

        Die Nachrichten sind also etwas komplexer aufgebaut als ich erst dachte 😉 Funktioniert aber nun!

        K 1 Reply Last reply Reply Quote 0
        • K
          Klostermatt @haus-automatisierung last edited by

          @haus-automatisierung
          Hey sorry, die sicher etwas doofe Frage, aber wie genau setzt du meldungen in diesem Json Format mit dem MQTT ab?
          Mit sendTo('mqtt.0', 'sendMessage2Client', {topic: '/your/topic/here', message: 'your message'}); geht's ja nur für einfache messages...

          haus-automatisierung 1 Reply Last reply Reply Quote 0
          • haus-automatisierung
            haus-automatisierung Developer Most Active @Klostermatt last edited by

            @klostermatt sagte in Adapter für Ecoflow Einbindung:

            Mit sendTo('mqtt.0', 'sendMessage2Client', {topic: '/your/topic/here', message: 'your message'}); geht's ja nur für einfache messages...

            JSON ist auch nur ein String.

            sendTo('mqtt.0', 'sendMessage2Client', {topic: '/your/topic/here', message: JSON.stringify({ mein: "objekt", mit: "vielen", "eigenschaften": true })});
            
            1 Reply Last reply Reply Quote 0
            • M
              mattenausohz last edited by mattenausohz

              Hallo! Ich bekomme neuerdings folgendes, ca. 10 Sekunden nach dem "subscribe" der Topics:

              Disconnected from mqtt.ecoflow.com: undefined

              Log:

              mqtt.1
              2023-02-06 11:08:59.891 info Disconnected from mqtt.ecoflow.com: undefined

              mqtt.1
              2023-02-06 11:08:49.506 info All states published

              mqtt.1
              2023-02-06 11:08:49.495 info Subscribe on "/app/15707484745384XXXXX/R331ZEB4ZE8XXXXX/thing/property/get"

              mqtt.1
              2023-02-06 11:08:49.494 info Subscribe on "/app/15707484745384XXXXX/R331ZEB4ZE8XXXX/thing/property/set"

              mqtt.1
              2023-02-06 11:08:49.493 info Subscribe on "/app/device/property/R331ZEB4ZEXXXXX"

              mqtt.1
              2023-02-06 11:08:49.492 info Subscribe on "#"

              mqtt.1
              2023-02-06 11:08:49.491 info Connected to mqtt.ecoflow.com

              mqtt.1
              2023-02-06 11:08:49.038 info Reconnected to mqtt.ecoflow.com

              mqtt.1
              2023-02-06 11:08:39.038 info Disconnected from mqtt.ecoflow.com: undefined

              mqtt.1
              2023-02-06 11:08:28.608 info All states published

              mqtt.1
              2023-02-06 11:08:28.580 info Subscribe on "/app/1570748474538XXXXX/R331ZEB4ZEXXXXX/thing/property/get"

              mqtt.1
              2023-02-06 11:08:28.579 info Subscribe on "/app/1570748474538XXXXX/R331ZEB4ZEXXXXX/thing/property/set"

              mqtt.1
              2023-02-06 11:08:28.577 info Subscribe on "/app/device/property/R331ZEB4ZE8XXXXX"

              mqtt.1
              2023-02-06 11:08:28.572 info Subscribe on "#"

              mqtt.1
              2023-02-06 11:08:28.569 info Connected to mqtt.ecoflow.com

              mqtt.1
              2023-02-06 11:08:27.931 info Try to connect to mqtts://mqtt.ecoflow.com:8883 with clientId=mqtt.mqtt.1and credentials app-632768efb1f54b13a8c719ed98xxxxx:*******************

              mqtt.1
              2023-02-06 11:08:27.363 info starting. Version 4.0.7 in /opt/iobroker/node_modules/iobroker.mqtt, node: v18.6.0, js-controller: 4.0.24

              Kann mir jemand etwas dazu sagen?

              Gruß
              Matthias

              G Ivan Andric 2 Replies Last reply Reply Quote 0
              • G
                g.polat @mattenausohz last edited by

                @mattenausohz sagte in Adapter für Ecoflow Einbindung:

                Hallo! Ich bekomme neuerdings folgendes, ca. 10 Sekunden nach dem "subscribe" der Topics:

                Disconnected from mqtt.ecoflow.com: undefined

                Log:

                mqtt.1
                2023-02-06 11:08:59.891 info Disconnected from mqtt.ecoflow.com: undefined

                mqtt.1
                2023-02-06 11:08:49.506 info All states published

                mqtt.1
                2023-02-06 11:08:49.495 info Subscribe on "/app/15707484745384XXXXX/R331ZEB4ZE8XXXXX/thing/property/get"

                mqtt.1
                2023-02-06 11:08:49.494 info Subscribe on "/app/15707484745384XXXXX/R331ZEB4ZE8XXXX/thing/property/set"

                mqtt.1
                2023-02-06 11:08:49.493 info Subscribe on "/app/device/property/R331ZEB4ZEXXXXX"

                mqtt.1
                2023-02-06 11:08:49.492 info Subscribe on "#"

                mqtt.1
                2023-02-06 11:08:49.491 info Connected to mqtt.ecoflow.com

                mqtt.1
                2023-02-06 11:08:49.038 info Reconnected to mqtt.ecoflow.com

                mqtt.1
                2023-02-06 11:08:39.038 info Disconnected from mqtt.ecoflow.com: undefined

                mqtt.1
                2023-02-06 11:08:28.608 info All states published

                mqtt.1
                2023-02-06 11:08:28.580 info Subscribe on "/app/1570748474538XXXXX/R331ZEB4ZEXXXXX/thing/property/get"

                mqtt.1
                2023-02-06 11:08:28.579 info Subscribe on "/app/1570748474538XXXXX/R331ZEB4ZEXXXXX/thing/property/set"

                mqtt.1
                2023-02-06 11:08:28.577 info Subscribe on "/app/device/property/R331ZEB4ZE8XXXXX"

                mqtt.1
                2023-02-06 11:08:28.572 info Subscribe on "#"

                mqtt.1
                2023-02-06 11:08:28.569 info Connected to mqtt.ecoflow.com

                mqtt.1
                2023-02-06 11:08:27.931 info Try to connect to mqtts://mqtt.ecoflow.com:8883 with clientId=mqtt.mqtt.1and credentials app-632768efb1f54b13a8c719ed98xxxxx:*******************

                mqtt.1
                2023-02-06 11:08:27.363 info starting. Version 4.0.7 in /opt/iobroker/node_modules/iobroker.mqtt, node: v18.6.0, js-controller: 4.0.24

                Kann mir jemand etwas dazu sagen?

                Gruß
                Matthias

                Konntest Du das Problem lösen, habe das gleiche Problem hier 😞

                M haus-automatisierung 2 Replies Last reply Reply Quote 0
                • M
                  mattenausohz @g.polat last edited by

                  @g-polat Hallo! Nein, es hat sich niemand dazu gemeldet leider.

                  1 Reply Last reply Reply Quote 0
                  • haus-automatisierung
                    haus-automatisierung Developer Most Active @g.polat last edited by

                    @g-polat Ich würde mal das Subscribe für die Wildcard # rausnehmen.

                    Generell habe ich mich jetzt recht lange mit der River 2 Pro beschäftigt und nutze diese z.B. zum Überschuss-Laden der PV-Anlage (zu einem Teil). Alle Details habe ich hier dokumentiert:

                    https://haus-automatisierung.com/hardware/2023/02/13/ecoflow-river-2-usv-batteriespeicher.html

                    G 1 Reply Last reply Reply Quote 0
                    • G
                      g.polat @haus-automatisierung last edited by

                      @haus-automatisierung sagte in Adapter für Ecoflow Einbindung:

                      @g-polat Ich würde mal das Subscribe für die Wildcard # rausnehmen.

                      Generell habe ich mich jetzt recht lange mit der River 2 Pro beschäftigt und nutze diese z.B. zum Überschuss-Laden der PV-Anlage (zu einem Teil). Alle Details habe ich hier dokumentiert:

                      https://haus-automatisierung.com/hardware/2023/02/13/ecoflow-river-2-usv-batteriespeicher.html

                      Hi,
                      welche Wildecard meinst Du?
                      Gruß
                      GP
                      c7249fbd-5920-4cf2-a0a6-9cfa0aa3451c-image.png

                      haus-automatisierung 1 Reply Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @g.polat last edited by

                        @g-polat sagte in Adapter für Ecoflow Einbindung:

                        welche Wildecard meinst Du?

                        Diese:

                        @g-polat sagte in Adapter für Ecoflow Einbindung:

                        mqtt.1
                        2023-02-06 11:08:28.572 info Subscribe on "#"

                        Aber war ja nicht dein Log.

                        Hier noch meine Einstellungen

                        Screenshot 2023-02-14 at 08.15.37.png

                        1 Reply Last reply Reply Quote 0
                        • Ivan Andric
                          Ivan Andric @mattenausohz last edited by Ivan Andric

                          @mattenausohz
                          Ich habe das identische Verhalten. Habe mich jetzt mit dem MQTT Explorer statt dem ioBroker verbunden und der meldet auch "Disconnected from server". Es scheint wohl an ecoflow zu liegen.

                          haus-automatisierung 1 Reply Last reply Reply Quote 0
                          • Ivan Andric
                            Ivan Andric last edited by

                            Wird die user-id hier mit "app-xxx" eingetragen?
                            /app/<userid>/R6XXXXXXXXXXXXXXX/thing/property/set

                            Ich habe es mit und ohne versucht, sehe aber keine Nachrichten wenn ich etwas mit der APP ändere.
                            (DELTA 2 und Android-App)

                            1 Reply Last reply Reply Quote 0
                            • M
                              Maxtor62 last edited by Maxtor62

                              Same here,

                              Disconnected from mqtt.ecoflow.com: undefined

                              (Delta Max und iOS)

                              haus-automatisierung 1 Reply Last reply Reply Quote 0
                              • haus-automatisierung
                                haus-automatisierung Developer Most Active @Ivan Andric last edited by

                                @ivan-andric Läuft der EcoFlow denn durch und ist weiterhin per Wlan verbunden? Ich habe das seit Wochen laufen und keinen einzigen Verbindungsabbruch.

                                1 Reply Last reply Reply Quote 0
                                • haus-automatisierung
                                  haus-automatisierung Developer Most Active @Maxtor62 last edited by

                                  @maxtor62 Lustigerweise wurde ich nun auch rausgeworfen, nachdem ich meine Config hier geteilt habe.

                                  Wichtiger Hinweis: Bitte denkt euch eine eigene, eindeutige Client-ID aus! Nicht aus irgendwelchen Screenshots hier abschreiben.

                                  Der MQTT-Broker schließt wahrscheinlich die Verbindung zu bestehenden Clients mit der gleichen ID, wenn sich jemand mit der gleichen verbindet!! Die müssen eindeutig sein.

                                  M C 2 Replies Last reply Reply Quote 0
                                  • M
                                    Maxtor62 @haus-automatisierung last edited by Maxtor62

                                    @haus-automatisierung
                                    zwischenzeitlich hat es es mal funktioniert (gestern), jetzt habe ich eine neue Firmware drauf, jetzt geht im Moment nix. Die ändern die API wie manche Leute die Unterwäsche😊 😊

                                    Mal weiter probieren.

                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      firebowl last edited by firebowl

                                      Ok das mit der ID erklärt das disconnecten und die ständigen mqtt Anfragen am DNS Server. 😅

                                      Hat jemand das ganze mit ner Delta 2 zum laufen bekommen?
                                      Ich kann mit @haus-automatisierung Script zwar die Werte abfragen und auch teilweise ändern aber scheinbar kann die Delta 2 kein pausieren beim Laden und weniger als 100Watt gehen auch nicht. Somit klappt das Überschussladen leider nicht. 😭

                                      1 Reply Last reply Reply Quote 0
                                      • C
                                        chka @haus-automatisierung last edited by

                                        @haus-automatisierung sagte in Adapter für Ecoflow Einbindung:

                                        Wichtiger Hinweis: Bitte denkt euch eine eigene, eindeutige Client-ID aus! Nicht aus irgendwelchen Screenshots hier abschreiben.

                                        Was verstehst du unter client id? bei mir bricht die verbindung auch dauernd ab und wird neu aufgebaut.

                                        ich habe in allen Skripten und im Adapter immer meine eigenen userID tokens usw genommen.

                                        bei mir wird unter Objekte leider auch kein Eintrag gesetzt

                                        F 1 Reply Last reply Reply Quote 0
                                        • F
                                          firebowl @chka last edited by

                                          @chka sagte in Adapter für Ecoflow Einbindung:

                                          @haus-automatisierung sagte in Adapter für Ecoflow Einbindung:

                                          Wichtiger Hinweis: Bitte denkt euch eine eigene, eindeutige Client-ID aus! Nicht aus irgendwelchen Screenshots hier abschreiben.

                                          Was verstehst du unter client id? bei mir bricht die verbindung auch dauernd ab und wird neu aufgebaut.

                                          ich habe in allen Skripten und im Adapter immer meine eigenen userID tokens usw genommen.

                                          bei mir wird unter Objekte leider auch kein Eintrag gesetzt

                                          Im MQTT Adapter gibts ein Feld für Client ID. Ist per default glaub leer. Da denkst dir was aus und trägst es ein, dann sollte es keine disconnects mehr geben.

                                          C 1 Reply Last reply Reply Quote 0
                                          • C
                                            chka @firebowl last edited by

                                            @firebowl top danke jetzt setzt er auch die eintrage DANKE

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            646
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            42
                                            212
                                            46178
                                            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