IMU temperature calibration

I’m currently working with the 0S1-Rev7 Lidar, using firmware version 3.1.x and am trying to use the gyroscope to measure the angle change of the device it is attached to. I have noticed that as the device heats up, the gyroscope offset changes. This is obviously expected but I was wondering what the best method to account for this change in offset is? are there any ouster application notes for this? Thank you

The drift isn’t only caused by temperature as the title suggests, so a one time temperature calibration will not solve your problem. We don’t have best practices documented, but this is a well researched problem. You can search for ‘gyro drift’ and ‘gyro bias’ and find many approaches.

Solutions generally involve sensor fusion where an additional sensor is used to estimate when the gyro is stationary, and use that stationary data to update the estimate of bias that is subtracted from future gyro data until the next bias update.

An example of this fusion concept with our lidar could involve:

  1. Running lidar SLAM to estimate stationary periods (times where the sensor pose is unchanging)
  2. Sampling the gyro data during those stationary times and
  3. Subtracting the mean gyro data - the bias - from future gyro data