diff options
-rw-r--r-- | board/nocturne/board.c | 10 | ||||
-rw-r--r-- | board/nocturne/board.h | 1 |
2 files changed, 9 insertions, 2 deletions
diff --git a/board/nocturne/board.c b/board/nocturne/board.c index 1a96b9b629..67cc908c4e 100644 --- a/board/nocturne/board.c +++ b/board/nocturne/board.c @@ -156,6 +156,12 @@ static struct opt3001_drv_data_t g_opt3001_data = { .offset = 0, }; +/* Matrix to rotate accel/gyro into standard reference frame. */ +const matrix_3x3_t lid_standard_ref = { + { 0, FLOAT_TO_FP(-1), 0}, + { FLOAT_TO_FP(-1), 0, 0}, + { 0, 0, FLOAT_TO_FP(1)} +}; struct motion_sensor_t motion_sensors[] = { [LID_ACCEL] = { @@ -169,7 +175,7 @@ struct motion_sensor_t motion_sensors[] = { .drv_data = &g_bmi160_data, .port = I2C_PORT_ALS_GYRO, .addr = BMI160_ADDR0, - .rot_standard_ref = NULL, + .rot_standard_ref = &lid_standard_ref, .default_range = 4, /* g, enough for laptop. */ .min_frequency = BMI160_ACCEL_MIN_FREQ, .max_frequency = BMI160_ACCEL_MAX_FREQ, @@ -193,7 +199,7 @@ struct motion_sensor_t motion_sensors[] = { .drv_data = &g_bmi160_data, .port = I2C_PORT_ALS_GYRO, .addr = BMI160_ADDR0, - .rot_standard_ref = NULL, + .rot_standard_ref = &lid_standard_ref, .default_range = 1000, /* dps */ .min_frequency = BMI160_GYRO_MIN_FREQ, .max_frequency = BMI160_GYRO_MAX_FREQ, diff --git a/board/nocturne/board.h b/board/nocturne/board.h index 0c9bfd9f1b..5d866f1056 100644 --- a/board/nocturne/board.h +++ b/board/nocturne/board.h @@ -146,6 +146,7 @@ #define I2C_PORT_POWER NPCX_I2C_PORT0_0 #define I2C_PORT_BATTERY NPCX_I2C_PORT4_1 #define I2C_PORT_ALS_GYRO NPCX_I2C_PORT5_0 +#define I2C_PORT_ACCEL I2C_PORT_ALS_GYRO #define I2C_PORT_USB_C0 NPCX_I2C_PORT1_0 #define I2C_PORT_USB_C1 NPCX_I2C_PORT2_0 |