From b5d401b20cb418587d695ac0e9e4f1fc7258f1a6 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Wed, 6 Oct 2021 09:35:46 -0400 Subject: [PATCH] drivers/imu: ensure timestamp_sample adjustment isn't done as float (continued) --- src/drivers/imu/bosch/bmi055/BMI055_Accelerometer.cpp | 2 +- src/drivers/imu/bosch/bmi055/BMI055_Gyroscope.cpp | 2 +- src/drivers/imu/bosch/bmi088/BMI088_Gyroscope.cpp | 2 +- src/drivers/imu/invensense/icm20602/ICM20602.cpp | 2 +- src/drivers/imu/invensense/icm20649/ICM20649.cpp | 2 +- src/drivers/imu/invensense/icm20948/ICM20948.cpp | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/drivers/imu/bosch/bmi055/BMI055_Accelerometer.cpp b/src/drivers/imu/bosch/bmi055/BMI055_Accelerometer.cpp index b73e10d3c3..77cf537302 100644 --- a/src/drivers/imu/bosch/bmi055/BMI055_Accelerometer.cpp +++ b/src/drivers/imu/bosch/bmi055/BMI055_Accelerometer.cpp @@ -206,7 +206,7 @@ void BMI055_Accelerometer::RunImpl() if (samples == _fifo_samples + 1) { // sample timestamp set from data ready already corresponds to _fifo_samples if (timestamp_sample == 0) { - timestamp_sample = now - FIFO_SAMPLE_DT; + timestamp_sample = now - static_cast(FIFO_SAMPLE_DT); } samples--; diff --git a/src/drivers/imu/bosch/bmi055/BMI055_Gyroscope.cpp b/src/drivers/imu/bosch/bmi055/BMI055_Gyroscope.cpp index ab26469d38..d2ea514530 100644 --- a/src/drivers/imu/bosch/bmi055/BMI055_Gyroscope.cpp +++ b/src/drivers/imu/bosch/bmi055/BMI055_Gyroscope.cpp @@ -206,7 +206,7 @@ void BMI055_Gyroscope::RunImpl() if (samples == _fifo_samples + 1) { // sample timestamp set from data ready already corresponds to _fifo_samples if (timestamp_sample == 0) { - timestamp_sample = now - FIFO_SAMPLE_DT; + timestamp_sample = now - static_cast(FIFO_SAMPLE_DT); } samples--; diff --git a/src/drivers/imu/bosch/bmi088/BMI088_Gyroscope.cpp b/src/drivers/imu/bosch/bmi088/BMI088_Gyroscope.cpp index 792ed1e888..7dac23e578 100644 --- a/src/drivers/imu/bosch/bmi088/BMI088_Gyroscope.cpp +++ b/src/drivers/imu/bosch/bmi088/BMI088_Gyroscope.cpp @@ -207,7 +207,7 @@ void BMI088_Gyroscope::RunImpl() if (samples == _fifo_samples + 1) { // sample timestamp set from data ready already corresponds to _fifo_samples if (timestamp_sample == 0) { - timestamp_sample = now - FIFO_SAMPLE_DT; + timestamp_sample = now - static_cast(FIFO_SAMPLE_DT); } samples--; diff --git a/src/drivers/imu/invensense/icm20602/ICM20602.cpp b/src/drivers/imu/invensense/icm20602/ICM20602.cpp index 70a6e4d8be..49d91d8c9d 100644 --- a/src/drivers/imu/invensense/icm20602/ICM20602.cpp +++ b/src/drivers/imu/invensense/icm20602/ICM20602.cpp @@ -274,7 +274,7 @@ void ICM20602::RunImpl() if (samples > _fifo_gyro_samples) { // grab desired number of samples, but reschedule next cycle sooner int extra_samples = samples - _fifo_gyro_samples; - timestamp_sample -= extra_samples * FIFO_SAMPLE_DT; + timestamp_sample -= extra_samples * static_cast(FIFO_SAMPLE_DT); samples = _fifo_gyro_samples; ScheduleOnInterval(_fifo_empty_interval_us, diff --git a/src/drivers/imu/invensense/icm20649/ICM20649.cpp b/src/drivers/imu/invensense/icm20649/ICM20649.cpp index 68835d0576..5c56abfee9 100644 --- a/src/drivers/imu/invensense/icm20649/ICM20649.cpp +++ b/src/drivers/imu/invensense/icm20649/ICM20649.cpp @@ -229,7 +229,7 @@ void ICM20649::RunImpl() if (samples > _fifo_gyro_samples) { // grab desired number of samples, but reschedule next cycle sooner int extra_samples = samples - _fifo_gyro_samples; - timestamp_sample -= extra_samples * FIFO_SAMPLE_DT; + timestamp_sample -= extra_samples * static_cast(FIFO_SAMPLE_DT); samples = _fifo_gyro_samples; ScheduleOnInterval(_fifo_empty_interval_us, diff --git a/src/drivers/imu/invensense/icm20948/ICM20948.cpp b/src/drivers/imu/invensense/icm20948/ICM20948.cpp index 8f61ad9879..fff65ac893 100644 --- a/src/drivers/imu/invensense/icm20948/ICM20948.cpp +++ b/src/drivers/imu/invensense/icm20948/ICM20948.cpp @@ -265,7 +265,7 @@ void ICM20948::RunImpl() if (samples > _fifo_gyro_samples) { // grab desired number of samples, but reschedule next cycle sooner int extra_samples = samples - _fifo_gyro_samples; - timestamp_sample -= extra_samples * FIFO_SAMPLE_DT; + timestamp_sample -= extra_samples * static_cast(FIFO_SAMPLE_DT); samples = _fifo_gyro_samples; ScheduleOnInterval(_fifo_empty_interval_us,