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.

TAS5806M: Overcurrent and no sound

Part Number: TAS5806M

Hello everyone,

We are currently experiencing overcurrent troubles with the TAS5806M used in mono mode (PBTL) with a 4Ohm speaker.

We had already used this component successfully with an earlier proto board, where we were able to play sounds and modify the volume. In this new configuration, the schematic and program are a direct copy of the previous version, in fact only the layout has been modified.

The overcurrent occurs after initialization, when the DEVICE_CTRL_2 register is written to configure the device state control register in PLAY mode.

At this point, a 200ns pulse is heard in the loudspeaker, and the CH1_OC_I (Left channel over current fault) bit is set to H in the CHAN_FAULT register.

As a result, no sound can be played. The OUT_A and OUT_B outputs are shown below, PVDD = 24V.

The init function of the device:

void TAS5806M_Init(void)
{
	HAL_Delay(10); // wait at least 5 ms from PDN set to 1

	// Reset
	TAS5806M_SetRegister(TAS5806M_REGISTER_RESET_CTRL, 1 << 4 | 1 << 0);
	TAS5806M_SetRegister(TAS5806M_REGISTER_RESET_CTRL, 0);

	// Reset DSP
	TAS5806M_SetRegister(TAS5806M_REGISTER_DEVICE_CTRL_2, (1 << 4) | 0x02);
	TAS5806M_SetRegister(TAS5806M_REGISTER_DEVICE_CTRL_2, 0x02);

	// PBTL (mono)
	TAS5806M_SetRegister(TAS5806M_REGISTER_DEVICE_CTRL_1, TAS5806M_REGISTER_DEVICE_CTRL_1_VALUE);

	TAS5806M_SetRegister(TAS5806M_REGISTER_SAP_CTRL1, 0); // 16 bits
	TAS5806M_SetRegister(TAS5806M_REGISTER_DIG_VOL_CTRL, 10); // 24 - 0.5 * N dB => -15 dB for 78

	TAS5806M_SetRegister(TAS5806M_REGISTER_AGAIN, 0x0); // 0 dB

	TAS5806M_SetRegister(TAS5806M_REGISTER_SAP_CTRL3, 0x10);

	HAL_Delay(10); // wait at least 5 ms
}

The schematic:

We are wondering whether the problem is with the electronics or the software. The IC has been replaced, but the fault still exists.

Does anyone have any suggestions? Any feedback would be appreciated!

Thanks

EL

  • Hello EL,


    I noticed you don't have access to PPC3 to generate the initialization script, we typically recommend using that to generate the proper startup sequence to configure the device. I went ahead to give you software approvals for that so you can create the device configuration and export the I2C sequence using the end-system integration tool.

    best regards,
    Luis

  • Hi Luis,

    Thank you for forwarding me this tool. If I've understood properly, this software is only compatible with evaluation boards?

    What confuses us is that the initialization sequence has not changed between our two boards (prototype and final version). By reading the register contents after initialization and checking the I2C frames, we get the expected result.

    Here's an image of the I2C frames during the initialization phase, followed by the output activation attempt:

    In comparison with the picture of the OUT_A and OUT_B signals sent in the introduction, here's what we get with our prototype board:

    The shape of the yellow signal has been severely degraded in the final version of the board, but it's not clear why.

    Regards,
    EL

  • Hello EL,

    It is used for the EVM, but it also sets the DSP and register configuration based on desired device configuration and you can generate the initialization script based on the latest guidances for the device. Would definitely recommend trying the initialization script created by PPC3 to see if you are observing the same behavior

    best regards,
    Luis