Skip to content

Latest commit

 

History

History
155 lines (137 loc) · 13.5 KB

File metadata and controls

155 lines (137 loc) · 13.5 KB

Deutsch • English

OCPP

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.

Using the App to enable and verify the OCPP connection

Tap the tab "Internet" at the bottom, then click on OCPP in the menu

Using the http API to enable and verify the OCPP connection

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

How does the charger identify to the backend?

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"}

Supported Feature Profiles

Feature Profile Support
Core Supported
FirmwareManagement Supported
LocalAuthListManagement -
Reservation -
SmartCharging Supported (YES we also support numberOfPhases=1 for phase switching)
RemoteTrigger Supported

Supported Messages

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

Supported config keys in GetConfiguration and ChangeConfiguration

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