On the first revision of our board I successfully developed a firmware interface to the ADXL372 using code based on the AD sample drivers.
I am now working on a second board revision using an upgraded processor and porting the code.
I now see two differences with the new board:
1. The REVID register now reads 0x03 (was reading 0x02 on the previous board).
2. The STATUS register has the USER_NVM_BUSY bit on all the time. In this state, the device won't collect samples.
1. Obviously the new board has been fitted with a later revision of the ADXL372
2. The SPI interface signals look correct.
3. I can read the other ID registers correctly, only the REVID is different.
So: does the later revision of the ADXL372 have a problem? Does it require different initialisation?
Thanks for the question. Part with RevID 0x03 has an ASIC level optimization for I2C operation. If you don't use I2C, these two parts are identical for your use case. There shouldn't be any initialization difference between these two parts. Regarding the NVM bit, based on the DS, the reset value for this bit should be 1 during startup. Is there any difference showing between the two parts?