NEWS
Test Adapter e3dc-rscp v0.0.x GitHub
-
Hallo Bei Bat kommen keine Werte muss ich da etwas einstellen?
Gruß Stephan -
@stephan61 said in Test Adapter e3dc-rscp v0.0.x GitHub:
Hallo Bei Bat kommen keine Werte muss ich da etwas einstellen?
In den Adapter-Einstellungen muss der Haken bei BAT gesetzt sein - das ist aber Voreinstellung.
Bitte poste ein
debug
Log, dann kann ich sehen, ob der Adapter Batterien abfragt/erkennt.
Sind die EMS-Werte sichtbar? -
-
@stephan61
Das gibt für mich folgendes Bild:- ich sehe anfangs 4x
TAG_BAT_REQ_DATA
, das deutet darauf hin, dass die "Testaufrufe" rausgehen, mit denen der Adapter einmal feststellt, wieviele Batterien überhaupt vorhanden sind. - danach kommt kein
TAG_BAT_REQ_DATA
mehr, so als ob der Adapter für keinen Batterie-Index (0..3) eine Antwort bekommen hätte, oder schlicht der BAT-Namespace im Adapter abgeschaltet ist. - ich sehe keinen einzigen Fehler-Eintrag, d.h. der Adapter ist mit sich im Reinen
Kannst du bestätigen, dass der Haken bei "BAT" gesetzt ist? (siehe oben)
Wenn ja, bräuchte ich noch ein
alles
/silly
Log, bitte.
Wieviele Batterien hat deine Anlage? - ich sehe anfangs 4x
-
@ujok
Kann es sein das bei der Übersetzung von "e3dc-rscp.0.EMS.RES_POWER_LIMITS_USED" was durcheinander gekommen ist ? Die waren doch bereits alle übersetzt.
Dann habe ich noch eine Frage zu der Liste mit den Tag's bei den Abfrageintervallen, kann es sein das nicht alle Tags in der Liste auch in den ID's angezeigt werden ?
Kann einige nicht zuordnen wie z.B:
TAG_EMS_REQ_USER_CHARGE_LIMIT
TAG_EMS_REQ_USER_DISCHARGE_LIMIT
TAG_EMS_REQ_STORED_ERRORSoder haben die dort andere Bezeichnungen ?
-
@ujok
Hallo habe haken gestezt und ich habe 2 Batterien
anbei der log
log silly.txtGruß Stephan
-
@arnod said in Test Adapter e3dc-rscp v0.0.x GitHub:
@ujok
Kann es sein das bei der Übersetzung von "e3dc-rscp.0.EMS.RES_POWER_LIMITS_USED" was durcheinander gekommen ist ? Die waren doch bereits alle übersetzt.
Die
RES_...
Werte sollen eigentlich gar nicht im Objektbaum angezeigt werden, denn das sind lediglich Statuswerte ("returns: / 1 bei Erfolg, allerdings ist das limit unterhalb des empfohlenden Limits / 0 Werte erfolgreich gesetzt / -1 Wert außerhalb des zulässigen Bereichs / -2 setzen momentan nicht möglich, später erneut versuchen")Dagegen enthält
POWER_LIMITS_USED
den eigentlichen Wert und das wird ja auch (mit Übersetzung) angezeigt.Danke für den Hinweis, werde ich bereinigen.
-
@arnod said in Test Adapter e3dc-rscp v0.0.x GitHub:
@ujok
Dann habe ich noch eine Frage zu der Liste mit den Tag's bei den Abfrageintervallen, kann es sein das nicht alle Tags in der Liste auch in den ID's angezeigt werden ?
Kann einige nicht zuordnen wie z.B:
TAG_EMS_REQ_USER_CHARGE_LIMIT
TAG_EMS_REQ_USER_DISCHARGE_LIMIT
TAG_EMS_REQ_STORED_ERRORSoder haben die dort andere Bezeichnungen ?
Eigentlich wird alles in den Objektbaum geschrieben, was von der E3/DC an Tags reinkommt (außer gewollte Ausnahmen wie Fehler, Statusmeldungen). Eine Möglichkeit wäre also, dass die E3/DC schlicht keine Antworten für diese Tags sendet. Das nehme ich als Bug Report auf.
Generell: es muss nicht jedes Tag in der Liste der Abfrageintervalle auftauchen, weil es nicht überall eine 1:1 Zuordnung gibt. Z.B. kann die Antwort auf
REQ_GET_POWER_SETTINGS
mehrere Werte enthaltenRES_POWER_LIMITS_USED, RES_MAX_CHARGE_POWER, RES_MAX_DISCHARGE_POWER, RES_DISCHARGE_START_POWER, RES_POWERSAVE_ENABLED, RES_WEATHER_REGULATED_CHARGE_ENABLED
D.h.
REQ_GET_POWER_SETTINGS
gibt es nur in der Liste der Abfrageintervalle, dieRES_...
Tags findet man nur im Objektbaum.Ich nehme das mal als Documentation Issue auf, kann aber nicht versprechen, ob/wann ich mir die Arbeit mache, das aus der Tagliste herauszufieseln
-
@stephan61 said in Test Adapter e3dc-rscp v0.0.x GitHub:
@ujok
Hallo habe haken gestezt und ich habe 2 Batterien
anbei der log
log silly.txtGruß Stephan
Also der Adapter bekommt eine Fehler-Antwort beim Abfragen der Batterien. Hier die relevanten Zeilen aus dem Log:
2022-02-01 18:17:45.217 silly OUT: magic: >E3DC< is OK - ctrl: >0011< is OK - Version 1, with CRC - seconds: 1643735865 - nseconds: 0 - length: 23 TAG_BAT_REQ_DATA - type: 0x0E - Container - length: 16 <Container content follows...> TAG_BAT_INDEX - type: 0x05 - UInt16 - length: 2 value: 0 TAG_BAT_REQ_ASOC - type: 0x00 - None - length: 0 CRC32 2022-02-01 18:17:45.246 silly OUT: magic: >E3DC< is OK - ctrl: >0011< is OK - Version 1, with CRC - seconds: 1643735865 - nseconds: 0 - length: 23 TAG_BAT_REQ_DATA - type: 0x0E - Container - length: 16 <Container content follows...> TAG_BAT_INDEX - type: 0x05 - UInt16 - length: 2 value: 1 TAG_BAT_REQ_ASOC - type: 0x00 - None - length: 0 CRC32 2022-02-01 18:17:45.276 silly IN: magic: >E3DC< is OK - ctrl: >0011< is OK - Version 1, with CRC - seconds: 1643735866 - nseconds: 305269000 - length: 11 TAG_BAT_DATA - type: 0xFF - Error - length: 4 value: 6 no CRC32 2022-02-01 18:17:45.299 silly IN: magic: >E3DC< is OK - ctrl: >0011< is OK - Version 1, with CRC - seconds: 1643735866 - nseconds: 333488000 - length: 11 TAG_BAT_DATA - type: 0xFF - Error - length: 4 value: 6 no CRC32
Zeilen 1,2 sind die Anfragen bzgl. BAT#0 und BAT#1 (siehe
TAG_BAT_INDEX
value)
Zeilen 3,4 sind die Antworten deiner E3/DC, jeweils mit Error value 6 ("RSCP_ERR_NOT_AVAILABLE")D.h. am RSCP-Interface sieht es so aus, als hätte deine Anlage keine Batterien - da bin ich ratlos.
Hast du mal den Modbus-Adapter probiert, siehst du da die Werte der Batterien? -
@stephan61
Hast du mal einen Restart deiner S10 gemacht?
Würde ich probieren!
Oder Runterfahren und Neustart.s -
@ujok
Hallo Ich hatte
wie im Bild zusehen ist nur die IP den Port eingeben.
Ich hatte allerdings den falschen Port verwendet, ich hatte nicht den RSCP Port sondern 1024 (TCP Modbus) Port eingetragen und dann stand unter Info Connection True.
-
@ujok said in Test Adapter e3dc-rscp v0.0.x GitHub:
@arnod said in Test Adapter e3dc-rscp v0.0.x GitHub:
@ujok
Dann habe ich noch eine Frage zu der Liste mit den Tag's bei den Abfrageintervallen, kann es sein das nicht alle Tags in der Liste auch in den ID's angezeigt werden ?
Kann einige nicht zuordnen wie z.B:
TAG_EMS_REQ_USER_CHARGE_LIMIT
TAG_EMS_REQ_USER_DISCHARGE_LIMIT
TAG_EMS_REQ_STORED_ERRORSoder haben die dort andere Bezeichnungen ?
Eigentlich wird alles in den Objektbaum geschrieben, was von der E3/DC an Tags reinkommt (außer gewollte Ausnahmen wie Fehler, Statusmeldungen). Eine Möglichkeit wäre also, dass die E3/DC schlicht keine Antworten für diese Tags sendet. Das nehme ich als Bug Report auf.
Ich habe das untersucht:
USER_CHARGE_LIMIT
wird in den StateMAX_CHARGE_POWER
geschriebenUSER_DISCHARGE_LIMIT
wird in den StateMAX_DISCHARGE_POWER
geschriebenSTORED_ERRORS
ist ein RSCP-Container, der aber bei mir bisher immer leer war; deshalb kein State
zu 1+2: ich habe entschieden, die "setter" und "getter" zu einem Wert immer in einem State zusammenzufassen, weil ich das für übersichtlicher halte. Was fehlt, ist die Doku dazu, siehe #71
zu 3: auch das ist eine Design-Entscheidung, d.h. im Object tree erscheinen i.a. nur Tags, für die Werte empfangen wurden. (Ausnahmen bestätigen die Regel, z.B. die "setter" wie
SET_POWER
werden initial angelegt, sonst könnte man sie ja nicht verwenden.) Im FallSTORED_ERRORS
weiß ich auch gar nicht, welche Tags in diesem Container ankommen würden... aber der Adapter sollte sie brav anzeigen, wenn welche kommen, z.B. Fehlertexte. Hier tu ich mich halt mit dem Testen schwer, weil ich meine S10 nicht absichtlich in Fehlerzustände bringen möchte -
@timmerx said in Test Adapter e3dc-rscp v0.0.x GitHub:
@ujok
Hallo Ich hatte
wie im Bild zusehen ist nur die IP den Port eingeben.
Ich hatte allerdings den falschen Port verwendet, ich hatte nicht den RSCP Port sondern 1024 (TCP Modbus) Port eingetragen und dann stand unter Info Connection True.!
Danke für die Info.
Ich habe das Szenario "korrekte IP, Port 1024, kein Benutzername, keine Passwörter" nachgestellt.
Bei mir stehen im Log eindeutige Fehlermeldungen und auchinfo.connection
steht auf "false"
D.h. ich kann den Fehler immer noch nicht reproduzieren. Vielleicht lassen wir es erstmal dabei und ich nehme das Thema wieder auf, wenn es nochmal auftritt.
-
@ujok
Ok, verstanden Danke.
Ist kein Problem, wenn man es weiß
-
@arnod said in Test Adapter e3dc-rscp v0.0.x GitHub:
@ujok
Ok, verstanden Danke.
Ist kein Problem, wenn man es weiß
Ich habe ein paar Sätze zum Thema Request Tags vs Object Tree States ins README geschrieben - kommt mit dem nächsten Release...
-
@ujok
Hi
teste das mal mit Port 502. -
Hallo,
ich habe mir diese Woche meinen ersten Raspberry gekauft und ioBroker installiert.
Ich will damit meine E3DC Anlage steuern, da mir da einige Einstellungen nicht gut genug sind. Ich habe eine E3/DC Pro mit 39kWh Batterie und auf dem Dach 29,9 kWp. Es gibt noch einen Wechselrichter von Fronius, der in E3DC per Leisutngsmesser als externe Quelle angezeigt wird. Dann habe ich noch eine E3DC Easy Connect Wallbox.
Ich bin von dem ioBroker und den vorhandenen Adaptern richtig begeistert. Was da alles verknüpft werden kann ist genial, sogar mein Rasenmäherroboter soll funktionieren, ist aber aktuell noch im Winterschlaf.
Folgendes will ich selbst steuern:
- Die Ladepriorität kann bei E3DC nur zwischen Hausbatterie und Auto umgeschaltet werden. Ich will den Ladestand des Autos auslesen (was über den VW Connect Adapter für meinen Audi geht). Dann soll folgendes Programm laufen:
Ladezustand Auto über x % dann nur mit Sonne laden
Ladezustand Auto unter x % dann auch aus Hausbatterie laden
Ladezustand Auto unter x % dann auch mit Netzstrom laden - Ich will die Notstromreserve optimieren. Die E3DC-Anlage füllt bei Notstromreserve dummerweise nur ein Batteriepaket. Wenn ich 25% der Kapazität als Reserve einstelle, dann wird ein Batterieblock auf 50% geladen und einer auf 0%. Dann hat die Anlage im Notstromfall nur die halbe Batterieleistung. Dies will ich mit ioBroker selbst über die Entladesperre steuern.
Nun komme ich bei folgenden Problemen nicht weiter und bin mir nicht sicher, ob es an dem E3DC-Adapter liegt oder an mir:
- Das Objekt EMS.BATTERY_BEFORE_CAR_MODE (true/false) steuert, ob zuerst Hausbatterie oder Wallbox geladen wird. Diesen Wert kann ich nicht verändern wenn ich ihn anklicke ???
- Das Objekt EMS.BATTERY_TO_CAR_MODE (true/false) steuert, ob die Hausbatterie ins Auto entladen wird. Auch diesen Wert kann ich nicht verändern ??? Beide Werte ändern sich wenn ich in der E3DC App umschalte.
- Das Objekt WB.WB_0.MODE zeigt an, ob Sonnenmodus oder Netzstrom aktiviert ist. Hier ist die Bezeichnung der Werte vermutlich falsch. Ich denke 0 bedeutet Netzladen und 128 bedeutet Sonnenmodus. Auch dieses Objekt kann ich durch anklicken nicht ändern. Es ändert sich, wenn man in der App schaltet.
Eine Rückmeldung würde mich sehr freuen. Ich kann auch gerne beim Testen behilflich sein.
Grüße,
Peter - Die Ladepriorität kann bei E3DC nur zwischen Hausbatterie und Auto umgeschaltet werden. Ich will den Ladestand des Autos auslesen (was über den VW Connect Adapter für meinen Audi geht). Dann soll folgendes Programm laufen:
-
Das Objekt EMS.BATTERY_BEFORE_CAR_MODE (true/false) steuert, ob zuerst Hausbatterie oder Wallbox geladen wird. Diesen Wert kann ich nicht verändern wenn ich ihn anklicke ???
Das Objekt EMS.BATTERY_TO_CAR_MODE (true/false) steuert, ob die Hausbatterie ins Auto entladen wird. Auch diesen Wert kann ich nicht verändern ???Das ist richtig, sind nur lesbar.
Ob man das ändern kann, müsste @ujok beantworten.
Welche Tag's aktuell auch beschreibbar sind, findest du in der Readme auf GitHub:Das Objekt WB.WB_0.MODE zeigt an, ob Sonnenmodus oder Netzstrom aktiviert ist. Hier ist die Bezeichnung der Werte vermutlich falsch.
Dieser State zeigt mehr an als nur Sonnenmodus oder Netzstrom aktiviert.
Leider habe ich hier keine Beschreibung gefunden, was die einzelnen Werte für Bedeutung haben und auch hier nur lesender Zugriff.
Nachtrag:
Ok habe jetzt im Code gesehen das Uli folgende Bezeichnungen verwendet: const rscpWbMode = { 0: "NONE",128: "LOADING",144: "NOT_LOADING",};
Da bei mir aktuell der Wert 8 ist, wurde nichts angezeigt. Was da richtig ist, kann man nur durch Probieren herausfinden oder bei E3DC nachfragen
8 = E-Auto angesteckt und Stecker verriegelt aber lädt nicht weil Akku voll.Wenn du deine Wallbox steuern willst, ist das aktuell nur über Modbus Anbindung möglich und dann auch nur wenn diese nicht mit dem E3DC Hauskraftwerk verbunden ist.
Die Modbus Register zum Importieren und Anleitung kannst du hier finden:
ArnoD GitHub -
@arnod
Danke für die Antworten @ArnoD !Zur Ergänzung:
- die im Adapter fehlende Wallbox-Steuerung kann ich nicht in Aussicht stellen, weil ich keine E3/DC-Wallbox habe und mir die E3/DC-Dokumentation als Basis einer Entwicklung ohne "lebendes Objekt" nicht ausreicht.
- die Decodierung für
WB.MODE = 8
nehme ich gerne auf, siehe https://github.com/git-kick/ioBroker.e3dc-rscp/issues/77
-
@ujok sagte in Test Adapter e3dc-rscp v0.0.x GitHub:
die Decodierung für WB.MODE = 8 nehme ich gerne auf, siehe https://github.com/git-kick/ioBroker.e3dc-rscp/issues/77
Warte noch damit, werde heute und Morgen einige Einstellungen testen, um zu sehen welcher Zahlencode bei WB.MODE was bedeutet. Melde mich dann mit dem Ergebnis.
Wenn jemand mit testen will, könnte man nachher vergleichen ob alle zu gleichen Ergebnis kommen.