03-26-2022 05:38 PM
I am reading the BMI088 with I2C, I've tested that the communication is working well with checking chip id.
I have set the gyro 1000dps, and request 6 bytes. On reading I bitshift the first byte and use bitwise or with the second received byte. After this I convert my raw data into degree/second. I would expect, without moving the gyroscope at all, that the data readings would not change by much. In the image you can see that the ouput in degree/second changes alot without moving the BMI088.
Does anyone has any idea what could be the problem?
Thank you in advance
Solved! Go to Solution.
03-27-2022 03:11 PM
Did you use BMI088 sensor API on github? https://github.com/BoschSensortec/BMI08x-Sensor-API/tree/master/examples/read_sensor_data
In addition to the range, what else have you configured? Such as power mode, ODR, bandwidth, etc.
03-28-2022 10:24 AM
After rereading the datasheet multiple times I've found the problem. I was bitshifting the first incoming byte to the MSB. After reading the datasheet more carefully I found out that the first incoming byte is the LSB. After applying this solution the error was +-4 dps in rest, which is not such big difference.
Thank you for the reply.