Deutsch • English
Recent go-eCharger firmwares support connecting to an OCPP backend. Most of our development and testing was done with Steve, which was very easy to run containerized and bare-metal on raspberry pies and big servers. OCPP can be enabled using the App or the http API.
Tap the tab "Internet" at the bottom, then click on OCPP in the menu
The chargers provide api keys to configure and verify the ocpp connection. These api keys can be used with the http api.
Example: http://192.168.0.77/api/set?ocppe=true&ocppu=ws://ocpp.server:1234/chargers/201564
| api key | description | datatype | R?W? | Category |
|---|---|---|---|---|
| ocppe | OCPP enabled | bool | R/W | Config |
| ocppu | OCPP server url | string | R/W | Config |
| ocppf | OCPP fallback current | null or uint8_t | R/W | Config |
| ocppg | OCPP use global CA Store | bool | R/W | Config |
| ocppcn | OCPP skipCertCommonNameCheck | bool | R/W | Config |
| ocppss | OCPP skipServerVerification | bool | R/W | Config |
| ocppck | OCPP client key | string | R/W | Config |
| ocppcc | OCPP client cert | string | R/W | Config |
| ocppsc | OCPP server cert | string | R/W | Config |
| ocpps | OCPP started | bool | R | Status |
| ocppc | OCPP verbunden | bool | R | Status |
| ocppca | OCPP verbunden (Zeitstempel in Millisekunden seit dem Hochfahren) Subtrahiere von der reboot-zeit (rbt) um die Dauer seit Verbunden zu erhalten | null or milliseconds | R | Status |
| ocppa | OCPP connected and accepted | bool | R | Status |
| ocppaa | OCPP connected and accepted (timestamp in milliseconds since reboot) Subtract from reboot time (rbt) to get number of milliseconds since connected and accepted | null or milliseconds | R | Status |
| ocppti | OCPP transaction id | null or int | R/W | Status |
| ocppao | OCPP AllowOfflineTxForUnknownId | bool | R/W | Config |
| ocpplo | OCPP LocalAuthorizeOffline | bool | R/W | Config |
| ocppla | OCPP LocalAuthListEnabled | bool | R/W | Config |
| ocpph | OCPP heartbeat interval (can also be read/written with GetConfiguration and ChangeConfiguration) |
seconds | R/W | Config |
| ocppi | OCPP meter values sample interval (can also be read/written with GetConfiguration and ChangeConfiguration) |
seconds | R/W | Config |
| ocppai | OCPP clock aligned data interval (can also be read/written with GetConfiguration and ChangeConfiguration) |
seconds | R/W | Config |
| ocppd | OCPP dummy card id (used when no card has been used and charging is already allowed / starting) | string | R/W | Config |
| ocppr | OCPP rotate phases on charger | bool | R/W | Config |
| ocppcm | OCPP meter values condition (0 = WhenTransactionId, 1 = WhenCharging) | R/W | bool | Config |
| ocpplea | OCPP last error (timestamp in milliseconds since reboot) Subtract from reboot time (rbt) to get number of milliseconds since error occured | null or milliseconds | R | Status |
| ocpple | OCPP last error | string or null | R | Status |
| ocpprl | OCPP remote logging (usually only enabled by go-e support to allow debugging) | bool | R/W | Config |
| ocppcs | OCPP connector status (0=Available, 1=Preparing, 2=Charging, 3=SuspendedEVSE, 4=SuspendedEV, 5=Finishing, 6=Reserved, 7=U | |||
| ocppt | OCPP accept time provided by backend in BootNotification confirmation | bool | R/W | Config |
| ocppio | OCPP currently set as inoperable (can be changed by backend by using ChangeAvailability messages) | bool | R/W | Config |
| Hardware generation | Marketing name | Example BootNotification |
|---|---|---|
| V3 | Home | {"chargePointVendor":"go-e","chargePointModel":"go-eCharger","chargePointSerialNumber":"123456","firmwareVersion":"59.4"} |
| V4 | Gemini | {"chargePointVendor":"go-e","chargePointModel":"go-eCharger_V4","chargePointSerialNumber":"237512","firmwareVersion":"59.4"} |
| V5 | Gemini 2.0 (LTE) | {"chargePointVendor":"go-e","chargePointModel":"go-eCharger_V5","chargePointSerialNumber":"402564","firmwareVersion":"59.4"} |
| Pro | Pro | {"chargePointVendor":"go-e","chargePointModel":"go-eCharger_Pro","chargePointSerialNumber":"500107","firmwareVersion":"59.3-rc2"} |
| Feature Profile | Support |
|---|---|
| Core | Supported |
| FirmwareManagement | Supported |
| LocalAuthListManagement | - |
| Reservation | - |
| SmartCharging | Supported (YES we also support numberOfPhases=1 for phase switching) |
| RemoteTrigger | Supported |
| Message | Profile | Support on go-eCharger |
|---|---|---|
| Authorize | Core | Implemented |
| BootNotification | Core | Implemented |
| ChangeAvailability | Core | Implemented |
| ChangeConfiguration | Core | Implemented (see supported config keys below) |
| ClearCache | Core | - |
| DataTransfer | Core | - |
| GetConfiguration | Core | Implemented (see supported config keys below) |
| Heartbeat | Core | Implemented |
| MeterValues | Core | Implemented |
| RemoteStartTransaction | Core | Implemented |
| RemoteStopTransaction | Core | Implemented |
| Reset | Core | Implemented |
| StartTransaction | Core | Implemented |
| StatusNotification | Core | Implemented |
| StopTransaction | Core | Implemented |
| UnlockConnector | Core | Implemented |
| GetDiagnostics | Firmware Management | - |
| DiagnosticsStatusNotification | Firmware Management | - |
| FirmwareStatusNotification | Firmware Management | Implemented |
| UpdateFirmware | Firmware Management | Implemented |
| GetLocalListVersion | Local Auth List Management | Implemented |
| SendLocalList | Local Auth List Management | Implemented |
| CancelReservation | Reservation | - |
| ReserveNow | Reservation | - |
| ClearChargingProfile | Smart Charging | Implemented |
| GetCompositeSchedule | Smart Charging | - |
| SetChargingProfile | Smart Charging | Implemented |
| TriggerMessage | Remote Trigger | Implemented |
The OCPP message GetConfiguration is used to retrieve a single or multiple config values from the charger. The OCPP message ChangeConfiguration is used to set or change a single or multiple config values on the charger.
| Configuration Key | Protocol Specification Chapter | go-eCharger support |
|---|---|---|
| AllowOfflineTxForUnknownId | 9.1.1 | R/W |
| AuthorizationCacheEnabled | 9.1.2 | - |
| AuthorizeRemoteTxRequests | 9.1.3 | R |
| BlinkRepeat | 9.1.4 | - |
| ClockAlignedDataInterval | 9.1.5 | R/W |
| ConnectionTimeOut | 9.1.6 | - |
| ConnectorPhaseRotation | 9.1.7 | R |
| ConnectorPhaseRotationMaxLength | 9.1.8 | R |
| GetConfigurationMaxKeys | 9.1.9 | R |
| HeartbeatInterval | 9.1.10 | R/W |
| LightIntensity | 9.1.11 | R/W |
| LocalAuthorizeOffline | 9.1.12 | R/W |
| LocalPreAuthorize | 9.1.13 | - |
| MaxEnergyOnInvalidId | 9.1.14 | - |
| MeterValuesAlignedData | 9.1.15 | - |
| MeterValuesAlignedDataMaxLength | 9.1.16 | R |
| MeterValuesSampledData | 9.1.17 | R/W |
| MeterValuesSampledDataMaxLength | 9.1.18 | R |
| MeterValueSampleInterval | 9.1.19 | R/W |
| MinimumStatusDuration | 9.1.20 | - |
| NumberOfConnectors | 9.1.21 | R |
| ResetRetries | 9.1.22 | - |
| StopTransactionOnEVSideDisconnect | 9.1.23 | - |
| StopTransactionOnInvalidId | 9.1.24 | - |
| StopTxnAlignedData | 9.1.25 | - |
| StopTxnAlignedDataMaxLength | 9.1.26 | - |
| StopTxnSampledData | 9.1.27 | - |
| StopTxnSampledDataMaxLength | 9.1.28 | - |
| SupportedFeatureProfiles | 9.1.29 | R |
| SupportedFeatureProfilesMaxLength | 9.1.30 | R |
| TransactionMessageAttempts | 9.1.31 | - |
| TransactionMessageRetryInterval | 9.1.32 | - |
| UnlockConnectorOnEVSideDisconnect | 9.1.33 | R/W |
| WebSocketPingInterval | 9.1.34 | R/W |
| LocalAuthListEnabled | 9.2.1 | R/W |
| LocalAuthListMaxLength | 9.2.2 | - |
| SendLocalListMaxLength | 9.2.3 | - |
| ReserveConnectorZeroSupported | 9.3.1 | - |
| ChargeProfileMaxStackLevel | 9.4.1 | R |
| ChargingScheduleAllowedChargingRateUnit | 9.4.2 | R |
| ChargingScheduleMaxPeriods | 9.4.3 | R |
| ConnectorSwitch3to1PhaseSupported | 9.4.4 | R |
| MaxChargingProfilesInstalled | 9.4.5 | R |
| MinChargingCurrent | custom; corresponds to API-key mca (minChargingCurrent) | R/W |
| RequestedCurrent | custom; corresponds to API key amp (requestedCurrent) | R/W |
