NEWS
[Frage] Realisierung Adapter UDP Keba Wallbox
-
@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!
-
@sneak-l8 sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
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.
Ja, das hab ich gemacht falls es für andere Wallboxen doch noch andere Werte geben sollte. Könnte man aber auch fix machen
==> Vorschlag das lassen wir so ...@sneak-l8 sagte in [Frage] Realisierung Adapter UDP Keba Wallbox:
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.
Ist aus meiner Sicht nicht nötig, da dies weiter unten, wenn der curr= 0 ist eh auch schon gemacht wird.
Zeile 1664 neu und darunter:
if (curr < getMinCurrent())
Klar, könnte man auch verlagern, hast du eine Vorschlag. Ich verstehe gerade nicht ganz was Dir vorschwebt ....Den Rest habe ich so umgesetzt und auch schon commitet ...
-
@christian-kohlöffel Hey, top! Ja, dassZeile 1561 unnötig ist, istm ir garn icht gleich aufgefallen.
Den anderen Punkt könenn wir auch gerne so lassen. Dann merge ich jetzt mal.
Danach deaktiviere ich mal noch kurz den Firmwre-Check für die c-Series, da er derzeit ja leider nicht mehr funktioniert (siehe Post weiter oben).
Edit: Version ist jetzt bei github -
Danke euch 2!
Ich werde die GH Version mal laden und diese Woche beobachten.