Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches

ST Microelectronics LSM6DSVXXX 3-axis IMU family. More...

Files

file  lsm6dsvxxx.h
 Header file for extended sensor API of LSM6DSVXXX sensor.
file  lsm6dsvxxx.h
 Devicetree binding constants shared by the ST LSM6DSVxxx 6-axis IMUs.

Enumerations

enum  sensor_attribute_lsm6dsvxxx { SENSOR_ATTR_GET_SELF_TEST_RESULT = SENSOR_ATTR_PRIV_START }
 Custom sensor attributes for LSM6DSVXXX. More...
enum  lsm6dsvxxx_self_test_result { LSM6DSVXXX_ST_OK = 0 , LSM6DSVXXX_ST_FAIL = 1 }
 Self-test result for the LSM6DSVXXX. More...

Accelerometer and gyroscope data rates

Values for the accel-odr and gyro-odr devicetree properties.

HA01 and HA02 select the first and second high-accuracy ODR sets, respectively.

#define LSM6DSVXXX_DT_ODR_OFF   0x0
 Powered down.
#define LSM6DSVXXX_DT_ODR_AT_1Hz875   0x1
 1.875 Hz
#define LSM6DSVXXX_DT_ODR_AT_7Hz5   0x2
 7.5 Hz
#define LSM6DSVXXX_DT_ODR_AT_15Hz   0x3
 15 Hz
#define LSM6DSVXXX_DT_ODR_AT_30Hz   0x4
 30 Hz
#define LSM6DSVXXX_DT_ODR_AT_60Hz   0x5
 60 Hz
#define LSM6DSVXXX_DT_ODR_AT_120Hz   0x6
 120 Hz
#define LSM6DSVXXX_DT_ODR_AT_240Hz   0x7
 240 Hz
#define LSM6DSVXXX_DT_ODR_AT_480Hz   0x8
 480 Hz
#define LSM6DSVXXX_DT_ODR_AT_960Hz   0x9
 960 Hz
#define LSM6DSVXXX_DT_ODR_AT_1920Hz   0xA
 1920 Hz
#define LSM6DSVXXX_DT_ODR_AT_3840Hz   0xB
 3840 Hz
#define LSM6DSVXXX_DT_ODR_AT_7680Hz   0xC
 7680 Hz
#define LSM6DSVXXX_DT_ODR_HA01_AT_15Hz625   0x13
 High-accuracy 1, 15.625 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_31Hz25   0x14
 High-accuracy 1, 31.25 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_62Hz5   0x15
 High-accuracy 1, 62.5 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_125Hz   0x16
 High-accuracy 1, 125 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_250Hz   0x17
 High-accuracy 1, 250 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_500Hz   0x18
 High-accuracy 1, 500 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_1000Hz   0x19
 High-accuracy 1, 1000 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_2000Hz   0x1A
 High-accuracy 1, 2000 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_4000Hz   0x1B
 High-accuracy 1, 4000 Hz.
#define LSM6DSVXXX_DT_ODR_HA01_AT_8000Hz   0x1C
 High-accuracy 1, 8000 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_12Hz5   0x23
 High-accuracy 2, 12.5 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_25Hz   0x24
 High-accuracy 2, 25 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_50Hz   0x25
 High-accuracy 2, 50 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_100Hz   0x26
 High-accuracy 2, 100 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_200Hz   0x27
 High-accuracy 2, 200 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_400Hz   0x28
 High-accuracy 2, 400 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_800Hz   0x29
 High-accuracy 2, 800 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_1600Hz   0x2A
 High-accuracy 2, 1600 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_3200Hz   0x2B
 High-accuracy 2, 3200 Hz.
#define LSM6DSVXXX_DT_ODR_HA02_AT_6400Hz   0x2C
 High-accuracy 2, 6400 Hz.

Accelerometer FIFO batching rates

Values for the accel-fifo-batch-rate devicetree property.

