Author Archives: Michael Zillgith

Upcoming Release: IEC 61850 Server Simulator

We are thrilled to announce that in just a few weeks, MZ automation will be launching an innovative new tool for the IEC 61850 protocol: the IEC 61850 Server Simulator. This powerful tool is designed to streamline testing and development processes in environments that require precise control over Intelligent Electronic Device (IED) operations.

What Makes the IEC 61850 Server Simulator Stand Out?

  • Intuitive User Interface: Navigating the complexities of IEC 61850 has never been easier. The simulator features an intuitive graphical user interface (GUI) that simplifies the simulation of IEDs as servers. Whether you’re loading CID, ICD, SCD, or IID files, the GUI offers seamless management of Data Sets, Control Blocks, Data Objects, and more.
  • Dynamic Control and Monitoring: With real-time insights into server operations, the simulator gives you full control over simulations. You can make dynamic changes to data attributes and server parameters for precise testing and development, while easily monitoring connected clients, subscribed Report Controls, and managing server configurations.
  • Enhanced Testing Capabilities: The simulator allows you to streamline testing processes, from automating data attributes to managing write access configurations. Use the Group View feature for efficient monitoring of selected data attributes, and update DAI (data attribute information) in real-time using MMS communication with the Predefined Values Editor.
  • Comprehensive Server Management: Manage non-client IED servers with ease using the simulator’s robust Server Management interface. Set local IP addresses, manage TCP ports, and configure TLS for enhanced security. The Server Configuration Window enables optimization of server settings, including report buffer sizes, for greater control over server operations.

Why Choose MZ automation’s IEC 61850 Server Simulator?

At MZ automation GmbH, we are committed to providing easy-to-use, intuitive tools that help engineers succeed. The IEC 61850 Server Simulator is designed to support your company’s testing and development goals by making your processes more efficient and manageable. Whether you are ensuring protocol compliance, testing new configurations, or optimizing system performance, this simulator is your trusted companion.

Explore the capabilities of this powerful tool and see how it can enhance your operations. Stay tuned for the official release!

Introducing the IEC61850 ICD Designer – Now Available

We are excited to announce the release of the 61850 ICD Designer, the latest tool from MZ automation GmbH. This powerful software is designed to simplify the creation and management of Intelligent Electronic Device (IED) models, ensuring full compliance with the IEC 61850 standard.

Why Choose the 61850 ICD Designer?

Our 61850 ICD Designer has been crafted with the needs of modern engineers and technicians in mind. Its robust features and intuitive interface offer unmatched efficiency and reliability for all your IED configuration tasks.

Key Features and Benefits:

  • User-Friendly Interface: The tool’s modern, intuitive interface simplifies navigation and configuration. With drag-and-drop functionality, setting up your IED models is quick and seamless, reducing both time and effort.
  • Comprehensive File Management: Easily create, modify, and extend ICD and other SCL files. This flexibility gives you the tools needed to meet any project challenge.
  • Enhanced Data Type Template Management: Create and manage data type templates within the IEC61850 protocol. The tool supports adding and editing templates based on the NSD document version and revision, making it highly adaptable for various projects.
  • Advanced Error and Warning Messaging: The error and warning messaging system identifies potential issues, ensuring your models stay fully compliant with IEC61850 standards and minimizing the risk of costly mistakes.

Optimize Your IED Configuration Process

Built for both efficiency and reliability, the 61850 ICD Designer is the ideal tool for professionals looking to streamline their IED configuration processes. Whether you’re starting a new project or managing existing systems, this tool provides the advanced features and intuitive interface needed for success.

To learn more about the 61850 ICD Designer and how it can transform your operations, visit our company website.

Introducing IEC 61850 Library V1.6.0 – Now Available

We’re excited to announce the release of IEC 61850 Library V1.6.0, which brings several key improvements and new features aimed at enhancing functionality and security. This version has been developed to meet the latest standards, ensuring optimal performance and compliance.

Key Enhancements:

  • Reworked array handling: Every array element is now a separate ModelNode instance.
  • New access control features: Supporting IEC 62351-8 compliant Role-Based Access Control (RBAC).
  • TLS 1.3 support: Available when compiled with mbedtls 3.6, while mbedtls 2.28 can still be used.

New Features:

  • IED Server:
    • Additional callbacks for controlling external access to the data model (for RBAC implementation).
    • Write access handler for array elements (LIB61850-437).
    • New function: IedServer_handleWriteAccessForDataObject.
    • Retrieve the timestamp of received commands with ControlAction_getT (LIB61850-422).
    • Configuration options to make RCB elements read-only (LIB61850-404).
  • IED Client:
    • Added function: IedClientError_toString.
    • New asynchronous functions for handling RCB values: IedConnection_setRCBValuesAsync and IedConnection_getRCBValuesAsync (LIB61850-334).
  • Java Tools: Now support timestamp Val elements.
  • .NET API: Added SetReportSetting and GetReportSetting functions to IedServerConfig (LIB61850-404).

Security Enhancements:

  • TLS 1.3: Improved support, ensuring secure communication channels.

Additional Beta Features:

  • Support for R-GOOSE and R-SV.
  • SNTP client code.

Please note that IEC 61850 Library V1.6.0 is not backward compatible with previous versions. If you’re upgrading, you’ll need to regenerate static model code and adapt dynamically generated data models for the new array element structure.

If you prefer not to publish your own source code due to GPLv3 licensing requirements, a commercial license is available. Contact us via our company website for pricing and further details.

For a detailed overview of all the new features, changes, and technical information, visit the official release notes on our company website.

New Release 1.5.1 of libiec61850

This is a new maintenance release for the 1.5 branch.

