boards/shields/x_nucleo_iks5a1/doc/index.rst
.. _x-nucleo-iks5a1:
X-NUCLEO-IKS5A1: MEMS Inertial and Environmental Multi sensor shield ####################################################################
Overview
The X-NUCLEO-IKS5A1 is an industrial motion MEMS and environmental sensor evaluation board kit composed by:
The X-NUCLEO-IKS5A1 expansion board allows application development with features like FSM, MLC, ISPU, and sensor hub (with ISM330IS and ISM6HG256X onboard).
.. image:: img/x-nucleo-iks5a1.jpg :align: center :alt: X-NUCLEO-IKS5A1
More general information about the board can be found at the
X-NUCLEO-IKS5A1 website_.
Hardware Description
X-NUCLEO-IKS5A1 provides the following key features:
Wide range of industrial motion and environmental sensors:
DIL24 socket and industrial connectors for external sensors
Compatible with X-CUBE-MEMS1, an expansion software package for STM32Cube
I2C sensor hub features on ISM330IS and ISM6HG256X available
Supported by MEMS-Studio, a software solution for MEMS sensors with graphical no-code design of algorithms and development of embedded AI features
Compatible with STM32 Nucleo boards
Equipped with Arduino UNO R3 connector
RoHS compliant and WEEE compliant
Hardware Configuration
X-NUCLEO-IKS5A1 board can be configured in five different modes, which can be
selected through J4 and J5 jumpers. Additional information about X-NUCLEO-IKS5A1
configuration modes and how sensors are connected together can be found in the
X-NUCLEO-IKS5A1 user manual_
.. _x-nucleo-iks5a1-mode-1:
In standard I2C mode, all devices are connected to an external main board via the same I2C bus.
The board configuration is:
.. _x-nucleo-iks5a1-mode-2:
In this sensor hub I2C mode, it is possible to power up the 6-axes inertial measurement unit (IMU) functionalities by collecting external data through a direct control of the on-board environmental sensors (magnetometer, sensor) and external sensor (DIL24) through the auxiliary I2C bus "SENS_I2C". ISM6HG256X and IIS2DULPX remain connected to the main bus "uC_I2C" coming from the external boards.
The board configuration is:
.. _x-nucleo-iks5a1-mode-3:
In this sensor hub I2C mode, it is possible to power up the 6-axes IMU functionalities by collecting external data through a direct control of the on-board environmental sensors (magnetometer, sensor) and external sensor (DIL24) through the auxiliary I2C bus "SENS_I2C". ISM330IS and IIS2DULPX remain connected to the main bus "uC_I2C" coming from the external boards.
The board configuration is:
In this case, a sensor with embedded sensor hub functionality is mounted to the X-NUCLEO-IKS5A1 through the DIL24 adapter to exploit this functionality, as for ISM330IS and ISM6HG256X.
The board configuration is:
In X-NUCLEO-IKS5A1, there is the possibility to use SPI instead of I2C using the DIL24 adapter. In this configuration, all lines bypass the level shifter. For this reason, the signal must be 3.3 V instead of 1.8 V (default).
The board configuration is:
Devicetree Overlays
There is one predefined DT overlay in the board:
boards/shields/x_nucleo_iks5a1/x_nucleo_iks5a1.overlay
This overlay describes sensor connections as explained in Standard Mode
(:ref:x-nucleo-iks5a1-mode-1).
The sensor currently supported are ISM6HG256X, IIS2MDC and ILPS22QS.Samples
The sensors on shield can be accessed using generic samples.
Let's see few examples assuming the shield is on top of a
:zephyr:board:nucleo_h503rb board.
6dof_fifo_stream sample:.. zephyr-app-commands:: :zephyr-app: samples/sensor/6dof_fifo_stream :board: nucleo_h503rb :shield: x_nucleo_iks5a1 :goals: build flash :gen-args: -DEXTRA_DTC_OVERLAY_FILE="x_nucleo_iks5a1.overlay" -DEXTRA_CONF_FILE="x_nucleo_iks5a1.conf" :compact:
accel_polling sample:.. zephyr-app-commands:: :zephyr-app: samples/sensor/accel_polling :board: nucleo_h503rb :shield: x_nucleo_iks5a1 :goals: build flash :compact:
pressure_polling sample:.. zephyr-app-commands:: :zephyr-app: samples/sensor/pressure_polling :board: nucleo_h503rb :shield: x_nucleo_iks5a1 :goals: build flash :compact:
magn-trig sample:.. zephyr-app-commands:: :zephyr-app: samples/sensor/magn_trig :board: nucleo_h503rb :shield: x_nucleo_iks5a1 :goals: build flash :compact:
See also :ref:shields for more details.
.. _X-NUCLEO-IKS5A1 website: https://www.st.com/en/evaluation-tools/x-nucleo-iks5a1.html
.. _X-NUCLEO-IKS5A1 user manual: https://www.st.com/resource/en/user_manual/um3550-getting-started-with-the-xnucleoiks5a1-motion-mems-and-environmental-sensor-expansion-board-for-stm32-nucleo-stmicroelectronics.pdf