Class D amp (TAS5731M) looks like its always muted - Page 1
Forum section: electronics / projects

author: hitech95
author_rank: Regular Contributor
timestamp: May 14, 2022, 03:52:23 pm
content: TLDR: I have a TAS5731M based board that doesn't output any audio. I2c communication is fine, no errors are shown.The problem resides in fake IC, wrong board layout, or wrong software!? I have no clues!Hi,I have designed a simple audio amp board with I2S signals.Unfortunately the design does not work as intended since the amplifiersection does not output any audio!It seems muted, no bumps on power on/off no anything (i2c works)!The amplifier IC is a TAS5731M Class D I2S, it also has a DSP. I chosethat due to the available tool for the DSP the other newer ICs from TIdont have publicly available SW.The audio data is coming from a DAC of the multiplexer IC (PCM9211) or3 I2S inputs/output (it is a sort of matrix IC a quite handy IC!).For now the source is the ADC in the PCM9211. The block diagram isattached below.I've contacted TI using the E2E forum for this issue and they saidthat something is off with my MCLK/BCLK/LRCK signals.I've then used a logic analyzer to capture them and they look fine tome and alsoyou. They said that they are not good.(If I reroute the signals to another DAC board using long breadboardjumper wires I have it works so it was a bit strange that the signalswere so wrong!)But I think that the problems they have seen are some sort of aliasingdue to my crappy acquisition HW and probing technique.My logic analyzer was capturing at its band limit, MCLK is 12.288MHzand my capture was @24Mhz.I've then managed to acquire the data with a proper logic analyzerfrom a friend. (if needed I can attach the file but it's huge)He also got some pictures from its work scope (i don't own one that iscapable enough).The scope capture shows that the 12.288Mhz MCLK signal isn't a goodsquare wave (see linked thread above); it has a lot of noise compared to the other bclk and LRones.The main clock is generated from a 24.576Mhz clock with a divider of2. This is provided by a PCM9211 MUX IC like the other signals.But also the scope probing has been done with the normal ground lead,he didn't have the short GND springy thing to reduce the ground loops.As you see in the attached images the probing connector is not thebest out there, I've added it to help my friend out during probing.The two ICs (amp and mux) are far only by a couple of centimeters, thetraces are impedance matched at 50 Ohm, the PCB is 4 Layer with twoGND inner planes.Between the two ICs I'm using a 33 Ohm resistor to reduce reflections.There are 4 problems that might cause the issue:- The Software init sequence: I've already asked TI and they confirmedthat the init sequence should be ok and I have to use their EVM moduleto test it. But it is unobtanium...- The amplifier ICs are from eBay since I cannot find them fromreliable sources... So I'm starting to think if they are fakes ordefective ones.But before going in ththisat direction I have to find a good reliablesource for chips. (I can't pay25€12€ for a chip that was 4! I'm astudent... and this is a hobby project I started during lockdown)- Another issue might be my soldering procedure, I don't have a reflowoven. I've used a stencil and a cheap hot air solder station. Ipreheated the PCB with an old 3d printer hot plate.- I've completely designed the amplifier section in the wrong way.I've never had issues like this with other ICs but in this case, Ihad some difficulty with soldering due to the big thermal pad(basically 3 layers of ground and the vias to dissipate the AMP IC).The huge number of vias I've put in to dissipate the heat was nothelping. (I might have added a too dense via stitching in there) So Imight have cooked both boards too much.I have no idea what else to check, the only solution I have in mindnow is to hope to find the chips from some store. Hoping not to be theone who fry the components.I'm also thinking of getting anENEBY(EOL) speaker from IKEA (they shouldhave the same IC inside) to cross check voltages and have a workingdesign to reference.But before doing another test I'm gonna design a better carrier boardto have a more stable setup during tests.I should also get a better scope! But they are a bit to expensives forthe current times!I've also done some probing with a meter on the pins of the TAS chip:- I have PVDD set at 12V, AVDD and DVDD are 3.3V.- On bootstrap caps I have around 12V. Outputs A,B,C,D are at 6V (soit is doing something, I suppose that a 50% duty cycle signal to biasthe speakers is generated correctly)- ON VREG: 3.1V- On VR_DIG I have: 1.8V- On GVDD_OUT: 7.0V- On SSTIMER: 3.1VThe error register dumps do not show any error, also the error pin isnot showing anything!This is basically my init sequence, before that I'm setting the resetand power down pin as the datasheed indication. (section 10.2.1.2.4.1)Code:static Command TAS_INIT_TRIM = {0x1B, 0x00};// Do this if using PCM2706 (16bit 24khz)// static Command TAS_INIT_FMT_16B = {0x04, 0x03};static Command TAS_INIT_SVOL = {0x06, 0x00};static Command TAS_INIT_CH3VOL = {0x0A, 0x30};static Command TAS_INIT_CH2VOL = {0x09, 0x30};static Command TAS_INIT_CH1VOL = {0x08, 0x30};static Command TAS_INIT_CH2NDLY = {0x14, 0x54};static Command TAS_INIT_CH1NDLY = {0x13, 0xAC};static Command TAS_INIT_CH2DLY = {0x12, 0x54};static Command TAS_INIT_CH1DLY = {0x11, 0xAC};static Command TAS_INIT_CFGVOL = {0x0E, 0x91};static Command TAS_INIT_CFGVOL = {0x20, 0x00, 0x01, 0x77, 0x72};static Command TAS_INIT_MOD1 = {0x10, 0x02};static Command TAS_INIT_RSVD1 = {0x0B, 0x00};static Command TAS_INIT_MOD2 = {0x10, 0x02};static Command TAS_INIT_BKND = {0x1C, 0x02};static Command TAS_INIT_SHDWN = {0x19, 0x30};static Command TAS_INIT_CFGVOL = {0x25, 0x01, 0x02, 0x13, 0x45};// Setup volumesstatic Command TAS_POST_MASTVOL1 = {0x07, 0xFF};static Command TAS_POST_SYSCTG = {0x05, 0x00};static Command TAS_POST_MASTVOL2 = {0x07, 0x60};The schematic of the amplifier section:https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/6/pastedimage1641852424770v1.pngAt this point, any idea is welcome.Thank you

