Home/Blog/OCPP 1.6 Remote Operations - Controlling Chargers from the Cloud
January 13, 2026
8 min read
3 views
🇺🇸 English

OCPP 1.6 Remote Operations - Controlling Chargers from the Cloud

How to remotely start/stop sessions, unlock connectors, and change configurations on OCPP 1.6 chargers. with flow diagrams and practical tips.

OCPPEV ChargingProtocolWebSocketIoT
Published in Technology
OCPP 1.6 Remote Operations - Controlling Chargers from the Cloud

OCPP 1.6 Remote Operations. Controlling Chargers from the Cloud

Everything so far has been messages the charger sends to the backend. But OCPP is bidirectional. the Central System can push commands down to the charger too. This is where fleet management actually becomes useful.


RemoteStartTransaction

This is how a mobile app starts a charge. The user taps "Start" in the app, the app hits your API, and your backend tells the charger to go:

mermaid
Rendering diagram...

You must include an idTag. every session needs an identity for billing. The connectorId is optional but you should always set it; otherwise the charger picks whichever connector it feels like, which confuses users.

One gotcha that catches every new integrator at least once: some chargers require the cable to be plugged in before they'll accept a RemoteStart. Others accept it and wait for the cable. This is vendor-specific and there's nothing in the spec that resolves it. Always test with real hardware.


RemoteStopTransaction

The backend tells the charger to end a session:

mermaid
Rendering diagram...

Handle rejection gracefully. The charger might have already stopped on its own, or the transaction ID might not match anything active. Your app needs a fallback that doesn't leave the user staring at a spinner.


UnlockConnector

Cables get stuck. It happens more often than you'd think. cold weather, worn locking mechanisms, users who yank at the wrong angle. Operators need a way to release it remotely:

mermaid
Rendering diagram...

If there's an active session on that connector, the charger typically stops the transaction first, then unlocks. Not all chargers support remote unlock. some have permanently locked cables by design.


ChangeConfiguration

The Swiss Army knife of remote management. You can change almost any charger setting over the air:

json
{"key": "HeartbeatInterval", "value": "60"}

Common keys:

KeyWhat it does
HeartbeatIntervalHeartbeat frequency in seconds
MeterValueSampleIntervalHow often MeterValues are sent during a charge
ConnectionTimeOutWait time for auth after plug-in
LocalPreAuthorizeEnable offline auth with local list
StopTransactionOnEVSideDisconnectAuto-stop when cable pulled
UnlockConnectorOnEVSideDisconnectAuto-unlock when cable pulled

Responses: Accepted, RebootRequired, NotSupported, Rejected.

mermaid
Rendering diagram...

The thing to know about ChangeConfiguration: the supported keys are vendor-specific. The spec defines a list of standard keys, but every charger manufacturer adds their own. If you're building a multi-vendor CSMS, expect to maintain a per-vendor configuration map. There's no getting around it.


Other useful commands

A few more worth knowing:

  • GetConfiguration: ask the charger for its current settings. Returns all keys and values. Invaluable for debugging.
  • Reset: force a soft or hard restart. Use with extreme caution on production chargers.
  • ClearCache: clear the local authorization cache.
  • TriggerMessage: poke the charger to send a specific message immediately (e.g., "send me your current status right now").

Remote operations are what turn OCPP from a logging protocol into an actual fleet management tool. Without them you can observe chargers; with them you can control them.

Last updated: July 2, 2026

Get notified of new posts

No spam, unsubscribe anytime.