I am trying to set up ADXL362B in loop mode for motion activated switch. Interrupt line is connected to a host processor, that reads the STATUS register whenever there is an activity/Inactivity.
We have only one interrupt line available on host processor, so I am using INT1 of ADXL362 for this purpose. Activity and Inactivity are mapped to this interrupt. and Awake signal is not mapped to this interrupt.
Steps I followed are :
1. Do a soft reset first. and wait for 20ms
2. Write all the register setting using burst write.
3. Wait for 10ms
4. Read back all the register setting and verify it.
I can see the interrupt pulse for activity and inactivity. That's cool.
But when I read the AWAKE bit on STATUS register, it is sometimes reset even when the event is Activity. I tried giving some delay (1ms, 3ms, 10ms) between the interrupt pulse and the instant I read the status register. Giving delay of 10ms works most of the time but sometimes it doesn't work, esp. when the device wakeup from longer inactivity period(say 1min), I still read AWAKE = 0 , after an activity interrupt.
How long should I wait after an interrupt pulse is received and before I can read the status register ?
I need to have a fool proof mechanism to assert activity or inactivity .