Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
lsm6dsvxxx.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025 STMicroelectronics
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_ST_LSM6DSVXXX_H_
7#define ZEPHYR_INCLUDE_DT_BINDINGS_ST_LSM6DSVXXX_H_
8
9/* Accel and Gyro Data rates */
10#define LSM6DSVXXX_DT_ODR_OFF 0x0
11#define LSM6DSVXXX_DT_ODR_AT_1Hz875 0x1
12#define LSM6DSVXXX_DT_ODR_AT_7Hz5 0x2
13#define LSM6DSVXXX_DT_ODR_AT_15Hz 0x3
14#define LSM6DSVXXX_DT_ODR_AT_30Hz 0x4
15#define LSM6DSVXXX_DT_ODR_AT_60Hz 0x5
16#define LSM6DSVXXX_DT_ODR_AT_120Hz 0x6
17#define LSM6DSVXXX_DT_ODR_AT_240Hz 0x7
18#define LSM6DSVXXX_DT_ODR_AT_480Hz 0x8
19#define LSM6DSVXXX_DT_ODR_AT_960Hz 0x9
20#define LSM6DSVXXX_DT_ODR_AT_1920Hz 0xA
21#define LSM6DSVXXX_DT_ODR_AT_3840Hz 0xB
22#define LSM6DSVXXX_DT_ODR_AT_7680Hz 0xC
23#define LSM6DSVXXX_DT_ODR_HA01_AT_15Hz625 0x13
24#define LSM6DSVXXX_DT_ODR_HA01_AT_31Hz25 0x14
25#define LSM6DSVXXX_DT_ODR_HA01_AT_62Hz5 0x15
26#define LSM6DSVXXX_DT_ODR_HA01_AT_125Hz 0x16
27#define LSM6DSVXXX_DT_ODR_HA01_AT_250Hz 0x17
28#define LSM6DSVXXX_DT_ODR_HA01_AT_500Hz 0x18
29#define LSM6DSVXXX_DT_ODR_HA01_AT_1000Hz 0x19
30#define LSM6DSVXXX_DT_ODR_HA01_AT_2000Hz 0x1A
31#define LSM6DSVXXX_DT_ODR_HA01_AT_4000Hz 0x1B
32#define LSM6DSVXXX_DT_ODR_HA01_AT_8000Hz 0x1C
33#define LSM6DSVXXX_DT_ODR_HA02_AT_12Hz5 0x23
34#define LSM6DSVXXX_DT_ODR_HA02_AT_25Hz 0x24
35#define LSM6DSVXXX_DT_ODR_HA02_AT_50Hz 0x25
36#define LSM6DSVXXX_DT_ODR_HA02_AT_100Hz 0x26
37#define LSM6DSVXXX_DT_ODR_HA02_AT_200Hz 0x27
38#define LSM6DSVXXX_DT_ODR_HA02_AT_400Hz 0x28
39#define LSM6DSVXXX_DT_ODR_HA02_AT_800Hz 0x29
40#define LSM6DSVXXX_DT_ODR_HA02_AT_1600Hz 0x2A
41#define LSM6DSVXXX_DT_ODR_HA02_AT_3200Hz 0x2B
42#define LSM6DSVXXX_DT_ODR_HA02_AT_6400Hz 0x2C
43
44/* Accelerometer batching rates */
45#define LSM6DSVXXX_DT_XL_NOT_BATCHED 0x0
46#define LSM6DSVXXX_DT_XL_BATCHED_AT_1Hz875 0x1
47#define LSM6DSVXXX_DT_XL_BATCHED_AT_7Hz5 0x2
48#define LSM6DSVXXX_DT_XL_BATCHED_AT_15Hz 0x3
49#define LSM6DSVXXX_DT_XL_BATCHED_AT_30Hz 0x4
50#define LSM6DSVXXX_DT_XL_BATCHED_AT_60Hz 0x5
51#define LSM6DSVXXX_DT_XL_BATCHED_AT_120Hz 0x6
52#define LSM6DSVXXX_DT_XL_BATCHED_AT_240Hz 0x7
53#define LSM6DSVXXX_DT_XL_BATCHED_AT_480Hz 0x8
54#define LSM6DSVXXX_DT_XL_BATCHED_AT_960Hz 0x9
55#define LSM6DSVXXX_DT_XL_BATCHED_AT_1920Hz 0xa
56#define LSM6DSVXXX_DT_XL_BATCHED_AT_3840Hz 0xb
57#define LSM6DSVXXX_DT_XL_BATCHED_AT_7680Hz 0xc
58
59/* Gyroscope batching rates */
60#define LSM6DSVXXX_DT_GY_NOT_BATCHED 0x0
61#define LSM6DSVXXX_DT_GY_BATCHED_AT_1Hz875 0x1
62#define LSM6DSVXXX_DT_GY_BATCHED_AT_7Hz5 0x2
63#define LSM6DSVXXX_DT_GY_BATCHED_AT_15Hz 0x3
64#define LSM6DSVXXX_DT_GY_BATCHED_AT_30Hz 0x4
65#define LSM6DSVXXX_DT_GY_BATCHED_AT_60Hz 0x5
66#define LSM6DSVXXX_DT_GY_BATCHED_AT_120Hz 0x6
67#define LSM6DSVXXX_DT_GY_BATCHED_AT_240Hz 0x7
68#define LSM6DSVXXX_DT_GY_BATCHED_AT_480Hz 0x8
69#define LSM6DSVXXX_DT_GY_BATCHED_AT_960Hz 0x9
70#define LSM6DSVXXX_DT_GY_BATCHED_AT_1920Hz 0xa
71#define LSM6DSVXXX_DT_GY_BATCHED_AT_3840Hz 0xb
72#define LSM6DSVXXX_DT_GY_BATCHED_AT_7680Hz 0xc
73
74/* Temperature sensor batching rates */
75#define LSM6DSVXXX_DT_TEMP_NOT_BATCHED 0x0
76#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_1Hz875 0x1
77#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_15Hz 0x2
78#define LSM6DSVXXX_DT_TEMP_BATCHED_AT_60Hz 0x3
79
80/* Sensor Fusion Low Power Data rates */
81#define LSM6DSVXXX_DT_SFLP_ODR_AT_15Hz 0x0
82#define LSM6DSVXXX_DT_SFLP_ODR_AT_30Hz 0x1
83#define LSM6DSVXXX_DT_SFLP_ODR_AT_60Hz 0x2
84#define LSM6DSVXXX_DT_SFLP_ODR_AT_120Hz 0x3
85#define LSM6DSVXXX_DT_SFLP_ODR_AT_240Hz 0x4
86#define LSM6DSVXXX_DT_SFLP_ODR_AT_480Hz 0x5
87
88/* Sensor Fusion Low Power FIFO enable defs */
89#define LSM6DSVXXX_DT_SFLP_FIFO_OFF 0x0
90#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION 0x1
91#define LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY 0x2
92#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY 0x3
93#define LSM6DSVXXX_DT_SFLP_FIFO_GBIAS 0x4
94#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GBIAS 0x5
95#define LSM6DSVXXX_DT_SFLP_FIFO_GRAVITY_GBIAS 0x6
96#define LSM6DSVXXX_DT_SFLP_FIFO_GAME_ROTATION_GRAVITY_GBIAS 0x7
97
98/* FIFO tags */
99#define LSM6DSVXXX_FIFO_EMPTY 0x0
100#define LSM6DSVXXX_GY_NC_TAG 0x1
101#define LSM6DSVXXX_XL_NC_TAG 0x2
102#define LSM6DSVXXX_TEMPERATURE_TAG 0x3
103#define LSM6DSVXXX_TIMESTAMP_TAG 0x4
104#define LSM6DSVXXX_CFG_CHANGE_TAG 0x5
105#define LSM6DSVXXX_XL_NC_T_2_TAG 0x6
106#define LSM6DSVXXX_XL_NC_T_1_TAG 0x7
107#define LSM6DSVXXX_XL_2XC_TAG 0x8
108#define LSM6DSVXXX_XL_3XC_TAG 0x9
109#define LSM6DSVXXX_GY_NC_T_2_TAG 0xA
110#define LSM6DSVXXX_GY_NC_T_1_TAG 0xB
111#define LSM6DSVXXX_GY_2XC_TAG 0xC
112#define LSM6DSVXXX_GY_3XC_TAG 0xD
113#define LSM6DSVXXX_SENSORHUB_TARGET0_TAG 0xE
114#define LSM6DSVXXX_SENSORHUB_TARGET1_TAG 0xF
115#define LSM6DSVXXX_SENSORHUB_TARGET2_TAG 0x10
116#define LSM6DSVXXX_SENSORHUB_TARGET3_TAG 0x11
117#define LSM6DSVXXX_STEP_COUNTER_TAG 0x12
118#define LSM6DSVXXX_SFLP_GAME_ROTATION_VECTOR_TAG 0x13
119#define LSM6DSVXXX_SFLP_GYROSCOPE_BIAS_TAG 0x16
120#define LSM6DSVXXX_SFLP_GRAVITY_VECTOR_TAG 0x17
121#define LSM6DSVXXX_HG_XL_PEAK_TAG 0x18
122#define LSM6DSVXXX_SENSORHUB_NACK_TAG 0x19
123#define LSM6DSVXXX_MLC_RESULT_TAG 0x1A
124#define LSM6DSVXXX_MLC_FILTER 0x1B
125#define LSM6DSVXXX_MLC_FEATURE 0x1C
126#define LSM6DSVXXX_XL_HG_TAG 0x1D
127#define LSM6DSVXXX_GY_ENHANCED_EIS 0x1E
128
129/* status registers */
130#define LSM6DSVXXX_STATUS_REG 0x1EU
131#define LSM6DSVXXX_OUTX_L_A 0x28U
132#define LSM6DSVXXX_FIFO_STATUS1 0x1BU
133#define LSM6DSVXXX_FIFO_DATA_OUT_TAG 0x78U
134
135/* FIFO settings */
136#define LSM6DSVXXX_BYPASS_MODE 0x00U
137#define LSM6DSVXXX_FIFO_CTRL4 0x0AU
138
139#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_ST_LSM6DSVXXX_H_ */