Getting started with the FP-IND-IODSNS1 STM32Cube function pack for IO-Link
industrial sensor node
Introduction
FP-IND-IODSNS1 is an STM32Cube function pack which lets you enable IO-Link communication between P-NUCLEOIOD02A1
The function pack integrates an IO-Link demo-stack and the management of the industrial sensors mounted on the X-NUCLEO-
IKS02A1.
FP-IND-IODSNS1 also includes the IODD file to be uploaded to your IO-Link master.
The software included in the package can be used in three integrated development environments (IDEs): IAR, KEIL and
STM32CubeIDE.
Visit the STM32Cube ecosystem web page on www.st.com for further information
kit and an IO-Link master through the L6364Q transceiver mounted on the X-NUCLEO-IOD02A1.
RELATED LINKS
UM2796 - Rev 1 - December 2020
For further information contact your local STMicroelectronics sales office.
www.st.com
Page 2
FP-IND-IODSNS1
Application
STM32Cube Hardware Abstraction Layer
Middleware
Hardware
Abstraction
Hardware
STM32 Nucleo development board
IO-Link Stack
MEMs and Digital
Microphone Manager
STM32 Nucleo expansion boards
X-NUCLEO-IOD02A1
X-NUCLEO-IKS02A1
FP-IND-IODSNS1 software expansion for STM32Cube
1FP-IND-IODSNS1 software expansion for STM32Cube
1.1Overview
UM2796
FP-IND-IODSNS1 is an STM32 ODE function pack and expands STM32Cube functionality
The software package enables the IO-Link data transfer of industrial sensors on the X-NUCLEO-IKS02A1 to an
IO-Link Master connected to the X-NUCLEO-IOD02A1.
The key package features are:
•Complete firmware to build IO-Link device applications for STM32L452RE-based boards
•Middleware libraries featuring IO-Link device mini-stack for L6364Q and MEMS plus digital microphone
management
•Ready-to-use binary for IO-Link device sensor data transmission
•Easy portability across different MCU families, thanks to STM32Cube
•Free, user-friendly license terms
1.2Architecture
The application software accesses the X-NUCLEO-IKS02A1 and the X-NUCLEO-IOD02A1 expansion boards
through the following software layers:
•
the STM32Cube HAL layer, which provides a simple, generic, multi-instance set of application programming
interfaces (APIs) to interact with the upper application, library and stack layers. It has generic and extension
APIs and is directly built around a generic architecture and allows successive layers like the middleware
layer to implement functions without requiring specific hardware configurations for a given microcontroller
unit (MCU). This structure improves library code reusability and guarantees an easy portability on other
devices.
•the board support package (BSP) layer, which supports all the peripherals on the STM32 Nucleo except
the MCU. This limited set of APIs provides a programming interface for certain board-specific peripherals
like the LED, the user button, etc. This interface also helps in identifying the specific board version.
.
Figure 1. FP-IND-IODSNS1 software architecture
UM2796 - Rev 1
page 2/11
Page 3
1.3Folder structure
The following folders are included in the software package:
•_htmresc: contains graphics for html documents
•Documentation: contains a compiled HTML help file generated from the source code detailing the software
components and APIs (one for each project).
•Drivers: contains the HAL drivers and the board-specific drivers for each supported board or hardware
platform, including those for the on-board components, and the CMSIS vendor-independent hardware
abstraction layer for the ARM Cortex-M processor series.
•Middlewares: libraries and protocols featuring IO-Link mini-stack and sensors management.
•Projects: contains the sample application implementing an Industrial IO-Link multi-sensor node. This
application is provided for the NUCLEO-L452RE platform with three development environments: IAR
Embedded W
orkbench for ARM, MDK-ARM software development environment and STM32CubeIDE.
UM2796
Folder structure
Figure 2. FP-IND-IODSNS1 package folder structure
1.4APIs
Detailed technical information with full user API function and parameter description are in a compiled HTML file in
the “Documentation” folder
.
1.5Sample application description
The sample application is provided in the Projects folder, using the X-NUCLEO-IOD02A1 with the L6364Q
transceiver and the X-NUCLEO-IKS02A1 with the industrial MEMS and digital microphone.
Ready-to-build projects are available for multiple IDEs. You can upload one of the binary files provided in the
FP-IND-IODSNS1 via STM32 ST-LINK Utility, STM32CubeProgrammer or the programming feature in your IDE.
To evaluate the FP-IND-IODSNS1 firmware, it is necessary to upload the IODD file to the control tool of your IOLink Master and connect it to the X-NUCLEO-IOD02A1 by a 3-wire cable (L+, L-/GND, CQ). Section 2.3 shows
an example where the IO-Link Master is the P-NUCLEO-IOM01M1 and the related control tool is the IO-Link
Control Tool developed by TEConcept (ST partner). Alternatively, you can use another IO-Link Master with the
related control tool.
UM2796 - Rev 1
page 3/11
Page 4
2System setup guide
2.1Hardware description
2.1.1P-NUCLEO-IOD02A1 STM32 Nucleo pack
The P-NUCLEO-IOD02A1 is an STM32 Nucleo pack composed of the X-NUCLEO-IOD02A1 and X-NUCLEOIKS02A1 expansion boards stacked on the NUCLEO-L452RE development board.
The X-NUCLEO-IOD02A1 features an IO-Link device transceiver for the physical connection to an IO-Link
, while the X-NUCLEO-IKS02A1 features a multi-sensor board for industrial applications, and the
master
NUCLEO-L452RE features the necessary hardware resources to run the FP-IND-IODSNS1 function pack and
to control the transceiver and multi-sensor boards.
The FP-IND-IODSNS1 combines an IO-Link demo stack library (derived from X-CUBE-IOD02) with the X-CUBE-
MEMS1 and features an example of IO-Link device multi-sensor node.
The P-NUCLEO-IOD02A1 can be used for evaluation purpose and as development environment.
The STM32 Nucleo pack provides an affordable and easy-to-use solution for the development of IO-Link and SIO
applications, evaluation of L6364Q communication features and robustness, together with the STM32L452RET6U
computation performance.
UM2796
System setup guide
Figure 3. P-NUCLEO-IOD02A1 STM32 Nucleo pack
UM2796 - Rev 1
page 4/11
Page 5
2.1.2P-NUCLEO-IOM01M1 STM32 Nucleo pack
The P-NUCLEO-IOM01M1 is an STM32 Nucleo pack composed of the STEV
F446RE boards. The STEVAL-IOM001V1 is a single IO-Link master PHY layer (L6360) while the NUCLEO-
F446RE runs an IO-Link stack rev 1.1 (developed by and property of TEConcept GmbH, license limited to
10k minutes, renewable without additional costs). IO-Link stack update is allowed exclusively by following the
procedure described in UM2421 (freely available at www.st.com). Any other erase/overwrite of the pre-loaded
stack makes impossible to restore it.
The STM32 Nucleo pack provides an affordable and easy-to-use solution for the evaluation of IO-Link
applications, L6360 communication features and robustness, together with the STM32F446RET6 computation
performance. The pack, hosting up to four STEVAL-IOM001V1 to build a quad port IO-Link master, can access
the IO-Link physical layer and communicate with IO-Link Devices.
One STM32 Nucleo pack for IO-Link device applications (order code: P-NUCLEO-IOD02A1)
1.
2.
One STM32 Nucleo pack for IO-Link master with IO-Link v1.1 PHY and stack (order code: P-NUCLEO-
IOM01M1
3.A 3-wire cable (L+, L-/GND, CQ)
)
2.3How to control the P-NUCLEO-IOD02A1 IO-Link device through the P-NUCLEO-
IOM01M1 IO-Link master
Step 1.Connect the P-NUCLEO-IOM01M1
CQ- refer to the board serigraphy).
Step 2.Connect the
The following figure shows how to connect the P-NUCLEO-IOM01M1 and theP-NUCLEO-IOD02A1
running the FP-IND-IODSNS1 firmware.
Step 3.Launch the IO-Link Control Tool on your laptop/PC.
Step 4.Connect by mini-USB cable the P-NUCLEO-IOM01M1
laptop/PC.
Next steps (5 to 13) refer to actions to be performed on the IO-Link Control Tool.
P-NUCLEO-IOM01M1 to a 24 V/0.5 A power supply.
and the P-NUCLEO-IOD02A1 via the 3-wire cable (L+, L-/GND and
Figure 5. Terminal settings
running the IO-Link Control T
ool to your
UM2796 - Rev 1
Step 5.Upload the P-NUCLEO-IOD02A1 IODD to the IO-Link Control Tool by clicking on [Select device] and
following the instructions to upload the proper IODD (xml format) file available in the IODD directory of
the software package.
IODD files are provided for both COM2 (38.4 kBd) and COM3 (230.4 kBd) baud rates.
Step 6.Connect the Master by clicking on the green icon (top left corner).
Step 7.Click on [Power ON] to supply the P-NUCLEO-IOD02A1 (red LED on the X-NUCLEO-IOD02A1
blinks).
Step 8.Click on [IO-Link] to start an IO-Link Communication (green LED on X-NUCLEO-IOD02A1 blinks).
By default, the communication with IIS2DLPC starts.
Step 9.Click on [Plot] to plot the collected data.
page 6/11
Page 7
UM2796
Software setup
Step 10. T
o activate the data-exchange with another sensor, go to [Parameter Menu]>[Process Input
Selection], then double click on the sensor name (green text), select the desired sensor from the
available choices.
To finally align the Master and the Device, it is necessary to click on [Write Selected]. The procedure is
completed when the name of the selected sensor becomes green.
Figure 6. IO-Link Control Tool view (example)
Step 11. When you finish your evaluation session, click on
Step 12. Clicking on [Power Off] to make the IO-Link Master stop supplying the IO-Link Device.
Step 13. Click con [Disconnect] to stop the communication between IO-Link Control Tool and P-NUCLEO-
IOM01M1.
Step 14. Disconnect the mini-USB cable and the 24 V supply from the P-NUCLEO-IOM01M1.
2.4Software setup
The following software components are needed to set up a suitable development environment to create
applications for IO-Link applications for NUCLEO-L452RE and L6364Q:
•FP-IND-IODSNS1 firmware and related documentation available on www
•One of the following development tool-chain and compilers:
–IAR Embedded Workbench for ARM® toolchain + ST-LINK/V2
–RealView Microcontroller Development Kit toolchain (MDK-ARM software development environment +
ST-LINK/V2)
–STM32CubeIDE + ST-LINK/V2
[Inactive] to stop IO-Link communication.
.st.com
UM2796 - Rev 1
page 7/11
Page 8
Revision history
UM2796
Table 1. Document revision history
DateVersionChanges
04-Dec-20201Initial release.
UM2796 - Rev 1
page 8/11
Page 9
UM2796
Contents
Contents
1FP-IND-IODSNS1 software expansion for STM32Cube ..............................2
STMicroelectronics NV and its subsidiaries (“ST”) reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST
products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST
products are sold pursuant to ST’
Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of
Purchasers’ products.
No license, express or implied, to any intellectual property right is granted by ST herein.
Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product.
ST and the ST logo are trademarks of ST. For additional information about ST trademarks, please refer to www
names are the property of their respective owners.
Information in this document supersedes and replaces information previously supplied in any prior versions of this document.
s terms and conditions of sale in place at the time of order acknowledgement.