03-08-2021 08:15 PM
Hi,
I am wishing to utilize both any motion and no motion interrupts for power management purposes.
Unfortunately, I couldn't manage to handle generated interrupts by the BNO055 properly.
to achieve that first I set the sensor into config mode, and set INT_EN and INT_MASK to 0xC0 and also ACC_INT_SETTINGS to 1C. Then set the sensor into NDOF mode.
Successfully managed to catch the first interrupt but the Interrupt pin stays high however, I also read INTR_STAT register!
Is there anything that I forgot to execute?
kind regards, Reza
03-09-2021 10:08 AM
Hi Sir:
I check both any motion and no motion features and interrupts,the Interrupt pin stays low after read INTR_STAT register or when no interrupt.
Recommend you to disconnect BNO055 interrupt pin to host and directly measure the sensor interrupt pin level when interrupt trigger, so you can judge whether this sensor generates interrupt signal or not.
Hopefully, it can help you.
03-10-2021 02:21 AM
Hello rezza,
In addition to these parameters you have configured, you need to refer "Figure 2: Principle of any-motion detection", "Table 3-41: Any-motion interrupt parameters and Axis selection", "Table 3-39 No-motion of time-out periods", "Table 3-40 Timing of No-motion interrupt". Configure and test it again.
03-10-2021 07:06 PM
Hi Jet,
Thank you for your reply.
Yes, I monitored the INT pin voltage level and continuously read the INTR_STAT register.
The INT pin stays high even though the value of INTR_STAT is 0x00.
I noticed that the INT pin is initially low, but it switches to high once I set it to NDOF.
So, that's why I only catch the first interrupt on rising edge.
03-10-2021 07:15 PM
Hello BSTRobin
Thank you for your reply.
Yes, that's true. for ACC_AM_THRES and ACC_NM_SET registers, I stick to the default values which are 0x14 and 0x0B respectively.
Anyway, I receive the interrupts but the INT pin stays high even though INTR_STAT value is 0x00.