I'm using the self-test function of the ADXL372 and sometimes I get faulty result. If i perform the test again the function indicates me that the selftest is passing..
This is a bit confusing as I expect to always get a "success" when the accelerometer is working or always get "not success" when it has detected a failure once.
Here is the procedure I follow:
1. Read previous configurations of Fifo Control and Power Control Registers.
2. Writing in Fifo Control Register : 0b00000000
3. Writing in Power Control Register: 0b00100011
4. Wait at least 370ms for filters to be set
5. Writing in SelfTest Register: 0b00000001
6. Reading SelfTest Register until the bit 1 (ST_Done) is set
7. If bit 2(USER_ST) is set -> indicates selfTest pass otherwise selftest is failed
8. Restore previous configuration of accelerometers (Power&FIFO Control registers)
Is there something wrong in this process?