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.

TAD5212: TAD5212

Part Number: TAD5212


Tool/software:

Hi,

I would like to bring up the TAD5212 on a custom board. The 7-bit I2C address for the device is set to 0x51. I am sending the following settings over I2C. Other than the software reset command, I can verify that the rest of the values are being written correctly to the device.  I am unable to pass audio through the device with these setting.

My configuration is 32-bit I2S audio, 48K, with two channels using only the DAC outputs in differential mode. Could you please confirm if the following settings are correct for my configuration?

w 51 00 00 # Set page 0
w 51 01 01 # Software Reset
w 51 02 01 # Wake up with AVDD > 2v and all VDDIO level
w 51 11 80 # Enable PASI DIN
w 51 19 00 # 1 data inputs and 1 data outputs for PASI
w 51 1a 70 # PASI I2S, 32 bit format
w 51 28 20 # PASI DIN Ch1 on TDM slot 0
w 51 29 21 # PASI DIN Ch2 on TDM slot 1
w 51 64 20 # Configure OUT1P/M as differential from DAC1
w 51 65 20 # Configure OUT1P LINEOUT 0dB audio band
w 51 66 20 # Configure OUT1M LINEOUT 0dB 2Vrms Differential
w 51 6b 20 # Configure OUT2P/M as differential from DAC2
w 51 6c 20 # Configure OUT2P LINEOUT 0dB audio band
w 51 6d 20 # Configure OUT2M LINEOUT 0dB 2Vrms Differential
w 51 76 cc # Disable all input channels and enable output channel 1 and 2
w 51 78 40 # Power up all DAC channels

  • Hi,

    I tested your I2C commands on an EVM and was able to send audio through. Can you check your I2S configuration? Your I2C does not specify what the master clock is, so you should provide both MCLK and BCLK. Check your input connections as well as your output connections. If you are still having trouble, please send a schematic so I can take a look.

    Best,
    Mir

  • now I can pass audio out on DAC 1 to channel 1 output  , I still cant pass audio out of  OUT2P/M DAC2

    w 51 0x00 0x00 # Set page 0
    w 51 0x01 0x01 # Software Reset
    w 51 0x02 0x01 # Wake up with AVDD > 2v and all VDDIO level
    w 51 0x11 0x80 # Enable PASI DIN
    w 51 0x19 0x10 # 2 data inputs for PASI
    w 51 0x1a 0x70 # PASI I2S, 32 bit format
    w 51 0x28 0x20 # PASI DIN Ch1 on TDM slot 0
    w 51 0x29 0x21 # PASI DIN Ch2 on TDM slot 1
    w 51 0x64 0x20 # Configure OUT1P/M as differential from DAC1
    w 51 0x65 0x20 # Configure OUT1P LINEOUT 0dB audio band
    w 51 0x66 0x20 # Configure OUT1M LINEOUT 0dB 2Vrms Differential
    w 51 0x6b 0x20 # Configure OUT2P/M as differential from DAC2
    w 51 0x6c 0x20 # Configure OUT2P LINEOUT 0dB audio band
    w 51 0x6d 0x20 # Configure OUT2M LINEOUT 0dB 2Vrms Differential
    w 51 0x76 0xcc # Disable all input channels and enable output ch
    w 51 0x78 0x40 # Power up all DAC channels

    I will share the schematic through FAE who is supporting us.

  • Hi,

    I think your issue lies in the line you changed - the "w 51 0x19 0x10 # 2 data inputs for PASI" line. You should change it to "w 51 0x19 0x50", the 0x50 in hex is to set it to 0101 0000 in binary, it should set two PASI outputs and two PASI inputs. 

    I got your schematic via email. It looks good, you're right it is most likely a programming issue. Let me know if this doesn't fix your problem.

    Best,
    Mir

  • No unfortunately setting 0x19 to 0x50 did not fix the issue.   It seems like DAC#2 is not active because I set 0x6b to 0x40 ( in analog bypass mode) which worked.  which tells me that the output pins and backend audio is fine on that channel.  I also verified that I am sending audio on the ch2 of DIN .  let me know if there are any other settings that I need to try.

  • Hi,

    I tested your script (without my suggestion) on an EVM and it worked for me, sending digital audio via the I2S pins and outputting audio from both OUT1 and OUT2. Can you send a register dump? Let's check that we have the same configurations. Sorry about this!

    Best,
    Mir

  • Hi Can you please send me a list of address I should create the dump from.  

  • You can dump all, I can compare it with my register dump.

  • this is a custom board, Do I need to get register values from all pages or only page 0?  

  • If you have the option to dump without defaults that would be great to do for all pages, but if not we can just start with page 0 if that is easiest for you. As much info as possible would be good just in case.