Skip to content

Commit e2379f7

Browse files
committed
Add comments and tweak config
1 parent a857925 commit e2379f7

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

drivers/CoreIMU/source/CoreIMU.cpp

+8-5
Original file line numberDiff line numberDiff line change
@@ -159,18 +159,21 @@ void CoreIMU::registerOnWakeUpCallback(std::function<void()> const &callback)
159159

160160
void CoreIMU::enableOnWakeUpInterrupt()
161161
{
162+
// ODR = 52Hz for reference
163+
162164
// ? Set filter and disable user offset
163165
lsm6dsox_xl_hp_path_internal_set(&_register_io_function, LSM6DSOX_USE_SLOPE);
164166
lsm6dsox_xl_usr_offset_on_wkup_set(&_register_io_function, 0);
165167

166168
// ? Set Wakeup config
167-
lsm6dsox_wkup_threshold_set(&_register_io_function, 2);
168-
lsm6dsox_wkup_ths_weight_set(&_register_io_function, LSM6DSOX_LSb_FS_DIV_64);
169-
lsm6dsox_wkup_dur_set(&_register_io_function, 0x02);
169+
lsm6dsox_wkup_threshold_set(&_register_io_function, 3); // LSB multiplier / Max: 31
170+
lsm6dsox_wkup_ths_weight_set(&_register_io_function,
171+
LSM6DSOX_LSb_FS_DIV_64); // 2 Weights, 1 LSB = FS_XL/2^x x:{6,8}
172+
lsm6dsox_wkup_dur_set(&_register_io_function, 1); // 1 LSB = 1*ODR_time / Max: 3
170173

171174
// ? Set Activity config
172-
lsm6dsox_act_sleep_dur_set(&_register_io_function, 0x02);
173-
lsm6dsox_act_mode_set(&_register_io_function, LSM6DSOX_XL_AND_GY_NOT_AFFECTED);
175+
lsm6dsox_act_sleep_dur_set(&_register_io_function, 0); // 1 LSB = 512*ODR / Max: 15
176+
lsm6dsox_act_mode_set(&_register_io_function, LSM6DSOX_XL_12Hz5_GY_PD); // 4 Modes
174177

175178
lsm6dsox_pin_int1_route_t lsm6dsox_int1 {
176179
.sleep_change = PROPERTY_ENABLE,

0 commit comments

Comments
 (0)