Table of Contents

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 tagFreeCharge.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" }
            }
        ]
    }
]