1# Copyright (c) 2024 TDK Invensense
2# Copyright (c) 2022 Esco Medical ApS
3# Copyright (c) 2020 TDK Invensense
4# SPDX-License-Identifier: Apache-2.0
5
6description: ICM-42670 motion tracking device
7
8include: [sensor-device.yaml]
9
10properties:
11  int-gpios:
12    type: phandle-array
13    description: |
14      The INT signal default configuration is active-high. The
15      property value should ensure the flags properly describe the
16      signal that is presented to the driver.
17
18  accel-hz:
19    type: int
20    required: true
21    description: |
22      Default frequency of accelerometer. (Unit - Hz)
23      Maps to ACCEL_ODR field in ACCEL_CONFIG0 setting
24      Power-on reset value is 800.
25    enum:
26      - 0
27      - 1600
28      - 800
29      - 400
30      - 200
31      - 100
32      - 50
33      - 25
34      - 12
35      - 6
36      - 3
37      - 1
38
39  gyro-hz:
40    type: int
41    required: true
42    description: |
43      Default frequency of gyroscope. (Unit - Hz)
44      Maps to GYRO_ODR field in GYRO_CONFIG0 setting
45      Power-on reset value is 800.
46    enum:
47      - 0
48      - 1600
49      - 800
50      - 400
51      - 200
52      - 100
53      - 50
54      - 25
55      - 12
56
57  power-mode:
58    type: string
59    default: "low-noise"
60    description: |
61      Power mode.
62      Low power mode is allowed for accelerometer sensor only from
63      1.5625Hz to 400Hz.
64      The default is chosen to support both accelerometer and
65      gyroscope sensors.
66    enum:
67      - "low-noise"
68      - "low-power"
69
70
71  accel-fs:
72    type: int
73    required: true
74    description: |
75      Default full scale of accelerometer. (Unit - g)
76      Maps to ACCEL_FS_SEL field in ACCEL_CONFIG0 setting
77      Power-on reset value is 16
78    enum:
79      - 16
80      - 8
81      - 4
82      - 2
83
84  accel-avg:
85    type: int
86    default: 32
87    description: |
88      Averaging filter setting to create accelerometer output
89      in accelerometer low power mode.
90      Maps to ACCEL_UI_AVG field in ACCEL_CONFIG1 setting.
91      The default corresponds to the reset value of the register field.
92    enum:
93      - 2
94      - 4
95      - 8
96      - 16
97      - 32
98      - 64
99
100  accel-filt-bw-hz:
101    type: int
102    default: 180
103    description: |
104      Accelerometer low pass filter bandwidth frequency (Unit - Hz).
105      Maps to ACCEL_UI_FILT_BW field in ACCEL_CONFIG1 setting.
106      The default corresponds to the reset value of the register field.
107    enum:
108      - 0
109      - 180
110      - 121
111      - 73
112      - 53
113      - 34
114      - 25
115      - 16
116
117
118  gyro-fs:
119    type: int
120    required: true
121    description: |
122      Default full scale of gyroscope. (Unit - DPS)
123      Maps to GYRO_FS_SEL field in GYRO_CONFIG0 setting
124      Power-on reset value is 2000
125    enum:
126      - 2000
127      - 1000
128      - 500
129      - 250
130
131  gyro-filt-bw-hz:
132    type: int
133    default: 180
134    description: |
135      Gyroscope low pass filter bandwidth frequency (Unit - Hz).
136      Maps to GYRO_UI_FILT_BW field in GYRO_CONFIG1 setting.
137      The default corresponds to the reset value of the register field.
138    enum:
139      - 0
140      - 180
141      - 121
142      - 73
143      - 53
144      - 34
145      - 25
146      - 16
147
148  apex:
149    type: string
150    default: "none"
151    description: |
152      APEX (Advanced Pedometer and Event Detection) features. It consists of:
153      * Pedometer: Tracks step count, and provide details such as the cadence and
154                   the estimated activity type (Walk, Run, Unknown).
155      * Tilt Detection: Detects the Tilt when tilting the board with an angle of
156                        30 degrees or more held for 4 seconds.
157      * Wake on Motion (WoM): Detects motion per axis exceeding 195 mg threshold.
158      * Significant Motion Detector (SMD): Detects when the user has moved significantly.
159    enum:
160      - "none"
161      - "pedometer"
162      - "tilt"
163      - "smd"
164      - "wom"
165