- Apr 14, 2021
-
-
Provides for UDP and up to 16 TCP connections. The connections are not multi-threaded. Specification: https://www.ethercat.org/memberarea/download/ETG8200_V1i0i0_G_R_MailboxGateway.pdf To be used with tools such as: https://download.beckhoff.com/download/document/automation/twinsafe/twinsafe_loader_en.pdf
-
-
Fetching data reports the actually used size. This resolves some potential race conditions.
-
-
read the pcap data to binary output pcap file format spec: https://wiki.wireshark.org/Development/LibpcapFileFormat
-
that they can be pre-added before the slaves are scanned and also added if the slave is not yet connected. Manually configured eoe interfaces now also remain configured if the slave is disconnected. Added tool commands eoe_addif and eoe_delif. Updated tool to allow exact match for commands. EOE interfaces can now be configured at module load time ("eoe_interfaces" parameter) and also whether to allow auto or manual only creation of eoe interfaces ("eoe_autocreate" parameter) EOE slaves no longer being kept in op mode when deactivating the master. The eoe port still keeps running anyway and your app may be waiting for all slaves to be in PREOP before exiting Fixed "BUG: scheduling while atomic" error with EOE transmit queue. ec_eoedev_tx() runs in an interrupt context and is not allowed to sleep, so it is not allowed to use a semaphore to protect the queue. The queue has been replaced with a ring buffer.
-
that they can be pre-added before the slaves are scanned and also added if the slave is not yet connected. Manually configured eoe interfaces now also remain configured if the slave is disconnected. Added tool commands eoe_addif and eoe_delif. Updated tool to allow exact match for commands. EOE interfaces can now be configured at module load time ("eoe_interfaces" parameter) and also whether to allow auto or manual only creation of eoe interfaces ("eoe_autocreate" parameter) EOE slaves no longer being kept in op mode when deactivating the master. The eoe port still keeps running anyway and your app may be waiting for all slaves to be in PREOP before exiting Fixed "BUG: scheduling while atomic" error with EOE transmit queue. ec_eoedev_tx() runs in an interrupt context and is not allowed to sleep, so it is not allowed to use a semaphore to protect the queue. The queue has been replaced with a ring buffer.
-
applications context. ecrt_master_exec_slave_requests() can take some time to return so should be called from a separate thread from you realtime application. For example (in RTAI) create a soft rt thread that loops, waiting on the main RT thread to complete its cycle before calling ecrt_master_exec_slave_requests()
-
reading the SII data from the EEPROM. This patch checks the EEPROM not loaded bit and retries until it is cleared.
-
zero vendor id, product code and alias information. This patch retries scanning the slave from scratch if there are any problems reading the SII information.
-
-
Allows these to occur in parallel between slaves. This improves performance on large networks.
-
-
-
-
-
-
-
This allows the application to make FoE requests asynchronously, perhaps even in realtime.
-
Also implements -o option for foe_read and fixes a buffer size issue (though another remains).
-
-
-
The ethercat diag command can be selected for specific slaves. The command can be used with two options --reset / -r Reset command. Resets all error registers in ESC. Should be used shortly after starting EtherCAT. --verbose / -v Verbose output error ESC registers of selected slave(s). Can be used at any time to check if ESC errors have been detected.
-
Based on a patch from Graeme Foot Based on a patch from Jesper Smith
-
link detection misbehaves when using master-level redundancy. Also the watchdog task needs to run on a background thread instead of the RT thread, to reduce latency spikes. This has been reported to cause issues when using RTAI applications; consider not applying it when using RTAI.
-
Adds ecrt_slave_config_create_sdo_request_complete. Adds ecrt_sdo_request_index_complete.
-
This permits writes to be a different size from the prior read.
-
-
-
-
-
-
-
-
If a slave was in SAFEOP+ERROR with an observed sync timeout, it was probably a comms interruption and its current configuration should still be correct.
-
-
Also allow it to be disabled via configure.
-
-
The SII data and PDOs will now be re-used after a re-scan when the EtherCAT master is in its operation phase. The SII data and PDOs will be detached from the slaves prior to a scanning and re-attached during the scanning without the need to fetch the SII data and PDOs once again. The SII data and PDOs will however only be re-used if the slave can match either the alias or the combination of vendor id, product code and serial number for some already stored SII data. * * * Fix to ensure that master bails out if no SII data is available. Master could previously get stucked in the same state in fsm_slave_config and spam syslog.
-
Signed-off-by:
Esben Haabendal <esben@haabendal.dk>
-