The Siemens Open Library was developed by DMC, Inc. over several years. Through a joint collaboration with Siemens Industry, DMC documented the library and released it as an Open Source Library open for anyone to use and distribute. The Library is Open Source and will allow for users to contribute content to help enhance the overall availability of functionality to the greater Siemens User Community.

This library is targeted at S7-1200 and S7-1500 applications using a Siemens Comfort Panel or WinCC Advanced RT. Special changes have been made to accommodate S7-300 and S7-400 processors. The Version of Portal used for initial development was V13 SP1, however, additional updates will continue to be made.

Table of Contents

  1. Library Contents
  2. Library Overview
  3. Latest Versions
  4. Contributing to the Library & Reporting Issues
  5. Version History
  6. License

1. Library Contents

The Siemens Open Library contains many components to assist with development. The library contains the following items:

  1. Documentation for all objects with examples of configuration
  2. Example project to demonstrate the use of all library objects
  3. Library Objects
    1. Function Block for PLC functionality
    2. HMI User Defined Type for quick mapping of many variables to the HMI
    3. Error User Defined Type for automatic generation of multiple alarm messages
    4. HMI Icon Faceplate for an overview of object status
    5. HMI Pop-up Faceplate for detailed control and object status
  4. Excel Macro used to automatically generate alarms

2. Library Overview

This section outlines all objects that the library currently contains.

Motor Control

G Series VFD Control – fbVFD_GSeries

The G Series VFD Control Function Block is utilized for use of Siemens G Series VFD or Micromaster VFDs using Standard Telegram 1. This block does not use a technology object. This allows for a lower CPU requirement for each drive. It utilizes Standard Telegram 1 and has been tested on a G120, however, it will function with any drive using Standard Telegram 1 on either Profibus or Profinet.

Analog VFD Control – fbVFD_Analog

The fbVFD_Analog Motor Control Function Block is utilized for use of a VFD controlled with digital and analog signals. The error UDT is kept identical to the GSeries error UDT, however, some error outputs are not utilized by this block.

Digital Single Speed Motor – fbMotor_Reversing

The Reversing Motor Control Function Block is utilized for motors started and stopped using digital outputs. This block functions with single direction or reversing motors.

Valve Control

Two State Solenoid Valve – fbValve_Solenoid

This library item is to be utilized with two state solenoid valve applications. It can be used for spring close, spring open, or double acting solenoids.

Analog Valve – fbValve_Analog

This library item is to be utilized with a valve controlled using an analog output. This block will work with any valve that is controlled through an analog output from the PLC.


Analog Input with Scaling and Alarms – fbIO_AnalogInput

This library object scales analog inputs and provides setups for alarms.

Analog Output with Scaling – fbIO_AnalogOutput

This library object scales process values to be used for Analog Outputs.


System Control

This library object is a User Defined Type only that is used to provide mode information to other Library Objects, and is controlled by HMI Faceplates.

Interlock Function Block – fbInterlock

This library object is used to provide operator information for multiple values that are interlocking a process. It has inputs for items that may be interlocking a process, and informs the operator of what interlocks are preventing operation via an HMI faceplate.

PID Interface – fbPID_CompactInterface

The S7-1200 and S7-1500 provide PID Technology objects that are best practices for use, therefore this would not replace those blocks, but would provide an interface to the technology object on the HMI.

The interface will allow for modification of the PID loop and for manual override of the output from the HMI.

Unlike other library objects that are fully encapsulated, many of the outputs of this block will need to be mapped to the PID_Compact block.

Standard Alarm Interface – fbAlarmWarning

The Standard Alarm Interface provides an easy way to setup additional alarms.

3. Latest Versions

Open Library

VersionDateAuthorSoftware VersionCommentsDownload Link
2.12018-06-26DMCV14 SP1
  • Created digital input faceplates and pop ups for comfort and pro in standard library
  • Updated the manual mode/output value setpoint in PID_Compact function block to have manual mode output set point and manual mode PID input setpoint
  • Fixed HMI output value issue in Flow Totalizer
  • Motor soft starter fixed enableOn bug and added manual and auto states to HMI
  • Analog Output corrected HMI output to designate the Auto value
  • Integrated latest MODBUS library 2.3.4 from here (~40MB)

WinCC OA Open Library

VersionDateAuthorSoftware VersionCommentsDownload Link
Alpha2017-06-26DMCWinCC OA 3.15
  • Alpha release for use with v1.4 of Siemens Open Library for either V13 SP1 or V14
  • Functionality against actual PLC objects not yet tested
  • PID Graph not yet functional (~4MB)

4. Contributing to the Library & Reporting Issues

The Siemens Open Library is an open source library, and contributions, improvements, and changes are welcome from anyone who has improved or added to the library. Please submit any custom objects or reports of issues to DMC by emailing them to [email protected].

