CoE interface – parameter management in the EtherCAT system


Many different devices are used in an automation environment. These devices can be used separately or together in a group on a bus system. Such devices can be controllers, shaft encoders, servo drives, motors, I/O modules or sensors among other things.

Depending upon complexity, such a device must be parameterizable/adjustable for the respective requirement. Parameterization is perhaps not necessary in the case of a simple digital 24 V input with a fixed switching threshold and delay; in the case of a rotary encoder, however, it will not be possible to do without it (e.g. number of lines, absolute or relative, data format, etc.)

On top of that it can be of interest to store data in the device during production or operation.
The manufacturer could store production data such as device name, serial number, firmware version, calibration data or date of manufacture, if necessary provided with protection against access or amendment.
The user could store user calibration data and the application-specific settings in the device.

In order to create a user-friendly interface for device operation, different organizations have created various standards in which the following are defined:

EtherCAT follows the so called CoE standard here: Can-Application-protocol-over-EtherCAT.


The CiA organization (CAN in Automation) pursues among other things the goal of creating order and exchangeability between devices of the same type by the standardization of device descriptions. For this purpose so-called profiles are defined, which conclusively describe the changeable and unchangeable parameters of a device. Such a parameter encompasses at least the following characteristics:

Sample: the parameter ‘Vendor ID’ might have the index number 0x4120:01 and the numerical value ‘2’ as the ID of a Beckhoff device.
Since hexadecimal values are favored in the machine environment, the parameter is thus represented from the user’s point of view as

CoE interface – parameter management in the EtherCAT system 1:

with the property RO (read only), because the vendor ID should not be changed by the user.

Such a list of parameters, the whole of the device-specific CoE directory, can become very extensive. The first entries of a Beckhoff EL3152 analog input terminal appear as follows in the TwinCAT System Manager:

CoE interface – parameter management in the EtherCAT system 2:
EL3152 CoE directory

The index numbers are specified in the profile; they begin in EtherCAT with 0x1000, because the underlying entries do not have to be displayed.

CoE directory – availability

An EtherCAT device can have a CoE directory, but does not need to have one. Simple slaves need no parameter directory or do not have the controller required for administration. On the other hand, the EtherCAT master (like TwinCAT) as a software EtherCAT device can also manage a CoE directory.

If present, the CoE directory is in operation from the PREOP state.

The object directory can be read via the SDO information service (Service Data Objects).

CoE directory – localization in the EtherCAT Slave

The CoE directory as a parameter system must be administrated in the device in the firmware (FW) in the local controller. This is the so-called online directory, because it is only available to the user if the EtherCAT slave is in operation with operating voltage supplied and, if applicable, can be manipulated via EtherCAT communication.

So that the parameters can be viewed and changed in advance without the presence of a slave, a default copy of the entire directory is usually stored in the device description file ESI (XML). This is called the offline directory. Changes in this directory do not affect the later operation of the slave with TwinCAT. The xml files can be obtained from the Beckhoff website in the Download area.

The TwinCAT system manager 2.11 can display both lists and marks this:

CoE interface – parameter management in the EtherCAT system 3:
Online/Offline display

In the online directory

In the offline directory

the actual current slave list is read. This may take several seconds, depending on the size and cycle time

the offline list from the ESI file is displayed. In this case modifications are not meaningful or possible.

the actual identity is displayed

the configured status is shown under Identity

the firmware and hardware version of the equipment according to the electronic information is displayed

no firmware or hardware version is displayed, since these are features of the physical device

a green online is visible in the TwinCAT System Manager, CoE Online tab

a red offline is visible in the TwinCAT System Manager, CoE Online tab


Different CoE parameter types are possible, including string (text), integer numbers, Boolean values or larger byte fields. They can be used to describe a wide range of features. Examples of such parameters include manufacturer ID, serial number, process data settings, device name, calibration values for analog measurement or passwords.

The ranges in the Slave CoE that are important for the application-oriented EtherCAT fieldbus user are

The following ranges are also of interest

Channel-based order

The CoE directory is located in EtherCAT devices that usually encompass several functionally equivalent channels. e.g. a 4-channel 0 – 10 V analog input terminal also has 4 logical channels and thus 4 identical sets of parameter data for the channels. In order to avoid having to list each channel in the documentation, the placeholder "n" tends to be used for the individual channel numbers.

In the CoE system 16 indices, each with 255 subindices, are generally sufficient for representing all channel parameters. The channel-based order is therefore arranged in 16dec/10hex steps. The parameter range 0x8000 exemplifies this:

This is generally written as 0x80n0.

CoE directory – changes of value

Several parameters, in particular the setting parameters of the slave, are variable and can be written by the user from the fieldbus side. This can be done in write or read mode

CoE directory – startup list

CoE interface – parameter management in the EtherCAT system 4:

Start-up list

Changes made to the local CoE directory of the EtherCAT slaves are lost with the old device in case of exchange. If a device is replaced with a new Beckhoff device, it will have the default settings. It is therefore advisable to link all changes in the CoE list of an EtherCAT slave with the Startup list of the slave, which is processed whenever the EtherCAT fieldbus is started. In this way a replacement EtherCAT slave can automatically be parameterized with the specifications of the user.

If EtherCAT slaves are used which are unable to store local CoE values permanently, the Startup list must be used.

The startup list is used for these cases: the values here, which are entered by the user, are transmitted to the respective slave upon each EtherCAT state transition/start. A startup entry consists of

The order of the entries is not taken into account: all entries to which a state transition applies are handed over simultaneously as asynchronous commands to the EtherCAT system and executed there, as soon as the bus load allows.

No check is made of whether an identical entry is already present in the slave.


In the following, the user scaling is activated in the startup list of an EL3152. Entries required for operation that already exist in the list are marked with a grey background.

Upon right-clicking on the surface, the following dialog appears:

CoE interface – parameter management in the EtherCAT system 5:
Manual insertion of a startup entry
CoE interface – parameter management in the EtherCAT system 6:

The corresponding values are adopted upon clicking the entry 0x8000:01; 01 is entered in Data as the desired value. The entry ‘P->S’ marks the time of the execution.

CoE interface – parameter management in the EtherCAT system 7:
Changed startup list

Entries created by the user are marked with a light blue background.

CoE directory - data management

CoE interface – parameter management in the EtherCAT system 8:

Data management

If slave CoE parameters are modified online, Beckhoff devices store any changes in a fail-safe manner in the EEPROM, i.e. the modified CoE parameters are still available after a restart.
The situation may be different with other manufacturers.
If EtherCAT slaves are used which are unable to store local CoE values permanently, the Startup list must be used.

Summary of the characteristics