VS1063A - Click/Pop/noise on start of playback

Designing hardware that uses VLSI Solution's devices as slave codecs such as an external MP3 decoder chip for a host microcontroller.
AnotherUserOfVs1053
User
Posts: 8
Joined: Mon 2019-10-28 23:47

VS1063A - Click/Pop/noise on start of playback

Post by AnotherUserOfVs1053 » Sun 2021-01-03 22:02

Hello all,

I am currently using a vs1063A in my application. Attached to the VS1063 is a microphone and a class D amplifier (TI TPA2028D1). While the audio playback (mainly mp3 files) in general is working great with very clear and crisp sound I have one major issue with a pop/click /crack noise, that appears before every start of a playback when the vs1063 was in reset before.

I have tried everything I could think off to overcome this issue which includes:

- loading proper patch file for vs1063 on init/reinit
- changing the input capacitors on the amplifiers side (no success)
- adding delays after shutdown
- adding 100ms "absolute silence" to the beginning of each mp3 file (to avoid that the issue might be file related)
- removing all ID3 tags from the mp3 files that I am playing to avoid issues at file start
. set output volume of the vs1063 on startup to 0xfe and resume before filling the buffer
- check that no PIN on the host MCU is uninitialized

I am out of ideas where else I could look at. Attached some sound samples from the mentioned noise (recorded with my phone´s mic so please don´t expect studio quality). If any of you have any idea of how to solve this annoying issue - I am all ears.

Thank you and happy 2021 to everyone.

Best

http://s000.tinyupload.com/?file_id=085 ... 6136970540
http://s000.tinyupload.com/?file_id=470 ... 5003949218
http://s000.tinyupload.com/?file_id=500 ... 3361344399
http://s000.tinyupload.com/?file_id=446 ... 5455083384

User avatar
pasi
VLSI Staff
Posts: 1764
Joined: Thu 2010-07-15 16:04

Re: VS1063A - Click/Pop/noise on start of playback

Post by pasi » Thu 2021-01-07 16:36

Are you using GND or GBUF as reference for the amplifier?

Do you need a hardware reset other than the first time you power up the system? (Well, you need it before each encoding, but probably not when playing files.)

When vs1063a gets power and is not at reset, LEFT/RIGHT/GBUF start to bias towards 1.2V. When the audio drivers are enabled, the outputs start to drive. The firmware has a delay before the drivers are enabled, but the delay will become shorter with higher samplerate.

Are you getting the transient when you release reset, or when the drivers get enabled?
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook

AnotherUserOfVs1053
User
Posts: 8
Joined: Mon 2019-10-28 23:47

Re: VS1063A - Click/Pop/noise on start of playback

Post by AnotherUserOfVs1053 » Thu 2021-01-07 22:26

Hi Pasi,

thank you for your reply to this issue.

Are you using GND or GBUF as reference for the amplifier?
I am using GBUF as a reference to the amplifier. I have also tried GND instead with the same result/noise.

Do you need a hardware reset other than the first time you power up the system?
I am doing a hardware reset each time I start playback IF there is no playback in progress. My application consists of the playback of a lot of short (few seconds) mp3 files so I need to make use of the low power function of the vs1063 when being reset. Even when I leave the vs1063 in shutdown and start up the amplifier first I am getting the mentioned noise.

When vs1063a gets power and is not at reset, LEFT/RIGHT/GBUF start to bias towards 1.2V. When the audio drivers are enabled, the outputs start to drive. The firmware has a delay before the drivers are enabled, but the delay will become shorter with higher samplerate.
I am putting the vs1063 in reset directly when starting the system. Initial PIN definition is vs1063 being in reset and will change at init and when a track is supposed to be played. I have also tried to just power up the vs1063 while leaving the audio drivers off (setting volume to 0xFF) with the same result. Would I have to set the audio driver off BEFORE putting the vs1063a into shutdown so it reminds the settings at the next startup? (Which would be weird as reset should always use default values) Or what would be the way of how to disable the audio drivers or delay them after reset is set off/low?


