Simple Open EtherCAT Master or SOEM


For a tutorial on SOEM See tutorial.txt


SOEM is an EtherCAT master library written in c. Its purpose is to learn and to use. All users are invited to study the source to get an understanding how an EtherCAT master functions and how it interacts with EtherCAT slaves.

As all applications are different SOEM tries to not impose any design architecture. Under Linux it can be used in generic user mode, PREEMPT_RT or Xenomai. Under Windows it can be used as user mode program.

Preconditions Linux:

Preconditions Windows:

Features as of 1.1.2 :

Features as of 1.1.3 :

Features as of 1.1.4 :

Features as of 1.2.0 :

Features as of 1.2.2 :

Features as of 1.2.4 :

Features as of 1.2.5 :

Features as of 1.2.8 :

Features as of 1.3.0 :

Features as of 1.4.0 :

Added ERIKA target. Added macOS target. Support for EoE over existing mailbox API.

Build instructions

See in the root folder.

Getting started

For examples see simple_test.c in ~/test/linux/simple_test. First try (assume EtherCAT on eth0): sudo ./simple_test eth0 As SOEM uses RAW sockets it will need to run as root.

Squashed bugs

Version 1.1.3

Version 1.1.4

Version 1.2.0

Version 1.2.2

Version 1.2.3

Version 1.2.5

Version 1.2.8

Version 1.3.0

Version 1.3.1

Version 1.3.2 : 2018-02-02

Version 1.3.3 : 2018-02-02

Version 1.4.0 : 2019-05

Legal notice

Licensed under the GNU General Public License version 2 with exceptions. See LICENSE file in the project root for full license information

Author(s): Arthur Ketels and M.J.G. van den Molengraft
autogenerated on Sat Jun 27 2020 03:48:21