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.

TLV320AIC3204: Can supplying 3V3 to the I2C and only 1V8 to IOVDD damage the part?

Part Number: TLV320AIC3204

Tool/software:

I have a custom board containing a TLV320AIC3204 CODEC but am unable to communicate to it using I2C. Initially, VDD was being supplied with 1V8, but the I2C lines were pulled to 3V3 by 2k2 resistors. The 1V8 line comes on first.

I have now reconfigured the IOVDD supply to 3V3, but I cant talk to the codec at all over I2C. So far I have tested the following, but everything looks OK:

  • IOVDD, LDOIN, RESET, LDO select are all at 3.3V
  • DVDD is configured as an output through LED select, and reads 1.85V
  • AVDD is also outputting 1.85V
  • I have tested this on 3 boards
  • The I2C bus is operational at 100KHz and another device on the bus is communicating with the host microcontroller
  • I have tested slave address 0x18 and 0x30
  • I have checked that all supplies are up before the reset line is pulled high by the host micro by removing the pullup R9

Here is the relavent schematic and layout section:

Any assistance on what might be the issue here is much appreciated

  • Hi Peter,

    I would try to reconfigure your controller such that RESET is being held low, rather than floating. A floating reset may respond in odd ways and the codec may not be able to wake up correctly because of it.

    A good thing to also double check is the power sequence timing and that the I2C timing requirements are met. The latter is likely true since other devices are working but it is worth double checking.

    Best regards,
    Jeff McPherson

  • Hi Jeff, thanks for the reply, I've modded a board such that there is a 51K pull down from NRST to ground, so that the reset line is pulled low until the micro is ready to send commands.

    The only potential issue is that VDD (IOVDD, LDO_SELECT) is high right from power on, whereas the I2C and 3V3 (LDO_IN) lines only come up later. The NRESET line is pulled low for about a second after the power supplies and I2C are up and stable. Timing on the I2C looks OK.

    Could I have damaged the codec by using an IOVDD of 1V8 and an I2C of 3V3? I did notice that the I2C bus was only idling at 2V5 before I changed VDD to 3V3, so I wonder if the CODEC was pulling it down by a volt or so and became damaged in the process.

  • Hi Peter,

    It's possible the device was damaged. The absolute maximum input voltage for the digital inputs is IOVDD + 0.3, so by giving a input of 3.3V that's well above 2.1V. It's not a guarantee that damage happened, but it is definitely a risk. You could swap out for a new device to confirm.

    Best regards,
    Jeff McPherson