I have a CN0537 Arduino format ADPD188BI eval board and try to communicate with it over I2C.
After changing the jumpers to I2C and disabling SPI with pulling CS high, the board did not work out of the box. I noticed that the I2C pullup resistors R17 and R18 are quite large with 50k. After changing those to 10K, the board worked, while being the only slave on the bus. When connecting other devices to the bus, it didn't work anymore. I checked SCL on the scope and the signal looks not like it's supposed to be:
I checked the pullup-resistors prior to the level-shifter (R11, R12), which are also 50K, even though 10K is recommended in the datasheet. After changing those to 10K, the signal still looked the same and I was still not able to talk to the ADPD188Bi with other devices being on the bus.
I finally desoldered the entire level shifter, R11 and R12, ran the I2C directly with 3.3V levels and 10K pullups and tada it works.
Seems like the I2C interface of the eval-board was never tested with some Arduino or other main stream MCU. For me, this looks like a conceptional error in the design or is there some explanation to this?