This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LDC1312: I2C NACK received after reading status register

Part Number: LDC1312


I have configured the LDC1312 for continuous sampling with 100Hz (2 channels). I have configured the INTB line to trigger an interrupt on which I read the status register and if needed the data value 1/2. This works fine so far. But from time to time after reading a few hundreds samples, I get an I2C address NACK when trying to read the data values. The read of the status register (value = 0x404C) immediately before works fine. What could be the reason to get an address NACK in this situation?

The I2C communication does not work till the next update of the status register (INTB line), in this case the next sampling period is finished.

  • Hi Michael,

    Is there a consistent period between these NACKs? And when you say the I2C communication doesn't work until the next status register update, does this mean you get an address NACK when you try to read any register? Or just the DATAx or status registers?

    Regards,
  • Hi Kristin

    I get an address NACK at every read. I tried re-reading the status register after an address NACK on the DATAx but it does work, I also get an address NACK. Are there any specified reasons to get a NACK on the I2C Bus?

    There is no consistent period between these NACKs as far I can see. The NACKs occur after reading some hundreds of samples and sometime recover after waiting for an DATAx update but then start to accumulate.

  • Hi Michael,

    Are you using the LDC1312EVM or your own board? It's possible that there is some noise on your I2C bus. If you are using your own board, do you have any noisy signals routed near the I2C lines? Looking at the picture you sent, I don't see any glaring issues with your I2C commands.

    Regards,
  • Hi Michael,

    I haven't heard from you in a while, so I'm assuming you were able to solve your problem. If this is not the case, feel free to continue the discussion in this thread or post a new question in the forum.

    Regards,