------------------------------------------------------------------------------- This is the FEATURES file of the IgH EtherCAT Master. $Id$ vim: spelllang=en spell ------------------------------------------------------------------------------- General Features: * EtherCAT master implementation conforming to IEC/PAS 62407. - Runs as kernel module for Linux 2.6. - Multiple masters possible on one machine. * EtherCAT-capable versions of standard Linux drivers for wide-spread Ethernet devices. - Interrupt-less operation of Ethernet devices. - Easy implementation of additional Ethernet drivers through common device interface of the master. - Operation possible with any device supported by the standard drivers, including PCMCIA devices. * Supports any realtime environment through independent architecture. - RTAI, Xenomai, RT-Preempt, etc. - Operation possible even without any realtime extension. * Common API for Realtime-Applications in kernel- and userspace. - Requesting and releasing masters. - Dynamic slave configuration, even for slaves that are offline. - Detailed configuration of the slaves' Pdos and Sdos. - Creation of process data domains (see below). Registration of Pdo entries for exchange within a domain. - Monitoring the states of masters, slave configurations and domains. - Sdo handlers for application-triggered CoE transfers (see below). - VoE handlers for Vendor-specific mailbox protocols (see below). - Similar userspace implementation of the kernel API via a C-library. - Avoidance of unnecessary copy operations for process data. * Separating slave groups through domains. - Handling of multiple slave groups with different sampling rates. - Automatic calculation of process data mapping, FMMU- and sync manager configuration within the domains. - Process data exchange can be monitored via a per-domain mechanism. * Master finite state machine (FSM). - The same state machine runs when the master is idle and also when an application is connected. - Bus monitoring. Slave states are read cyclically. Automatic scanning of the bus on a topology change. - Automatic configuration of slaves, if a application-layer state change is requested. * Implementation of the CANopen-over-EtherCAT (CoE) protocol. - Configuration of CoE-capable slaves. - Sdo information service (dictionary listing). - Sdo transfers via the application interface and the command-line tool. * Implementation of the Ethernet-over-EtherCAT (EoE) protocol. - Creates a virtual network interface for any EoE-capable slave. - Natively supports either a switched or a routed EoE network architecture. * Userspace command-line tool 'ethercat'. - Detailed information about master, slaves, domains and bus configuration. - Reading/Writing alias addresses. - Listing slave configurations. - Viewing process data. - Sdo download/upload; listing Sdo dictionaries. - Access to slave registers. - Slave SII (EEPROM) access. - Requesting application-layer states. - Generation of slave description XML from existing slaves. * Seamless integration in any GNU/Linux distribution. - Master and Ethernet device configuration via sysconfig file. - "Linux standard base"-compatible init script for master control. * Virtual read-only network interface for debugging and traffic monitoring purposes (using Wireshark, etc.). No additional hardware necessary. -------------------------------------------------------------------------------