Siogeen logoSiogeen IoddCom

a generic interface for IO-Link devices

simple and fast access to IO-Link devices using Python, Octave or Matlab
on PC or Raspberry-PI


We are a company with the aim to provide a fast, easy and a simple way to connect to IO-Link devices and access them full featured without effort by a programming/scripting language like Python or Matlab out of the box. It is designed for configuration, testing, analysis, production, data recording and many more.

A special feature is the independent layering of the hardware. Currently PC and Raspberry-PI are supported as hosts.
As IO-Link Masters TMG based USB boxes (most on the market) and Ethernet-capable TMG-based masters are supported. See list of Supported Systems below. Balluff-Masters are supported additionally with its integrated web-server functions. If some master hardware is missing or you have your own, we can also integrate. Please feel free to send us a request.
IO-Link devices can be accessed at any level of abstraction, from raw to high level IODD device description access.

See the Use cases and Features for more details and our Getting started as an example. Please don't hesitate to ask for a demo.

Use cases

The Siogeen IoddCom is designed for various use cases for best working experience with IO-Link devices, simple usage and time saving thus both saving costs and offering time for the real tasks.


Out of the box

Communicate to IO-Link devices out of the box from most commonly used scripting/programming languages like Python or Matlab.



Inspect all data types, variables, process data and events available by the device description (IODD) at various detail levels.



Complex data types like arrays and records can be accessed in an easy and intuitive way.


Evaluation mode

Execute intuitive even more simplified scripting like text for reading and writing of device variables.


Value naming

All data types are supported and can be read and written by their names or values depending on the needs.


Error handling

Use exception handling or last error checking at your need...


Error analysis and Debugging

Investigate into errors of the connected IO-Link devices sniffing like. See and log the data at your needed abstraction level.


Multi device environments

Connect to specific devices by its name or tag and also to multiple devices to do mass device configuration and/or testing.


Connection manager

An integrated connection manager allows overview of connected devices and disconnecting unused devices.

Siogeen IoddCom features

The Siogeen IoddCom is a universal interface for IO-Link devices. It is easy to integrate and available for various programming languages, like Python and Matlab. Derive native and complex data types and manage variable access with only the use of the belonging IODD-file. Automatically connect with devices or just simulate them and start coding. Common use cases are testing, logging, analysing, scripting, configuration, production and development of IO-Link devices.


Easy access

for variables due to their names or IDs as specified at the IODD or via indices and sub indices


Stream activity

stream the whole device activity down to a binary level


Unified implementations

for various programming languages like Python, Matlab .... others on request


Longtime support

regular version updates, on track with the IO-Link standard


Individual development

development of customer features (languages, drivers, ...)


Full documentation

extensive documentation with use case examples


Simulate devices

simulate your devices via IODD-files


Snapshots + Data Storage

store and load device configurations (coming soon)


Full Standard support

Support for variables, system commands, events, process data...

Supported Systems

Supported operating systems, IO-Link masters and programming languages.



Windows, Linux, Raspberry-Pi and macOS**



TMG and all TMG-based USB-masters*,
all TMG-based Ethernet-capable masters (EtherCat, Ethernet/IP, PROFINET)*,

*) Balluff, Belden, Murrelektronik, Pepperl+Fuchs, Baumer, Leuze, SICK AG, Turck, Wenglor and others
**) on request

You are using another system or master or want to use another environment? Please don't hesitate to contact us!

Getting started

A short introduction on how to get started with the Siogeen IoddCom.

1. Install Python

Note: Pythons packager pip is required!

2. Install Siogeen IoddCom:

Use the provided script (here for Python 3.8):

For Linux the shell script:

user@computer:./Downloads/IoddCom-Install$ ./ --user 3.8

For Windows the batch script:

user@computer:./Downloads/IoddCom-Install$ install.bat 3.8

3. License activation

>>> from siogeen import IoddCom
>>> IoddCom.activateLicense('Path-to-license', token)

4. Hello World

from siogeen import IoddCom
i = IoddCom()
i.write('Application Specific Tag', 'my device')'Application Specific Tag')


Feel free to contact us for a IoddCom demo or to purchase a license.

Do you have any questions? Please do not hesitate to contact us directly. We are happy to provide you a free demo license and a pdf documentation upon request. If you wish we can also perform an online/offline demo presentation for you.

* These fields are required.