I am using an STM microchip to communicate with an IMU over I2C. I am requesting 3 axis of acceleration information from the IMU (x,y,z). I have the ODR Selection frequency set at 1.66 kHz. Currently the acceleration values don't always update every 1 ms (I have a timer set to send the acceleration data out over UART every 1 ms). The I2C baud rate is set as fast as it can go. Currently about 1 every 3 data points does not update. Any thoughts on initially where I can start looking for a solution?
I can add some of the code that I'm using. However, I don't think would be helpful to just lay it all in here. I am more looking for a trouble shooting starting point, or maybe some common mistake I might be making.