I have a custom board with the ADXl362 communicating with an nrf52832 microcontroller. Here are my config settings:
_write_register(0x2C, 0x07); // ODR = 400 Hz
_write_register(0x2B, 0x40); // Map AWAKE bit to INT2
_write_register(0x2A, 0x01); // Map DATA_READY bit to INT1
I have an interrupt handler for INT1 that sets a flag so the main loop can read a sample from the accelerometer. This works fine and the values make sense, but it seems that this interrupt is triggered at most 5-10 times per second. If I instead just have the main loop constantly reading data from the accelerometer, the [x, y, z] values change again at most 10 times per second even though I'm making hundreds of more register reads, indicating to me that the bottleneck isn't the SPI communications or the interrupts but the accelerometer.
Also it seems that changing the FILTER_CTL register from 0x07 to 0x01 has no effect. Reading this register I can confirm that my writes were successful.
Is there something I'm missing in my configuration?
Edit - I've done some testing on a development kit and we are noticing the same behavior, so I believe the issue has something to do with the configuration or code.