The OCPP
fault-testing engine
your CSMS team
is missing
One simulator engine for CSMS engineering and QA teams — describe a test in plain English, run it anywhere, and stop hand-editing OCPP messages one session at a time.

OCPP flow
- Authorize
- StartTransaction
- MeterValuesfaultretry ✓
- StopTransaction
Simulation
mode: active
Sound familiar?
One untested path.
A weekend of outages.
Charger faults rarely come from the happy path. They come from the edge case nobody could reproduce before release.
Fri 18:02
Firmware 4.2 rolls out to 300 chargers. It passed every manual check.
Sat 09:14
A 40-second network drop hits the depot.
Sat 09:15
214 chargers never reconnect. Queued meter readings are lost.
Sun
Drivers can’t start sessions. Billing no longer matches the energy delivered.
Mon 08:30
Root cause: reconnecting after an outage was never tested.
Not because nobody cared — because there was no way to test it.
How Echo works
Test against
real-world edge cases.
Generating scenario…
Try
Problem
You need more than a mock charger simulator.
The same gaps show up whether you're validating a fleet, a firmware build, or a CSMS release.
Faults only surface after deployment
There’s no way to reproduce real failures before a charger or CSMS release ships.
With Echo
50+ real-world failure scenarios
Fleet-scale load is never tested
A five-charger test looks fine. Then 1,000 chargers reconnect at once in production and the CSMS falls over.
With Echo
Simulate 1,000+ chargers under load
Every scenario is hand-built
MeterValues, sessions and edge cases get edited by hand for every test — then rebuilt from scratch for the next one.
With Echo
One sentence builds the scenario
Reproducing a prod incident is guesswork
A support ticket becomes a game of telephone — nobody can rebuild the exact OCPP sequence that caused it.
With Echo
Paste the logs, replay the exact behavior
Scenario library
50+ ways a charger can fail.
Already configured.
56scenarios · 7 categories
Every one is modelled on a failure that already happens in the field. Pick it, adjust it, run it against your CSMS.
Network
- Network interruption mid-session
- WebSocket drop during MeterValues
- Intermittent packet loss
+7 more
Power
- Power loss mid-transaction
- Brownout and voltage sag
- Power restore with stale session
+5 more
Suspicious sessions
- Cloned RFID used at two sites
- Zero-energy long session
- Energy above connector rating
+6 more
Firmware
- Firmware update fails mid-flash
- Corrupted image checksum
- Firmware download timeout
+5 more
Metering
- Meter drift on connector 2
- Missing MeterValues interval
- Out-of-order timestamps
+4 more
Authorization
- Authorize rejected for expired RFID
- Local auth list out of sync
- StartTransaction without Authorize
+5 more
Protocol & load
- Boot storm with 1000+ chargers
- Malformed OCPP frame
- Unknown action received
+3 more
Or describe your own
Adjust any scenario, or write a new one from scratch.
Integrations
Five ways
to run Echo.
One engine, five surfaces — pick whichever fits how your team already works.
Also works with
Staging / Sessions / #4812
Network interruption · Exicom Harmony ×10
OCPP 1.6J · started 14:32:10 · 1m 30s
Recovered
10/10
Max reconnect
46s
OCPP messages
1,284
Faults injected
1
Integrations
Five ways
to run Echo.
One engine, five surfaces — pick whichever fits how your team already works.
Web app
Write prompts, browse the scenario library and review replays — no install.
Staging / Sessions / #4812
Network interruption · Exicom Harmony ×10
OCPP 1.6J · started 14:32:10 · 1m 30s
Recovered
10/10
Max reconnect
46s
OCPP messages
1,284
Faults injected
1
Desktop app
macOS, Windows and Linux. Basic manual testing against a local CSMS — works offline.
Target CSMS
ws://localhost:9000/ocpp
Simulator
Manual mode · on this machine
Recent local runs
- Manual · Authorize + StartTransactionPASS
- Manual · MeterValues every 30sPASS
- Manual · RemoteStopTransactionFAIL
CLI / SDK
Run scenarios from your terminal or script them in TypeScript and Python.
Terminal
$ echo-cli run "Simulate a network interruption with Exicom Harmony chargers" ✓ scenario generated · network-interruption ✓ session #4812 · PASS 10/10 · max reconnect 46s
SDK · TypeScript
import { Echo } from "echo-sdk"; const echo = new Echo({ apiKey: process.env.ECHO_API_KEY }); const session = await echo.run("Simulate a network interruption with Exicom Harmony chargers"); session.verdict; // "PASS"
REST API
Create sessions, fetch reports and plug Echo into your own tooling.
Request
POST /v1/sessions { "prompt": "Simulate a network interruption with Exicom Harmony chargers", "chargers": 10, "protocol": "ocpp1.6j" }
Response · 201 Created
{
"id": "ses_4812",
"status": "running",
"report": "/v1/sessions/ses_4812/report"
}MCP server
Let Claude, ChatGPT, Gemini or any MCP client run Echo for you.
Also works with
Clients
The CSMS teams that are currently using Echo.












FAQ
Questions,
answered.
Something we didn’t cover? Join the waitlist and we’ll walk you through Echo when the private beta opens.
What is Echo?
Echo is an OCPP fault-testing engine for CSMS teams. Describe a test in plain English, and Echo generates the scenario, simulates the chargers and runs the session against your CSMS — then keeps the result so you can replay and share it.
Which OCPP versions does Echo support?
OCPP 1.6J (JSON over WebSocket) and OCPP 2.0.1.
Do I need real chargers to test?
No. Echo simulates chargers that connect to your CSMS just like real hardware, so you can run a single unit or a whole fleet without touching a physical charger.
What kinds of failures can I simulate?
Echo ships with 50+ pre-configured scenarios across network and power interruptions, suspicious sessions, firmware issues, metering, authorization and protocol load. Start from any of them, adjust it, or describe a new one from scratch.
Can I run Echo offline?
Yes, with limited capabilities. The desktop app for macOS, Windows and Linux supports basic manual testing against a local CSMS with no internet connection. Local runs stay on your machine and aren’t shared — AI prompts, the scenario library and team sharing need a connection.
How do I share results with my team?
Every online run is saved as a session with a step-by-step replay and a report. Share the session or report with your team, or file a Jira issue with the replay attached straight from a failed run.
Can I use Echo from Claude, ChatGPT or Gemini?
Yes. Echo ships as an MCP server, so any MCP-compatible assistant can build scenarios, run sessions and share reports. You can also use the web app, desktop app, CLI / SDK or REST API.
When can I get access?
Echo is preparing for a private beta. Join the waitlist and we'll send one email when the beta opens — no spam.
Get in touch
Have custom needs? We’re here to help.
India
+91 97870 01474
United Kingdom
+44 74034 56793