Skip to main content

Cython wrapper for the SOEM Library

Project description

PySOEM is a Cython wrapper for the Simple Open EtherCAT Master Library (https://github.com/OpenEtherCATsociety/SOEM).

Introduction

PySOEM enables basic system testing of EtherCAT slave devices with Python.

Features

  • input process data read and output process data write

  • SDO read and write

  • EEPROM read and write

  • FoE read and write

Todo

  • EoE

Beware that real-time applications need some special considerations.

Requirements

Linux

  • Python 3

  • GCC (installed on your machine)

  • Python scripts that use PySOEM must be executed under administrator privileges

Windows

Installation

python -m pip install pysoem

or

pip install pysoem

Consider using a virtualenv.

Usage

Although there are some pieces missing, the documentation is hosted on “Read the Docs” at: pysoem.readthedocs.io.

Please also have a look at the examples on GitHub.

Contribution

Any contributions are welcome and highly appreciated. Let’s discuss any (major) API change, or large piles of new code first. Using this pysoem chat room on gitter is one communication channel option.

Changes

v1.0.6

  • Introduces amend_mbx and set_watchdog, though this is rather experimental

  • New example firmware_update.py.

v1.0.5

  • Introduces the manual_state_change property

v1.0.4

  • Proper logging

  • Introduces mbx_receive

v1.0.3

  • Fix the FoE password issue

v1.0.2

  • Licence change to MIT licence

  • Introduces configurable timeouts for SDO read and SDO write

  • Improved API docs

v1.0.1

  • API change: remove the size parameter for foe_write

  • Introduces overlap map support

v1.0.0

  • No Cython required to install the package from the source distribution

v0.1.1

  • Introduces FoE

v0.1.0

  • Update of the underlying SOEM

v0.0.18

  • Fixes bug when Ibytes = 0 and Ibits > 0

v0.0.17

  • Exposes ec_DCtime (dc_time) for DC synchronization

v0.0.16

  • Improvement on SDO Aborts

v0.0.15

  • SDO info read

v0.0.14

  • Readme update only

v0.0.13

  • Initial publication

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysoem-1.0.6.tar.gz (358.6 kB view hashes)

Uploaded Source

Built Distributions

pysoem-1.0.6-cp310-cp310-win_amd64.whl (118.0 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

pysoem-1.0.6-cp39-cp39-win_amd64.whl (135.0 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

pysoem-1.0.6-cp38-cp38-win_amd64.whl (136.8 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

pysoem-1.0.6-cp37-cp37m-win_amd64.whl (133.1 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

pysoem-1.0.6-cp36-cp36m-win_amd64.whl (133.0 kB view hashes)

Uploaded CPython 3.6m Windows x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page