ADIS16488 wrong acceleration data?

Hi all,

I'm using ADIS16488 and have connected it to a mcu to read its regiters through an SPI protocol. It was working fine until recently I realized that some regiters are sending wrong values. For example, Z_ACCL_OUT was something like -14.8 (the module was stationary all the time) while I expected it to be 1.0 (gravity). I investigated everything (connections and etc) untill I realized the accelerometer's calibration registers, i.e. ZA_BIAS_HIGH, Z_ACCL_SCALE, and etc are not 0x0000 at the start-up.

This is interesting. Is ADIS automatically writes some values to these registers?  

So to solve this issue (wrong acc data), I set all acceleration registers to 0x0000 at the beginning of the code. 

  • Thank you for sharing this with us. I’m glad that you were able to figure out what was going on and take the appropriate corrective actions. The initialization routine in these products do not write to those registers, so this is peculiar. It would be interesting to dig into the details of the units operation, prior to this observation, if it happens again. One possible area of consideration is if unit loses power, while the flash update is happening.

  • Sadly though, this happens everytime when I connect it to the power. The circuit is simple: an SPI connection between module and a microcontroller. The gound of thetwo devices are common and both connectd to the GND of the SPI. I played with the SCK frequency (no change in the result). This seems to happen only for accelerometer registers (so far). And everytime after start up, those registers (i.e.  XA_BIAS_HIGH, ZA_BIAS_HIGH, Z_ACCL_SCALE, etc) are filled with same values as before. 

    I would appreciate it if you could help me out.