| # Copyright (c) 2023 STMicroelectronics |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| description: | |
| When setting the accel-range, accel-odr, gyro-range, gyro-odr properties in |
| a .dts or .dtsi file you may include lsm6dsv16x.h and use the macros |
| defined there. |
| |
| Example: |
| #include <zephyr/dt-bindings/sensor/lsm6dsv16x.h> |
| |
| lsm6dsv16x: lsm6dsv16x@0 { |
| ... |
| |
| accel-range = <LSM6DSV16X_DT_FS_8G>; |
| accel-odr = <LSM6DSV16X_DT_ODR_AT_60Hz>; |
| gyro-range = <LSM6DSV16X_DT_FS_4000DPS>; |
| gyro-odr = <LSM6DSV16X_DT_ODR_AT_60Hz>; |
| }; |
| |
| include: sensor-device.yaml |
| |
| properties: |
| int1-gpios: |
| type: phandle-array |
| description: | |
| INT1 pin |
| |
| This pin defaults to active high when produced by the sensor. |
| The property value should ensure the flags properly describe |
| the signal that is presented to the driver. |
| |
| int2-gpios: |
| type: phandle-array |
| description: | |
| INT2 pin |
| |
| This pin defaults to active high when produced by the sensor. |
| The property value should ensure the flags properly describe |
| the signal that is presented to the driver. |
| |
| drdy-pin: |
| type: int |
| default: 1 |
| enum: |
| - 1 # drdy is generated from INT1 |
| - 2 # drdy is generated from INT2 |
| description: | |
| Select DRDY pin number (1 or 2). |
| |
| This number represents which of the two interrupt pins |
| (INT1 or INT2) the drdy line is attached to. This property is not |
| mandatory and if not present it defaults to 1 which is the |
| configuration at power-up. |
| |
| accel-range: |
| type: int |
| default: 0 |
| description: | |
| Range in g. Default is power-up configuration. |
| |
| - 0 # LSM6DSV16X_DT_FS_2G (0.061 mg/LSB) |
| - 1 # LSM6DSV16X_DT_FS_4G (0.122 mg/LSB) |
| - 2 # LSM6DSV16X_DT_FS_8G (0.244 mg/LSB) |
| - 3 # LSM6DSV16X_DT_FS_16G (0.488 mg/LSB) |
| |
| enum: [0, 1, 2, 3] |
| |
| accel-odr: |
| type: int |
| default: 0x0 |
| description: | |
| Specify the default accelerometer output data rate expressed in samples per second (Hz). |
| The values are taken in accordance to lsm6dsv16x_data_rate_t enumerative in hal/st |
| module. Please note that this values will not change the operating mode, which will remain |
| High Performance (device default) |
| Default is power-up configuration. |
| |
| - 0x00 # LSM6DSV16X_DT_ODR_OFF |
| - 0x01 # LSM6DSV16X_DT_ODR_AT_1Hz875 |
| - 0x02 # LSM6DSV16X_DT_ODR_AT_7Hz5 |
| - 0x03 # LSM6DSV16X_DT_ODR_AT_15Hz |
| - 0x04 # LSM6DSV16X_DT_ODR_AT_30Hz |
| - 0x05 # LSM6DSV16X_DT_ODR_AT_60Hz |
| - 0x06 # LSM6DSV16X_DT_ODR_AT_120Hz |
| - 0x07 # LSM6DSV16X_DT_ODR_AT_240Hz |
| - 0x08 # LSM6DSV16X_DT_ODR_AT_480Hz |
| - 0x09 # LSM6DSV16X_DT_ODR_AT_960Hz |
| - 0x0a # LSM6DSV16X_DT_ODR_AT_1920Hz |
| - 0x0b # LSM6DSV16X_DT_ODR_AT_3840Hz |
| - 0x0c # LSM6DSV16X_DT_ODR_AT_7680Hz |
| - 0x13 # LSM6DSV16X_DT_ODR_HA01_AT_15Hz625 |
| - 0x14 # LSM6DSV16X_DT_ODR_HA01_AT_31Hz25 |
| - 0x15 # LSM6DSV16X_DT_ODR_HA01_AT_62Hz5 |
| - 0x16 # LSM6DSV16X_DT_ODR_HA01_AT_125Hz |
| - 0x17 # LSM6DSV16X_DT_ODR_HA01_AT_250Hz |
| - 0x18 # LSM6DSV16X_DT_ODR_HA01_AT_500Hz |
| - 0x19 # LSM6DSV16X_DT_ODR_HA01_AT_1000Hz |
| - 0x1a # LSM6DSV16X_DT_ODR_HA01_AT_2000Hz |
| - 0x1b # LSM6DSV16X_DT_ODR_HA01_AT_4000Hz |
| - 0x1c # LSM6DSV16X_DT_ODR_HA01_AT_8000Hz |
| - 0x23 # LSM6DSV16X_DT_ODR_HA02_AT_12Hz5 |
| - 0x24 # LSM6DSV16X_DT_ODR_HA02_AT_25Hz |
| - 0x25 # LSM6DSV16X_DT_ODR_HA02_AT_50Hz |
| - 0x26 # LSM6DSV16X_DT_ODR_HA02_AT_100Hz |
| - 0x27 # LSM6DSV16X_DT_ODR_HA02_AT_200Hz |
| - 0x28 # LSM6DSV16X_DT_ODR_HA02_AT_400Hz |
| - 0x29 # LSM6DSV16X_DT_ODR_HA02_AT_800Hz |
| - 0x2a # LSM6DSV16X_DT_ODR_HA02_AT_1600Hz |
| - 0x2b # LSM6DSV16X_DT_ODR_HA02_AT_3200Hz |
| - 0x2c # LSM6DSV16X_DT_ODR_HA02_AT_6400Hz |
| |
| enum: [0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, |
| 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, |
| 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c] |
| |
| gyro-range: |
| type: int |
| default: 0 |
| description: | |
| Range in dps. Default is power-up configuration. |
| |
| - 0x0 # LSM6DSV16X_DT_FS_125DPS (4.375 mdps/LSB) |
| - 0x1 # LSM6DSV16X_DT_FS_250DPS (8.75 mdps/LSB) |
| - 0x2 # LSM6DSV16X_DT_FS_500DPS (17.50 mdps/LSB) |
| - 0x3 # LSM6DSV16X_DT_FS_1000DPS (35 mdps/LSB) |
| - 0x4 # LSM6DSV16X_DT_FS_2000DPS (70 mdps/LSB) |
| - 0xc # LSM6DSV16X_DT_FS_4000DPS (140 mdps/LSB) |
| |
| enum: [0x0, 0x1, 0x2, 0x3, 0x4, 0xc] |
| |
| gyro-odr: |
| type: int |
| default: 0x0 |
| description: | |
| Specify the default gyro output data rate expressed in samples per second (Hz). |
| The values are taken in accordance to lsm6dsv16x_data_rate_t enumerative in hal/st |
| module. Please note that these values will not change the operating mode, which will remain |
| High Performance (device default). Moreover, the values here which will be selected in the |
| DT are the only way to specify the odr accuracy even at runtime with |
| SENSOR_ATTR_SAMPLING_FREQUENCY. |
| Default is power-up configuration. |
| |
| - 0x00 # LSM6DSV16X_DT_ODR_OFF |
| - 0x01 # LSM6DSV16X_DT_ODR_AT_1Hz875 |
| - 0x02 # LSM6DSV16X_DT_ODR_AT_7Hz5 |
| - 0x03 # LSM6DSV16X_DT_ODR_AT_15Hz |
| - 0x04 # LSM6DSV16X_DT_ODR_AT_30Hz |
| - 0x05 # LSM6DSV16X_DT_ODR_AT_60Hz |
| - 0x06 # LSM6DSV16X_DT_ODR_AT_120Hz |
| - 0x07 # LSM6DSV16X_DT_ODR_AT_240Hz |
| - 0x08 # LSM6DSV16X_DT_ODR_AT_480Hz |
| - 0x09 # LSM6DSV16X_DT_ODR_AT_960Hz |
| - 0x0a # LSM6DSV16X_DT_ODR_AT_1920Hz |
| - 0x0b # LSM6DSV16X_DT_ODR_AT_3840Hz |
| - 0x0c # LSM6DSV16X_DT_ODR_AT_7680Hz |
| - 0x13 # LSM6DSV16X_DT_ODR_HA01_AT_15Hz625 |
| - 0x14 # LSM6DSV16X_DT_ODR_HA01_AT_31Hz25 |
| - 0x15 # LSM6DSV16X_DT_ODR_HA01_AT_62Hz5 |
| - 0x16 # LSM6DSV16X_DT_ODR_HA01_AT_125Hz |
| - 0x17 # LSM6DSV16X_DT_ODR_HA01_AT_250Hz |
| - 0x18 # LSM6DSV16X_DT_ODR_HA01_AT_500Hz |
| - 0x19 # LSM6DSV16X_DT_ODR_HA01_AT_1000Hz |
| - 0x1a # LSM6DSV16X_DT_ODR_HA01_AT_2000Hz |
| - 0x1b # LSM6DSV16X_DT_ODR_HA01_AT_4000Hz |
| - 0x1c # LSM6DSV16X_DT_ODR_HA01_AT_8000Hz |
| - 0x23 # LSM6DSV16X_DT_ODR_HA02_AT_12Hz5 |
| - 0x24 # LSM6DSV16X_DT_ODR_HA02_AT_25Hz |
| - 0x25 # LSM6DSV16X_DT_ODR_HA02_AT_50Hz |
| - 0x26 # LSM6DSV16X_DT_ODR_HA02_AT_100Hz |
| - 0x27 # LSM6DSV16X_DT_ODR_HA02_AT_200Hz |
| - 0x28 # LSM6DSV16X_DT_ODR_HA02_AT_400Hz |
| - 0x29 # LSM6DSV16X_DT_ODR_HA02_AT_800Hz |
| - 0x2a # LSM6DSV16X_DT_ODR_HA02_AT_1600Hz |
| - 0x2b # LSM6DSV16X_DT_ODR_HA02_AT_3200Hz |
| - 0x2c # LSM6DSV16X_DT_ODR_HA02_AT_6400Hz |
| |
| enum: [0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, |
| 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, |
| 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c] |
| |
| drdy-pulsed: |
| type: boolean |
| description: | |
| Selects the pulsed mode for data-ready interrupt when enabled, |
| and the latched mode when disabled. |