summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--watch-library/driver/lis2dw.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/watch-library/driver/lis2dw.c b/watch-library/driver/lis2dw.c
index 73b54aaf..f9cd5cc1 100644
--- a/watch-library/driver/lis2dw.c
+++ b/watch-library/driver/lis2dw.c
@@ -31,8 +31,8 @@ bool lis2dw_begin(void) {
}
watch_i2c_write8(LIS2DW_ADDRESS, LIS2DW_REG_CTRL2, LIS2DW_CTRL2_VAL_BOOT);
watch_i2c_write8(LIS2DW_ADDRESS, LIS2DW_REG_CTRL2, LIS2DW_CTRL2_VAL_SOFT_RESET);
- // Start at 100 Hz data rate
- watch_i2c_write8(LIS2DW_ADDRESS, LIS2DW_REG_CTRL1, LIS2DW_CTRL1_VAL_ODR_100HZ | LIS2DW_CTRL1_VAL_MODE_HIGH_PERFORMANCE);
+ // Start at lowest possible data rate and lowest possible power mode
+ watch_i2c_write8(LIS2DW_ADDRESS, LIS2DW_REG_CTRL1, LIS2DW_CTRL1_VAL_ODR_LOWEST | LIS2DW_CTRL1_VAL_MODE_LOW_POWER | LIS2DW_CTRL1_VAL_LPMODE_4);
// Enable block data update (output registers not updated until MSB and LSB have been read) and address autoincrement
watch_i2c_write8(LIS2DW_ADDRESS, LIS2DW_REG_CTRL2, LIS2DW_CTRL2_VAL_BDU | LIS2DW_CTRL2_VAL_IF_ADD_INC);
// Set range to ±2G
@@ -65,10 +65,6 @@ lis2dw_reading lis2dw_get_raw_reading(void) {
retval.z = buffer[4];
retval.z |= ((uint16_t)buffer[5]) << 8;
- retval.x >>= 2;
- retval.y >>= 2;
- retval.z >>= 2;
-
return retval;
}