Maximum 32kHz ODR not possible on ICM40609D

By smnonisgmailcom , 6 July 2022

I am developing FW for a drone application for using Gyro and Accelerometer data at 32 kHz output rate.
The host MCU is an ST STM32F429ZI. Communication interface is SPI using DMA transfers at 20.833 MHz SPI speed.
The data is collected using data ready interrupt on INT1 pin.
I have verified all register settings to be as per ICM40609D datasheets.
I am able to read sensor data correctly. However, the maximum data-ready interrupt rate is around 8.775 kHz. Interrupts occur only around 114 us rate.
The supply voltage is 3.3 V. I measure around 3.398 V high on the interrupt when active.
INT1 is configured as active high, latched.
The whole SPI read operation (of 17 registers starting from TEMP_DATA1 through INT_STATUS) takes around 10 micro secs.
The interrupt gets cleared within13.5 microsecs of going high when INT_STATUS is read.
However, I am not able to get data at the 32 kHz ODR.
I can send captured logic analyzer traces if you would like to see them.
Any help to figure out this less than programmed output rate would be greatly appreciated.

phpbb Topic ID
39511