Library objects may not be added immediately, but will be added as additional versions of the library are released.

5. Version History

Looking for the latest version?

VersionDateAuthorSoftware VersionCommentsDownload Link
2.02017-11-02DMCV14 SP1
  • Added SiVArc properties to all WinCC Comfort/Advanced faceplates
  • Added SiVArc screen rules and master screen copies to the “Master Copies”
  • Updated example project to have SiVarc functionality and added a HMI to the example project to show the auto-generation.
  • Update all 1500 blocks to use HW addresses
  • All supported blocks compatible with 1500 and 1200
    • No more separate types for 1200
  • Separated 300/400 blocks into a separate library (available in previous versions)
  • Added new FIFO blocks, including prioritized FIFO with optimized sorting
  • Replaced WinCC Professional popup faceplates with screens which will use tag prefixed UDT fields for processing. Tag prefix will be assigned to the parent Screen Window that loads screen.
  • Added Flow Totalizer control which combines an Analog Input with an Integrator to output the Integral value over a given time window.
  • Minor bug fixes (~38MB)
1.62017-07-24DMCV14 SP1
  • Added User submitted Modbus RTU/TCP Library to Master Copies
    • Credit and thanks to Ola Bjørnli
  • Ported Modbus library to V14 SP1 – Alpha release
  • Added OBs with built-in diagnostic messaging to Master Copies
  • Updated code base for many blocks with improved V14 SP1 features (~34MB)
1.52017-06-28DMCV14 SP1
  • Added Faceplates for WinCC Professional
  • Updated PID to utilize Data Block Parametrization
  • Fixed bug with fcSwapWords
  • Updated Example Project (~35MB)
1.42017-02-02DMCV13 SP1 Update 8
  • Added dynamic fonts to all HMI faceplates for variable size HMIs
  • Updates to several Supplementary blocks
  • Added official blocks for SIMOCODE and SIRIUS Soft Starter
  • Resolved bug in fbIO_AnalogInput when using RTDs
  • Fixed fbErrorScroller issue in use with S7-1200 CPUs (~26MB)
  • BETA – First release for Portal V14
  • This version has not been fully tested or optimized for V14 yet
  • Expect further testing and V14 optimizations in the next version (~15MB)
1.32016-10-13DMCV13 SP1 Update 8
  • Fixed bug in S7-1200 PLC version of fbVFD_GSeries that hindered Profi communication
  • Added several new Supplementary blocks, including support for the SiwarexWP321 module
  • Extended support of most Supplementary blocks to the S7-1200 platform (~25MB)
1.22016-08-24DMCV13 SP1 Update 8
  • Updated Alarm Generation tool to resolve tag errors with odd sized data blocks
  • Branched GSeries VFD for 1500 and 1200 due to issues with low level command availability on the 1200.
  • Added in the ‘Supplementary Blocks’ which are user submitted blocks. (~21MB)
1.12016-06-21DMCV13 SP1 Update 8
  • Resolved display and functionality bugs identified in fbIO_AnalogInput, fbIO_AnalogOutput, fbMotor_Reversing, fbValve_Analog, fbVFD_Analog, fbInterlock, and fbPID_CompactInterface (~18MB)
1.02016-05-23DMCV13 SP1 Update 8
  • Initial Release (~17MB)

Sign up here to receive an email when updates are released.

6. License

The Library is released under the following license:

Copyright (c) 2017 DMC, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.


Sign up to receive Siemens Open Library updates via email:

  • Rodrigo Victor

    How can i install?

    • Otto Gottlieb

      Hi Rodrigo,

      After you download the zipped folder you can extract it and find the Open Library VXX.zalXX file in the “2_Library” folder. When you open a project in TIA Portal you should go to the top navigation and select Options -> Global Libraries -> Retrieve Library…. Select the .zalXX file from the download and select a target directory. This will automatically open the Library in TIA Portal Global Libraries.


  • Trevor Garvey

    Is there any sample projects with WinCC Advanced or Comfort so I can view the faceplates?

    • Johnathan Sullivan

      The sample project as part of the download has an example of WinCC Comfort. Additionally the documentation goes over the faceplates.

  • Evangelos Arkalis

    As I can see in Devices Function Blocks, all fcHMIbit calls have both bInToggle and bInLatch inputs to false, the result is the output bPLC is always FALSE. Is this correct?

  • Ed Finley

    I put my email address in, and it tells me it is an invalid email???

  • René Kramer

    I try to open the Example Project V2.0 from TIA V15 but i get an error that optional package SiVarc is missing….
    Is there a quick fix for this?

  • Bellahcene Oussama

    invalid mail?

  • Kees Bruinsma

    Is it posibble to make a smaple without smartdrive, i do not have this software. I have TiaPortal V14 SP1 Step 7 prof and Wincc advanced
    maybe someone can make a sample project
    whitout wincc proffesional and withoud starter items.