#define LSM6DSVXXX_DT_XL_NOT_BATCHED   0x0
 Not batched.
#define LSM6DSVXXX_DT_XL_BATCHED_AT_1Hz875   0x1
 1.875 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_7Hz5   0x2
 7.5 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_15Hz   0x3
 15 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_30Hz   0x4
 30 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_60Hz   0x5
 60 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_120Hz   0x6
 120 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_240Hz   0x7
 240 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_480Hz   0x8
 480 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_960Hz   0x9
 960 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_1920Hz   0xa
 1920 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_3840Hz   0xb
 3840 Hz
#define LSM6DSVXXX_DT_XL_BATCHED_AT_7680Hz   0xc
 7680 Hz

Gyroscope FIFO batching rates

Values for the gyro-fifo-batch-rate devicetree property.

#define LSM6DSVXXX_DT_GY_NOT_BATCHED   0x0
 Not batched.
#define LSM6DSVXXX_DT_GY_BATCHED_AT_1Hz875   0x1
 1.875 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_7Hz5   0x2
 7.5 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_15Hz   0x3
 15 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_30Hz   0x4
 30 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_60Hz   0x5
 60 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_120Hz   0x6
 120 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_240Hz   0x7
 240 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_480Hz   0x8
 480 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_960Hz   0x9
 960 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_1920Hz   0xa
 1920 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_3840Hz   0xb
 3840 Hz
#define LSM6DSVXXX_DT_GY_BATCHED_AT_7680Hz   0xc
 7680 Hz

Temperature FIFO batching rates

Values for the temp-fifo-batch-rate devicetree property.

#define LSM6DSVXXX_DT_TEMP_NOT_BATCHED   0x0
 Not batched.
#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_1Hz875   0x1
 1.875 Hz
#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_15Hz   0x2
 15 Hz
#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_60Hz   0x3
 60 Hz

Sensor-fusion low-power data rates

Values for the sflp-odr devicetree property.

#define LSM6DSVXXX_DT_SFLP_ODR_AT_15Hz   0x0
 15 Hz
#define LSM6DSVXXX_DT_SFLP_ODR_AT_30Hz   0x1
 30 Hz
#define LSM6DSVXXX_DT_SFLP_ODR_AT_60Hz   0x2
 60 Hz
#define LSM6DSVXXX_DT_SFLP_ODR_AT_120Hz   0x3
 120 Hz
#define LSM6DSVXXX_DT_SFLP_ODR_AT_240Hz   0x4
 240 Hz
#define LSM6DSVXXX_DT_SFLP_ODR_AT_480Hz   0x5
 480 Hz

Sensor-fusion low-power FIFO outputs

Values for the sflp-fifo-enable devicetree property.

#define LSM6DSVXXX_DT_SFLP_FIFO_OFF   0x0
 No SFLP output.
#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION   0x1
 Game-rotation vector.
#define LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY   0x2
 Gravity vector.
#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY   0x3
 Rotation and gravity.
#define LSM6DSVXXX_DT_SFLP_FIFO_GBIAS   0x4
 Gyroscope bias.
#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GBIAS   0x5
 Rotation and gyro bias.
#define LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY_GBIAS   0x6
 Gravity and gyro bias.
#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY_GBIAS   0x7
 Rotation, gravity, bias.

FIFO record tags

FIFO record tag values reported in the FIFO data stream.

#define LSM6DSVXXX_FIFO_EMPTY   0x0
 FIFO empty.
#define LSM6DSVXXX_GY_NC_TAG   0x1
 Gyroscope, not compressed.
#define LSM6DSVXXX_XL_NC_TAG   0x2
 Accelerometer, not compressed.
#define LSM6DSVXXX_TEMPERATURE_TAG   0x3
 Temperature.
#define LSM6DSVXXX_TIMESTAMP_TAG   0x4
 Timestamp.
#define LSM6DSVXXX_CFG_CHANGE_TAG   0x5
 Configuration change.
