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:

  • X-NUCLEO-IND5A1: the main board, it hosts the motion MEMS and environmental sensors.

  • STEVAL-MKGI07A: a detachable add-on board, which hosts two industrial connectors.

The X-NUCLEO-IKS5A1 expansion board allows application development with features like FSM, MLC, ISPU, and sensor hub (with ISM330IS and ISM6HG256X onboard).

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:

    • ISM6HG256X: intelligent IMU with simultaneous low-g and high-g acceleration detection

    • ISM330IS: 6-axis IMU, always-on 3-axis accelerometer and 3-axis gyroscope with ISPU

    • IIS2DULPX: intelligent ultralow power accelerometer for industrial applications

    • ILPS22QS: dual full-scale, 1260 hPa and 4060 hPa, absolute digital output barometer

    • IIS2MDC: high accuracy, ultralow power, 3-axis digital output magnetometer

  • 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

Mode 1: Standard Mode

In standard I2C mode, all devices are connected to an external main board via the same I2C bus.

The board configuration is:

  • J4: 1-2, 9-10 (HUB2_SCx = GND, STM_SCL = SENS_SCL)

  • J5: 1-2, 9-10 (HUB2_SDx = GND, STM_SDA = SENS_SDA)

  • JP6, JP8, JP9, JP10 closed in I2C

Mode 2: ISM330IS SensorHub Mode (SHUB2)

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:

  • J4: 3-4 (HUB1_SCx = SENS_SCL)

  • J5: 3-4 (HUB1_SDx = SENS_SDA)

Mode 3: ISM6HG256X I2C sensor hub

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:

  • J4: 5-6 (HUB_SCx = SENS_SCL)

  • J5: 5-6 (HUB_SDx = SENS_SDA)

Mode 4: DIL24 SensorHub Mode

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:

  • J4: 7-8 (DIL_SDx = SENS_SDA)

  • J5: 7-8 (DIL_SDx = SENS_SDA)

Mode 5: DIL24 SPI communication

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:

  • Close jumper JP7 to select 3.3 V instead of 1.8 V.

  • Desolder SB39 and solder SB38 to select VDDIO as VDD.

  • Close JP6, JP8, JP9, and JP10 to 2-3 to select SPI communication.

  • Remove SB40 and SB4 and solder SB42 and SB43 (INT1 and INT2

Devicetree Overlays

There is one predefined DT overlay in the board:

Samples

The sensors on shield can be accessed using generic samples. Let’s see few examples assuming the shield is on top of a Nucleo H503RB board.

west build -b nucleo_h503rb --shield x_nucleo_iks5a1 samples/sensor/6dof_fifo_stream -- -DEXTRA_DTC_OVERLAY_FILE="x_nucleo_iks5a1.overlay" -DEXTRA_CONF_FILE="x_nucleo_iks5a1.conf"
west flash
west build -b nucleo_h503rb --shield x_nucleo_iks5a1 samples/sensor/accel_polling
west flash
west build -b nucleo_h503rb --shield x_nucleo_iks5a1 samples/sensor/pressure_polling
west flash
west build -b nucleo_h503rb --shield x_nucleo_iks5a1 samples/sensor/magn_trig
west flash

See also Shields for more details.