I am trying to write a basic PPG detection code on ADPD188GG and hoping to replicate the working of loat mode demo. My setup is based on I2C with polling for float mode measurements.
Here is what I can see:
- The ADPD188 device powers up correctly. I am able to correctly read DEVID (reg 0x08) and I2CS_ID(reg 09)
- Set the ADPD188 into program mode by writing 0x01 in MODE (reg 0x10). Read back the MODE to verify, All good!
- Write the float mode configuration registers from the WaveTool config file ADPD188GGZ_EVAL_PPG_FloatMode.dcfg. The registers and their config values are given in attached csv file.
- Set MODE(reg0x10) to normal sampling by writing 0x02. Readback to confirm the mode is set to running. So far so good!
- In an infinite loop, check for STATUS (reg 0x00) after every 20ms, but status[7:0] always return zero.
It looks like something is missing in the FIFO configuration for I2C based polling, but the datasheet is not very clear.
A quick response will be highly appreciated.
Syed Bilal Hasani