Go to file
andreas karlsson 48c80f5cae Impove SM validation for input- ouput only slaves
Re-add always verify SM length

Add validation of SM disabled, don't allow master
to activate or set a length if disabled.

Add validation of SM enabled, don't allow master
to set a length and de-activate.
2022-06-19 10:51:51 +02:00
.github Bump build platform 2021-10-25 09:57:18 +02:00
applications Add simple demo for Raspberry Pi 2021-09-02 16:40:40 +02:00
cmake Add simple demo for Raspberry Pi 2021-09-02 16:40:40 +02:00
drivers/linux/lan9252 linux lan9252 driver source cleanup 2018-04-13 12:31:42 +09:00
soes Impove SM validation for input- ouput only slaves 2022-06-19 10:51:51 +02:00
.gitattributes Normalize line endings (#27) 2017-08-18 17:01:54 +02:00
.gitignore Update applications to SOES v3.0 2019-05-09 15:43:07 +02:00
CMakeLists.txt Bump cmake version 2021-10-26 09:36:04 +02:00
LICENSE Put a brief license info in source files and bump version 2017-10-25 13:39:20 +02:00
README.md Migrate to Github Actions 2021-02-17 16:33:17 +01:00
version.h.in Normalize line endings (#27) 2017-08-18 17:01:54 +02:00

README.md

Simple Open Source EtherCAT Slave

Build Status

SOES (Simple OpenSource EtherCAT Slave Stack) is an opensource slave stack that is very easy to use and provides a small footprint. It is a good alternative to more complex stacks on the market.

Overview

SOES is an EtherCAT slave stack 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 slave functions.

Feature list:

  • Address offset based HAL for easy ESC read/write access via any interface
  • Mailbox with data link layer
  • CoE
  • Object dictionary
  • SDO read and write for all sizes including segmented transfers
  • Easy portable C-code suited for embedded applications
  • Fixed and/or dynamic PDO mapping
  • FoE with bootstrap template
  • Support for Little and Big endian targets
  • Run polling, mixed polling/interrupt or interrupt
  • Support for SM Synchronization
  • Support DC sync0 and DC Synchronization
  • Add stack configuration via new configuration parameter to/or from "stack"_init
  • EoE

TODO

  • Update documentation
  • Add EoE sample application