Virtual OCPP Charge Point
Rey is a virtual charging station you drive in your browser. Pick OCPP 1.6, 2.0.1 or 2.1 and point it at your own CSMS to test your backend with no hardware — or explore a full session against a built-in demo CSMS, zero setup.
Free · Runs in your browser · No install · Open source on GitHub ↗
Two ways to use it
🎬 Explore — demo CSMS
A built-in CSMS runs on the server for whichever version you pick (OCPP 1.6, 2.0.1 or 2.1), so you can drive a full session — boot, authorize, charge, stop — and inspect every frame with no backend of your own. The fastest way to see how OCPP behaves live.
🔌 Connect my CSMS
Enter your CSMS's wss:// URL (+ station id and Basic-auth password if needed) and Rey opens a real OCPP connection to your backend. Watch exactly how your CSMS handles a boot, an authorize, and a transaction — before any hardware is on site.
What you can test
- The boot handshake — does your CSMS return
Accepted, and set the heartbeat interval? - Authorization — how does it respond to an
idToken, and to a rejected one? - The transaction lifecycle —
StartTransaction→MeterValues→StopTransactionin 1.6, orTransactionEventStarted → Updated → Ended in 2.0.1/2.1. - CSMS-initiated commands — send a remote start, a
Reset, or aTriggerMessageand watch the station respond. - The device model — browse and edit the station's variables live, and see how
GetVariables/SetVariablesbehave (in 1.6, the flat configuration keys). - Certificate management (2.0.1/2.1) — the station generates a real key and CSR, the CSMS signs it, and you see the installed certificate on the charger. The OCPP cert lifecycle, with real crypto.
- The wire format — every message shown as its real OCPP-J array, so you can copy frames as test fixtures.
New to the protocol? Start with what OCPP is, then watch the message flow in the OCPP simulator (a passive walkthrough) — and come back here to test your own CSMS live. Rey is open source on GitHub.
Building a CSMS or charge-point firmware?
Rey helps you smoke-test it. The OCPP course takes you from reading frames to building the whole thing — the device model, the transaction engine, smart charging, and security profiles.
Frequently asked questions
What is a virtual charge point?
A virtual charge point (or charge-point emulator) is software that behaves like a physical EV charging station on the OCPP protocol, so you can test a CSMS or learn the message flow without any hardware. Rey is a browser-based one — you drive it in a tab and watch every OCPP-J frame.
Can I test my own CSMS with it?
Yes. Pick your OCPP version, switch to "Connect my CSMS", enter your CSMS's wss:// URL, a station id, and a Basic-auth password if it needs one, and Rey opens a real OCPP connection to your backend — boot, authorize, run a transaction, and see exactly how your CSMS responds. A relay presents the auth headers a browser can't set.
Do I need to install anything or wire up hardware?
No. Rey runs entirely in the browser. For a zero-setup look, the default "Explore" mode drives the station against a built-in demo CSMS — no backend of your own required.
Which OCPP versions does it support?
All three: OCPP 1.6 (1.6-J) — the largest install base — plus OCPP 2.0.1 and OCPP 2.1, all over OCPP-J on WebSocket. Pick the version before you connect; Rey is the one charger across versions, so each speaks its own real message set (StartTransaction/MeterValues/StopTransaction in 1.6, TransactionEvent in 2.0.1/2.1).
Can it do certificates or Plug & Charge?
It demonstrates the OCPP 2.0.1/2.1 certificate lifecycle for real: click "Request a certificate" and the station generates a genuine RSA key pair and CSR, the built-in CSMS signs it (acting as a mini-CA) and returns it over CertificateSigned, and Rey shows the installed certificate — subject, issuer, serial, validity, and SHA-256 fingerprint. That is the cert machinery security profiles 2/3 and ISO 15118 Plug & Charge rely on. It is not the ISO 15118 EV-to-charger handshake itself, which happens on a wire a browser tool cannot reach.
Is it open source?
Yes — the source is public on GitHub. It is a free teaching and testing tool, not a product. Contributions are welcome via pull request.
How is this different from the OCPP simulator on this site?
The OCPP simulator replays a canned message flow so you can learn the sequence passively. Rey is a live charge point you drive against a real or demo CSMS over an actual WebSocket — use the simulator to learn the flow, use Rey to test your own backend.