6.1. Generic API return status values

Most of the functions and also some notifications will return an error status value to indicate whether a function was successfully executed or not. Some of the return status values have a generic meaning unspecific to the called API function.

EC_E_NOERROR

The function was successfully executed

EC_E_NOTSUPPORTED

Unsupported feature or functionality

EC_E_BUSY

The MainDevice is currently busy and the function has to be re-tried at a later time

EC_E_NOMEMORY

Not enough memory or frame buffer resources available

EC_E_INVALIDPARM

Invalid or inconsistent parameters

EC_E_TIMEOUT

Timeout error

EC_E_SLAVE_ERROR

A SubDevice error was detected

EC_E_INVALID_SLAVE_STATE

The SubDevice is not in the requested state to execute the operation (e.g. when initiating a mailbox transfer the SubDevice must be at least in PREOP state)

EC_E_SLAVE_NOT_ADDRESSABLE

The SubDevice does not respond to its station address (e.g. when requesting its AL_STATUS value). The SubDevice may be removed from the bus or powered-off.

EC_E_LINK_DISCONNECTED

Link cable not connected

EC_E_MASTERCORE_INACCESSIBLE

MainDevice core inaccessible. This result code usually means a remote connected server / EtherCAT® MainDevice does not respond anymore.

The EC_E_BUSY return status value indicates that a previously requested operation is still in progress. For example if the MainDevice is requested to enter the OPERATIONAL state the next request from the API will return this status value unless the OPERATIONAL state is entered.