Profinet integration

Configuration

When planning Profinet devices, a device is mapped as a modular system, which has a headslot and several data modules.

GSDML file

Note

The GSDML files are available in two languages at www.balluff.com .

The device data required for project planning is stored in Generic Station Description Markup Language (GSDML) files. The data modules of a network module are displayed in the project planning software itemized by subslots.

The GSDML file provides the possible data modules (input or output of different data widths). To configure the network modules, the corresponding data modules are assigned to a subslot.

Note

Outdated GSDML versions may not be compatible with the latest FW version.

Integrating a module

The device can be found in the catalog via the search function and pulled into the Profinet string via drag & drop (see Integrating a module).

The BNI PNT… module with the PN-IO, Port 1-M12 and Port 2-M12 sub-modules are used for Profinet communication.

In X1 PN-IO, functions such as prioritized startup or the domains for the ring topology can be selected.

Slot 1 is reserved for IO-Link. The following submodules can be inserted in the eight submodules below:

  • IO-Link

  • Digital Input (DI)

  • Digital Output (DO)

  • Port deactivated

Only the IO-Link headslot is plugged in by default. The submodules are free.

../../_images/Modul_einbinden_EN.jpg

Integrating a module

Hardware configuration

The remaining submodules can, if necessary, be pulled into the configuration table from the hardware catalog using drag & drop and must be configured in accordance with the configuration of the headslot.

Addressing modules

After double-clicking on the submodules, the addressing can be changed in the Addresses window.

Configuring the network module

The ports 1…8 are reserved for the IO-Link Ports.

  • In accordance with the process data length of the IO-Link device, select a matching network module in the catalog and drag it to the corresponding slot using drag & drop.

    The process data length required by the device can be found in the manual for the IO-Link device.

    ../../_images/Hardwarekonfiguration_EN.jpg

    Hardware configuration

Port Qualifier (PQI)

Network modules are available with and without PQI. The PQI is 1 byte long and contains various information about the respective port status. This information can be found at the end of the input data of the submodule of a port for each bit.

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Device Process Data validity

Port/Device error indication

Device communication

Port operation ("1")

Reserved ("0")

Reserved ("0")

Reserved ("0")

Reserved ("0")

PQ

DevErr

DevCom

Port active

-

-

-

-

IO-Link submodules without PQI save 1 byte. The information which the PQI contains can currently not be replaced with another submodule. Submodules which contain this information (e.g. PD Valid, Pin2/4, etc.), will be added in the future.

The flags have the following meaning:

PQ

Value

Description

0

Process data from device invalid

1

Process data from device valid

DevErr

Value

Description

0

No errors/warnings

1

Errors/warnings occurred.

DevCom

Value

Description

0

No device available

1

Device available

PortActive

Value

Description

0

Port deactivated.

1

Port activated.

Configuring digital input and digital output

In order to configure the port pins to input or output, the corresponding submodule Digital Input or Digital Output must be dragged to the port. Input/Output are always configured to Pin 4 of the port. Pin 2 must be manually configured in the module parameters of the port properties.

The inputs and outputs can be mapped either to the network module 1 (see Network module 1) or to the submodules Input-Pin 2/4 or Output-Pin 2/4 in slot 3.

Note

XG1 devices have no outputs to Pin 2.

../../_images/IO-Link-Modul_1_EN.png

Network module 1

To save the two bytes in the network module, there is a second network module without IO data. If this is used, the inputs and outputs can be mapped to the corresponding submodules in slot 3.

If the network module has been inserted with IO data, the submodules Input-Pin 2/4 and Output-Pin 2/4 can be inserted in slot 3 but the output module has no function. Only the configuration of the ports in slot 1 is valid. The inputs are also always displayed at slot 3.

IO-Link diagnosis ports

Configuration

Description

Input Pin 2 / 4

Defines the input byte on which each bit maps Pin 2 / 4 of the respective port.

Output Pin 2 / 4

Defines the output byte on which each bit maps pin 2 / 4 of the respective port.

IO-Link communication

Defines the input byte on which each bit represents active IO-Link communication.

IO-Link PD Valid

Defines the input byte on which each bit indicates whether the port’s process data is valid.

IO-Link diag.

Suppresses the diagnosis as soon as the corresponding bit is TRUE.

Note

The following modules can only be plugged in if the Extended Modules module is plugged into slot 2.

Note

Please check whether IO-Link is supported by your module before using this function. For more information on product variants that support IO-Link, see Supported product variants

If this function is configured, the IO-Link diagnosis remains activated for all ports and can be deactivated for the desired ports by setting the bit for the respective port.

Note

Please check whether IO-Link is supported by your module before using this function. For more information on product variants that support IO-Link, see Supported product variants

Bit status for each IO-Link port, i.e. feedback on whether communication has been established.

Note

Please check whether IO-Link is supported by your module before using this function. For more information on product variants that support IO-Link, see Supported product variants

Bit status for each IO-Link Port, i.e. feedback whether the process data at the corresponding port are set to Valid.

Note

Bit 0 … 7 corresponds to the port designations Port 1 … 8.

Deactivating diagnostic messages

The Diagnostics Deactivated module allows various diagnostic messages sent by the module to be suppressed.

To deactivate the diagnostic messages:

The table below shows the individual bits fields and their possible values.