Are you getting the transient when you release reset, or when the drivers get enabled?
When I release reset AND when I do not initiate the player but just the amplifier. When I init the amp (without the vs1063a) I can see a small voltage change on the vs1063a output. It seems like the vs1063 audio drivers are enabled even though the device is in reset. Any idea why or what could be the reason? How can I get the vs1063 out of shutdown without the audio drivers being enabled?


Thank you for any help with figuring this out.

User avatar
pasi
VLSI Staff
Posts: 1764
Joined: Thu 2010-07-15 16:04

Re: VS1063A - Click/Pop/noise on start of playback

Post by pasi » Fri 2021-01-08 10:35

AnotherUserOfVs1053 wrote:
Thu 2021-01-07 22:26
When I init the amp (without the vs1063a) I can see a small voltage change on the vs1063a output. It seems like the vs1063 audio drivers are enabled even though the device is in reset. Any idea why or what could be the reason?
If vs1063a is in reset, the drivers are in powerdown, so the voltage you see is probably seeping from the amplifier.

Have you tried enabling the amp only after vs1063a outputs have been biased?

A sure way to "declick" is to have mute fets/transistors.
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook

AnotherUserOfVs1053
User
Posts: 8
Joined: Mon 2019-10-28 23:47

Re: VS1063A - Click/Pop/noise on start of playback

Post by AnotherUserOfVs1053 » Fri 2021-01-08 12:49

Have you tried enabling the amp only after vs1063a outputs have been biased?
Yes, currently the Amp is being enabled 150ms after the vs1063a is out of reset. It is definitely reducing the initial "click" but still noticeable. Can you tell me how much time the vs1063a usually needs from the moment it is out of reset until the outputs are biased?
A sure way to "declick" is to have mute fets/transistors.
Do you have any recommendations or further information? I am pretty much space constraint so adding components is tricky.

I have a "lilypad mp3" laying around here which has almost the same components (vs1053 - tpa2016d2) but has none of the noise when starting playback. Values for passives are similar.

Hannu
Senior User
Posts: 144
Joined: Mon 2016-05-30 11:54

Re: VS1063A - Click/Pop/noise on start of playback

Post by Hannu » Fri 2021-01-08 14:09

Here's some ideas from the electrical side.

I just checked that Lilypad mp3 has amplifier master control from vs1053 gpio1 pin.
Something I didn't checked is how the pin is driven, but I believe it is enabled after the chip has been initialized.

It shouldn't matter but do you have also those DC-block capacitors in your design? Actually it is possible that you hear the transient when the amplifier has biased inputs to some level and then VS1063 biases DAC. the difference of bias levels might be the one transient you are hearing.

And have you checked that the GBUF really rises on amplifier pin? Just in case if there is a bad soldering.

My idea of the order of the things would be something like this:
  • power on amplifier, EN low
  • Power on VS1063
  • Release VS1063 reset and write your initialization
  • EN pin up from amplifier
Also last obvious question. Is your grounding good? AGND/GND connected under VS1063 and it has same potential as your amplifier.

AnotherUserOfVs1053
User
Posts: 8
Joined: Mon 2019-10-28 23:47

Re: VS1063A - Click/Pop/noise on start of playback

Post by AnotherUserOfVs1053 » Fri 2021-01-08 17:24

Hello Hannu,

thank you also for your very valuable feedback.

About the Lilypad setup: I have checked the source code and the PIN you are referring to (EN_GPIO1) is driven low initially which initially turns off the amplifier and at the same time turns on MP3 mode on the vs1053. You are right - the PIN is driven high (activating the amp) AFTER init of the vs1053. That is exactly how I am doing it. Running init of vs1063 and when vs1063 is initialized I am enabling the amplifier.

DC-block caps are part of the design too. I will attach the relevant part of my schematics. Let me know if you see any obvious issues that I haven´t been able to identify. I was trying to follow the datasheets of both, amp and decoder as closely as possible.
And have you checked that the GBUF really rises on amplifier pin? Just in case if there is a bad soldering.

Good point as bad soldering happened once to me. I have just checked that with the microscope. Soldering on the vs1063 is fine and so is the connection to the amplifier. Both lines - GBUG and output appear to be ok. As the amplifier is BGA package I will remove it on the weekend and doublecheck.
power on amplifier, EN low
amplifier is powered from the battery directly (3.7v 1c lipo) and therefore on from the minute I connect the battery. Its initial state is EN pin low (disabled)
Power on VS1063
The 3.3V as well as the 1.8V circuit are powered up the same moment a battery is connected. So the vs1063 is powered up the same time as the amp (small delay because of the switching regulator). Initial state of the vs1063 is reset pin low.
Release VS1063 reset and write your initialization
Exactly how I do it at the moment. Release reset and run my init.
EN pin up from amplifier
Copy
Is your grounding good? AGND/GND connected under VS1063 and it has same potential as your amplifier.
It is supposed to be good. AGND and GND are connected below the vs1063 as mentioned in the datasheet. Also it has the same potential as the amplifier. Will double check the GND plane one more time to make sure there is really no issue.
Attachments
Setup_vs1063a_tpa2028d1.PNG
Setup_vs1063a_tpa2028d1.PNG (291.91 KiB) Viewed 578 times

User avatar
pasi
VLSI Staff
Posts: 1764
Joined: Thu 2010-07-15 16:04

Re: VS1063A - Click/Pop/noise on start of playback

Post by pasi » Sat 2021-01-09 13:15

A few things you could try and see what the effect is:
- C23 and C24 should not really be needed, because you use GBUF as a reference. (You can try shorting C23 and C24 for testing purposes.)
- Series resistor in LEFT and RIGHT will affect their biasing speed, as well as does connecting LEFT and RIGHT together. GBUF doesn't have one, so there will be larger mismatch in the biasing speed.
- vs1053 has a mono output possibility in software (at least in the patches package, don't remember if it works with real-time MIDI), so you could just use one of the outputs by removing R32.
- Edit: vs1063a has mono output mode built-in.

If you don't have an oscilloscope, you need to just experiment with longer delays before enabling the amplifier.
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook

AnotherUserOfVs1053
User
Posts: 8
Joined: Mon 2019-10-28 23:47

Re: VS1063A - Click/Pop/noise on start of playback

Post by AnotherUserOfVs1053 » Sun 2021-01-10 14:04

Thank you for looking through the schematics and providing your feedback. C23/C24 are requested by the amplifiers datasheet (input capacitors can not be left out) but I will see if there is any negative impact if I leave them out.

I have removed the hardware "mono converter" (removing R31 and R32 and bridging R31) and are now using the software mono solution on the vs1063 which seems to serve the purpose equally well. Thank you for that hint. Are both channels driven in mono mode or is it always left or right?

I have also played a bit with delaying the amplifier startup even more. If I delay it between 200 and 210ms after getting the vs1063 out of shutdown the noise I am experiencing is almost gone which makes me wonder, how long the vs1063 actually needs to get out of shutdown, power up the drivers, decode the first buffer and start playback. Do you have any experience for mp3 files (I believe I have read 150ms somewhere but not sure)? If I go below 190ms the noise is back.

Thank you again for a short response.

User avatar
pasi
VLSI Staff
Posts: 1764
Joined: Thu 2010-07-15 16:04

Re: VS1063A - Click/Pop/noise on start of playback

Post by pasi » Mon 2021-01-11 11:29

AnotherUserOfVs1053 wrote:
Sun 2021-01-10 14:04
Are both channels driven in mono mode or is it always left or right?
Both channels output the same data in the mono mode. (And the other channel inverted is SM_DIFF is also set.)
AnotherUserOfVs1053 wrote:
Sun 2021-01-10 14:04
If I delay it between 200 and 210ms after getting the vs1063 out of shutdown the noise I am experiencing is almost gone which makes me wonder, how long the vs1063 actually needs to get out of shutdown, power up the drivers, decode the first buffer and start playback. Do you have any experience for mp3 files (I believe I have read 150ms somewhere but not sure)? If I go below 190ms the noise is back.
The longer the analog power is on with drivers off, the longer the outputs are biasing with small current and the smaller transient when the drivers are enabled.

However, this is no longer the case for you, because you keep the amplifier disabled and thus do not care about the transient and want to bias as quickly as possible. To shorten the drivers-on delay, you can write 48000 to SCI_AUDATA, or even enable the drivers yourself from SCI_STATUS.
Visit https://www.facebook.com/VLSISolution VLSI Solution on Facebook

Post Reply