NEWS
Alpha Testing: OCPP Wallbox Adapter
-
Der Master läuft mit Node.js 14.20.0 und NPM 6.14.17.
Der Slave mit 16.17.0 und 8.15.0.Außerdem bekomme ich eine Fehlermeldung, wenn ich
chargeLimit
auf 16 setze.ocpp.0 2022-08-27 09:25:26.930 error Cannot execute command "chargeLimit" for "http://192_168_178_80:9220/EVB-XXXXXXXXXX": Sender's message does not comply with protocol specification.
-
@meister-mopper
Ich habe eine EVBox Elvi erfolgreich mit dem Adapter verbunden und kann einen Ladevorgang problemlos abbrechen.
Nach Abbrechen übertransAction = false
erhalte ich den statusFinishing
Leider kann ich den Ladevorgang durch
transAction = true
und deaktivieren/reaktivieren deravailability
nicht wieder starten und bekomme:ocpp.0 2022-08-28 18:41:40.749 error Cannot execute command "transactionActive" for "http://192_168_178_80:9220/EVB-XXXXXXXXXX": Sender's message does not comply with protocol specification.
Jetzt könnte es noch an einem fehlerhaften idTag liegen:
Ich habe das idTag erfolglos in verschiedenen Versionen eingegeben
<NL-EVB-CXXXXXXXX-F>
oder
<CXXXXXXXX>
oder
<CXXXXXXXX-F>
oder
<NL-EVB-CXXXXXXXX>Weiteres:
Nachdem ich einen Ladevorgang abgebrochen habe (Finished), ist die Wallbox für den Adapter tot und reagiert nicht mehr auf irgendwas.
Ich muss dann das Ladekabel ziehen, wieder einstecken und mit dem RFID Chip aktivieren. Dann wird wieder geladen, und ich kann problemlos das Laden auch wieder unterbrechen.Manchmal steht man millimeternah vorm Scheunentor, vielleicht ist jemand weiter entfernt.
So sieht es nach dem Beenden des Ladevorgangs aus:
@foxriver76
Hier mal die Zeilen im debug log, nachdem ichtransactionActive
= true gesetzt habe:ocpp.0 2022-09-02 15:30:29.860 error Cannot execute command "transactionActive" for "http://192_168_178_80:9220/EVB-xxxxxxxxxx": Sender's message does not comply with protocol specification. ocpp.0 2022-09-02 15:30:29.573 debug Sending RemoteStartTransaction for http://192_168_178_80:9220/EVB-xxxxxxxxxx: {"connectorId":1,"idTag":"xxxxxxxxxxxxxx","chargingProfile":{"chargingProfileId":1,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Recurring","recurrencyKind":"Daily","chargingSchedule":{"duration":86400,"startSchedule":"2013-01-01T00:00Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":16}]}}}
Vielleicht hast Du ja eine Idee, welche Informationen der Wallbox noch fehlen.
-
Ich versuche meinen ganz neuen NRGkick per ocpp mit diesem Adapter zu verbinden. Leider bisher ohne Erfolg. Stimmt was an den Einstellungen in der NRG App nicht? Hat da jemand Erfahrung?
-
@tiedi
Versuche mal ws://... statt http://... -
Leider nein.
Keine Verbindung möglich. Habe au h schon mit der Authentifizierung alles probiert.
Keine Verbindung. Er lädt aber wesentlich länger, wenn ich es mit WS mache.
-
Kann ich denn irgendwo ein Fehlerprotokoll sehen, um zu checken, was bei der Verbindung schief läuft?
In iobroker unter Protokoll erscheint nichts dazu. -
@foxriver76
Der aktuelle Stand ist, dass ich jetzt vermittels des Adapters Ladevorgänge nicht mehr beenden kann.Am System habe ich nichts verändert. Das log wirft nach
transactiveFalse
folgendes:ocpp.0 2022-09-07 18:15:26.683 info New valid connection from "http://192.168.178.80:9220/XXXXXXXXX" (http/ocpp1.6) ocpp.0 2022-09-07 18:15:26.738 info New device connected: "http://192.168.178.80:9220/XXXXXXXXX" ocpp.0 2022-09-07 18:15:26.740 info Requesting BootNotification from "http://192.168.178.80:9220/XXXXXXXXX" ocpp.0 2022-09-07 18:15:27.778 info Requesting StatusNotification from "http://192.168.178.80:9220/XXXXXXXXX" ocpp.0 2022-09-07 18:15:31.785 info Received boot notification from "http://192.168.178.80:9220/XXXXXXXXX" ocpp.0 2022-09-07 18:15:32.108 info Received Status Notification from "http://192.168.178.80:9220/XXXXXXXXX": Available ocpp.0 2022-09-07 18:15:36.708 info Received DataTransfer from "http://192.168.178.80:9220/XXXXXXXXX" with id "evbStatusNotification": 1,Available,NoError,No error.,0,Green,0,{0,7984,100},{0,0},{A,11904,12024,61568},0,0,430,2022-09-07T16:15:31Z,0,3,{0,0,0,0,0,0,0,0,0},350,0,2,112,0,370,900,0 ocpp.0 2022-09-07 18:15:57.789 warn Could not request states of "http://192.168.178.80:9220/XXXXXXXXX": Timeout for message bf60175d-e1cb-433d-b6ee-69f079b9950d
Möglicherweise ist meine Wallbox jetzt im Reaktionsverhalten langsamer geworden? I have no eaning ( )
-
@meister-mopper hm im log sieht man nur die neue Connection
-
@foxriver76
Sorry. Möchtest Du das debug log sehen?Ja klar, liefere ich morgen nach.
-
@meister-mopper Ja genau, der Befehl der raus geht sollte im Debug zu sehen sein. Das ist dann hilfreich. Sorry, bin in letzter Zeit etwas kurz angebunden.
Also wenn er den Ladevorgang nicht beendet, dann sollte ja im Log zumindest die transactionActive=false generierte Message sein und der Payload dazu, auf debug vermute ich nur.
-
@all Danke für dieses geile OCPP!
-
Sehr seltsam, jetzt geht das Beenden des Ladevorgangs wieder. Der Ladestart funktioniert allerdings noch immer nicht.
Vielleicht hilft das debug log:
ocpp.0 2022-09-16 17:22:28.232 debug Sending RemoteStopTransaction for http://192_168_178_80:9220/EVB-XXXXXXXXX ocpp.0 2022-09-16 17:22:33.723 debug {"transactionId":1,"idTag":"XXXXXXXXX","timestamp":"2022-09-16T15:22:33Z","meterStop":0,"reason":"Remote","commandOcpp":"StopTransaction"} ocpp.0 2022-09-16 17:22:33.724 info Received stop transaction from "http://192.168.178.80:9220/EVB-XXXXXXXXX" ocpp.0 2022-09-16 17:22:34.386 debug {"connectorId":1,"status":"Finishing","errorCode":"NoError","timestamp":"2022-09-16T15:22:34Z","commandOcpp":"StatusNotification"} ocpp.0 2022-09-16 17:22:34.387 info Received Status Notification from "http://192.168.178.80:9220/EVB-XXXXXXXXX": Finishing ocpp.0 2022-09-16 17:22:38.324 debug {"vendorId":"EV-BOX","messageId":"evbStatusNotification","data":"1,Finishing,NoError,No error.,0,Green,0,{20,7984,100},{0,0},{C,11935,6140,61600},0,0,340,2022-09-16T15:22:34Z,0,3,{0,0,0,0,0,0,0,0,0},270,9,2,113,0,320,900,0","commandOcpp":"DataTransfer"} ocpp.0 2022-09-16 17:22:38.325 info Received DataTransfer from "http://192.168.178.80:9220/EVB-XXXXXXXXX" with id "evbStatusNotification": 1,Finishing,NoError,No error.,0,Green,0,{20,7984,100},{0,0},{C,11935,6140,61600},0,0,340,2022-09-16T15:22:34Z,0,3,{0,0,0,0,0,0,0,0,0},270,9,2,113,0,320,900,0 ocpp.0 2022-09-16 17:22:52.300 debug {"commandOcpp":"Heartbeat"} ocpp.0 2022-09-16 17:22:52.301 debug Received heartbeat from "http://192.168.178.80:9220/EVB-XXXXXXXXX" ocpp.0 2022-09-16 17:27:42.613 debug Sending RemoteStartTransaction for http://192_168_178_80:9220/EVB-XXXXXXXXX: {"connectorId":1,"idTag":"XXXXXXXXX","chargingProfile":{"chargingProfileId":1,"stackLevel":0,"chargingProfilePurpose":"TxDefaultProfile","chargingProfileKind":"Recurring","recurrencyKind":"Daily","chargingSchedule":{"duration":86400,"startSchedule":"2013-01-01T00:00Z","chargingRateUnit":"A","chargingSchedulePeriod":[{"startPeriod":0,"limit":16}]}}} ocpp.0 2022-09-16 17:27:42.920 error Cannot execute command "transactionActive" for "http://192_168_178_80:9220/EVB-XXXXXXXXX": Sender's message does not comply with protocol specification.
-
@meister-mopper ohje, ich verstehe es nicht ganz. Die Kommandos ändern sich ja nicht.
War da zwischenrein ein Update der WB?
-
@meister-mopper sagte in Alpha Testing: OCPP Wallbox Adapter:
Sender's message does not comply with protocol specification.
Das scheint keine interne Fehlermeldung einer Lib zu sein, da scheint der WB wirklich das Command nicht zu passen welches wir senden.
Hast du evtl. auf WB Seite ein Log das mehr Infos gibt, was genau nicht valide ist an dem Kommando?
-
@foxriver76 sagte in Alpha Testing: OCPP Wallbox Adapter:
War da zwischenrein ein Update der WB?
Nein, zwischen dem Fehler beim Ladeschluss bis zum erneuten Funktionieren des Ladeschlusses gab es kein Update der WB.
Leider weiß ich nicht, wie ich ein log der WB einsehen könnte. Die App sieht so etwas nicht vor.
-
@meister-mopper falls du es dir zutraust ändere mal lokal die
build/main.js
) https://github.com/foxriver76/ioBroker.ocpp/blob/48303d5b08f18682ed681038d614133990a50c1e/build/main.js#L397 diese Zeile hier zuif (false) {
Evtl gefällt ihm das profile nicht.
-
Du meinst
if ((limitState === null || limitState === void 0 ? void 0 : limitState.val) && typeof limitState.val === 'number') {
in
if (false) {((limitState === null || limitState === void 0 ? void 0 : limitState.val) && typeof limitState.val === 'number') {
Aber wo setze ich dann das erforderliche }?
Sorry, ich bin kein Programmierer.
-
Mach vor die existente Zeile einfach
//
und mach darunter das was ich geschrieben habe, ich kann es dir morgen am pc nochmal genauer schreiben. -
@foxriver76
Sehr gut, das funktioniert. Ich kann jetzt das Laden starten und beenden. -
@meister-mopper Interessant, was hast du denn in dem
chargeLimit
State drin stehen unter Objekte?