Configurations of the Diagnosis Disable module

Bit position

Value 0

Value 1

Bit 0

Global diagnostics activated.All diagnostics are sent.

Global diagnostics deactivated.All diagnostics from the module to the controller are suppressed. If diagnostics are already pending, they are deleted.

Bit 1

UA diagnostics activated.UA diagnostics are sent.

UA diagnostics deactivated.All UA diagnostics from the module to the controller are suppressed. If UA diagnostics are already pending, they are deleted.

Bit 2

reserved

reserved

Bit 3

reserved

reserved

Bit 4

reserved

reserved

Bit 5

reserved

reserved

Bit 6

reserved

reserved

Bit 7

reserved

reserved

Pending diagnostics can be deleted at runtime by toggling the bit.

Configuring device

After double-clicking on the module in the Profinet string, the communication parameters of the module are displayed.

Assign IP address

The IP address is configured under IP Protocol.

../../_images/PROFINET-Adresse_EN.jpg

Profinet address

Establishing a device connection

  • In theDevice overview, right-click on the module and select Assign device name.

    ../../_images/Geraetebeziehung_aufbauen_EN.png

    Establishing the device relationship

    The identification takes place via the MAC address or via the Flash LED function. This function causes the SF-LED on the module to flash three times at a frequency of 1 Hz.

    ../../_images/PROFINET-Geraetename_vergeben_EN.png

    Assigning the Profinet device name

Assigning the device name

  • Assign the desired device name and assign it to the selected, found device by clicking on Assign name.

    Note

    The device name must match the name that was previously configured (see chapter Configuring device ).

    ../../_images/Geraetename_vergeben_EN.png

    Assigning the device name

Completing the configuration

  • Download the configuration into the module parameterization.
    ⇒ The bus error should be reset at the module.

If the module continues to report a bus error, this could be because the device relationship has not been established. The following remedies are possible:

  • Via Target system > Ethernet > Ethernet subscriber > Browse, scan the network and check whether the device is reporting under the correct device name and IP address.

  • If necessary, change the IP address or the device name.

  • Assign the device name to the device again and download the configuration.

Note

Please check whether IO-Link is supported by your module before using this function. For more information on product variants that support IO-Link, see Supported product variants

Port configuration settings

In the network module properties, the IO-Link parameters of the respective port can be changed.

../../_images/IO-Link-Konfiguration_EN.png

Note

IO-Link configuration:

If the connected IO-Link device provides outputs, Pin 2 at the corresponding port must be configured as an output (see Port Qualifier (PQI)). Does not apply to XG1 devices.

The following settings can be made:

Enable port diagnostics

Activates or deactivates the diagnostic messages of the port (static muting).

Configure process alarms

Maps single-shot events (notifications) to process alarms.

Activate input fraction

Checks the PD size of the device against the PD size of the plugged module.

Note

Only affects PD inputs. PD output size is always checked.

Enable Pull/Plug

Blocks the call of module OB82 (diagnosis alarm) or enables it.

Port mode

Defines the mode of the port.

The following settings are possible:

  • Deactivated: Switches the port off.

  • Auto Config: Activates IO-Link and the data exchange between master and device.

  • Set Port Config: Enables some settings to be changed manually, e.g.Cycle Time.

Note

Set Port Config must be activated to enable validation and back-up (data storage).

Validation and backup

Validation and backup are used to identify specific or individual device types with which a data exchange should take place.

The following settings are possible:

  • No Device Check: Validation is deactivated and every device is accepted.

  • Compatibility Device V1.0: Only devices according to IOL specification 1.0 are accepted. No data storage, only validation active.

  • Compatibility Device V1.1: Only devices according to IOL specification 1.1 are accepted. No data storage, only validation active.

  • Compatibility Device V1.1 Backup and recovery: Only devices according to IOL specification 1.1 are accepted. Data storage with upload and download, with validation.

  • Compatibility Device V1.1 Recovery: Only devices according to IOL specification 1.1 are accepted. Data storage only with download (Master to Device), with validation.

Port Class / Pin2 behavior

Defines the behavior of pins.

The following settings are possible:

  • Class A / NC: Pin 2: Deactivated

  • Class A / DI: Pin 2: Digital input

  • Class A / DO: Pin 2: Digital output

  • Class A / Power = actuator supply/continuous voltage on pin 2

  • Class B / NC: Pin 2: Deactivated

  • Class B / DI: Pin 2: Digital input

  • Class B / DO: Pin 2: Digital output

  • Class B / Power: actuator supply/continuous voltage on pin 2

Note

The Pin 4 behavior is specified by the plugged submodule.

Note

Class B only available for devices with Class B property.

Cycle Time

Makes it possible to influence the IO-Link communication speed.

The cycle time can be adjusted using the scroll-down menu.

../../_images/Portkonfiguration_Portmodus_EN.jpg

Port Configuration – Port Mode

Port class

The plugged submodule for Pin 4 / Pin 2 behavior is always the configuration for Pin 4.
In addition, NC (Not connected), DI, DO or Power can be selected for pin 2.

../../_images/Portkonfiguration_Pin_4__Pin_2_Verhalten_EN.png

Port Configuration – Pin 4 / Pin 2 Behavior

Settings for Pin 4 / Pin 2 behavior

