ICM20602 XA_OFFSET

By junjiechangecoevcom , 7 November 2022

I wanted to calibrate the values of the accelerometer X/Y/Z by means of XA_OFFSET_x. I saw in the datasheet ([7:1] XA_OFFS[6:0] Lower bits of the X accelerometer offset cancellation. ±16g Offset cancellation in all Full Scale modes, 15 bit 0.98-mg steps.) describes that bit0 is invalid and the higher bits are all valid. Since positive and negative values are involved, I thought I would just set the value *2 directly, so that it would be possible to write it directly (without considering the byte order here). At the same time, I also found that by giving XA_OFFSET_L (Register Type: READ/WRITE)
Register Address: 120 (Decimal); 78 (Hex)) to test if it can be calibrated, but found the following problem:
(MPU_FS_2G)
0x78 set value 0x3B/0X3A value
0 (initial value) -102
2 -736
4 -710
8 -660
16 -607
32 -483
64 -205
128 281
0 -736
This is not at all the same as described in the manual, and it does not return to the original value, this makes me confused (the gyroscope's is normal), please ask

Translated with www.DeepL.com/Translator (free version)

phpbb Topic ID
39587