Part Number: TAS2505
Hello Sir:
We are using TAS2505, but we found our speaker stops output randomly.
Our speaker is 4ohm, 3W.
Please refer our schematic and I2S waveform as below.

Ch1 is BCLK, Ch2 is speaker current, Ch3 is SAI_SD and Ch4 is WCLK.
Below figure is transfer successes.

Below figure is transfer failed, you can refer Ch2, that speaker output current was stopped.

These files were our int configurations and register dumps when speaker stopped.
Please refer below files.
counter += CODEC_IO_Write(DeviceAddr, 0x00, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x01, 0x01); counter += CODEC_IO_Write(DeviceAddr, 0x00, 0x01); counter += CODEC_IO_Write(DeviceAddr, 0x02, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x00, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x04, 0x03); counter += CODEC_IO_Write(DeviceAddr, 0x05, 0x91); counter += CODEC_IO_Write(DeviceAddr, 0x06, 0x04); counter += CODEC_IO_Write(DeviceAddr, 0x07, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x08, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x0B, 0x84); counter += CODEC_IO_Write(DeviceAddr, 0x0C, 0x82); counter += CODEC_IO_Write(DeviceAddr, 0x0D, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x0E, 0x80); counter += CODEC_IO_Write(DeviceAddr, 0x1B, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x1C, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x3C, 0x02); counter += CODEC_IO_Write(DeviceAddr, 0x00, 0x01); counter += CODEC_IO_Write(DeviceAddr, 0x01, 0x10); counter += CODEC_IO_Write(DeviceAddr, 0x0A, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x0C, 0x04); counter += CODEC_IO_Write(DeviceAddr, 0x0C, 0x04); counter += CODEC_IO_Write(DeviceAddr, 0x16, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x18, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x09, 0x20); counter += CODEC_IO_Write(DeviceAddr, 0x10, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x2E, 50); counter += CODEC_IO_Write(DeviceAddr, 0x30, 0x50); counter += CODEC_IO_Write(DeviceAddr, 0x2D, 0x02); counter += CODEC_IO_Write(DeviceAddr, 0x00, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x3F, 0x90); counter += CODEC_IO_Write(DeviceAddr, 0x41, 0x00); counter += CODEC_IO_Write(DeviceAddr, 0x40, 0x04);
Please kindly provide your recommendations for us and teach us how to solve this issue.
Looking forward your feedback.
Thanks a lot.


