Browse Source

MPU6000: Correct temperature scaling for use with ICM20608

sbg
ksschwabe 9 years ago committed by Lorenz Meier
parent
commit
88caa9bc93
  1. 9
      src/drivers/mpu6000/mpu6000.cpp

9
src/drivers/mpu6000/mpu6000.cpp

@ -1913,7 +1913,14 @@ MPU6000::measure() @@ -1913,7 +1913,14 @@ MPU6000::measure()
arb.scaling = _accel_range_scale;
arb.range_m_s2 = _accel_range_m_s2;
_last_temperature = (report.temp) / 361.0f + 35.0f;
if(is_icm_device()) // if it is an ICM20608
{
_last_temperature = (report.temp) / 326.8f + 25.0f;
}
else // If it is an MPU6000
{
_last_temperature = (report.temp) / 361.0f + 35.0f;
}
arb.temperature_raw = report.temp;
arb.temperature = _last_temperature;

Loading…
Cancel
Save