#define LSM6DSVXXX_XL_NC_T_2_TAG   0x6
 Accelerometer, T-2 sample.
#define LSM6DSVXXX_XL_NC_T_1_TAG   0x7
 Accelerometer, T-1 sample.
#define LSM6DSVXXX_XL_2XC_TAG   0x8
 Accelerometer, 2x compressed.
#define LSM6DSVXXX_XL_3XC_TAG   0x9
 Accelerometer, 3x compressed.
#define LSM6DSVXXX_GY_NC_T_2_TAG   0xA
 Gyroscope, T-2 sample.
#define LSM6DSVXXX_GY_NC_T_1_TAG   0xB
 Gyroscope, T-1 sample.
#define LSM6DSVXXX_GY_2XC_TAG   0xC
 Gyroscope, 2x compressed.
#define LSM6DSVXXX_GY_3XC_TAG   0xD
 Gyroscope, 3x compressed.
#define LSM6DSVXXX_SENSORHUB_TARGET0_TAG   0xE
 Sensor-hub target 0.
#define LSM6DSVXXX_SENSORHUB_TARGET1_TAG   0xF
 Sensor-hub target 1.
#define LSM6DSVXXX_SENSORHUB_TARGET2_TAG   0x10
 Sensor-hub target 2.
#define LSM6DSVXXX_SENSORHUB_TARGET3_TAG   0x11
 Sensor-hub target 3.
#define LSM6DSVXXX_STEP_COUNTER_TAG   0x12
 Step counter.
#define LSM6DSVXXX_SFLP_GAME_ROTATION_VECTOR_TAG   0x13
 SFLP game-rotation vector.
#define LSM6DSVXXX_SFLP_GYROSCOPE_BIAS_TAG   0x16
 SFLP gyroscope bias.
#define LSM6DSVXXX_SFLP_GRAVITY_VECTOR_TAG   0x17
 SFLP gravity vector.
#define LSM6DSVXXX_HG_XL_PEAK_TAG   0x18
 High-g accelerometer peak.
#define LSM6DSVXXX_SENSORHUB_NACK_TAG   0x19
 Sensor-hub NACK.
#define LSM6DSVXXX_MLC_RESULT_TAG   0x1A
 Machine-learning core result.
#define LSM6DSVXXX_MLC_FILTER   0x1B
 Machine-learning core filter.
#define LSM6DSVXXX_MLC_FEATURE   0x1C
 Machine-learning core feature.
#define LSM6DSVXXX_XL_HG_TAG   0x1D
 High-g accelerometer.
#define LSM6DSVXXX_GY_ENHANCED_EIS   0x1E
 Gyroscope enhanced EIS.

Status and output register addresses

Status and output register addresses used by the driver.

#define LSM6DSVXXX_STATUS_REG   0x1EU
 STATUS_REG register.
#define LSM6DSVXXX_OUTX_L_A   0x28U
 OUTX_L_A accelerometer output.
#define LSM6DSVXXX_FIFO_STATUS1   0x1BU
 FIFO_STATUS1 register.
#define LSM6DSVXXX_FIFO_DATA_OUT_TAG   0x78U
 FIFO_DATA_OUT_TAG register.

FIFO control register addresses and modes

FIFO control register addresses and mode values used by the driver.

#define LSM6DSVXXX_BYPASS_MODE   0x00U
 FIFO bypass (disabled) mode.
#define LSM6DSVXXX_FIFO_CTRL4   0x0AU
 FIFO_CTRL4 register.

GPIO interrupt configuration

Values for the int-gpio-config devicetree property.

#define LSM6DSVXXX_DT_GPIO_INT_EDGE_TO_ACTIVE   0
 Edge-triggered interrupt.
#define LSM6DSVXXX_DT_GPIO_INT_LEVEL_ACTIVE   1
 Level-triggered interrupt.

Detailed Description

ST Microelectronics LSM6DSVXXX 3-axis IMU family.

