ESP32-S3 Software EtherCAT Slave with W5500 and SOES
A fully software-based EtherCAT slave implementation running on ESP32-S3 with a W5500 SPI Ethernet controller. No
dedicated EtherCAT Slave Controller (ESC) hardware like LAN9252 is required — the ESC is emulated entirely in
software.
The project processes raw EtherCAT frames (0x88A4) through the W5500, maintains a 16KB ESC register space in RAM,
handles FMMU logical address mapping, and integrates with the open-source SOES (Simple Open EtherCAT Slave) stack for
full state machine, CoE, and PDO support.
Tested and working with Beckhoff TwinCAT 3. Includes ESI XML device description file for easy integration. Currently
implements 3 digital inputs and 3 digital outputs as a proof of concept, but the architecture can be extended to any
I/O configuration.