NEWS
Neuer Adapter ecoflow-mqtt
-
@heinz527 sagte in Neuer Adapter ecoflow-mqtt:
PV1 bei mir 652 und in der App 621
Zum Protokoll:
- einmal hat sich die Priorität geändert, wahrscheinlich in der APP gesteuert
- etwas komisch ist die Nachführung der Helligkeit, die kommt öfter als update mit dem Wert 6. Wenn keine Änderung zum vorherigen Wert sichtbar ist, dann sollte es auch nicht nochmal geschrieben werden
zu watth7:
- ich sehe bei mir in der App nur den Gesamtwert beider PV Eingänge, einzeln habe ich kein Vergleichswert
- für die Energie liefert der PS ein Array mit 24 Werten, welches ich zu einem Wert zusammenfasse
- wenn man es genauer prüfen möchte, dann müsste der Adapter in debug versetzt werden und msgUpdateValuePstream ein Häckchen
beispielhaft:
HW51xxxxx pstream data update : {"EnergyPack":{"sysSeq":65535,"sysEnergyStream":[{"timestamp":1704844800,"watthType":1,"watth":[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"timestamp":1704844800,"watthType":2,"watth":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"timestamp":1704844800,"watthType":3,"watth":[0,0,0,0,0,0,0,0,0,19,162,185,131,19,17,0,0,0,0,0,0,0,0,0]},{"timestamp":1704844800,"watthType":4,"watth":[111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"timestamp":1704844800,"watthType":7,"watth":[0,0,0,0,0,0,0,0,0,17,104,60,16,5,2,0,0,0,0,0,0,0,0,0]},{"timestamp":1704844800,"watthType":8,"watth":[0,0,0,0,0,0,0,0,0,3,63,130,117,16,17,0,0,0,0,0,0,0,0,0]}]},"energy":{"watth1":108,"watth2":0,"watth3":533,"watth4":111,"watth5":0,"watth6":0,"watth7":204,"watth8":346}}
hier passt 204Wh genau zu den Einzelwerten (..17,104,60,16,5,2..)und von watth7,
watth7+watth8 ist zusammen 550Wh (PV1+PV2)
allerdings ist watth3 (zur Batterie) nur 533Wh also 17Wh Wandlungsverluste, wenn man so will und den Angaben glauben mag
watth3 mit 533Wh passt mit der Anzeige in der App -
zum Protokoll:
-
ja, glaube ich hatte die Priorität geändert.
-
genau, um die Helligkeit geht es, da habe ich nichts verstellt. Das finde ich halt komisch.
Stimmt, in der App sieht man die Einzelwerte nicht.
Ui, doch so viel Wandlungsverluste zur Batterie?Dachte mit dem Gleichstromkabel wäre es fast nichts.
Ich schaue mal am Wochenende, ob ich die logs eingeschaltet bekomme usw.
Danke für deine Arbeit und das schnelle Antworten!
-
-
@foxthefox Servus vielleicht hilft die Info noch
Hier schein noch ein Fehler zu sein:
.plug_heartbeat.mesh_enable liefert (null)
-
@aherby
Super, danke.
Bei Gelegenheit mach ich da mal numerische Werte daraus
das mesh_enable hab ich noch vergessen auf meshEnable umzubenennen -
@aherby
mal noch ne Frage zu plug_heartbeat_...34hatten wir da nicht gesagt, das wäre die Anzahl der inludierten Stecker?
oder ist es die Gesamtleistung aller Stecker? -
Jetzt wollte ich gerade einen Blick in die Daten des Plugs werfen und sehe, dass sehr viele Werte gar nicht aktualisiert werden. Ist das ein exklusives Problem von mir?
-
@foxthefox
Ok, offenbar doch nur ein Anzeigenproblem - Daten sind jetzt alle vorhanden! -
@foxthefox die plug_heartbeat_...34 ist (wie auf den Foto dargestellt) die Leistung, die zu den Smartplugs vom Powerstream geschickt wird.
.plug_heartbeat.cntPlugs_32 ist die Anzahl der berücksichtigten Smartplugs beginnend ab 1 für keinen berücksichtigten Smarplug.
-
@apollosk
Im Gegensatz zu den powerstations werden bei plugs und stream immer nur einzelne Werte übermittelt. Im nächsten Update wird das latestQuotas zyklisch getriggert und da kommt der ganze Datensatz mit rüber. Kurz nach einem Adapter Start kann es ein wenig dürftig mit den Daten aussehen, aber das wird ja besser -
@aherby
Bin wohl mit meiner eigenen Abkürzung durcheinander gekommen. -
Ich würde über den Adapter auch gerne die Werte in der Powerstream setzen. Das Script schießt bei mir übers Ziel hinaus.
Allerdings werden die Werte nach der Änderung im Object (hier ecoflow-mqtt.0.xxxx.inverter_heartbeat.permanentWatts) nicht im Powerstream übernommen. Nach kurzer Zeit stehen wieder die alten Werte aus der App drin.
Muss ich beim Setzen der Werte nochwas beachten?
-
@holgerwolf
eigentlich sollte das schon funktionieren.
lediglich bei kleinen Werten 0...20W war schon Problem berichtet, das will ich aber morgen noch austesten, bevor ich die 0.0.19 finalisiere.kann es selbst grad nicht testen, da schon selbstabschaltung für heute passiert ist.
falls es bei größeren Werten nicht gehen sollte, dann bitte:
- adapter in debug modus versetzen
- häckchen für Pstream bei msgSetGet und msgCmd setzen
- Befehl aus iobroker setzen
- log posten oder schicken und berichten was geht/nicht geht
- den gleichen Befehl nochmal aus der App
- den Teil des logs auch posten
-
@holgerwolf
beim Setzen von Werten ist es wichtig, dies mit ACK=false bzw. im Objektbaum direkt ohne Häckchen bei Bestätigt zu tun.
Wenn ACK=true dann ist es ein Update für den Wertalso im log sollte bei 110W folgendes stehen (adapter kann in info-modus bleiben)
ecoflow-mqtt.0 2024-01-16 11:01:19.413 info (ack=false) ->cmd : channel inverter_heartbeat state permanentWatts ecoflow-mqtt.0 2024-01-16 11:01:19.413 info state ecoflow-mqtt.0.HW51ZOHxxxxxx.inverter_heartbeat.permanentWatts changed: 110 (ack = false)
-
@foxthefox OK, es lag nur an den kleinen Werten. Das hatte ich nicht auf dem Plan.
Mit 100 Watt gehts es.
Aber jetzt gleich die Nachfrage. Wie schalte ich den "Haushaltstrom" ab, wenn ich den Wert nicht auf "0" setzen kann? Habe nix anderes gefunden.
-
@holgerwolf
Das Setzen auf "0" habe ich schon überprüft und für 0.0.19 verbessert.
Das scheint eine Eigenheit im Protokoll zu sein, daß bei 0 alsw Wert bzw '0'=false keine Nutzdaten gesendet werden. Das hatte ich bisher nur für binäre Zustände, aber nun auch für Zahlen.
Demnächst veröffentliche ich die 0.0.19, dann braucht es kein "Abschalten" mehr. -
@heinz527
Das mit der Helligkeit hat sich glaube ich aufgeklärt. Die Helligkeit kommt im Bereich 0...1023 an und ich skaliere auf 0..100.
Da es scheinbar Rundungsdifferenzen gibt, wird auch der Wert immer wieder aktualisiert.
Habe es jetzt auf Ganzzahl und damit dürfte es weg sein. -
habe die Version 0.0.19 auf github und npm veröffentlicht.
Ich habe einiges umgebaut und code zusammengeführt, Fehler sind nicht ausgeschlossen, aber in meinem Tests sah alles gut aus.Durch die Zusammenlegung von code müssen leider die Geräte nochmals konfiguriert werden (Seriennummer, Type, Name)!
Falls der Adapter nicht gelöscht wurde, so ist die Zeile für das Gerät noch vorhanden.0.0.19
- (foxthefox) better error handling of incomplete messages from pstream
- (foxthefox) added indication of time tasks
- (foxthefox) cleanup pstream/plugs creation (both are protobuf)
- (foxthefox) further refactoring of code -> devices must be again defined !
- (foxthefox) differentiation between actual energy values and historical
- (foxthefox) getAllTaskCfg for powerstations in structure info
- (foxthefox) initial lastQuotas after adapter start for powerstream and plug
- (foxthefox) interpreted unknown values have now clear names
- (foxthefox) cyclic latestQuotas call instead of forced disconnect and reconnect (reconnects value only for checking, if stays with 0/null adapter has still mqtt telegrams)
- (foxthefox) new data points for deltamax
- (foxthefox) corrected pstream value changes to 0 (numbers), pdata must be omitted
-
Wert = 0 für Haushaltsstrom geht mit der 0.0.19.
Danke für die prompte Umsetzung
-
Ich habe diverse UnknownXX Datenpunkte umbenannt.
- wenn weiterhin am Ende noch ein "_xx" steht, braucht es Beobachtung und Bestätigung ob es so richtig interpretiert ist
- bei Umbenennung ohne der Endung sollte der Wert zur Bezeichnung passen.
Da ich mittlerweile auch einen Smart Plug habe, konnte ich ein paar Annahmen treffen:
- InverterHeartbeat2 - plugsConn_44 -> zeigt an, ob Plugs mit der PS kommunizieren
- plug_heartbeat - streamConn_31 -> zeigt an, ob PS für Kommunikation erreichbar ist
- plug_heartbeat - cntDevices -> Anzahl der Smart Plugs
- plug_heartbeat - dynWattEnable_39 -> Zu/Abschaltung der Leistung dieses Steckers für die Summe der dynWatt (demnächst als Schalter ?!)
Es gibt noch andere Umbenennungen, aber zu wenig Details. Diverse Datenpunkte sehen nach Status aus und sind auch so benannnt.
Wenn sich die Datenpunkte mit euren Beobachtungen decken, dann werde ich sie Umbenennen (ohne die Endung).
-
@foxthefox ist es möglich dass z.B. die Delta 2 Max dann erstmal nicht angelegt wird? Ok hat gerade keinen Saft mehr aber durch das Löschen der Objekte ist die bei mir weg. Der Powerstream obwohl auch offline wurde angelegt.