The issues encountered when reading and using BMI160
Hi,
Continuing from the previous question, once again, thanks to Peter Darnell:
https://community.altair.com/community?id=community_question&sys_id=a4282346db322d50cfd5f6a4e2961916
I have two IMU on my board, MTi630 and BMI160, I use the MTi630 as a reference to compare the signals from the BMI160 to ensure their accuracy. It can be confirmed at present that the gyro and accelerometer values captured through the BMI160 are correct. The program that utilizes the accelerometer in some parts is as shown in the following diagram.
Before I started using the data from the BMI160, all the data from the BMI160 was normal. But when I use the data from the BMI160, as in the red-boxed area in the diagram below
Upon re-comparing the data between the MTi630 and the BMI160, I found significant anomalies in the BMI160 data.
I have tested it under the following conditions, and the above issue consistently arises.
- The BMI160 data passes through a state chart
- The BMI160 data passes through a lookup table
- The BMI160 data undergoes multiplication operations, such as when coordinate transformations require multiplication by -1
There are no leads regarding the current issue, is it a programming problem, an I2C procedure problem, or a signal processing problem?
Thanks!
Jeff