Macro Definition Documentation

◆ LSM6DSVXXX_BYPASS_MODE

#define LSM6DSVXXX_BYPASS_MODE   0x00U

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

FIFO bypass (disabled) mode.

◆ LSM6DSVXXX_CFG_CHANGE_TAG

#define LSM6DSVXXX_CFG_CHANGE_TAG   0x5

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Configuration change.

◆ LSM6DSVXXX_DT_GPIO_INT_EDGE_TO_ACTIVE

#define LSM6DSVXXX_DT_GPIO_INT_EDGE_TO_ACTIVE   0

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Edge-triggered interrupt.

◆ LSM6DSVXXX_DT_GPIO_INT_LEVEL_ACTIVE

#define LSM6DSVXXX_DT_GPIO_INT_LEVEL_ACTIVE   1

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Level-triggered interrupt.

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_120Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_120Hz   0x6

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_15Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_15Hz   0x3

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_1920Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_1920Hz   0xa

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_1Hz875

#define LSM6DSVXXX_DT_GY_BATCHED_AT_1Hz875   0x1

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_240Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_240Hz   0x7

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_30Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_30Hz   0x4

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_3840Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_3840Hz   0xb

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_480Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_480Hz   0x8

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_60Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_60Hz   0x5

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_7680Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_7680Hz   0xc

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_7Hz5

#define LSM6DSVXXX_DT_GY_BATCHED_AT_7Hz5   0x2

◆ LSM6DSVXXX_DT_GY_BATCHED_AT_960Hz

#define LSM6DSVXXX_DT_GY_BATCHED_AT_960Hz   0x9

◆ LSM6DSVXXX_DT_GY_NOT_BATCHED

#define LSM6DSVXXX_DT_GY_NOT_BATCHED   0x0

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Not batched.

◆ LSM6DSVXXX_DT_ODR_AT_120Hz

#define LSM6DSVXXX_DT_ODR_AT_120Hz   0x6

◆ LSM6DSVXXX_DT_ODR_AT_15Hz

#define LSM6DSVXXX_DT_ODR_AT_15Hz   0x3

◆ LSM6DSVXXX_DT_ODR_AT_1920Hz

#define LSM6DSVXXX_DT_ODR_AT_1920Hz   0xA

◆ LSM6DSVXXX_DT_ODR_AT_1Hz875

#define LSM6DSVXXX_DT_ODR_AT_1Hz875   0x1

◆ LSM6DSVXXX_DT_ODR_AT_240Hz

#define LSM6DSVXXX_DT_ODR_AT_240Hz   0x7

◆ LSM6DSVXXX_DT_ODR_AT_30Hz

#define LSM6DSVXXX_DT_ODR_AT_30Hz   0x4

◆ LSM6DSVXXX_DT_ODR_AT_3840Hz

#define LSM6DSVXXX_DT_ODR_AT_3840Hz   0xB

◆ LSM6DSVXXX_DT_ODR_AT_480Hz

#define LSM6DSVXXX_DT_ODR_AT_480Hz   0x8

◆ LSM6DSVXXX_DT_ODR_AT_60Hz

#define LSM6DSVXXX_DT_ODR_AT_60Hz   0x5

◆ LSM6DSVXXX_DT_ODR_AT_7680Hz

#define LSM6DSVXXX_DT_ODR_AT_7680Hz   0xC

◆ LSM6DSVXXX_DT_ODR_AT_7Hz5

#define LSM6DSVXXX_DT_ODR_AT_7Hz5   0x2

◆ LSM6DSVXXX_DT_ODR_AT_960Hz

#define LSM6DSVXXX_DT_ODR_AT_960Hz   0x9

◆ LSM6DSVXXX_DT_ODR_HA01_AT_1000Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_1000Hz   0x19

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 1000 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_125Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_125Hz   0x16

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 125 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_15Hz625