author: hitech95
author_rank: Regular Contributor
timestamp: July 11, 2022, 09:16:20 am
content: I've managed toget an ENEBY before EOL.Removed the STm32 and attacched my nucleo board.After some software rewrite/cleanup I have sound on this...So init sequence should be fine.More tests are needed with my board and this newish init code, but the probabare issues still there:- Fake ICS- Cooked/Baked ICs by me- Wrong board Layout

author: hitech95
author_rank: Regular Contributor
timestamp: September 10, 2022, 09:33:21 am
content: After some time I went back to this...I've checked anything, with a SCOPE I have the PWM modulated signal on each output.I have a varying duty cycle when sound is present.PWM is at the right frequency and right amplitude.I've monitored the supply voltage to detect if there was some dropout during power on or sound playback.The supply rail was quite clean.My inductor current should be low and not saturating the LC filter.I've tried to increase the power stage voltage to 24V and now I can hear something in the speakers and the capacitors of the LC filter.(piezoelectric effect)I discovered this thanks to my test done on the late day with complete silence otherwise I would hear that a lot sooner! In fact, switching back to 12V the result is almost the same.After the LC filter, I have the analog signal as it should be but no current through the speaker. (actually have measured voltage drop across the speaker and on the scope, I cannot see anything)I was wondering if the modulation I'm getting is the right one. the non-inverted and inverted outputs are not the same, but they are a lot similar. I was expecting something a lot more like the one shown in the SLAA701A document.I should compare some waveforms with the ENEBY.TI engineers are also looking for their EVM board, as it is unobtanium.The attachments below show the PWM on a single channel, both PWM sides of the same audio channel (positive and negative legs). And the analog signal out after the LC filter.

author: hitech95
author_rank: Regular Contributor
timestamp: September 16, 2022, 04:15:09 pm
content: TI threw in the towel yesterday, I still didn't understand the modulation used.According to them, the square wave was correct and the problem was the input signal. But was very different from some shown in their application notesI was not convinced, how can an output signal be the same as its negative output?I was wondering why the two (positive and negative) side of the speaker signal was in phase (see attachment).That would explain why I don't get any current through the driver itself.The initialization code has been tested and provided by TI and they say on the EVM it works. The same code on the ENEBY works.I have changed the LC filter several times. Initially, TI thought that a saturation problem was a possible cause of the no-sound condition but the problem wasn't there it couldn't be.I can hear square waves coming from the ceramic caps of the LC filter. and also some hi frequencies of music.I had enough I was getting around 10Vp single-ended signal on each output. I created a capacitance partitor as shown in the datasheet for single-ended applications.I was getting sound, a perfectly fine sound! So the issue was not the current through the filter or the supply dropping or something like a hi impedance trace.Tired, I unsoldered the chip and changed it. This is the fourth board I've assembled and the second chip on this specific board...After having soldered it I try two outputs one still has the defect.The other works. I finally have the sound.So I can definitely say it's the chips. Counterfeits or recycled production scrap where they come from is unknown.But at least one amplifier stage works halfway by ruling out card design or software issues.Not that the card is immune to design issues!