The following settings are possible:

  • Class A / NC: Defines Pin 4 as digital input / disables Pin 2.

  • Class A / DI: Defines Pin 4 and Pin 2 as digital input.

  • Class A / DO: Defines Pin 4 as digital input and Pin 2 as digital output.

  • Class A / Power: Continuous voltage on pin 2.

Note

Configuration using pin 4 digital input as an example.

Function module

To be able to write or read out the ISDU data of connected IO-Link devices during operation, the common programming interfaces of the control manufacturers provide corresponding function modules or libraries.

../../_images/Funktionsbaustein_DE.png

Function module

REQ

Use Request to start the action in order to write or read data.

ID

The ID is permanently declared by the master via the hardware configuration.
This can be found under System constants in the hardware identification.

  • Select the hardware ID of the module IO-Link_I_O_Ports_1~BALLUFF_….

CAP Value

This is assigned by the manufacturer. For Balluff products, it is the value 0xB400.

Read/Write

The command is defined here. To read data, it must be a 0; to write data, it must be a 1.

Port

Here you select the port to which the device has been connected. The master counts as 0 and the ports are counted from 1…8.

Index

This is the index of the IO-Link subscriber being read out or written. This can be found in the user’s guide for the IO-Link device.

SubIndex

The sub-index is defined by the data to be processed. This can also be found in the operating instructions for the connected IO-Link device.

LEN

This is the length of the data. This can also be found in the parameter data in the user’s guide for the IO-Link device.

RECORD_IOL_DATA

A data module is used for communication. The structure must be established in Array of Bytes. The data to be changed is written into this array.

DONE_VALID

Confirms the successful request to read or write data.

BUSY

Shows the working state of the module.

ERROR

If an error occurs in the function, it is reported here.

STATUS

Error status of the function

IOL_STATUS

Describes the current status or an error.

RD_LEN

Shows how many bytes were read by the module.

../../_images/Hardwarekonfiguration_Systemkonstanten_EN_marked.png

Hardware configuration: System constants

The IOL_Call function module composes a telegram that is transferred to the master via acyclic services. The following settings are required for this:

Telegram settings

Diagnosis address

CAP access

The diagnosis address of module IO-Link_I_O_Ports_1~BALLUFF… is used.

0xB400

The telegram set-up is described in the table below.

Range Size in bytes Value Definition
Call – Header 1 0x08 0x08 for Call, fix
1 0 IOL Master
1…63 Port number
64…255 reserved
2 65098 FI_Index, IO-Link Header is following
IO-Link Header 1 0…255 Task
2 = Write
3 = Read
2 0…32767 IO-Link Index
65535 Port Function
1 0…255 IO-Link Subindex
Data range 232 Range of data to be written or read

Read

To be able to read out data, the master must be sent a read task for the corresponding slot/index/subindex.

For this, the telegram must be adapted accordingly (slot, index) and entered at Task 0x03 for reading. The telegram can then be sent to the corresponding module via write command.

The module reads the data from the IO-Link device.

The data can be fetched by reading with the same telegram.

Write

To be able to write data, the network module must be sent a write task for the corresponding slot/index/subindex.

For this, the telegram must be adapted accordingly (slot, index) and entered at Task 0x02 for writing. The telegram can then be sent to the corresponding module via write command.

Ring topology

The network module also supports the ring topology with media redundancy, which is enabled via the Media Redundancy Protocol (MRP). For this, the module and the MRP master (Managed Switch, CPU, etc.) must be in the same topology instance.

With the ring topology, it is possible to establish a redundant system. I.e. in normal operation, one side of the ring line from the MRP master is deactivated. If the

line is damaged or capped at one place in the ring, the deactivated branch is activated again and there are two linear topologies.

Activating ring topology

  • Set the media redundancy role to Client (the default setting is Non-subscriber).

    ../../_images/Ringtopologie_EN.jpg

    Ring topology

    To ensure uninterrupted operation, the watchdog time should be greater than 200 milliseconds, as the MRP master requires some time to activate the second line. If the watchdog time is less than the switching time of the MRP master, this will cause a communication breakdown.

    The watchdog time is calculated from the “Update time” and the Accepted update cycles without IO data factor.

    ../../_images/Einstellung_Aktualisierungszeit_EN.jpg

    “Update time” setting

Device replacement without exchangeable medium

The modules also support simple device replacement in LLDP mode (Link Layer Discovery Protocol).

Activating device replacement without exchangeable medium

  • In the CPU hardware configuration, activate the Support device replacement without exchangeable medium checkbox.

    ../../_images/Geraetetausch_ohne_Wechselmedium_ermoeglichen_EN.jpg

    Support device replacement without exchangeable medium

  • Create the Profinet topology in the hardware configuration.

    Note

    The connections of the individual ports must match the hardware wiring. If the topology in the hardware configuration is not a match, errors can occur.

    ../../_images/Geraetetausch_ohne_Wechselmedium_Topologie_EN.jpg

    Device replacement without exchangeable medium: Topology

ISDU parameterization via GSDML

With ISDU parameterization via GSDML, the connected IO-Link devices can be configured via the parameters of the corresponding submodules when establishing a connection with Profinet.

