AD7993 I2C ACK problem


I am using a MCU (PIC32MX795F512L) to interface with the AD7993-0 ADC over I2C.

I have connected the device in the test setup shown in the following schematic.

  1. VDD is stable at 3.28V.
  2. I2C pullups : 1K (A bit aggressive)
  3. I2C clock freq : 100kHz

Since AS is left floating the slave address is 0x20. I want to set the internal register to the configuration register.

As such, the first byte written to the device is (0x20<<1)|0 = 0x40.

The second byte written to the device is 0x08.

The top signal is SCL and the bottom is SDA probed at the slave device.

Notice that the device does not ACK for both bytes. I have tried all possible slave addresses with no luck.

The figure below shows the transients of the I2C pulses :

I have also tried reading a single byte from this device but the MCU received 0xFF, meaning the slave did not touch the open-drain SDA line.

Any inputs will be gladly appreciated!