New features and improvements

  • added server side ReportControlBlock events and value access functions
  • added functions Timestamp_fromMmsValue and Quality_toMmsValue
  • made server report reservation compatible with Ed. 2.1 (LIB61850-293)
  • new functions MmsValue_getOctetStringOctet and MmsValue_setOctetStringOctet
  • IedConnection: added function IedConnection_getDataSetDirectoryAsync
  • IedConnection: added function IedConnection_createDataSetAsync
  • IedConnection: added new function IedConnection_deleteDataSetAsync
  • IedServer instance can be restarted
  • new function IedConnection_setTimeQuality – Added support to set time quality for client generated time stamps (LIB61850-280)
  • .NET API: added wrapper for IedConnection_setFile and IedConnection_setFilestoreBasepath (LIB61850-258)
  • IED server: improved accuracy of integrity report intervals
  • .NET API: GooseSubscriber – added GetGoId, GetGoCbRef, GetFataSet methods
  • IED server: add support for SMV control blocks (“SMVC”) in config file parser
  • .NET API: added support for server integrated GOOSE publisher
  • MacOS thread layer: replaced semaphore by mutex

Fixed bugs and vulnerabilities

  • fixed vulnerability of GOOSE subscriber to malformed messages (LIB61850-304)
  • fixed – Bug in presentation layer parser can cause infinite loop (LIB61850-302)
  • .NET API: fix problem with garbage collected delegates for async client functions (LIB61850-301)
  • fixed compilation problem with option CONFIG_MMS_THREADLESS_STACK
  • fixed – TPKT error when connection is interrupted during message reception (LIB61850-299)
  • handle presentation layer data messages with transfer-syntax-name
  • fixed – UBRB: library can’t work at the same time with URCB with preconfigured client and URCB without preconfigured client (LIB61850-292)(#355)
  • fix – server crashes when presentation message has no user data (LIB61850-291)(#368)
  • MMS server: query log service returns services error instead of reject message when log does not exist (LIB61850-290)
  • fixed – IED server: crash during invalid control access – FC=CO on invalid layer (LIB61850-282)
  • fixed – Server: ctlNum and origin(status) are not updated automatically by the server when APC command is received (LIB61850-277)
  • MMS server: fixed problem with continue-after in some get-name-list handling cases
  • fixed – IedConnection: outstanding call on IEC layer is not release under some circumstances (LIB61850-270, LIB61850-251)
  • fixed bug in IsoServer that caused memory violation when the server was restarted while a client was connected
  • IED client: send RptEna as first element when RCB is to be disabled
  • fixed problem with double free of TLS configuration structure (LIB61850-254)
  • .NET API: Fixed problem with AccessViolationException in GooseControlBlock.GetDstAddress
  • MMS server: fixed data race bug in transmitBuffer handling (#338)
  • IED server: fixed crash when IEDName+LDInst is too long
  • .NET API: fixed bug – server write access handler causes “CallbackOnCollectedDelegate” exception (LIB61850-236)
  • MMS server: fixed potential crash when client connection closed during file upload (LIB61850-2)
  • MMS client: fixed problem – doesn’t close file when the setFile (obtainFile) service is interrupted e.g. due to connection loss (LIB61850-230)
  • Ethernet Socket (Windows): fixed bug and added workaround for problem on Windows (most GOOSE/SV messages are not received when waiting with WaitForMultipleObjects – observed with winpcap 4.1.3 and Windows 10
  • fixed problem in BER integer decoder (problem with GOOSE fixed length message decoding)
  • .NET API: Fixed memory release problem in method ModelNode.GetObjectReference
  • IED server: fixed bug in GoCBEventHandler
  • fixed problem in BSD ethernet layer (#328)
  • fixed bug in cmake file for BSD
  • fixed compilation problem when compiling without GOOSE support (#325)
  • IED server: control handling – fixed problem in test flag handling
  • IED server: For SBOes check test flag match when accepting operate (sSBOes8)
  • IED server: Reject Cancel/SBOw in WaitForChange state – fixed problem with test case sCtl26

Release 1.5.0

The new release 1.5.0 includes a lot of small improvements and bug fixes to make it compatible with latest test descriptions. The most notable new feature is the server side support for service tracking . This release is mostly compatible with version 1.4. It can and should be used to update existing project using version 1.5.

IEC 60870-5-101/104 Test Client

The new version 1.2.0 of our IEC 60870-5-101/104 Test Client tool is available.

It is an easy to use GUI client tool with a lot of features useful for testing. The professional edition provides CS 104 TLS support, CS 101 balanced and unbalanced mode, telegram details view, file transfer in monitoring and control directions, message logging, filtering, and a lot of other features.

The freeware and professional editions are available here.

New version 1.4.0 of libiec61850

This new feature release contains a lot of new features and improvements for client and server side. The most important new feature is the new asynchronous client API. This allows the user to send multiple requests at the same time using a single thread. There are also new feature for the server side control model handling. Please be aware that the API signature for the server side control models slightly changes. Be sure to update your code when migrating to version 1.4.0.

TASE.2/ICCP protocol library version 2.0.4

MZ Automation released a new version (2.0.4) of the TASE.2/ICCP protocol library. This version comes with support for active and passive TCP endpoints with dual roles (both client and server roles using the same TCP connection). All library functions are available from the C, C#/.NET, and the new Java API. More information about the library can be found here.

New version 1.3.3 of libiec61850

This new version contains a lot of stability improvements, bug fixes, and improvements in the server side reporting module. Changes in the reporting module include support for segmented reports, improved ResvTms handling, support for pre-configured report subscriptions with ClientLN, and other changes to be compatible with the latest test procedure updates).