| eMD IIM4265x Driver API 1.0.0

Ixm42xxxDriver_HL_apex.h
Go to the documentation of this file.
1 /*
2 * ________________________________________________________________________________________________________
3 * Copyright (c) 2017 InvenSense Inc. All rights reserved.
4 *
5 * This software, related documentation and any modifications thereto (collectively “Software”) is subject
6 * to InvenSense and its licensors' intellectual property rights under U.S. and international copyright
7 * and other intellectual property rights laws.
8 *
9 * InvenSense and its licensors retain all intellectual property and proprietary rights in and to the Software
10 * and any use, reproduction, disclosure or distribution of the Software without an express license agreement
11 * from InvenSense is strictly prohibited.
12 *
13 * EXCEPT AS OTHERWISE PROVIDED IN A LICENSE AGREEMENT BETWEEN THE PARTIES, THE SOFTWARE IS
14 * PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
15 * TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
16 * EXCEPT AS OTHERWISE PROVIDED IN A LICENSE AGREEMENT BETWEEN THE PARTIES, IN NO EVENT SHALL
17 * INVENSENSE BE LIABLE FOR ANY DIRECT, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OR ANY
18 * DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
19 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
20 * OF THE SOFTWARE.
21 * ________________________________________________________________________________________________________
22 */
23
34 #ifndef _INV_IXM42XXX_DRIVER_HL_APEX_H_
35 #define _INV_IXM42XXX_DRIVER_HL_APEX_H_
36
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40
41 #include "Invn/Drivers/Ixm42xxx/Ixm42xxxDefs.h"
42
43 #include "Invn/InvError.h"
44
45 #include <stdint.h>
46 #include <string.h>
47
48 /* Forward declarations */
49 struct inv_ixm42xxx;
50
53 typedef struct {
54 uint8_t min_jerk_thr;
55 IXM42XXX_APEX_CONFIG7_TAP_MAX_PEAK_TOL_t max_peak_tol;
56 IXM42XXX_APEX_CONFIG8_TAP_TMAX_t tmax;
57 IXM42XXX_APEX_CONFIG8_TAP_TAVG_t tavg;
58 IXM42XXX_APEX_CONFIG8_TAP_TMIN_t tmin;
59 } inv_ixm42xxx_tap_parameters_t;
60
63 typedef struct inv_ixm42xxx_apex_parameters {
64 IXM42XXX_APEX_CONFIG2_PEDO_AMP_TH_t pedo_amp_th;
65 uint8_t pedo_step_cnt_th;
67 uint8_t pedo_step_det_th;
69 IXM42XXX_APEX_CONFIG3_PEDO_SB_TIMER_TH_t pedo_sb_timer_th;
72 IXM42XXX_APEX_CONFIG3_PEDO_HI_ENRGY_TH_t pedo_hi_enrgy_th;
74 IXM42XXX_APEX_CONFIG4_TILT_WAIT_TIME_t tilt_wait_time;
76 IXM42XXX_APEX_CONFIG1_DMP_POWER_SAVE_TIME_t power_save_time;
77 IXM42XXX_APEX_CONFIG0_DMP_POWER_SAVE_t power_save;
80 IXM42XXX_APEX_CONFIG9_SENSITIVITY_MODE_t sensitivity_mode;
84 IXM42XXX_APEX_CONFIG4_R2W_SLEEP_TIME_OUT_t r2w_sleep_time_out;
85 IXM42XXX_APEX_CONFIG5_R2W_MOUNTING_MATRIX_t r2w_mounting_matrix;
86 IXM42XXX_APEX_CONFIG6_R2W_SLEEP_GEST_DELAY_t r2w_gest_delay;
88 IXM42XXX_APEX_CONFIG1_LOW_ENERGY_AMP_TH_t low_energy_amp_th;
89 } inv_ixm42xxx_apex_parameters_t;
90
93 typedef struct inv_ixm42xxx_apex_step_activity {
94 uint16_t step_cnt;
95 uint8_t step_cadence;
97 uint8_t activity_class;
98 } inv_ixm42xxx_apex_step_activity_t;
99
102 typedef struct inv_ixm42xxx_tap_data {
103 IXM42XXX_APEX_DATA4_TAP_NUM_t tap_num;
104 IXM42XXX_APEX_DATA4_TAP_AXIS_t tap_axis;
105 IXM42XXX_APEX_DATA4_TAP_DIR_t tap_dir;
106 uint8_t double_tap_timing;
107 } inv_ixm42xxx_tap_data_t;
108
109
118 int inv_ixm42xxx_configure_smd_wom(struct inv_ixm42xxx * s, const uint8_t x_th, const uint8_t y_th, const uint8_t z_th, IXM42XXX_SMD_CONFIG_WOM_INT_MODE_t wom_int, IXM42XXX_SMD_CONFIG_WOM_MODE_t wom_mode);
119
128 int inv_ixm42xxx_enable_wom(struct inv_ixm42xxx * s);
129
134 int inv_ixm42xxx_disable_wom(struct inv_ixm42xxx * s);
135
143 int inv_ixm42xxx_enable_smd(struct inv_ixm42xxx * s);
144
149 int inv_ixm42xxx_disable_smd(struct inv_ixm42xxx * s);
150
155 int inv_ixm42xxx_init_tap_parameters_struct(struct inv_ixm42xxx *s, inv_ixm42xxx_tap_parameters_t *tap_inputs);
156
161 int inv_ixm42xxx_configure_tap_parameters(struct inv_ixm42xxx * s, const inv_ixm42xxx_tap_parameters_t *tap_inputs);
162
167 int inv_ixm42xxx_get_tap_parameters(struct inv_ixm42xxx *s, inv_ixm42xxx_tap_parameters_t *tap_params);
168
175 int inv_ixm42xxx_enable_tap(struct inv_ixm42xxx * s);
176
180 int inv_ixm42xxx_disable_tap(struct inv_ixm42xxx * s);
181
186 int inv_ixm42xxx_init_apex_parameters_struct(struct inv_ixm42xxx *s, inv_ixm42xxx_apex_parameters_t *apex_inputs);
187
195 int inv_ixm42xxx_configure_apex_parameters(struct inv_ixm42xxx *s, const inv_ixm42xxx_apex_parameters_t *apex_inputs);
196
201 int inv_ixm42xxx_get_apex_parameters(struct inv_ixm42xxx *s, inv_ixm42xxx_apex_parameters_t *apex_params);
202
211 int inv_ixm42xxx_set_apex_frequency(struct inv_ixm42xxx * s, const IXM42XXX_APEX_CONFIG0_DMP_ODR_t frequency);
212
216 int inv_ixm42xxx_start_dmp(struct inv_ixm42xxx * s);
217
223 int inv_ixm42xxx_enable_apex_pedometer(struct inv_ixm42xxx * s);
224
228 int inv_ixm42xxx_disable_apex_pedometer(struct inv_ixm42xxx * s);
229
234 int inv_ixm42xxx_enable_apex_r2w(struct inv_ixm42xxx * s);
235
239 int inv_ixm42xxx_disable_apex_r2w(struct inv_ixm42xxx * s);
240
245 int inv_ixm42xxx_enable_apex_tilt(struct inv_ixm42xxx * s);
246
250 int inv_ixm42xxx_disable_apex_tilt(struct inv_ixm42xxx * s);
251
256 int inv_ixm42xxx_get_apex_data_activity(struct inv_ixm42xxx * s, inv_ixm42xxx_apex_step_activity_t * apex_activity);
257
262 int inv_ixm42xxx_get_tap_data(struct inv_ixm42xxx * s, inv_ixm42xxx_tap_data_t * tap_data);
263
264 #ifdef __cplusplus
265 }
266 #endif
267
268 #endif /* _INV_IXM42XXX_DRIVER_HL_APEX_H_ */
269
inv_ixm42xxx_enable_apex_tilt
int inv_ixm42xxx_enable_apex_tilt(struct inv_ixm42xxx *s)
Enable APEX algorithm Tilt. note : Tilt request to have the accelerometer enabled to works with accel...
Definition: Ixm42xxxDriver_HL_apex.c:452
inv_ixm42xxx_tap_data::tap_dir
IXM42XXX_APEX_DATA4_TAP_DIR_t tap_dir
Definition: Ixm42xxxDriver_HL_apex.h:105
inv_ixm42xxx_disable_apex_r2w
int inv_ixm42xxx_disable_apex_r2w(struct inv_ixm42xxx *s)
Disable APEX algorithm Raise to wake.
Definition: Ixm42xxxDriver_HL_apex.c:438
inv_ixm42xxx_get_apex_data_activity
int inv_ixm42xxx_get_apex_data_activity(struct inv_ixm42xxx *s, inv_ixm42xxx_apex_step_activity_t *apex_activity)
Retrieve APEX pedometer outputs and format them.
Definition: Ixm42xxxDriver_HL_apex.c:480
IXM42XXX_APEX_CONFIG8_TAP_TMIN_t
IXM42XXX_APEX_CONFIG8_TAP_TMIN_t
Definition: Ixm42xxxDefs.h:1862
inv_ixm42xxx_tap_parameters_t
Ixm42xxx TAP inputs parameters definition.
Definition: Ixm42xxxDriver_HL_apex.h:53
inv_ixm42xxx_tap_data::tap_axis
IXM42XXX_APEX_DATA4_TAP_AXIS_t tap_axis
Definition: Ixm42xxxDriver_HL_apex.h:104
IXM42XXX_APEX_CONFIG6_R2W_SLEEP_GEST_DELAY_t
IXM42XXX_APEX_CONFIG6_R2W_SLEEP_GEST_DELAY_t
Definition: Ixm42xxxDefs.h:1794
Ixm42xxxDefs.h
inv_ixm42xxx_disable_apex_pedometer
int inv_ixm42xxx_disable_apex_pedometer(struct inv_ixm42xxx *s)
Disable APEX algorithm Pedometer.
Definition: Ixm42xxxDriver_HL_apex.c:410
inv_ixm42xxx
Ixm42xxx driver states definition.
Definition: Ixm42xxxDriver_HL.h:164
inv_ixm42xxx_disable_apex_tilt
int inv_ixm42xxx_disable_apex_tilt(struct inv_ixm42xxx *s)
Disable APEX algorithm Tilt.
Definition: Ixm42xxxDriver_HL_apex.c:467
inv_ixm42xxx_get_tap_parameters
int inv_ixm42xxx_get_tap_parameters(struct inv_ixm42xxx *s, inv_ixm42xxx_tap_parameters_t *tap_params)
Returns current TAP parameters.
Definition: Ixm42xxxDriver_HL_apex.c:197
inv_ixm42xxx_disable_wom
int inv_ixm42xxx_disable_wom(struct inv_ixm42xxx *s)
Disable Wake On Motion. Disables WoM event generation and reconfigures interrupt to fire on Fifo wate...
Definition: Ixm42xxxDriver_HL_apex.c:88
inv_ixm42xxx_apex_parameters::pedo_step_det_th
uint8_t pedo_step_det_th
Definition: Ixm42xxxDriver_HL_apex.h:67
inv_ixm42xxx_tap_data_t
struct inv_ixm42xxx_tap_data inv_ixm42xxx_tap_data_t
TAP outputs.
inv_ixm42xxx_apex_parameters_t
struct inv_ixm42xxx_apex_parameters inv_ixm42xxx_apex_parameters_t
Ixm42xxx APEX inputs parameters definition.
inv_ixm42xxx_enable_smd
int inv_ixm42xxx_enable_smd(struct inv_ixm42xxx *s)
Enable Significant Motion Detection. note : SMD requests to have the accelerometer enabled to work....
Definition: Ixm42xxxDriver_HL_apex.c:117
IXM42XXX_SMD_CONFIG_WOM_INT_MODE_t
IXM42XXX_SMD_CONFIG_WOM_INT_MODE_t
Definition: Ixm42xxxDefs.h:1002
inv_ixm42xxx_configure_apex_parameters
int inv_ixm42xxx_configure_apex_parameters(struct inv_ixm42xxx *s, const inv_ixm42xxx_apex_parameters_t *apex_inputs)
Configures DMP parameters for APEX algorithms (pedometer, tilt). This programmable parameters will be...
Definition: Ixm42xxxDriver_HL_apex.c:267
inv_ixm42xxx_apex_parameters::power_save_time
IXM42XXX_APEX_CONFIG1_DMP_POWER_SAVE_TIME_t power_save_time
Definition: Ixm42xxxDriver_HL_apex.h:76
inv_ixm42xxx_apex_parameters::pedo_sb_timer_th
IXM42XXX_APEX_CONFIG3_PEDO_SB_TIMER_TH_t pedo_sb_timer_th
Definition: Ixm42xxxDriver_HL_apex.h:69
inv_ixm42xxx_apex_parameters
Ixm42xxx APEX inputs parameters definition.
Definition: Ixm42xxxDriver_HL_apex.h:63
inv_ixm42xxx_apex_parameters::pedo_amp_th
IXM42XXX_APEX_CONFIG2_PEDO_AMP_TH_t pedo_amp_th
Definition: Ixm42xxxDriver_HL_apex.h:64
inv_ixm42xxx_get_tap_data
int inv_ixm42xxx_get_tap_data(struct inv_ixm42xxx *s, inv_ixm42xxx_tap_data_t *tap_data)
Retrieve tap outputs.
Definition: Ixm42xxxDriver_HL_apex.c:493
IXM42XXX_APEX_CONFIG1_LOW_ENERGY_AMP_TH_t
IXM42XXX_APEX_CONFIG1_LOW_ENERGY_AMP_TH_t
Definition: Ixm42xxxDefs.h:1632
inv_ixm42xxx_init_tap_parameters_struct
int inv_ixm42xxx_init_tap_parameters_struct(struct inv_ixm42xxx *s, inv_ixm42xxx_tap_parameters_t *tap_inputs)
Fill the TAP parameters structure with all the default parameters for TAP algorithm.
Definition: Ixm42xxxDriver_HL_apex.c:166
IXM42XXX_APEX_CONFIG2_PEDO_AMP_TH_t
IXM42XXX_APEX_CONFIG2_PEDO_AMP_TH_t
Definition: Ixm42xxxDefs.h:1662
inv_ixm42xxx_configure_tap_parameters
int inv_ixm42xxx_configure_tap_parameters(struct inv_ixm42xxx *s, const inv_ixm42xxx_tap_parameters_t *tap_inputs)
Configure TAP.
Definition: Ixm42xxxDriver_HL_apex.c:178
inv_ixm42xxx_apex_parameters::pedo_step_cnt_th
uint8_t pedo_step_cnt_th
Definition: Ixm42xxxDriver_HL_apex.h:65
inv_ixm42xxx_apex_step_activity_t
struct inv_ixm42xxx_apex_step_activity inv_ixm42xxx_apex_step_activity_t
APEX pedometer outputs.
IXM42XXX_APEX_CONFIG9_SENSITIVITY_MODE_t
IXM42XXX_APEX_CONFIG9_SENSITIVITY_MODE_t
Definition: Ixm42xxxDefs.h:1880
inv_ixm42xxx_tap_data::double_tap_timing
uint8_t double_tap_timing
Definition: Ixm42xxxDriver_HL_apex.h:106
inv_ixm42xxx_apex_parameters::low_energy_amp_th
IXM42XXX_APEX_CONFIG1_LOW_ENERGY_AMP_TH_t low_energy_amp_th
Definition: Ixm42xxxDriver_HL_apex.h:88
inv_ixm42xxx_apex_parameters::tilt_wait_time
IXM42XXX_APEX_CONFIG4_TILT_WAIT_TIME_t tilt_wait_time
Definition: Ixm42xxxDriver_HL_apex.h:74
IXM42XXX_APEX_CONFIG8_TAP_TAVG_t
IXM42XXX_APEX_CONFIG8_TAP_TAVG_t
Definition: Ixm42xxxDefs.h:1850
inv_ixm42xxx_start_dmp
int inv_ixm42xxx_start_dmp(struct inv_ixm42xxx *s)
Start DMP for APEX algorithms.
Definition: Ixm42xxxDriver_HL_apex.c:377
IXM42XXX_APEX_CONFIG0_DMP_ODR_t
IXM42XXX_APEX_CONFIG0_DMP_ODR_t
DMP ODR selection.
Definition: Ixm42xxxDefs.h:986
inv_ixm42xxx_disable_tap
int inv_ixm42xxx_disable_tap(struct inv_ixm42xxx *s)
Disable TAP.
Definition: Ixm42xxxDriver_HL_apex.c:232
IXM42XXX_APEX_CONFIG7_TAP_MAX_PEAK_TOL_t
IXM42XXX_APEX_CONFIG7_TAP_MAX_PEAK_TOL_t
Definition: Ixm42xxxDefs.h:1821
inv_ixm42xxx_apex_parameters::pedo_hi_enrgy_th
IXM42XXX_APEX_CONFIG3_PEDO_HI_ENRGY_TH_t pedo_hi_enrgy_th
Definition: Ixm42xxxDriver_HL_apex.h:72
IXM42XXX_APEX_DATA4_TAP_AXIS_t
IXM42XXX_APEX_DATA4_TAP_AXIS_t
Definition: Ixm42xxxDefs.h:456
inv_ixm42xxx_apex_step_activity::step_cadence
uint8_t step_cadence
Definition: Ixm42xxxDriver_HL_apex.h:95
inv_ixm42xxx_apex_parameters::r2w_mounting_matrix
IXM42XXX_APEX_CONFIG5_R2W_MOUNTING_MATRIX_t r2w_mounting_matrix
Definition: Ixm42xxxDriver_HL_apex.h:85
inv_ixm42xxx_disable_smd
int inv_ixm42xxx_disable_smd(struct inv_ixm42xxx *s)
Disable Significant Motion Detection. Disables SMD event generation and disables SMD interrupt.
Definition: Ixm42xxxDriver_HL_apex.c:143
IXM42XXX_APEX_CONFIG3_PEDO_SB_TIMER_TH_t
IXM42XXX_APEX_CONFIG3_PEDO_SB_TIMER_TH_t
Definition: Ixm42xxxDefs.h:1702
inv_ixm42xxx_tap_parameters_t::tmin
IXM42XXX_APEX_CONFIG8_TAP_TMIN_t tmin
Definition: Ixm42xxxDriver_HL_apex.h:58
IXM42XXX_APEX_CONFIG4_R2W_SLEEP_TIME_OUT_t
IXM42XXX_APEX_CONFIG4_R2W_SLEEP_TIME_OUT_t
Definition: Ixm42xxxDefs.h:1750
inv_ixm42xxx_apex_parameters::sensitivity_mode
IXM42XXX_APEX_CONFIG9_SENSITIVITY_MODE_t sensitivity_mode
Definition: Ixm42xxxDriver_HL_apex.h:80
inv_ixm42xxx_tap_parameters_t::max_peak_tol
IXM42XXX_APEX_CONFIG7_TAP_MAX_PEAK_TOL_t max_peak_tol
Definition: Ixm42xxxDriver_HL_apex.h:55
inv_ixm42xxx_apex_parameters::r2w_gest_delay
IXM42XXX_APEX_CONFIG6_R2W_SLEEP_GEST_DELAY_t r2w_gest_delay
Definition: Ixm42xxxDriver_HL_apex.h:86
IXM42XXX_APEX_CONFIG1_DMP_POWER_SAVE_TIME_t
IXM42XXX_APEX_CONFIG1_DMP_POWER_SAVE_TIME_t
Definition: Ixm42xxxDefs.h:1607
inv_ixm42xxx_tap_parameters_t::tmax
IXM42XXX_APEX_CONFIG8_TAP_TMAX_t tmax
Definition: Ixm42xxxDriver_HL_apex.h:56
inv_ixm42xxx_apex_parameters::power_save
IXM42XXX_APEX_CONFIG0_DMP_POWER_SAVE_t power_save
Definition: Ixm42xxxDriver_HL_apex.h:77
IXM42XXX_APEX_CONFIG5_R2W_MOUNTING_MATRIX_t
IXM42XXX_APEX_CONFIG5_R2W_MOUNTING_MATRIX_t
Definition: Ixm42xxxDefs.h:1772
IXM42XXX_APEX_CONFIG0_DMP_POWER_SAVE_t
IXM42XXX_APEX_CONFIG0_DMP_POWER_SAVE_t
Definition: Ixm42xxxDefs.h:934
IXM42XXX_APEX_CONFIG8_TAP_TMAX_t
IXM42XXX_APEX_CONFIG8_TAP_TMAX_t
Definition: Ixm42xxxDefs.h:1838
inv_ixm42xxx_apex_parameters::r2w_sleep_time_out
IXM42XXX_APEX_CONFIG4_R2W_SLEEP_TIME_OUT_t r2w_sleep_time_out
Definition: Ixm42xxxDriver_HL_apex.h:84
inv_ixm42xxx_enable_apex_pedometer
int inv_ixm42xxx_enable_apex_pedometer(struct inv_ixm42xxx *s)
Enable APEX algorithm Pedometer. note : Pedometer request to have the accelerometer enabled to works ...
Definition: Ixm42xxxDriver_HL_apex.c:395
inv_ixm42xxx_apex_step_activity::step_cnt
uint16_t step_cnt
Definition: Ixm42xxxDriver_HL_apex.h:94
inv_ixm42xxx_init_apex_parameters_struct
int inv_ixm42xxx_init_apex_parameters_struct(struct inv_ixm42xxx *s, inv_ixm42xxx_apex_parameters_t *apex_inputs)
Fill the APEX parameters structure with all the default parameters for APEX algorithms (pedometer,...
Definition: Ixm42xxxDriver_HL_apex.c:245
inv_ixm42xxx_enable_tap
int inv_ixm42xxx_enable_tap(struct inv_ixm42xxx *s)
Enable TAP. note : TAP requests to have the accelerometer enabled to work. To have good performance,...
Definition: Ixm42xxxDriver_HL_apex.c:219
IXM42XXX_APEX_CONFIG4_TILT_WAIT_TIME_t
IXM42XXX_APEX_CONFIG4_TILT_WAIT_TIME_t
Definition: Ixm42xxxDefs.h:1737
inv_ixm42xxx_tap_parameters_t::min_jerk_thr
uint8_t min_jerk_thr
Definition: Ixm42xxxDriver_HL_apex.h:54
inv_ixm42xxx_tap_parameters_t::tavg
IXM42XXX_APEX_CONFIG8_TAP_TAVG_t tavg
Definition: Ixm42xxxDriver_HL_apex.h:57
IXM42XXX_APEX_CONFIG3_PEDO_HI_ENRGY_TH_t
IXM42XXX_APEX_CONFIG3_PEDO_HI_ENRGY_TH_t
Definition: Ixm42xxxDefs.h:1719
inv_ixm42xxx_tap_data
TAP outputs.
Definition: Ixm42xxxDriver_HL_apex.h:102
IXM42XXX_SMD_CONFIG_WOM_MODE_t
IXM42XXX_SMD_CONFIG_WOM_MODE_t
Definition: Ixm42xxxDefs.h:1012
IXM42XXX_APEX_DATA4_TAP_DIR_t
IXM42XXX_APEX_DATA4_TAP_DIR_t
Definition: Ixm42xxxDefs.h:466
IXM42XXX_APEX_DATA4_TAP_NUM_t
IXM42XXX_APEX_DATA4_TAP_NUM_t
Definition: Ixm42xxxDefs.h:447
inv_ixm42xxx_tap_data::tap_num
IXM42XXX_APEX_DATA4_TAP_NUM_t tap_num
Definition: Ixm42xxxDriver_HL_apex.h:103
inv_ixm42xxx_apex_step_activity::activity_class
uint8_t activity_class
Definition: Ixm42xxxDriver_HL_apex.h:97
inv_ixm42xxx_configure_smd_wom
int inv_ixm42xxx_configure_smd_wom(struct inv_ixm42xxx *s, const uint8_t x_th, const uint8_t y_th, const uint8_t z_th, IXM42XXX_SMD_CONFIG_WOM_INT_MODE_t wom_int, IXM42XXX_SMD_CONFIG_WOM_MODE_t wom_mode)
Configure Wake On Motion and SMD thresholds.
Definition: Ixm42xxxDriver_HL_apex.c:32
inv_ixm42xxx_set_apex_frequency
int inv_ixm42xxx_set_apex_frequency(struct inv_ixm42xxx *s, const IXM42XXX_APEX_CONFIG0_DMP_ODR_t frequency)
Configure DMP Output Data Rate for APEX algorithms (pedometer, tilt)
Definition: Ixm42xxxDriver_HL_apex.c:366
inv_ixm42xxx_enable_apex_r2w
int inv_ixm42xxx_enable_apex_r2w(struct inv_ixm42xxx *s)
Enable APEX algorithm Raise to wake. note : Raise to wake request to have the accelerometer enabled t...
Definition: Ixm42xxxDriver_HL_apex.c:423
inv_ixm42xxx_enable_wom
int inv_ixm42xxx_enable_wom(struct inv_ixm42xxx *s)
Enable Wake On Motion. note : WoM requests to have the accelerometer enabled to work....
Definition: Ixm42xxxDriver_HL_apex.c:54
inv_ixm42xxx_get_apex_parameters
int inv_ixm42xxx_get_apex_parameters(struct inv_ixm42xxx *s, inv_ixm42xxx_apex_parameters_t *apex_params)
Returns current DMP parameters for APEX algorithms (pedometer, tilt).
Definition: Ixm42xxxDriver_HL_apex.c:319
inv_ixm42xxx_apex_step_activity
APEX pedometer outputs.
Definition: Ixm42xxxDriver_HL_apex.h:93