Hello.
There are a couple immediate things to keep in mind when you first look at your IMU data. First, all gyroscopes drift, so the raw values from them will almost never be zero and some kind of calibration for that will be required. Second, the default configurations for the LSM6DS33 are to report measurements in some of the highest resolution modes, ±2 g for the accelerometer, and ±245 dps for the gyro, so measurement noise and gyro drift will have pronounced effects by default. (Your code does not appear to modify those default settings.) Have you tried converting the raw readings to units of dps and comparing the numbers to the datasheet’s zero rate specification?
To confirm that the LSM6DS33 is working, could you test it by uploading our InertialSensors.ino example program from the Romi 32U4 Arduino library to your control board? Please post a sample of the Serial Monitor output so we can see what is going on.
- Patrick
