Custom Extensions
Enua chargers support a few features that are not part of the OCPP standard. They are exposed through
Enua-specific configuration (an Enua origin in Supported Configuration Keys)
and, where relevant, through the customData field with an Enua vendor id.
Free Charging
Free Charging lets users charge without actively authenticating on each session. When the charger detects that a
charging cable has been inserted, it simulates an RFID scan: a configured virtual RFID tag is sent as the
identifier in the Authorize flow described in Authorization & Identity. Free Charging
works both online and offline.
Two settings control it — the feature must be enabled, and a virtual RFID tag must be configured.
Free Charging is exposed through the FreeCharge component.
1. Enable the feature — set FreeCharge.Enabled to "true" (a string; "false" disables it):
[
2,
"26d74e9b-92f0-4b64-9bad-ede2cd0da072",
"SetVariables",
{
"setVariableData": [
{
"attributeValue": "true",
"component": { "name": "FreeCharge" },
"variable": { "name": "Enabled" }
}
]
}
]
2. Configure the virtual RFID tag — FreeCharge.RFIDTag, a 0–36 character string (e.g. a UUID):
[
2,
"26d74e9b-92f0-4b64-9bad-ede2cd0da072",
"SetVariables",
{
"setVariableData": [
{
"attributeValue": "<RFID-key>",
"component": { "name": "FreeCharge" },
"variable": { "name": "RFIDTag" }
}
]
}
]
Note
The value must be sent as a string — you cannot send a native JSON boolean.
AutoCharge
AutoCharge lets an EV charge automatically without an NFC scan or app interaction, using the vehicle's identity
as the authorization token. When a cable is plugged in, the charger reads the EV's MAC address, resolves it —
via the Enua cloud — to a charging-key idToken, and then runs the normal Authorize flow against your CSMS
using that idToken. If the CSMS accepts it, charging starts immediately.
sequenceDiagram
actor User
participant EV
participant CS as Enua Charging Station
participant CSMS as Your CSMS
User->>EV: Plug in cable
CS->>CS: Read EV identity, resolve to idToken
alt AutoCharge enabled and idToken resolved
CS->>CSMS: Authorize {idToken}
CSMS-->>CS: AuthorizeResponse {status}
alt Accepted
CS->>CS: Start charging (no NFC)
else not Accepted
CS->>User: Fall back to NFC
end
else disabled or not resolved
CS->>User: Fall back to NFC
end
From your CSMS's perspective this is a normal Authorize request followed by a transaction — the only
difference is that the identifier was derived from the vehicle rather than a presented card. The resulting
idToken uses the token type reported by the resolution step, defaulting to ISO14443.
AutoCharge is configured through the AutoCharge component (OCPP 2.0.1):
| Variable | Type | Description |
|---|---|---|
Enabled |
Boolean | Master switch. When false, no automatic Authorize is sent and the charger falls back to NFC. |
RequestHLC |
Boolean | Request High-Level Communication from EVs that need it to expose an identity. |
PollAddress |
Boolean | Actively solicit the EV's identity during connection. |
Permalock
Permalock keeps the charging cable permanently locked to the EVSE, so the connector is not released between
sessions. While Permalock is enabled, an UnlockConnector request will
not release the cable.
It is exposed through the Permalock component's Lock_type2 variable (OCPP 2.0.1), a ReadWrite Boolean —
see Supported Configuration Keys.
[
2,
"26d74e9b-92f0-4b64-9bad-ede2cd0da072",
"SetVariables",
{
"setVariableData": [
{
"attributeValue": "true",
"component": { "name": "Permalock" },
"variable": { "name": "Lock_type2" }
}
]
}
]