zephyr/boards/shields/x_nucleo_iks4a1/x_nucleo_iks4a1.overlay
Armando Visconti cc3040aed6 boards/shields: add support for x-nucleo-iks4a1 shield
x-nucleo-iks4a1 shield is an arduino compatible companion board
which can be used on top of Nucleo standard boards for industrial
applications. Following MEMS sensor are currently supported:

    - LSM6DSO16IS: MEMS 3D accelerometer + 3D gyroscope
    - LSM6DSV16X: MEMS 3D accelerometer + 3D gyroscope
    - LIS2MDL: MEMS 3D magnetometer
    - LPS22DF: Low-power and high-precision MEMS pressure sensor

(https://www.st.com/resource/en/data_brief/x-nucleo-iks4a1.pdf)

The board exports three overlays:

    1. x_nucleo_iks4a1.overlay (standard mode)

       All MEMS sensors are connected to micro-controller.

    2. x_nucleo_iks4a1_shub1.overlay (HUB1 mode)

       LSM6DSV16X IMU sensor act as a sensor_hub with LIS2MDL and
       LPS22DF connected to it.

    3. x_nucleo_iks4a1_shub2.overlay (HUB2 mode)

       LSM6DSO16IS IMU sensor act as a sensor_hub with LIS2MDL and
       LPS22DF connected to it.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2024-01-25 18:26:40 +00:00

49 lines
1.1 KiB
Plaintext

/*
* Copyright (c) 2024 STMicroelectronics
*
* SPDX-License-Identifier: Apache-2.0
*/
/ {
aliases {
magn0 = &lis2mdl_1e_x_nucleo_iks4a1;
accel0 = &lsm6dso16is_6a_x_nucleo_iks4a1;
accel1 = &lsm6dsv16x_6b_x_nucleo_iks4a1;
press0 = &lps22df_5d_x_nucleo_iks4a1;
};
};
&arduino_i2c {
lsm6dso16is_6a_x_nucleo_iks4a1: lsm6dso16is@6a {
compatible = "st,lsm6dso16is";
reg = <0x6a>;
accel-odr = <0x1b>;
gyro-odr = <0x11>;
irq-gpios = <&arduino_header 5 GPIO_ACTIVE_HIGH>; /* A5 (PC0) */
drdy-pin = <1>;
};
lsm6dsv16x_6b_x_nucleo_iks4a1: lsm6dsv16x@6b {
compatible = "st,lsm6dsv16x";
reg = <0x6b>;
accel-odr = <0x02>;
gyro-odr = <0x02>;
int2-gpios = <&arduino_header 10 GPIO_ACTIVE_HIGH>; /* D4 (PB5) */
drdy-pin = <2>;
drdy-pulsed;
};
lis2mdl_1e_x_nucleo_iks4a1: lis2mdl@1e {
compatible = "st,lis2mdl";
reg = <0x1e>;
irq-gpios = <&arduino_header 2 GPIO_ACTIVE_HIGH>; /* A2 (PA4) */
};
lps22df_5d_x_nucleo_iks4a1: lps22df@5d {
compatible = "st,lps22df";
reg = <0x5d>;
drdy-pulsed;
drdy-gpios = <&arduino_header 12 GPIO_ACTIVE_HIGH>; /* D6 (PB10) */
};
};