#define LSM6DSVXXX_DT_ODR_HA01_AT_15Hz625   0x13

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 15.625 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_2000Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_2000Hz   0x1A

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 2000 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_250Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_250Hz   0x17

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 250 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_31Hz25

#define LSM6DSVXXX_DT_ODR_HA01_AT_31Hz25   0x14

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 31.25 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_4000Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_4000Hz   0x1B

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 4000 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_500Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_500Hz   0x18

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 500 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_62Hz5

#define LSM6DSVXXX_DT_ODR_HA01_AT_62Hz5   0x15

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 62.5 Hz.

◆ LSM6DSVXXX_DT_ODR_HA01_AT_8000Hz

#define LSM6DSVXXX_DT_ODR_HA01_AT_8000Hz   0x1C

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 1, 8000 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_100Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_100Hz   0x26

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 100 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_12Hz5

#define LSM6DSVXXX_DT_ODR_HA02_AT_12Hz5   0x23

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 12.5 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_1600Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_1600Hz   0x2A

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 1600 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_200Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_200Hz   0x27

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 200 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_25Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_25Hz   0x24

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 25 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_3200Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_3200Hz   0x2B

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 3200 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_400Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_400Hz   0x28

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 400 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_50Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_50Hz   0x25

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 50 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_6400Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_6400Hz   0x2C

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 6400 Hz.

◆ LSM6DSVXXX_DT_ODR_HA02_AT_800Hz

#define LSM6DSVXXX_DT_ODR_HA02_AT_800Hz   0x29

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-accuracy 2, 800 Hz.

◆ LSM6DSVXXX_DT_ODR_OFF

#define LSM6DSVXXX_DT_ODR_OFF   0x0

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Powered down.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION

#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION   0x1

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Game-rotation vector.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GBIAS

#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GBIAS   0x5

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Rotation and gyro bias.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY

#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY   0x3

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Rotation and gravity.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY_GBIAS

#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY_GBIAS   0x7

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Rotation, gravity, bias.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GBIAS

#define LSM6DSVXXX_DT_SFLP_FIFO_GBIAS   0x4

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope bias.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY

#define LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY   0x2

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gravity vector.

◆ LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY_GBIAS

#define LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY_GBIAS   0x6

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gravity and gyro bias.

◆ LSM6DSVXXX_DT_SFLP_FIFO_OFF

#define LSM6DSVXXX_DT_SFLP_FIFO_OFF   0x0

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

No SFLP output.

◆ LSM6DSVXXX_DT_SFLP_ODR_AT_120Hz

#define LSM6DSVXXX_DT_SFLP_ODR_AT_120Hz   0x3

◆ LSM6DSVXXX_DT_SFLP_ODR_AT_15Hz

#define LSM6DSVXXX_DT_SFLP_ODR_AT_15Hz   0x0

◆ LSM6DSVXXX_DT_SFLP_ODR_AT_240Hz

#define LSM6DSVXXX_DT_SFLP_ODR_AT_240Hz   0x4

◆ LSM6DSVXXX_DT_SFLP_ODR_AT_30Hz

#define LSM6DSVXXX_DT_SFLP_ODR_AT_30Hz   0x1

◆ LSM6DSVXXX_DT_SFLP_ODR_AT_480Hz

#define LSM6DSVXXX_DT_SFLP_ODR_AT_480Hz   0x5

◆ LSM6DSVXXX_DT_SFLP_ODR_AT_60Hz

#define LSM6DSVXXX_DT_SFLP_ODR_AT_60Hz   0x2

◆ LSM6DSVXXX_DT_TEMP_BATCHED_AT_15Hz

#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_15Hz   0x2

◆ LSM6DSVXXX_DT_TEMP_BATCHED_AT_1Hz875

#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_1Hz875   0x1

◆ LSM6DSVXXX_DT_TEMP_BATCHED_AT_60Hz

#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_60Hz   0x3

◆ LSM6DSVXXX_DT_TEMP_NOT_BATCHED