The parameters are transferred when the BNI establishes the connection with the controller and are then forwarded directly to the corresponding IO-Link devices as ISDU write accesses. When an IO-Link device is unplugged and plugged in, the ISDU parameters configured in advance and transmitted by the controller are written again.

Carry out ISDU parameterization

  1. Plug an IOL submodule into slot 1 of the desired port.

  2. Insert the ISDU parameter configuration module into slot 3.

  3. Select the corresponding submodule to define the maximum number of ISDU parameters that can be written to the corresponding port.

    ../../_images/ISDU_Submodul_waehlen_EN.png

    Select submodule

    The assignment position submodule = port number applies, e.g. slot 3/subslot 3 = Port 2 (see Assignment position submodule = port number).

    ../../_images/ISDU_Zuordnung_Position_Submodul_Portnummer_EN.png

    Assignment position submodule = port number

  4. Enter the ISDU parameters in the corresponding fields.

    Note

    Regardless of the submodule used, only the parameters that are entered are written to the IO-Link device (condition: length > 0). When the connection is established, all parameters are transferred to the BNI.

    Example

    ISDU 64 parameter is plugged in and 5 ISDU parameters are described.

    • All 64 parameters are transferred when the connection is established.

    • Only the 5 described ISDU parameters are transferred to the device.

Set ISDU parameterization

The following settings exist for the ISDU parameterization:

  • Reset to factory defaults: Resets the ISDU parameters to factory settings. The ISDU parameters can then be reset.

  • Start block parameterization: Starts the check of several parameters of a device. The parameters are checked for plausibility only at the end of the complete parameterization.

  • End block parameterization: Ends the check of the parameters of a device. Setting the parameter is mandatory if Start block parameterization has been selected.

../../_images/ISDU-Parametrierung_einstellen_EN.png

Set ISDU parameterization

ISDU parameterization via GSDML and device catalog

With the ISDU parameterization via GSDML and device catalog, the connected IO-Link devices can be configured with the parameters taken from the IOOD of the device when establishing a connection with Profinet.

Carry out ISDU parameterization

  • Plug the desired devices from the GSDML catalog into the corresponding subslots of the IO-Link ports (slot 1).

    ../../_images/Devices_in_Subslots_stecken_EN.png

    Select devices

    ⇒ The device parameters appear in the module parameters of the corresponding port and can be selected.

    ../../_images/Parameter_der_gewaehlten_Devices_EN.png

    Parameters of the selected device

The parameters are forwarded to the corresponding devices as ISDU write accesses and written to the device in the following cases:

  • each time the IO-Link device is reconnected

  • for a new connection with the PLC

Integrating Safety-Hub

Connecting the safe I/O module to the network module

When project planning for Profinet devices, a device is mapped as a modular system, which has a headslot and several data modules. The illustrations used here are taken as examples from the Totally Integrated Automation Portal (TIA Portal) project planning software and from the SIMTATIC Manager from Siemens AG and are for illustrative purposes only.

The necessary settings depend on the application and are the responsibility of the user. The BNI IOF-329-P02-Z038 must always be connected via a compatible Balluff network module.

Placing module on slot

The GSDML file provides the data modules available for the respective network module.

  • Select module IO-Link I/O ports (w/o IO data) with Safety Hub and ISDU and drag and drop to slot 1.

    ../../_images/Modul_auswaehlen_EN.jpg

    Select module IO-Link I/O ports (w/o IO data) with Safety Hub and ISDU

    ../../_images/Platziertes_Modul_auf_Steckplatz1_EN.jpg

    Module placed on slot 1

Note

The list of module entries is automatically doubled, as the secure IO-Link IO module consists of one sub-module each for secure and standard communication.

Assigning a secure I/O module to a slot

Before assigning to the desired slot, the two default entries Port deactivated and Empty submodule on the network module must be deleted. The BNI IOF-329-P02-Z038 security module can then be dragged and dropped under the tab Device view > Device overview to any IO-Link Port of the compatible Balluff network module as a new IO-Link data module.

../../_images/Eintraege_loeschen_EN.jpg

Delete entries Port deactivated and Empty submodule on the network module

The device data for the secure I/O module can be found in the Safety Hub submodule of the project planning software.

Configuring slot

  1. Delete default setting for the Port deactivated and Empty submodule entries.

    ../../_images/Default-Einstellung_loeschen_EN.jpg

    Deleting default setting

  2. Drag and drop the secure I/O module for the secure data from the Safety Hub submodule to the upper free slot. Place the submodule for the standard IO data in the slot below.

    ../../_images/E_A_Modul_platzieren_EN.jpg

    Placing I/O module

    ../../_images/Submodul_platzieren_EN.jpg

    Placing submodule

Note

For further configurations, see the Safety Hub guide.

Note

After integrating and configuring the module, the master must be restarted!

Diagnosis

Diagnosis message

The diagnosis message that the module generates in the event of an error is usually read out from the PLC and processed. It is also possible for the diagnosis to be read out and evaluated from the module using function modules.

The diagnosis message is 40 bytes long and split into 3 blocks (Block Header, Alarm Header, Alarm Item) (see table below).

