NEWS
Adapter für Ecoflow Einbindung
-
@mike2507
Ich habe jetzt auch die Werte im Subscribe Patern geändert. Hatte nicht verstanden das da was rein muss.
Das Blocky Script läuft ja schon bei mir. Sonst hätte ich gar keine Ausgabe im IoBroker. Aber ich bekomme halt mehrere Json Tabellen in einer Variablen gespeichert. Das ist irgendwie ungünstig.Kannst du mal zeigen wie das bei dir jetzt aussieht im Iobroker also den Teil mit meinem letzten Screenshot? Bei mir sieht es genauso aus wie zu vor.
-
@angelluck sagte in Adapter für Ecoflow Einbindung:
@mike2507
Ich habe jetzt auch die Werte im Subscribe Patern geändert. Hatte nicht verstanden das da was rein muss.
Das Blocky Script läuft ja schon bei mir. Sonst hätte ich gar keine Ausgabe im IoBroker. Aber ich bekomme halt mehrere Json Tabellen in einer Variablen gespeichert. Das ist irgendwie ungünstig.Kannst du mal zeigen wie das bei dir jetzt aussieht im Iobroker also den Teil mit meinem letzten Screenshot? Bei mir sieht es genauso aus wie zu vor.
Du musst aber auch den Ordner in der 0_userdata anlegen den du ganz oben im blockly auswählst damit er dir dort alle Datenpunkte automatisch anlegt.
-
Bei mir scheint einiges verkehrt zu sein. In das Blocky Script hatte ich die Seriennr. eingetragen nicht diese R331... Nr.
Hatte mir schon gedacht das irgendwas nicht stimmt.
Auf jedenfall haben mir deine Screenshots sehr geholfen, ich glaube jetzt funktioniert es bei mir auch. Danke!
-
Hallo zusammen,
habe es nun nach den tollen Anleitungen hier ebenfalls zum laufen gebracht. Jedoch bekomme ich bei Mqtt immer :"Disconnected from mqtt.ecoflow.com: undefined" danach wird sofort wieder connectet. Habe schon im Forum gesucht aber nix gefunden, jemand eine Idee?
-
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/setDas 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)); } });
-
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!
-
@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... -
@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 })});
-
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: undefinedmqtt.1
2023-02-06 11:08:49.506 info All states publishedmqtt.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.commqtt.1
2023-02-06 11:08:49.038 info Reconnected to mqtt.ecoflow.commqtt.1
2023-02-06 11:08:39.038 info Disconnected from mqtt.ecoflow.com: undefinedmqtt.1
2023-02-06 11:08:28.608 info All states publishedmqtt.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.commqtt.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.24Kann mir jemand etwas dazu sagen?
Gruß
Matthias -
@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: undefinedmqtt.1
2023-02-06 11:08:49.506 info All states publishedmqtt.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.commqtt.1
2023-02-06 11:08:49.038 info Reconnected to mqtt.ecoflow.commqtt.1
2023-02-06 11:08:39.038 info Disconnected from mqtt.ecoflow.com: undefinedmqtt.1
2023-02-06 11:08:28.608 info All states publishedmqtt.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.commqtt.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.24Kann mir jemand etwas dazu sagen?
Gruß
MatthiasKonntest Du das Problem lösen, habe das gleiche Problem hier
-
@g-polat Hallo! Nein, es hat sich niemand dazu gemeldet leider.
-
@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
-
@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
-
@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
-
@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. -
Wird die user-id hier mit "app-xxx" eingetragen?
/app/<userid>/R6XXXXXXXXXXXXXXX/thing/property/setIch habe es mit und ohne versucht, sehe aber keine Nachrichten wenn ich etwas mit der APP ändere.
(DELTA 2 und Android-App) -
-
@ivan-andric Läuft der EcoFlow denn durch und ist weiterhin per Wlan verbunden? Ich habe das seit Wochen laufen und keinen einzigen Verbindungsabbruch.
-
@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.
-
@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äscheMal weiter probieren.