Ring Normal D4105 03:00 HQ authority: held TSGB Control Suite · deterministic 4400 Hz / 20 Hz SCADA

Control link to the market

The wire between this control plane and the EuroRing marketplace. Control publishes the capacity it may carry; the market matches within it; control reads the cleared flows and carries them.

Link status

Connected https://euroring.twinscrollgridbalancer.co.uk

Last contact2026-08-08 01:59:56Z
Capacity publishes10006
Last delivery tick109450
Ring loading (market)0.0%
Fail-safe watchdog

The market runs a circuit breaker: if the control plane stops confirming capacity for more than 30 seconds, the market auto-halts trading — it will never trade firm capacity the control plane can't confirm. This link publishes every 5 seconds, comfortably inside that window, and the market resumes automatically when the link recovers.

The coupling

EuroRing never dispatches — the market's matched trades are the flow schedule.

1 · Publish capacity

POST /api/v1/capacity — the firm-tradable ceiling per link. The market can only tighten it, never oversell.

2 · Market matches

Nations trade within the published ceiling; price-time priority, never-oversold.

3 · Read the schedule

GET /api/v1/schedule & /flows — the cleared flows to carry, and live carriage.

4 · Report back

POST /api/v1/events & /metering — incidents and metered delivery.

Enable the live link

Mint a control-scoped API key in the market's admin console, then configure:

ControlLink:MarketBaseUrl = http://localhost:5200
ControlLink:ApiKey        = erk_...

Set via appsettings.json, environment variables (ControlLink__MarketBaseUrl), or --ControlLink:MarketBaseUrl on the command line. Until then the estate runs self-contained — the demonstration works with or without the live market.