#define LSM6DSVXXX_DT_TEMP_NOT_BATCHED   0x0

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Not batched.

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_120Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_120Hz   0x6

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_15Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_15Hz   0x3

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_1920Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_1920Hz   0xa

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_1Hz875

#define LSM6DSVXXX_DT_XL_BATCHED_AT_1Hz875   0x1

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_240Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_240Hz   0x7

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_30Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_30Hz   0x4

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_3840Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_3840Hz   0xb

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_480Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_480Hz   0x8

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_60Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_60Hz   0x5

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_7680Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_7680Hz   0xc

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_7Hz5

#define LSM6DSVXXX_DT_XL_BATCHED_AT_7Hz5   0x2

◆ LSM6DSVXXX_DT_XL_BATCHED_AT_960Hz

#define LSM6DSVXXX_DT_XL_BATCHED_AT_960Hz   0x9

◆ LSM6DSVXXX_DT_XL_NOT_BATCHED

#define LSM6DSVXXX_DT_XL_NOT_BATCHED   0x0

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Not batched.

◆ LSM6DSVXXX_FIFO_CTRL4

#define LSM6DSVXXX_FIFO_CTRL4   0x0AU

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

FIFO_CTRL4 register.

◆ LSM6DSVXXX_FIFO_DATA_OUT_TAG

#define LSM6DSVXXX_FIFO_DATA_OUT_TAG   0x78U

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

FIFO_DATA_OUT_TAG register.

◆ LSM6DSVXXX_FIFO_EMPTY

#define LSM6DSVXXX_FIFO_EMPTY   0x0

◆ LSM6DSVXXX_FIFO_STATUS1

#define LSM6DSVXXX_FIFO_STATUS1   0x1BU

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

FIFO_STATUS1 register.

◆ LSM6DSVXXX_GY_2XC_TAG

#define LSM6DSVXXX_GY_2XC_TAG   0xC

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope, 2x compressed.

◆ LSM6DSVXXX_GY_3XC_TAG

#define LSM6DSVXXX_GY_3XC_TAG   0xD

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope, 3x compressed.

◆ LSM6DSVXXX_GY_ENHANCED_EIS

#define LSM6DSVXXX_GY_ENHANCED_EIS   0x1E

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope enhanced EIS.

◆ LSM6DSVXXX_GY_NC_T_1_TAG

#define LSM6DSVXXX_GY_NC_T_1_TAG   0xB

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope, T-1 sample.

◆ LSM6DSVXXX_GY_NC_T_2_TAG

#define LSM6DSVXXX_GY_NC_T_2_TAG   0xA

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope, T-2 sample.

◆ LSM6DSVXXX_GY_NC_TAG

#define LSM6DSVXXX_GY_NC_TAG   0x1

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Gyroscope, not compressed.

◆ LSM6DSVXXX_HG_XL_PEAK_TAG

#define LSM6DSVXXX_HG_XL_PEAK_TAG   0x18

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-g accelerometer peak.

◆ LSM6DSVXXX_MLC_FEATURE

#define LSM6DSVXXX_MLC_FEATURE   0x1C

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Machine-learning core feature.

◆ LSM6DSVXXX_MLC_FILTER

#define LSM6DSVXXX_MLC_FILTER   0x1B

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Machine-learning core filter.

◆ LSM6DSVXXX_MLC_RESULT_TAG

#define LSM6DSVXXX_MLC_RESULT_TAG   0x1A

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Machine-learning core result.

◆ LSM6DSVXXX_OUTX_L_A

#define LSM6DSVXXX_OUTX_L_A   0x28U

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

OUTX_L_A accelerometer output.

◆ LSM6DSVXXX_SENSORHUB_NACK_TAG

#define LSM6DSVXXX_SENSORHUB_NACK_TAG   0x19

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Sensor-hub NACK.

◆ LSM6DSVXXX_SENSORHUB_TARGET0_TAG

