Post Go back to editing

ADIS IMU data is zero

Category: Hardware
Product Number: ADIS16505

I have an ADIS16505 IMU connected to a microcontroller. I have been working with these devices successfully for several years. I have seen where the device is working properly and then begins to produce zero data on all six IMU devices. I am requesting data at 100Hz and using the synch pin to synch sampling with GPS 1PPS (one/sec). I use the DataReady to provide an interrupt to the microcontroller to produce a "Burst Read" of the 16bit data words both the low and high words for all devices. Generally all this seems to work just fine. Once the IMU starts producing the zero data -- it doesnt recover.

Any thoughts on the internal mechanism that would produce zeros from the IMU? 

    Jim Kain  781 856 6175

  • Hello Jim,

    In the ADIS1650x IMU family, the SPI port can reach an invalid state if the number of bits clocked out of the SPI port by the host controller in a single transaction is not a multiple of 16. When in this invalid state, the burst start command (MOSI = 0x6800) may not be received properly, preventing the burst data payload from being transmitted. If the SPI port reaches this invalid state, the IMU must be reset to recover (via power cycle or resetn pin toggle).

    This can occur if the clock edge to chip select delay is too short, as denoted in the SPI timing diagram:

    This can also occur if excessive noise or ringing on the SPI clock causes an extra bit to be clocked in (or missed).

    If possible, I would recommend attaching a logic analyzer or scope to the SPI bus to verify that the SPI signals are compliant with the datasheet timing requirements.


    Alex Nolan