NEWS
[Frage] Realisierung Adapter UDP Keba Wallbox
-
@sebastianiv Deine Frage ist etwas knapp formuliert.
Ich vermute es geht um die Netzwerkverbindung und wie Du ein Netzwerkkabel an der Box anschließt? Bei der c-Series gibt es im Gehäuse sowohl einen RJ45- als auch einen LSA-Anschluss. Ich gehe, davon aus, dass die DE-Edtion zumindest einen der beiden hat.
Sollte aber im Installation Guide von Keba zu finden sein. -
Hallo zusammen!
Erst einmal vielen Dank an euch, was ihr hier für die Community leistet!
Ich habe dank eurer Arbeit schon einige coole Sachen in unserem Haus umsetzen können und habe bei Problemen immer hilfreiche Informationen in dem Forum gefunden. Also; Hut ab vor eurer Arbeit!
Jetzt meine kurze Frage :
Wie verträgt sich denn das steuern der Wallbox (Keba P30) über UDP wenn gleichzeitig von außen über OCPP zugegriffen wird? Über OCPP soll bei mir eigentlich nur über ein Backend die Ladehistorie exportiert werden.
Aber ich habe bisher immer nur entweder UDP-Zugriff oder Backend-Zugriff hinbekommen. Sobald ich beides eingestellt habe funktioniert beides nicht mehr richtig. Schließt also das eine das andere automatisch aus?
Vielen Dank vorab -
@skll Ich habe keine OCPP-Anbindung, aber ich vemrute, dass es schweirig wird. Die Keba nutzt ja nur UDP und nicht TCP. Sie sendet alle Nachrichten immer an die Adresse, von der es zuletzt ein Kommando entgegenngenommen hatte. So steht es zumindest in der Doku.
Außer für OCPP würde ein anderes Protokoll verwendet, was eigentlich sinnvoll wäre, wenn die Kommandos von außerhalb Deines Netzes kommen sollten. -
Hallo,
habe mir nun auch eine Keba P30 C Serie zugelegt und versuche diese nun über den Adapter kecontact einzubinden. leider funktioniert das nicht. Bekomme immer die Meldung:
2022-03-30 21:09:23.558 error RxSocketBroadcast error: bind EADDRINUSE 0.0.0.0:7092Error: bind EADDRINUSE 0.0.0.0:7092 at dgram.js:357:20 at processTicksAndRejections (internal/process/task_queues.js:83:21)
kecontact.0
2022-03-30 21:09:23.557 error RxSocketReports error: bind EADDRINUSE 0.0.0.0:7090Error: bind EADDRINUSE 0.0.0.0:7090 at dgram.js:357:20 at processTicksAndRejections (internal/process/task_queues.js:83:21)
Habe leider im Forum nichts dazu gefunden. Io Broker und adapter alle auf den neusten Stand. Verbindung über Modbus/TCP funktioniert. Würde mich feuen wenn mir jemand helfen könnte
VG
Heiko -
@heiko-berger Der Fehler deutet darauf hin, dass im ioBroker bereit ein anderer dienst auf dieser Adresse lauscht. Du schreibst, dass die modbus-Kommunikation über TCP funktioniert. Dann wird genau diese der "Störenfried" sein. Schalte Modbus mal ab und starte den Adapter neu.
Wenn Du danach Modbus aktivierst, wird dieser Fehler liefern. Zwei Adapter auf der gleichen Adresse (und Port) funktionieren leider nicht. -
@sneak-l8 Hallo,
erst mal vielen Dank für die schnelle Rückmeldung, habe gerade mal alle anderen Adapter abgeschalten und nur den Kecontact an, leider aber kein Erfolg, selbe Fehlermeldung
VG
Heiko -
@heiko-berger Hast Du evtl. zwei Instanzen vom Adapter? Obwohl, die sollten damit umgehen können, den die bekommen keinen Fehler, welbst wenn mehrere auf demselben Port lauschen.
Dann läuft evtl. doch noch was anderes parallel? IP-Adresse der Wallbox korrekt eingetragen? Und nicht die des ioBrokers?
Zeig mal Deine Einstellungen. -
-
@sneak-l8 Anbei mal meine installierten Adapter und Einstellung Kecontact
VG -
@heiko-berger Mach mal den Discovery aus.
Läuft auf dem Rechner neben ioBroker noch etwas anderes, das evtl. auf die Wallbox lauscht? Irgendeine Software, die z.B. Ladesitzungen aufzeuchnet oder so was? -
@sneak-l8 Habe den Discovery ausgemacht, Kecontact neu gesartet leider keine Änderung. Ansonsten greift nichts auf die Wallbox. Habe nur über Browser die ip kontolliert und die Funktioniert.
-
@heiko-berger Hm, das verstehe ich leider nicht.
Letzte Idee: gibt es einen Adapter, der dieselben Ports benutzt? Also 7090 und 7092? Denn der Bind erfolgt ja lokal auf den Port unabhängig von der entfernten Adresse. -
@sneak-l8 tja wenn ich das wüsste, ich denke nicht, aber zur Info mein ioBroker läuft auf der NAS als Docker über host, vielleicht liegt da der Fehler??
-
@heiko-berger noch eine Idee, der DIP Schalter 1.3 ist on heißt das tcp/Modbus+UDP an oder ist das ein Umschalter zw. TCP und UDP?
-
@heiko-berger Wenn Docker wirklich im host Modus läuft müsste es so gehen, wenn das Netzwerk jedoch über die Docker Bridge geht müssen die 2 Ports an den Container weitergeleitet werden. Die muss in den Containereinstellungen hinterlegt sein.
Am Docker Hostsystem kannst du leicht prüfen ob die beiden Ports geöffnet sind:
netstat -a -n | grep -e 7090 -e 7092
udp 0 0 0.0.0.0:7090 0.0.0.0:*
udp 0 0 0.0.0.0:7092 0.0.0.0:* -
Hallo,
habs gefunden!, Hatte im Docker noch die alte iobroker version parallel laufen, diese habe ich jetzt ausgeschalten, jetzt funzt es.
Danke trotzdem für die schnelle HilfeVG
Heiko -
@heiko-berger Prima, dass jetzt alles funktioniert. Zum DIP-Switch: der aktiviert die Netzwerk-Kommunikation. Schaltet also nicht zwischen TCP und UDP um. Wäre für Dein Problem aber auch egal, da es um den bereits belegten Port am ioBroker-Rechner ging.
@BoKo danke für Deine Hilfestellung, die letztlich zum Erfolg geführt hat
-
@sneak-l8
Hallo, nach Rücksprache mit KEBA ist der RJ45 Anschluss zu nutzen. Die Funktionen und Verbindung geht mit Hilfe des Adapters.Vielen Dank
-
Hallo!
Zuerst mal ein großes Lob an den Entwickler!Ich hoffe ich habe nichts überlesen, aber kann der Adapter die Ladefreigabe (auch wenn RFID-Autorisierung eingeschaltet ist) auch an die Box geben?
Würde das gerne via Yahka in HomeKit integrieren.Vielen Dank im Voraus fürs Feedback.
Gruß,
Chris -
@oggy1979 Bisher geht das noch nicht. Kann man aber - ich meine das war hier schno mal beschrieben - realisiert werden. Die Frage ist, wie dazu RFID tag und class übergeben werden, um die Box damit freizuschalten.Denn ohne diese Werte lässt sich die Box auch mit dem Adapter nicht frei schalten. Finde ich immer eine knifflige Sache, wen zwei Werte übergeben werden sollen. Dann habe ich zwei unabhängige States. Wann soll der Adapter dann das Kommando senden?
Bei der Änderung eines der Werte macht keinen Sinn, weil dass unfertige Freischaltungen versucht werden. Oder man sagt, es müssen dann immer erst beide Fedler gelöscht und dan gesetzt werden. Dann würde die Freischaltung erfolgen, sobald beide Werte gefüllt sind. Eine Änderung von einem Wert auf den anderen würde dann mit Fehler quittiert.
Wäre das machbar? Beide Werte in einem State abzulegen halte ich nicht für zielführend.