#define LSM6DSVXXX_SENSORHUB_TARGET0_TAG   0xE

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Sensor-hub target 0.

◆ LSM6DSVXXX_SENSORHUB_TARGET1_TAG

#define LSM6DSVXXX_SENSORHUB_TARGET1_TAG   0xF

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Sensor-hub target 1.

◆ LSM6DSVXXX_SENSORHUB_TARGET2_TAG

#define LSM6DSVXXX_SENSORHUB_TARGET2_TAG   0x10

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Sensor-hub target 2.

◆ LSM6DSVXXX_SENSORHUB_TARGET3_TAG

#define LSM6DSVXXX_SENSORHUB_TARGET3_TAG   0x11

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Sensor-hub target 3.

◆ LSM6DSVXXX_SFLP_GAME_ROTATION_VECTOR_TAG

#define LSM6DSVXXX_SFLP_GAME_ROTATION_VECTOR_TAG   0x13

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

SFLP game-rotation vector.

◆ LSM6DSVXXX_SFLP_GRAVITY_VECTOR_TAG

#define LSM6DSVXXX_SFLP_GRAVITY_VECTOR_TAG   0x17

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

SFLP gravity vector.

◆ LSM6DSVXXX_SFLP_GYROSCOPE_BIAS_TAG

#define LSM6DSVXXX_SFLP_GYROSCOPE_BIAS_TAG   0x16

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

SFLP gyroscope bias.

◆ LSM6DSVXXX_STATUS_REG

#define LSM6DSVXXX_STATUS_REG   0x1EU

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

STATUS_REG register.

◆ LSM6DSVXXX_STEP_COUNTER_TAG

#define LSM6DSVXXX_STEP_COUNTER_TAG   0x12

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Step counter.

◆ LSM6DSVXXX_TEMPERATURE_TAG

#define LSM6DSVXXX_TEMPERATURE_TAG   0x3

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Temperature.

◆ LSM6DSVXXX_TIMESTAMP_TAG

#define LSM6DSVXXX_TIMESTAMP_TAG   0x4

◆ LSM6DSVXXX_XL_2XC_TAG

#define LSM6DSVXXX_XL_2XC_TAG   0x8

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Accelerometer, 2x compressed.

◆ LSM6DSVXXX_XL_3XC_TAG

#define LSM6DSVXXX_XL_3XC_TAG   0x9

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Accelerometer, 3x compressed.

◆ LSM6DSVXXX_XL_HG_TAG

#define LSM6DSVXXX_XL_HG_TAG   0x1D

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

High-g accelerometer.

◆ LSM6DSVXXX_XL_NC_T_1_TAG

#define LSM6DSVXXX_XL_NC_T_1_TAG   0x7

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Accelerometer, T-1 sample.

◆ LSM6DSVXXX_XL_NC_T_2_TAG

#define LSM6DSVXXX_XL_NC_T_2_TAG   0x6

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Accelerometer, T-2 sample.

◆ LSM6DSVXXX_XL_NC_TAG

#define LSM6DSVXXX_XL_NC_TAG   0x2

#include <zephyr/dt-bindings/sensor/lsm6dsvxxx.h>

Accelerometer, not compressed.

Enumeration Type Documentation

◆ lsm6dsvxxx_self_test_result

#include <zephyr/drivers/sensor/lsm6dsvxxx.h>

Self-test result for the LSM6DSVXXX.

Enumerator
LSM6DSVXXX_ST_OK 

Self-test passed.

LSM6DSVXXX_ST_FAIL 

Self-test failed.

◆ sensor_attribute_lsm6dsvxxx

#include <zephyr/drivers/sensor/lsm6dsvxxx.h>

Custom sensor attributes for LSM6DSVXXX.

Enumerator
SENSOR_ATTR_GET_SELF_TEST_RESULT 

Gets the self-test mode result.

The result is stored in the sensor_value.val1 field. See lsm6dsvxxx_self_test_result for possible values.