How to find the DeviceName for communication library function blocks (<Slot>.<Subslot>.<Interface>/<NodeNumber>/<ChannelNumber>)

When using function blocks such as ArCanSend, a DeviceName input is required to direct the messages to the correct interface.

Device Names are given in the following format.



This could for example be “SS1.IF1”, which would translate to SubSlot1 Inteface 1. This would be the case when using an X20IF2772 (2 port CAN X20 interface module).


If we take a more complicated example where an X20CS2770 (2 port CAN X20 electronics communication module) would be located in a Powerlink expansion.


The easiest way to determine the correct address for this interface is to hover the mouse pointer over the communications port and Automation Studio should tell this directly to you in a popup. In this case the result would be “IF3.ST2.IF1.ST4.IF2”.


The other way to find out this is to follow the hardware tree in Physical View.


This is the same for all function blocks, which require the user to specify the correct interface.


Just expand the hardware tree with ‘plc address’ by right-clicking:

After this you will get some more information about the device string:



I didn’t know that was available, thanks for the tip :slight_smile:

Thank you all for the hints.
Here a further note:
Some fubs, like the ones of the AsIoLink lib, need the device string of the channel where the device, you want to get access, is connected and not the direct device string of the IO-Link device.

I hope this is helpful for some of you.