I have been working with an ICM20602 for the last few weeks. Over the last two days I have been running experiments on gyro stability. Since I am looking for the smallest drift possible, I have create a circuit that temperature stabilizes the ICM20602. I can maintain 60C +- 0.05C (as reported by the ICM itself) using an NPN transistor as a heat source. My experiment is to collect 30 seconds of 1000Hz gx, gy, and gz data and take their averages. As soon as done, I start another collection of 30K data points. I did this for 12 hours and plotted the results. Before the ICM had reached a steady temperature, the change in average bias changed quickly and somewhat "dramatically". After about 20 minutes, the ICM was at steady state temperature, but I continued to see a change in the gx, gy, and gz bias values of about 0.2 degrees/sec for another 3 HOURS. After that, the bias value in the three axis were essentially constant. The change in bias values was much more pronounced in x and y than in Z although the effect was there.
If I was able to attach the graph, you will notice small spikes in the temperature. These mark the building heating system kicking on. ICM20602's make nice thermometers! :)
What might account for this change in gyro bias over 3 hours after the unit has reached a self reported thermal steady state? Might it just need a good cup of coffee and a warm shower to get the stiffness out of its joints? Or possibly there is some other physical effect taking place?