Diagnosis message
Byte Value Meaning Block
0 0x00 Block Type Block Header
1 0x02
2 0x00 BlockLength
3 0x24
4 0x01 BlockVersion
5 0x00
6 0x00 AlarmType Alarm Header
7 XX
8 0x00 API (Application Process Identifier)
9 0x00
10 0x4E
11 0x01
12 0x00 SlotNumber
13 0x01
14 0x00 SubslotNumber
15 XX
16 0x00 ModuleIdentNumber (module identification)
17 0x00
18 XX
19 XX
20 XX SubmoduleIdentNumber (submodule identification)
21 XX
22 XX
23 XX
24 XX Alarm Specifier
25 XX
26 0x80 User Structure Identifier Alarm Item
27 0x02
28 0x80 ChannelNumber
29 0x00
30 XX ChannelProperties
31 0x00
32 0x95 ChannelErrorType
33 XX
34 XX ExtChannelErrorType
35 XX
36 0x00 reserved
37 0x00
38 0x00
39 0x00

Block Header

The first part of the diagnosis is the so-called Block Header, which is 6 bytes long.

BlockType

The first 2 bytes of the Block Header are written by the block type, in order to define the data type.

BlockType

Other values

Meaning

0x0002

Alarm Notification Low

BlockLength

2 bytes of data; Information about the length of the following diagnosis message (for the complete diagnosis message, the 2 bytes of the block type and the 2 bytes of the block length must be added together).

BlockVersion

Low Byte fixed at 0x00, High Byte fixed at 0x01.

Alarm Header

The second part of the diagnosis is known as the Alarm Header, which is 20 bytes long.

AlarmType

2 bytes of data; Information on the alarm type.

AlarmType

Other values

Meaning

0x0001

Diagnosis

0x0003

Pull

0x0004

Plug

0x000C

Diagnosis disappears

API

4 bytes of data; Application Process Identifier.

API

Other values

Meaning

0x00004E01

Administrative number

SlotNumber

2 bytes of data; defines which slot of the module is reporting an error.

SlotNumber

Other values

Meaning

0x0001

Slot 1, IO-Link Blocks

SubslotNumber

2 bytes of data; defines which subslot of the slot reports an error.

Network module Other values Meaning
IO-Link I/O ports or IO-Link I/O ports
(without IO data)
0x0002 Port 1 (Digital Port or IO-Link Port)
0x0003 Port 2 (Digital Port or IO-Link Port)
0x0004 Port 3 (Digital Port or IO-Link Port)
0x0005 Port 4 (Digital Port or IO-Link Port)
0x0006 Port 5 (Digital Port or IO-Link Port)
0x0007 Port 6 (Digital Port or IO-Link Port)
0x0008 Port 7 (Digital Port or IO-Link Port)
0x0009 Port 8 (Digital Port or IO-Link Port)
IO-Link I/O ports
(without IO data) with Safety-Hub
0x0002 Port 1 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x0004 Port 2 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x0006 Port 3 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x0008 Port 4 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x000A Port 5 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x000C Port 6 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x000E Port 7 (Digital Port, IO-Link Port or Safety IO-Link Port)
0x0010 Port 8 (Digital Port, IO-Link Port or Safety IO-Link Port)

ModuleIdentNumber

4 bytes of data; defines which module is plugged in to the respective slot (module identification is saved in the GSDML).

ModuleIdentNumber for devices with Class A

Other values

Meaning

0x0000005E

IO-Link I/O ports (without IO data) with Safety-Hub

0x00004E01

IO-Link-I/O-Ports

0x00004E04

IO-Link I/O ports (without IO data)

ModuleIdentNumber for devices with Class B

Other values

Meaning

0x0000505E

IO-Link I/O ports (without IO data) with Safety-Hub

0x00005E01

IO-Link-I/O-Ports

0x00005E04

IO-Link I/O ports (without IO data)

SubmoduleIdentNumber

4 bytes of data; defines which submodule is used in the respective module (submodule identification is stored in the GSDML).

