StationCore — IEC 61850 MMS client SDK
Bring up to 200 IEDs into your master station or gateway with a few lines per device.
StationCore is the client half of the family: the component that connects to IEDs and pulls their data into a substation gateway, a master station or an edge controller. Starting a report subscription takes no more than five lines of code, and each connected device can run in its own worker thread so one slow IED does not stall the rest.
Built for integration work, not for demos
The API wraps the operation layer rather than exposing MMS verbatim, so the usual tasks — connect, enumerate, subscribe, write a setpoint, read a file — are short. Parameters can be passed as strings or as strongly typed objects, depending on how much compile-time checking your codebase wants.
Device directories come from either an imported model or from automatic communication with the live device. In practice teams import the CID during engineering and switch to discovery during commissioning, and the same API serves both.
- One worker thread per IED; operations on different devices do not block each other
- Report control blocks, setting groups, logs, files and controls available from the same client object
- Automatic dump of the integration information for handover documentation
Where it fits
Typical deployments are substation communication gateways, protocol conversion units, edge controllers and master-station front ends that must speak 61850 northbound or southbound. Where the same box also has to talk IEC 60870-5-104 to a control centre, pair it with the 101/103/104 package — both share the same event and point-mapping conventions, which keeps the point table single-sourced.
Client-side operation coverage
| Operation area | Coverage |
|---|---|
| Server, logical device and logical node directory reads | Supported |
| Association, abort, release | Supported |
| Data reads and writes, data directory and definition | Supported |
| Data sets — read, write, create, delete, directory | Supported |
| Reporting — buffered and unbuffered, dchg / qchg / dupd | Supported |
| Logging — control block, query by time and entry | Supported |
| Control — select, select-with-value, cancel, execute, termination | Supported |
| Setting groups — select, write, confirm, read | Supported |
| File transfer — read, write, delete, attributes | Supported |
| GOOSE subscription and publication | Supported |
| Time synchronisation — SNTP server and client | Supported |
Same service surface as the IED-side library, from the opposite role.
Frequently asked
How many devices can one process handle?
The published capacity is not less than 200 IEDs with not less than 10,000 data attributes per IED. Because each device runs in its own thread, the practical limit is host resources rather than protocol state.
Do we have to hand-write the point table?
No. You can import the station model, or let the client build the directory by communicating with the devices. Integration information can be exported to a file for documentation.
Does it work with third-party IEDs?
Yes — the client is tested against IEDs from multiple vendors. Where a device deviates from the standard, our conformance test tools can produce a clause-level report you can take to the vendor.
Related reading
Replacing libiec61850 without rewriting your device
When an open-source IEC 61850 stack no longer fits — licensing, non-Linux targets, Edition 2 depth, conformance evidence…
IEC 61850 Edition 1 vs Edition 2: read the ICD before you argue
Most edition arguments are settled by the device's own SCL file. How to read version, revision and the Services block, w…
IEC 61850 MMS client in C: the five steps, and where people get stuck
A working MMS client is five steps: parse the model, associate, browse, enable reporting, handle indications. Where each…
Related
IEC 60870-5-101/103/104 SDK
One code base for serial telecontrol, protection information and TCP/IP SCADA links — plus the tester that ships with it.
Protocol Analyzer
When a channel "occasionally drops a point", this is the tool that tells you which side did it.
Ask about StationCore
Tell us the platform, the protocols and the acceptance criteria. We will answer with what the licence covers and what the integration effort looks like — not with a brochure.