A Service Data Object (SDO) is a block of data that is sent between the MainDevice and a SubDevice, only when specifically requested. This is as opposed to Process Data Objects (PDOs) that are continuously communicated.
SDO communication is typically used for accessing and modifying parameters or configuration settings in EtherCAT SubDevices, or for status data that doesn’t need to be communicated as frequently as PDO data.
Communicating via SDO
To communicate via SDO, use the EtherCAT CoE SDO Read (123) and EtherCAT CoE SDO Write (124) commands. These commands can read to or write from one object at a time in a SubDevice. The objects can be found in the CoE Object Dictionary of the SubDevice.
This command reads data from an object in a SubDevice and applies it to the Variable Table.
This command sources data from the Variable Table and writes it to a specified object in the SubDevice.
These commands allow for selecting a Variable to act as a status register to indicate whether the read or write completed, and if an error occurred, exactly which error occurred.
The read and write commands support a number of data types. Refer to the command topics for details.
See Also
Process Data Object (PDO) | EtherCAT Overview | EtherCAT CoE SDO Read (123) | EtherCAT CoE SDO Write (124)
Copyright © 2026 Delta Computer Systems, Inc. dba Delta Motion