BMA253 Orientation not displaying results, acts like blocking is on

Hello, we are using the BMA253.  I am trying to get the orientation bits to show up, but they act as if they are blocked. 

In register ox2c I write 0x00, to set no blocking, but still get no data, is there a blocking flag to check?  The data sheets states that the data will not upate if blocking is on, but I set for no blocking?

Reading from 0x0c I get the flat bit toggling on to 1 both +Z and -Z, but OREINT<2:0> always returns zero,  0x80 is all I ever see regardless of orientation.  

What else could be stopping OREINT<2:0> from updating?

Best reply by FAE_CA1

Hi,

Your code looks OK. In order to see the change of orient<2:0> from 000b, you need to enable BMA253 orientation interrupt by writing the value of 0x40 to register 0x16. So you can add one line in your function "AccelConfig(void)" that enables the orientation interrupt.

View original
3 replies
Resolved