[etherlab-dev] Explicit Device ID

Gavin Lambert gavinl at compacsort.com
Tue Nov 28 23:29:17 CET 2017

On 29 November 2017 10:10, quoth Matthieu Bec:
> I have an application that requires uniquely identifying all our slaves
> that are essentially one same model) in the fieldbus.
> Using "configured station alias" seems it could work, since it means
> all the SII individually.
> Those are custom built slave built around micro-processor and we have a
> to expose unique id (from a location eeprom dongle) I was looking at
> Device Identification" from ETG1020 protocol enhancement.
> Has anyone experience with that? I don't see it being currently supported
> etherlab master.

The method I use is to program the EEPROM with a unique serial/alias address
during production, so in the field they're preprogrammed with an appropriate
station alias.

The alias can alternatively be set during commissioning using the "ethercat
alias" command, or other means.

These are probably the simplest thing that just works.

The explicit device id method is mostly intended for things like hardware
dipswitches.  There's a procedure outlined in ETG1020 to let the slave
configure the alias on its own on bootup (the short version is to use the
value in the SII EEPROM if nonzero, then the id selector if nonzero, or
signal an error if both are nonzero).  This process is invisible to the
master and again would just work, given a slave that supports it.

ETG1020 also specifies a command the master can send to request the slave
provide a hardware address as a one-off request.  This is not directly
supported by the Etherlab master (although you can use register requests to
do it yourself in the application or a commissioning tool).  This is
independent of the station alias but that also makes it less useful --
especially in a network where devices could be connected in alternate orders
(which is usually the reason why you want individual addressing) you should
be using the alias addresses to define your slave_configs, so that things
will Just WorkT when the network is reconfigured.

More information about the Etherlab-dev mailing list