Group Other values Meaning
IO-Link Digital IO 0x00008100 Digital Output
0x00000081 Digital Input
0x00004001 Digital Output w/o IO
0x00004002 Digital Input w/o IO
IO-Link Generic Devices 0x00000002 IOL_I_01_Byte + PQI
0x00000003 IOL_I_02_Byte + PQI
0x00000005 IOL_I_04_Byte + PQI
0x00000007 IOL_I_06_Byte + PQI
0x00000009 IOL_I_08_Byte + PQI
0x0000000B IOL_I_10_Byte + PQI
0x00000011 IOL_I_16_Byte + PQI
0x00000019 IOL_I_24_Byte + PQI
0x00000021 IOL_I_32_Byte + PQI
0x00000101 IOL_O_01_Byte + PQI
0x00000201 IOL_O_02_Byte + PQI
0x00000401 IOL_O_04_Byte + PQI
0x00000601 IOL_O_06_Byte + PQI
0x00000801 IOL_O_08_Byte + PQI
0x00000A01 IOL_O_10_Byte + PQI
0x00001001 IOL_O_16_Byte + PQI
0x00001801 IOL_O_24_Byte + PQI
0x00002001 IOL_O_32_Byte + PQI
0x00000102 IOL_I/O_01/01_Byte + PQI
0x00000203 IOL_I/O_02/02_Byte + PQI
0x00000403 IOL_I/O_02/04_Byte + PQI
0x00000205 IOL_I/O_04/02_Byte + PQI
0x00000405 IOL_I/O_04/04_Byte + PQI
0x00000803 IOL_I/O_02/08_Byte + PQI
0x00000805 IOL_I/O_04/08_Byte + PQI
0x00000209 IOL_I/O_08/02_Byte + PQI
0x00000409 IOL_I/O_08/04_Byte + PQI
0x00000809 IOL_I/O_08/08_Byte + PQI
0x00000A0B IOL_I/O_10/10_Byte + PQI
0x00002005 IOL_I/O_04/32_Byte + PQI
0x00000421 IOL_I/O_32/04_Byte + PQI
0x00002021 IOL_I/O_32/32_Byte + PQI
0x00001011 IOL_I/O_16/16_Byte + PQI
0x00001819 IOL_I/O_24/24_Byte + PQI
0x40000001 IOL_I_01_Byte
0x40000002 IOL_I_02_Byte
0x40000004 IOL_I_04_Byte
0x40000006 IOL_I_06_Byte
0x40000008 IOL_I_08_Byte
0x4000000A IOL_I_10_Byte
0x40000010 IOL_I_16_Byte
0x40000018 IOL_I_24_Byte
0x40000020 IOL_I_32_Byte
0x40000100 IOL_O_01_Byte
0x40000200 IOL_O_02_Byte
0x40000400 IOL_O_04_Byte
0x40000600 IOL_O_06_Byte
0x40000800 IOL_O_08_Byte
0x40000A00 IOL_O_10_Byte
0x40001000 IOL_O_16_Byte
0x40001800 IOL_O_24_Byte
0x40002000 IOL_O_32_Byte
0x40000101 IOL_I/O_01/01_Byte
0x40000202 IOL_I/O_02/02_Byte
0x40000402 IOL_I/O_02/04_Byte
0x40000204 IOL_I/O_04/02_Byte
0x40000404 IOL_I/O_04/04_Byte
0x40000802 IOL_I/O_02/08_Byte
0x40000804 IOL_I/O_04/08_Byte
0x40000208 IOL_I/O_08/02_Byte
0x40000408 IOL_I/O_08/04_Byte
0x40000808 IOL_I/O_08/08_Byte
0x40000A0A IOL_I/O_10/10_Byte
0x40002004 IOL_I/O_04/32_Byte
0x40000420 IOL_I/O_32/04_Byte
0x40002020 IOL_I/O_32/32_Byte
0x40001010 IOL_I/O_16/16_Byte
0x40001818 IOL_I/O_24/24_Byte
Safety-Hub 0x00000001 BNI IOF-329-P02-Z038 Safety I/O
0x00020002 BNI IOF-329-P02-Z038 Standard I/O
IO-Link Devices 0xFFFF0001 BNI IOL-101-000-XXXX
0xFFFF0002 BNI IOL-102-00X-XXXX
0xFFFF0003 BNI IOL-102-S01-XXXX
0xFFFF0FFF BNI IOL-104-00X-XXXX
0xFFFF0005 BNI IOL-104-002-X046
0xFFFF0006 BNI IOL-104-002-X046 extended
0xFFFF0007 BNI IOL-104-S02-XXXX extended with BNI IOL-104-S02-XXXX
0xFFFF0008 BNI IOL-104-S02-ZXXX extended with BNI IOL-751-VXX-K007
0xFFFF0009 BNI IOL-104-S02-RXXX extended with BNI IOL-751-VXX-K007
0xFFFF000A BNI IOL-104-S0X-XXXX
Group Other values Meaning
0xFFFF000B BNI IOL-252-000-XXXX
0xFFFF000C BNI IOL-252-S01-XXXX
0xFFFF000D BNI IOL-256-000-XXXX
0xFFFF000E BNI IOL-256-S01-XXXX
0xFFFF000F BNI IOL-302-00X-XXXX
0xFFFF0010 BNI IOL-302-002-X046
0xFFFF0011 BNI IOL-302-002-XXXX extended
0xFFFF0012 BNI IOL-302-002-X046 extended with BNI IOL-104-002-X046
0xFFFF0013 BNI IOL-302-S01-XXXX
0xFFFF0014 BNI IOL-302-S01-XXXX only Input and Output
0xFFFF0015 BNI IOL-302-S01-XXXX only Output
0xFFFF0016 BNI IOL-302-S01-XXXX-C01
0xFFFF0017 BNI IOL-302-S02-XXXX
0xFFFF0018 BNI IOL-302-S02-X026
0xFFFF0019 BNI IOL-309-00X-XXXX
0xFFFF001A BNI IOL-310-000-XXXX
0xFFFF001B BNI IOL-355-S02-XXXX
0xFFFF001C BNI IOL-719-002-XXXX
0xFFFF001D BNI IOL-771-000-XXXX
0xFFFF001E BNI IOL-772-000-XXXX
0xFFFF001F BNI IOL-800-000-Z036
0xFFFF0020 BNI IOL-800-000-Z037
0xFFFF0021 BNI IOL-801-000-Z036
0xFFFF0022 BNI IOL-801-000-Z037
0xFFFF0023 BNI IOL-802-000-Z036
0xFFFF0024 BNI IOL-802-000-Z037
0xFFFF0025 BIS M-4XX-045
0xFFFF0026 BIS M-4XX-072
0xFFFF0027 BIS L-4XX-045
0xFFFF0028 BNI IOL-709-000-XXXX (10 Byte Input)
0xFFFF0029 BNI IOL-710-000-XXXX (10 Byte Input)
0xFFFF002A BNI IOL-727-S51-XXXX (16 Byte Input and 1 Byte Output)
0xFFFF002B BNI IOL-728-S51-XXXX (23 Byte Input and 0 Byte Output)

