Troubleshooting WebSocket connections

When a connection fails, the browser often cannot expose the exact handshake error for security reasons. That means the simulator can show the likely causes, but not always the precise one. This guide lists the common reasons a connection fails and what to try for each.

What the browser can and cannot tell you

For a failed WebSocket handshake, browsers typically surface only a generic error and an HTTP-like status at most. They do not reveal TLS-level details or the server’s rejection reason. Chargeflux.io is deliberately honest about this: it presents a checklist of likely causes rather than guessing a single answer.

Common causes and fixes

Incorrect URL

Check for typos, a missing path segment, or a stray space. The endpoint must start with wss:// and, in most CSMS conventions, include the station identity as the final path segment, for example wss://csms.example.com/ocpp/CF-DEMO-A7K2.

Station not registered

Many CSMS products only accept stations that are already registered. Add the station identity you are using to your CSMS, or change the identity in the simulator to one the CSMS knows. See getting started for where to set it.

Origin rejected

Browsers always send an Origin header. If your CSMS validates origins, allow https://chargeflux.io. See connect your CSMS for details.

Authentication unsupported

If your CSMS requires a custom Authorization or API-key header, or a client certificate, the browser cannot provide it. Use a method the browser supports (no auth, identity in the path, or a token in the query string) or wait for the hosted runtime on the roadmap.

TLS certificate invalid

The browser refuses to open a wss://connection if the server’s certificate is expired, self-signed or does not match the hostname. Open the same host over https:// in a browser tab to check the certificate.

Subprotocol rejected

The server must accept the ocpp1.6 subprotocol during the handshake. If it expects a different subprotocol string, the connection will not complete.

CSMS unavailable or network restriction

The endpoint may be down, or a firewall, VPN or corporate proxy on your network may block the connection. Try from a different network, and confirm the endpoint is reachable from the public internet.

Still stuck?

Use the simulator’s copyable diagnostic summary and send it with your feedback. Remember to remove any credentials or private OCPP data first.

Last reviewed June 2026 · Chargeflux.io