The BMA400 datasheet may be wrong about the logical combination in the Generic interrupts: Register 0x40, page 86, and 0x4B, page 92 gen1/2_comb_sel: 0x00 = logical OR << in reality, 0x00 requires ALL enabled axes to comply (AND/all) 0x00 = logical AND << in reality, 0x01 requires ONE of the enabled axes to comply (OR/any) I found this while experimenting with the BMA400 shuttle board and the Development Desktop 2.0 software. This may be causing your problem. EDIT: Actually, maybe not. My experiments were with manual reference updates and one-time reference updates. I just tried it with the "every time" reference update mode (the mode you are using). The "every time" mode appears to have valid combinational logic -- although it's hard to tell, because the reference is always changing. In "every time" mode, interrupts happen more often when the bit is set to 0x00, so I think that's an indication of a logical OR operation.
... View more