Alarm Specifier

2 bytes of data; Alarm Specifier is divided as follows:

Sequence Number (Bit 0…10)

This counter is incremented with each new diagnostic message.

Channel Diagnosis (Bit 11)

Channel Diagnosis

Other values

Meaning

0x00

No channel-based diagnosis available

0x01

Channel-based diagnosis available

Manufacturer Specific Diagnosis (Bit 12)

Other values

Meaning

0x00

No manufacturer-based diagnosis available

0x01

Manufacturer-based diagnosis available

Submodule Diagnosis State (Bit 13)

Other values

Meaning

0x00

No further diagnosis of the submodule available

0x01

At least one further diagnosis of the submodule available

Reserved (Bit 14)

AR Diagnosis State (Bit 15)

Other values

Meaning

0x00

No further diagnosis of the module available

0x01

At least one further diagnosis of the module available

Alarm Item

The third part of the diagnostics is known as the Alarm Item, which is 14 bytes long.

User Structure Identifier

2 bytes of data; defines the type of diagnostics.

User Structure Identifier

Other values

Meaning

0x8002

Extended Channel Diagnosis

0x8100

Alarm Head Maintenance

0x8000

Channel-based diagnosis

ChannelNumber

2 bytes of data; defines the channel number.

ChannelNumber

Other values

Meaning

0x8000

Submodule

ChannelProperties

2 bytes of data; Channel Properties are divided as follows:

Type (Bit 0…7)

Other values

Meaning

0x00

Complete submodule

Accumulative (Bit 8)

Other values

Meaning

0x00

Not used.

Maintenance (Bit 9 and 10)

Other values

Meaning

0x00

Not used.

Specifier (Bit 11 and 12)

Other values

Meaning

0x00

Not used.

0x01

Diagnosis occurred.

0x02

Diagnosis done.

0x03

Diagnosis done but another is still active.

Direction (Bit 13…15)

Other values

Meaning

0x00

Not used.

ChannelErrorType

2 bytes of data; Information on the error type.

ChannelErrorType

Other values

Meaning

0x9500

IO-Link device events in the lower range (0x0000-0x7FFF)

0x9501

IO-Link device events in the upper range (0x8000-0xFFFF)

0x9502

IO-Link port events in the lower range (0x0000-0x7FFF)

0x9503

IO-Link port events in the upper range (0x8000-0xFFFF)

If User Structure Identifier has the value 0x8000, the module-related errors are displayed here:

Module-related errors

Error code

Meaning

0x0002

Undervoltage

0x0003

Overvoltage

0x0105

Undervoltage of the actuator supply

0x0104

No actuator supply

ExtChannelErrorType

2 bytes of data; Information on the error type.

ChannelErrorType ExtChannelErrorType (EventCode) Error text Help text
IO-Link device events in the lower range (9500) 0x1000 General malfunction Unknown error
0x4000 Temperature fault Overload
0x4210 Device temperature exceeded. Remove heat source.
0x4220 Device temperature undershot. Insulate the device.
0x5000 Fault in the device hardware Replace the device.
0x5010 Malfunction of a component Repair or replace
0x5011 Loss of non-volatile memory Check batteries.
0x5012 Batteries weak Replace batteries.
0x5100 General fault in the power supply Check availability.
0x5101 Fuse blown/open. Replace fuse.
0x5110 Primary supply voltage
exceeded.
Check tolerance.
0x5111 Primary supply voltage
undershot.
Check tolerance.
0x5112 Fault in the secondary
supply voltage (Port Class B)
Check tolerance.
0x6000 Fault in the device software Check firmware version.
0x6320 Parameter error Check data sheet and values.
0x6321 Parameter missing. Check data sheet.
0x6350 Parameters changed. Check configuration.
0x7700 Wire break of subordinate device Check installation.
0x7701 Wire break of subordinate device 1 Check installation.
0x7702 Wire break of subordinate device 2 Check installation.
0x7703 Wire break of subordinate device 3 Check installation.
0x7704 Wire break of subordinate device 4 Check installation.
0x7705 Wire break of subordinate device 5 Check installation.
0x7706 Wire break of subordinate device 6 Check installation.
0x7707 Wire break of subordinate device 7 Check installation.
0x7708 Wire break of subordinate device 8 Check installation.
0x7709 Wire break of subordinate device 9 Check installation.
0x770A Wire break of subordinate device 10 Check installation.
0x770B Wire break of subordinate device 11 Check installation.
0x770C Wire break of subordinate device 12 Check installation.
0x770D Wire break of subordinate device 13 Check installation.
0x770E Wire break of subordinate device 14 Check installation.
0x770F Wire break of subordinate device 15 Check installation.
0x7710 Short circuit Check installation.
0x7711 Grounding fault Check installation.
ChannelErrorType ExtChannelErrorType (EventCode) Error text Help text
IO-Link device events in the upper range (9501) 0x0C00 Technology-specific application errors Reset device.
0x0C01 Simulation active. Check operating mode.
0x0C10 Process variable range exceeded. Process data uncertain
0x0C20 Measuring range exceeded. Check application.
0x0C30 Process variable range undershot. Process data uncertain
0x0C40 Maintenance required – Cleaning Clean device.
0x0C41 Maintenance required – Top up Top up the device.
0x0C42 Required maintenance – Wear and tear Replace wearing parts.
IO-Link device events in the lower range (9502) 0x17FF Process data does not match. Check submodule configuration.
0x1800 No device
0x1801 Error during start parameterization Check parameters.
0x1802 Incorrect Vendor ID Inspection level inconsistent
0x1803 Incorrect device ID Inspection level inconsistent
0x1804 Short circuit at C/Q Check cable connection.
0x1805 IO-Link PHY above temperature
0x1806 Short circuit at L+ Check cable connection.
0x1807 Undervoltage at L+ Check power supply
(e.g. L1+).
0x1808 Overflow of device event
0x1809 Backup inconsistent Memory out of range (2k)
0x180A Backup inconsistent Data memory index not available
0x180B Backup inconsistent Data memory unspecific errors
0x180C Backup inconsistent Error during upload
0x180D Backup inconsistent Error during download
0x180E P24 (Class B) missing or undervoltage Check cable connection
(e.g. L2+).
0x180F Short circuit at P24 (Class B) Check cable connection
(e.g. L2+).
0x1810 Short circuit at I/Q Check cable connection.
0x1811 Short circuit at C/Q (Digital Output) Check cable connection.
0x1812 Overcurrent at I/Q Check load.
0x1813 Overcurrent at C/Q (Digital Output) Check load.
0x1883 S7-PCT configuration error
(incorrect or inconsistent parameterization)
Check parameterization.
0x1888 Module defective Replace module.
0x6000 Invalid cycle time Check cycle time.
0x6001 Version error Incompatible protocol version
0x6002 ISDU batch failed. Parameters inconsistent

