NEWS
[Frage] Realisierung Adapter UDP Keba Wallbox
-
@sneak-l8 Das ist mir zwischenzeitlich klar, ich kann die P30X so über die WebUi einstellen um entweder über die eingebaute Software, oder Deinem Adapter, oder Modbus zu steuern. Mein Favorit ist zur Zeit Dein UDP Adapter im passiven Modus. Auf diesen greife ich mit einem eigenen Steuerprogramm bezüglich "PV optimiertem Laden mit Hausbatterie" zu. Die Modbus Schnittstelle von Keba ist schlecht gemacht. Die notwendigen beschreibbaren Register liefern keine Statusmeldungen.
Bis ich alles durchgetestet habe, lasse ich die Wallbox im normalen Betrieb mit der internen Software agieren. Ist offenbar z.Z die PV optimierteste Lösung. Meine Frau, Kinder stecken den Stecker ins Auto, und alles läuft. Ich muß dann nur manuell hinschauen, dass die für die Nacht vorgesehene Hausbatterie nicht Zweckentfremdet wird.
Ich habe parallel nach einer Lösung über Keba (Kontaktformular) gesucht. Ich komme dabei aber nicht an eine Fachkraft und werde mit technisch unsinnigen Antworten abgespeist.
-
@sneak-l8 , ich hab mir das alles nochmals genauer angeschaut und habe versucht das schalten des X2 Ausgangs mittels einen neu eingeführten Timers umzusetzen und somit den mindest Zeitabstand einzuhalten. Hierzu habe ich dein aktuelles Repository geforked, einen dev-server aufgesetzt und im programmieren versucht. Wäre schön wenn du Dir das mal anschauen könntest und wenn es für Dich auch einen Sinn ergibt bei Dir integriert werden könnte. In meinen ersten Test heute hat es schon mal einige Fehlermeldungen beheben können. Inputs Deiner Seite sind auch gerne wilkommen
@sneak-l8 sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
Warum das X2-Kommando nicht akzeptiert wird, müsstest Du vielleicht mal bei Keba anfragen.
Ich habe dazu einen Thread bei einem der anderen Adapter zur KEBA gefunden, schein am implementierten Verhalten in der KEBA zu legen. Nachdem ich ein wenig an den Bedingungen rum gebastelt habe, wie im Log nachzulesen habe ich es geschafft, dass die Box wieder das laden selbständig beendet, wenn das der Fall ist.
Hier der Link zum Post: https://www.loxforum.com/forum/hardware-zubehör-sensorik/77402-keba-wallbox?p=398742#post398742In der Anleitung hab ich zufällig gefunden dass es tatsächlich die 300s sind welche implementiert sind.
-
@christian-kohlöffel
Hallo ich bin an der gleichen Baustelle. Dar x2 Schaltbefehl funktionier bei mir in dem Moment wenn ich in der Webui (P30X) auf UDP umgestaltet hab. Ein Umschalten des State X2phaseSource über den Adapter funktioniert nicht. Der Adapter springt nach kurzer Zeit wieder auf den alten Wert zurück.Ich habe Keba angeschrieben und bezüglich der Beeinflussung interne und externer Steuerungslogik folgende Antwort erhalten:
vielen Dank für Ihre Anfrage bezüglich des PV-optimierten Ladevorgangs Ihrer KEBA P30 PV Edition.
Wenn Sie die PV-optimierte Ladesteuerung über eine externe Steuerung realisieren möchten und die interne Steuerung der KEBA P30 deaktivieren wollen, müssen Sie dies nicht explizit abschalten. Die externe Steuerung hat Vorrang und überschreibt die internen Einstellungen der Ladestation.
Sie können die externe Steuerung, sei es über ein Energiemanagementsystem oder eine andere Lösung, so konfigurieren, dass sie den Ladeprozess basierend auf dem PV-Überschuss optimiert. Die KEBA P30 Wallbox wird dann entsprechend gesteuert, ohne dass Sie manuelle Einstellungen an der internen Steuerung vornehmen müssen.
Bitte stellen Sie sicher, dass die externe Steuerung korrekt eingerichtet ist, um den gewünschten PV-optimierten Ladevorgang zu ermöglichen.
Die Aussage hört sich erstmal sehr gut an. Überschreiben ist simpelster kämpfen hier nicht zwei Regelsysteme gegeneinander? Auch meine zwischenzeitlichen Erfahrungen können diese Aussage nicht bestätigen. Ich hab die interne Steuerung für die PV optimierte Steuerung abgeschaltet und experimentiere weiter..
-
@opaw , leider hab ich nur die DE Edition, welche keine internen Features wie Strom und Spannungsmessungen hat. Aber ich muss sagen, der Adapter von sneak funktioniert bei der PV Regelung und der Schaltung meist wie er soll, also wenn Du es schaffst das Eigenverhalten der Box abzustellen, dann hast du gute Chancen damit eine gute PV Abhängige Regelung hin zu bekommen.
@opaw sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
Dar x2 Schaltbefehl funktionier bei mir in dem Moment wenn ich in der Webui (P30X) auf UDP umgestaltet hab
Ohne UDP kanns ja nicht funktionieren, da der Adapter zur Kommunikation UDP verwendet, oder?
@opaw sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
Ein Umschalten des State X2phaseSource über den Adapter funktioniert nicht. Der Adapter springt nach kurzer Zeit wieder auf den alten Wert zurück.
Bist du schon im Active Mode im Adapter, normal dürfte er für min. 300s nicht zurückschalten können wenn er mal gesetzt ist. Was sagt er im Log dazu?
-
@christian-kohlöffel Danke für den Fork.
Ich hätte jetzt keine Config-Option für den Timeout zum Umschalten 1p/3p gemacht, da der wohl für alle Boxen gleich sein dürfte. Und wenn nicht, dann könnte man das auch je Modell einstellen, die Erkennung ist ja schon da.
Gnauer habe ich es noch nicht angeschaut, bin noch eine Weile unterwegs ... -
@sneak-l8 sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
Ich hätte jetzt keine Config-Option für den Timeout zum Umschalten 1p/3p gemacht, da der wohl für alle Boxen gleich sein dürfte
Ja, da hast du wohl recht. Aber am Anfang war mir das noch nicht klar. Vielleicht macht es ja Sinn diese drin zu lassen um das hin und her schalten bei nicht S10 basierten Systemen zu verzögern? Aber ob das variabel sein muss ist fraglich.
Mal schauen, vielleicht baue ich es ja wieder raus, wenn das Wetter die nächsten Tage so bleibtUpdate, es ging doch sehr schnell:
https://github.com/iobroker-community-adapters/ioBroker.kecontact/compare/master...christi-ko:ioBroker.kecontact:master -
@christian-kohlöffel Sorry, sehe nicht ,dass es zurückgebaut wäre auf einen festen Wert. Konfig ist immer noch drin, oder? Letzter Commit ist vom 11. August. Evtl. Push vergessen?
-
@sneak-l8 Ich hab da mal eine Pull request gemacht. Dort sollte es drin sein ...
https://github.com/iobroker-community-adapters/ioBroker.kecontact/pulls -
@christian-kohlöffel Ne, da ist leider auch noch die Konfig erweitert.
-
@sneak-l8 Gibts doch nicht. Ich habe es hier Committet, oder?
-
@Sneak-L8 Ich will jetzt nicht meine Hand ins Feuer dafür legen, vielleicht hab ich es ja auch irgendwo vergessen und nicht in allen files raus genommen. Ist ja doch irgendwie an vielen Stellen nötig gewesen rein zu bauen ...
-
@christian-kohlöffel Ich glaube, ich verstehe jetzt.
Ich hab erstmal falsch geschaut. Im PR stehen die ältesten Commits oben, hatte den neusten erwartet. Die Änderung sind also doch da.
Aber Du hast nicht alles zurückgenommen. Z.B. .create-adapter.json enthält noch den neuen Wert und in den Translations ist es auch noch alles drin.Danach wäre es eigentlich optimimal, wenn Du Deine Commits zu einem zusammen-squashst. (Das hab ich selbst aber noch nicht gemacht, weil ich mit VSC noch nicht so recht weiß, wo). Aber das ist nicht ganz so wild, beim PR sieht man ja die "overall"-Änderung und sieht dann, dass nur weniges Stellen geändert wurden.
-
@sneak-l8 Ich hab die Änderung gerade noch in create-adapter.json gemacht. Sonst habe ich glaub alles Stellen erwischt. Bezüglich squashsen hab ich nachgelesen. Das kann man wohl direkt in GIT beim Pull Request Mergen als Option ankreuzen (https://www.git-tower.com/learn/git/faq/git-squash) .
-
@christian-kohlöffel Die Änderungen sind im neuen PR leider noch drin ...
-
@sneak-l8 Mann bin ich blöd. Sorry, das ist mein erster PR .....
-
@sneak-l8 Jetzt aber, hoffentlich
-
@christian-kohlöffel Leider nein. Schau mal im PR unter "Files changed". Das sind immer noch einige...
Und Du musst nicht jedes Mal einen neuen PR erstellen. Es reicht, wenn Du den Commit (und Push) machst. Dann wird der PR automatisch aktualisiert. -
@sneak-l8 OK, dann schaue ich nochmals ...
-
Hallo zusammen, Keba hat leider Ihre Homepage renoviert. Unter https://www.keba.com/de/emobility/service-support/downloads/downloads findet man die Firmware un nur noch, wenn man entweder "firmware" ins Suchfeld eingibt oder "mehr anzeigen" anklickt.
Daher schlägt derzeit der automatische Firmware-Check für die Keba c-Series fehl. Bei Keba habe ich nachgefragt, sie haben leider keine API, URL mit json-Daten der Downloads o.ä.
Die Navigation auf der Seite ist leider auch über JavaScript gelöst, das heißt, es reicht nicht, klassiche Seitenabrufe zu tätigen und Formularangeben zu füllen.
Hat da jemand einen Tipp für mich, wie ich da recht einfach rankomme? Es geht mir nur um die Versions-Nr. die beim Download der firmware angezeigt wird... -
@christian-kohlöffel So, hab mir jetzt mal Deinen PR angeschaut.
Was mir auffällt:
- Zeile 70: Die minimale Zeit zum Umschalten ist null. Setzt du die absichtlich erst beim Init? Ein cont ... = 300 würde doch reichen. Logging der Info sehe ich nicht für notwnedig, da es ja ein fester Wert ist.
- Zeile 1026: guter Gedanke, die aktuelle Stromstärke nur bei state ==3 (charging) zu holen und nicht über disabled zu prüfen => alten Code dan aber löschen und nicht kommentieren
- Zeile 1058: kleiner Tippfehler values => value
- Zeile 1065: auch wieder bitte alten Code raus
- Zeile 1206: alten Code bitte raus
- Zeile 1304/1307: die Log-Ausgaben sind eher noch vom Testen, oder?
- Zeile 1372: wenn Du den Wert unbedingt loggen willst, dann solltest Du ihn persistieren. Es könnte sein ,dass im Log ein anderer Wert steht, als der, der von der Funktion zurückgegeben wird, weil genau dazwischen, neue Daten von der Wallbox kamen.
- Zeile 1494/1576/1673: bitte Variable im lowerCamalCase schreiben (kleines s am Anfang)
- Zeile 1495: wenn noch kein Phase-Switch im State vermerkt ist, dann würde ich auch keinen aktuellen Wert setzen. Denn es fand ja kein Switching statt. Ich würde hier einfach false zurückgegeben.
- Zeile 1561 (alt Zeile 1436): warum hast Du da das ausschalten des 1p/3p-Switches deaktiviert? Mir geht es (gerade weil ich einen Öffner einsetze) darum, dass bei Ladepausen der Installationsschütz abgeschaltet wird und somit nicht unnötig daueraktiviert ist.
- Zeile 1673ff: hier wird jetzt nochmals geprüft, wie lange der Phase-Switch zurückliegt. wäre es dann nicht weiter oben obsolet? Ggfs. soltle man das dann in eine zentrale Funktion verlagern, so dass es dann auch für Zeile 1561 passen würde.
Aber insgesamt find ich die Änderung echt gut. Danke dafür!
Noch ne Frage dzu, dass Du die Prüfung auf stateWallBoxDisabled sehr oft entfernt hast: was ist der Hintergrund? Weil current eh null sein sollte, wenn die Wallbox disabled ist?
P.S. Danke fürs Kommentieren der Methoden!