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.

I2C communication between MCU and audio amplifier TAS5753MD, Got NACK after send slave address

Part Number: TAS5753MD

Hi,

We start to debug audio amplifier and try to read register value of audio amplifier via I2C, after MCU(I2C master) send slave address(7-bit slave address is 0x54) to TAS5753MD(I2C slave), got NACK from audio amplifier.

 

I can use MCU to communicate with another chip(light sensor, which is used as I2C slave, 7-bit slave address is 0x44) via I2C with the same code of I2C master.

 

So now we doubt about the start-up sequence(at chapter 8.2.1.2.5,page58 of datasheet of audio amplifier).

    1. Follow the description below to design software of MCU.

 

drive the PVDD /RST /PDN pin low, drive /PDN pin high and wait 10ms, then drive /RST hign and wait 13.5ms, then drive PVDD pin high and wait 10us, and wait for 3s before read register value of audio amplifier. After send device address(7-bit address 0x54) to amplifier, got NACK from audio amplifier. below picture 1 is the start-up sequence we got from scope.

 

    1. Follow the figure below to design software of MCU.

drive the PVDD /RST /PDN pin low, drive PVDD pin high and wait 10us, then drive /RST hign and wait 13.5ms, then drive /PDN pin high and wait 1ms, and wait for 3s before read register value of audio amplifier. After send device address(7-bit address 0x54) to amplifier, got NACK from audio amplifier. below picture 2 is the start-up sequence we got from scope.

 

 

By far when trying to use MCU to communicate with audio amplifier via I2C, it seems that the audio amplifier is inactive.  please help to check things below:

 

  1. could you help to check the start-up sequence in picture 1 & picture 2 below?
  1. Could you provide us the sequence of audio amplifier based on Mother Board and purepath software? This is very important for us.

--------- time is limited, I asked so many questions, I will appreciate it if you can give the answer for this question firstly.

  1. Could you help to check the schematic of audio amplifier designed by us?(please see picture 1)
  1. Thanks to confirm the information below:

I checked and you shouldn't have issues if you don't drive the I2S pins low before initialization, but be sure not to send audio data on the I2S bus before the initialization sequence is finished.

-----> could you help to check whether it’s a must to drive the I2C pins low before initialization or not?

  1. Do you have any suggestions about I2C communication between MCU and audio amplifier? After power up audio amplifier, it seems that it’s inactive. Is there any operation we can do via hardware/software to active audio amplifier?

 

     picture 1:


picture 2:

picture 3:


  • sorry,addtional things:

    1.Follow the description below to design software of MCU.


    2. Follow the figure below to design software of MCU.



  • Hi Eric,

    As to the I2C communication issue, please debug by:

    1. Please check the voltage of DIG_REG. It is the power for I2C module;
    2. Then I notice that your configuration for ADR/Fault may be connected to a GPIO, right? If so, please check the resistance of the GPIO during adr detection period of TAS5753.
      1. My concern here is there is a pull-down resistor in parallel with ADR resistor, which leads to address latch error;
      2. You can try all possible I2C addresses of TAS5753 to confirm that. 

    If the I2C communication is normal, then we can go further. 

    BR,

    Alix Wan

  • Hi Alix,

    Thank you very much for your quickly reply.

    1.Please check the voltage of DIG_REG. It is the power for I2C module;

    -----> the voltage of DIG_REG is 1.8V.

    2. Then I notice that your configuration for ADR/Fault may be connected to a GPIO, right?

    ---> no, ADR/SPK_Fault is pulled down to ground with a resistor(R80), value of  resistor is 10K ohm, we also had a try to replace R80 with another resistor(value of resistor is 0 ohm) . please see the picture below:

    3. You can try all possible I2C addresses of TAS5753 to confirm that.

    ----> we have tried  with 7-bit slave address 0x54 and 0x56, communication still fails.

    4. could you tell me the voltage level of I2C of TAS5753MD? is it 1.8V or 3.3V?

  • Hi Alix,

    sorry, add the picture of configuration of ADR/SPK_Fault below:

  • Hi Eric,

    DIG_REG indicates the power for TAS5753 is correct. Then may you try:

    1. Disconnect R80 and make ADR pin float, which will configure address to be 0x56 (see page 27 of datasheet)
    2. Please try 0x56 again to see whether the communication works well or not
    3. If not, right shift 1 bit of 0x56 to 0x2b. Then try again.

    BR,

    Alix

  • Hi Alix,

    1. after disconnect R80 and make ADR pin float, we tried with 7-bit slave address 0x56 / 0x2B, still got NACK from amplifier.

    2. pls also see the amplifier we are using below:

  • Eric,

    may you help capture the waveform of SDA and SCL pin, we can understand the situation from hardware aspect whether IIC communication is good or not.

    Dylan

  • Hi Alix & Dylan,

    actually we were blocked by the error description of TAS5753MD datasheet. 7-bit address should be 0x2A(pull down addr pin). pls delete 0x54--(see page 27 of datasheet)

  • Hi Eric,

    0x2A is one bit right shift of 0x54, which is similiar as 0x2B and 0x56. It is correct actually but a different expression.

    See my email above that has suggested to try 0x56/0x2B.

    Br,

    Alix Wan.

  • Hi Alix,

    The 7-bit address for the TAS5753MD device is 0101 010 (0x54) or 0101 011 (0x56) as defined by ADR/FAULT

    (external pulldown for 0x54 and pullup for 0x56).

    since the datasheet already descripted 7-bit address, so 0101010 is of no problem, but 0x54 is not right. so 0x54 will bring up misunderstanding, so can change it to:

    The 7-bit address for the TAS5753MD device is 0101 010 (0x2A)----pull addr pin down

    OR The 7-bit address for the TAS5753MD device is 0101 010 ---pull addr pin down

  • Hi Eric,

    Got it.

    Thanks for the suggestions, will give the feedback to system team for the improvement of the datasheet.

    BR,

    Alix Wan.