Source code library

Source Code Library (libIEC61850)

The IEC 61850 source code library allows a fast and cost efficient implementation of the IEC 61850 protocols (MMS, GOOSE, Sampled Values) into devices and applications. The APIs are designed to be very easy to use. The basic library is written in C (C99 compliant to provide maximum portability). Due to its hardware and platform independent design it can easily deployed on any platform.

Technical Properties

  • Souce code in C99
  • Tested and certified
  • MMS client/server
  • GOOSE publisher/subscriber
  • SV (Sampled Values) publisher/subscriber
  • C#/.NET wrapper
  • Compatible with Edition 1 and Edition 2 of the standard.
  • dynamic data model creation
  • object-oriented design in pure C
  • Platform abstraction layer allows for easy adaptation to new platforms and operating systems
  • Drivers for Linux/ucLinux, Windows, and MacOS/BSD
  • Tested on x86/x64, Coldfire, ARM 7/9, ARM Cortex-A/Cortex-M7, PowerPC, MIPS
  • Multiple threading options for server implementation (multi-threaded, single-threaded, non-threaded)
  • field proven and certified devices available
  • configurable generation of server data models from SCL/CID file at runtime with DataModelFactory (commercial version only)

IEC 61850 protocol features

  • MMS client/server, GOOSE (IEC 61850-8-1)
  • Sampled Values (SV - IEC 61850-9-2)
  • Support for buffered and unbuffered reports
  • Online report control block configuration
  • Data access service (get data, set data)
  • online data model discovery and browsing
  • all data set services (get values, set values, browse)
  • dynamic data set services (create and delete)
  • log service
    • flexible API to connect custom data bases
    • comes with sqlite implementation
  • MMS file services (browse, get file, set file, delete/rename file)
    • download COMTRADE files
    • upload firmware or configuration files
  • Setting group handling
  • GOOSE and SV control block handling
  • TLS support

C#/.NET component

The C# library allows to create a managed DLL component that can easily be deployed in .NET applications. It is a wrapper of the C library. It can be used to be integrated into GUI applications, SCADA systems ...

  • Compatible with Microsoft .NET framework and Mono
  • Runs on Windows, Linux and other platforms supported by .NET and Mono
  • Very easy to use API
  • Support for MMS client/server
  • Support for GOOSE/SV subscribers

Applications

  • Communications in Substations (MMS/GOOSE/SV)
  • Communications for Wind Power Plants (IEC 61400-25)
  • Communications for Decentralized Energy Resources (DER - IEC 61850-420)
  • Intelligent Electronic Devices (IED)
  • Measurement Devices
  • SCADA Systems
  • Monitoring
  • Test systems
Platform independent source code library

Open source and Commercial License available

For our source code libraries we provide a dual-license model. You can freely use the library for testing, evaluation, educational purposes and open-source projects under the terms of the GPLv3 license. For commercial projects you can purchase an easy-to-use and affordable commercial license.

You can download the source code on our project homepage or on github.

Request a quote