Manage charge points with OCPP 2.0.1: device model, variables, security profiles

domain: openchargealliance.org · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Establish the WebSocket connection from the charge point to the CSMS using the URL wss://{csms-host}/ocpp/{chargePointId}; negotiate the OCPP subprotocol by including 'ocpp2.0.1' in the WebSocket Sec-WebSocket-Protocol header.
  2. Select and configure a Security Profile before first connection: Profile 1 uses HTTP Basic Auth in the WebSocket handshake (unencrypted); Profile 2 adds TLS with server-side certificate; Profile 3 uses mutual TLS with client certificate — as of December 2025 OCA updates, Security Profile 2 is mandatory for Core profile certification.
  3. On BootNotification, the charge point sends its device model inventory; implement the GetVariables and SetVariables messages to allow the CSMS to read and write configuration variables in the component/variable hierarchy (e.g., Component: 'ChargingStation', Variable: 'AvailabilityState').
  4. Use the DeviceModel component tree to expose and configure all charge point capabilities: each Variable has a type (actual, target, minSet, maxSet), mutability (ReadOnly, WriteOnly, ReadWrite), and optionally a list of supported values — populate this accurately during certification testing.
  5. Implement the mandatory OCPP 2.0.1 Core feature profile actions: BootNotification, Heartbeat, StatusNotification, TransactionEvent (replacing Start/StopTransaction from 1.6), Authorize, and MeterValues; handle both request and response roles as applicable.
  6. Submit to OCA certification testing using the OCA-approved test tool and the updated 2025 Core profile test plan; ensure all mandatory variables are implemented and respond correctly to GetVariables queries.

Known gotchas

Related routes

Manage charge points via OCPP 1.6J
openchargealliance.org · 6 steps · unrated
Configure proactive charge-point diagnostics with the OCPP 2.0.1 Monitoring functional block (SetVariableMonitoring / NotifyMonitoringReport)
openchargealliance.org · 5 steps · unrated
Dispatch smart-charging power limits to an OCPP 2.0.1 charge point using SetChargingProfile
openchargealliance.org · 5 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans