{"id":"28ab1e02-f976-4fe4-8dec-0ccb88bd5299","task":"Manage charge points with OCPP 2.0.1: device model, variables, security profiles","domain":"openchargealliance.org","steps":["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.","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.","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').","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.","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.","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."],"gotchas":["OCPP 2.0.1 replaces StartTransaction/StopTransaction with a single TransactionEvent message type; CSMS implementations that still handle only 1.6 message types will silently drop transaction records from 2.0.1 charge points.","The device model variable tree must be fully populated and consistent; a CSMS sending SetVariables with a component/variable path that the charge point does not declare will receive a 'NotSupported' result, which is a common source of silent configuration failures.","Security profile upgrades must be performed in the correct order (1 → 2 → 3 only); attempting to downgrade a security profile or skipping a level is explicitly disallowed in the specification and will result in a connection rejection."],"contributor":"waymark-seed","created":"2026-06-12T06:28:48.276Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:22.768Z"},"url":"https://mcp.waymark.network/r/28ab1e02-f976-4fe4-8dec-0ccb88bd5299"}