Profinet diagnostic module – Pin 4/2 Actor Ground Short Circuit Detection

If a short circuit is detected at a port on the pin, the corresponding bit is set to 1.

Byte 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Port 8 Pin 4 Port 7 Pin 4 Port 6 Pin 4 Port 5 Pin 4 Port 4 Pin 4 Port 3 Pin 4 Port 2 Pin 4 Port 1 Pin 4
Byte 0 Bit 7 (15) Bit 6 (14) Bit 5 (13) Bit 4 (12) Bit 3 (11) Bit 2 (10) Bit 1 (9) Bit 0 (8)
Port 8 Pin 2 Port 7 Pin 2 Port 6 Pin 2 Port 5 Pin 2 Port 4 Pin 2 Port 3 Pin 2 Port 2 Pin 2 Port 1 Pin 2

Profinet module – Short Circuit and Actor Warning Detection

If an error with the following modules occurs, the corresponding bit is set to true:

  • Pin 1 Short Circuit Detection

  • Pin 4/2 Actor Warning Detection

  • Pin 4/2 Actor Ground Short Circuit Detection

  • Pin 4 IO-Link Short Circuit Detection

Profinet module – Short Circuit and Actor Warning Detection

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Port 8

Port 7

Port 6

Port 5

Port 4

Port 3

Port 2

Port 1

If an IO-Link short circuit is detected at a port on pin 4, the corresponding bit is set to 1. The port must be configured to IO-Link.

Profinet diagnostic module – Pin 4 IO-Link Short Circuit Detection

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Port 8 Pin 4

Port 7 Pin 4

Port 6 Pin 4

Port 5 Pin 4

Port 4 Pin 4

Port 3 Pin 4

Port 2 Pin 4

Port 1 Pin 4

If there is a pending IO-Link device event at any connection, the corresponding bit is set to 1.

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Port 8

Port 7

Port 6

Port 5

Port 4

Port 3

Port 2

Port 1

Profinet diagnostic module – Pin 4/2 Actor Warning Detection

If pin 2/4 of connection x (where x is a number between 1 and 8) is configured to:

  • OUTPUT (Pin 2/4)

    • If the voltage is low and an external voltage is applied, the bit is set to true.

    • If high-controlled (UA is missing; therefore the output is physically low) and an external voltage is applied, the bit is set to true.

  • POWER (Pin 2)

    • If UA is missing and external voltage is applied, the bit is set to true.

Byte 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
Port 8 Pin 4 Port 7 Pin 4 Port 6 Pin 4 Port 5 Pin 4 Port 4 Pin 4 Port 3 Pin 4 Port 2 Pin 4 Port 1 Pin 4
Byte 0 Bit 7 (15) Bit 6 (14) Bit 5 (13) Bit 4 (12) Bit 3 (11) Bit 2 (10) Bit 1 (9) Bit 0 (8)
Port 8 Pin 2 Port 7 Pin 2 Port 6 Pin 2 Port 5 Pin 2 Port 4 Pin 2 Port 3 Pin 2 Port 2 Pin 2 Port 1 Pin 2

Profinet module – Port Event Pending

If an upcoming event is detected, the bit for the port is set to 1. If an outgoing event is sent for this event, the bit is reset to 0.

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Port 8

Port 7

Port 6

Port 5

Port 4

Port 3

Port 2

Port 1