SANWU TPA3116 + CSR8635 Bluetooth 4.0 - Noise Fix

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
In addition to this thread:

http://www.diyaudio.com/forums/clas...bluetooth-speaker-protection-eq-any-good.html

I just bought one of these boards to measure how they'll do and got a v2.2.

attachment.php


Sticking down a heatsink like this is rather useless. Anyway, cleaning the snot off:

attachment.php


Listening to this amp reveals a slight "hiss" of HF/RF interference when having a stream connected and muted or having quiet passages in the music/sound.

From the other thread:

I have the same board since december and it is a disappointment in several aspects:
1) poor connectivity
2) hiss
3) unresponsive buttons
4) loud beeps when pairing and pushing buttons
5) no sound until a button is pressed

maybe you were lucky to receive a "first run" board

Point 2 is fixed now.

As the noise is independent from the CSR's digital volume level, the hiss is suspected to come from the link between the CSR8635 module and the TPA3116 itself and/or most likely from the power supply design.

attachment.php


Sanwu decided to do a Differential 2 Single-Ended Conversion to feed the TPA3116, why ever, as shown here :confused:

attachment.php


Having a direct differential link is all it needs to be dead quiet, so more hiss/noise.

attachment.php


The populated coupling caps are 4.7uF in 0603, most likely X5R 6.3V, so with 32dB gain and 15k input impedance, the f3 frequency will be at 2.3Hz. Changing them for 1uF X7R would give 10.6Hz, still low enough for normal listening.

Another benefit is the now lowered quiescent current.

Before the mod:
Idle without Link (aka TPA3116 shut down): 20mA
Connected to a device and lowest volume level: 50mA

After the mod:
Idle without Link (aka TPA3116 shut down): 15mA
Connected to a device and lowest volume level: 45mA
 

Attachments

  • SANWU_TPA3116_CSR8635_V2.2_1_1024.jpg
    SANWU_TPA3116_CSR8635_V2.2_1_1024.jpg
    151.6 KB · Views: 5,939
  • SANWU_TPA3116_CSR8635_V2.2_2_1600.jpg
    SANWU_TPA3116_CSR8635_V2.2_2_1600.jpg
    403.4 KB · Views: 5,668
  • SANWU_TPA3116_CSR8635_V2.2_4_1600.jpg
    SANWU_TPA3116_CSR8635_V2.2_4_1600.jpg
    431.6 KB · Views: 5,308
  • SANWU_TPA3116_CSR8635_V2.2_4_Orig_1600.jpg
    SANWU_TPA3116_CSR8635_V2.2_4_Orig_1600.jpg
    432.9 KB · Views: 5,178
  • SANWU_TPA3116_CSR8635_V2.2_4_NoiseFix.jpg
    SANWU_TPA3116_CSR8635_V2.2_4_NoiseFix.jpg
    477.8 KB · Views: 5,221
Last edited:
I pulled down the series resistors and the caps in front of the 3116 ic. While this is enough to decouple the 5532 from the signal path, all parts shown with an "x" aren't needed anymore.

The amp is much much quieter now compared to the Diff2SE solution. (There's some small residuals left coming from the 32dB setting. I can hear that from 10cm in front of the tweeters which are high efficient. Before you could hear from ~2 meters. Ymmv as the speakers used to test are ~96dB/W/m,the mig/high is like ~100dB/W/m. (Bass + Mid are AlNiCo magnets)
 
Last edited:
If you want to keep your "Common-Mode-Noise-Filter" you can alternatively change those 4x 75k resistors (753) to 22k to bring the gain of the stage down from 10.5dB to 0dB. Maybe this would be already enough reduction to satisfy the demands. (I'd prefer the differential only connection.)
 
Last edited:
In direct comparison, the "SANWU TDA7492P + CSR8635" is much noisier.

The interstage section is nearly the same, beside the switched line-input:

attachment.php


Due to the layout, the RF is coupling into the audio path via the 3.5mm connector. This get really worse when having a cable connected and there's a device coupled via Bluetooth. Beside the RF-noise the TDA7492P is noisier on high gain settings than the TPA3116. It would have been better to make use of the internal ADC of the CSR8635.
:rolleyes:

Also this board doesn't switch of the TDA7492P when idling and features Power-On/Off Plop.
 

Attachments

  • SANWU_TDA7492P_CSR8635_V3.2_1_1600.jpg
    SANWU_TDA7492P_CSR8635_V3.2_1_1600.jpg
    399.8 KB · Views: 776
  • SANWU_TDA7492P_CSR8635_V3.2_2_1024.jpg
    SANWU_TDA7492P_CSR8635_V3.2_2_1024.jpg
    117.7 KB · Views: 530
  • SANWU_TDA7492P_CSR8635_V3.2_3_1600.jpg
    SANWU_TDA7492P_CSR8635_V3.2_3_1600.jpg
    376 KB · Views: 5,610
Last edited:
doctormord,

I wonder if you have any suggestions on another noisy bluetooth board. My son bought a YJ TPA3116D2 2.1ch bluetooth 4.0 amplifier board. It came from an ebay seller, but is identical to this one:

Y92 Free Shipping 1pc TPA3116 Class D Amplifier Board Bluetooth 2.1 Amplifier Board 100W+2*50W-in Amplifier from Consumer Electronics on Aliexpress.com | Alibaba Group

The sound quality is great, but the annoying bluetooth noise and hiss at low volume is very noticeable.

The board differs from the Sanwu designs in that the signal goes from the CSR bluetooth module to a SGM358 dual op amp instead of a 5532. My eyesight isn't the greatest, but there appears to be nothing but a 10K resistor between the output of the CSR module and the input of the op amp where the Sanwu boards have a 22K resistor and some value of chip cap in series.

Does anyone have any ideas how to quiet this board down? Aside from the bluetooth noise problem this 2.1 board is a great value and performs well so I'd love to find a solution.

Thanks!
 
Is the noise comming from all channels? Without the board on desk it's difficult to give a suggestion/hint. The Diff2SE stage is needed in this design, as the tonecontrol is single-ended. I suspect the noise is comming from the 7805 as this haven't got an RC-filter in front. (With like 50-100R and some 500uF Low-ESR cap)
 
Last edited:
Thanks for the quick response!

Interesting that you mentioned the 7805. I just noticed that there is a 220uF electrolytic right next to the 7805, but the silkscreen on the PCB calls for a 470uF. Would it be worth trying a 470uF (or even higher) value? There is also a 10K and 10uF electrolytic on the SGM358 but no electrolytics on the two TL072 chips that are handling the LF crossover and treble control.

One other thing I noticed after looking at FFcossag's YouTube noise fix of a non BT version of this board. It appears that the R1/R2 resistors for the TPA3116D2 that is running stereo are 75K and 47K (slave), and the resistors for the TPA3116D2 that is bridged for the sub are 39K and 100K (master).
Would there be an issue with the input impedance being set different between the two (30K for stereo channels and 15K for the sub)?

BTW, I can post a high res photo of the board if that would help.
 
doctormord and others,

A couple of things I've noticed as I dig deeper into this board:

1. Both of the 2ch boards you evaluated use a 7536-1 regulator that has an output of 3.6v. This YJ 2.1ch board uses a 7805 regulator. (I verified 5.03v at the power input pin of both the CSR8630 and the SGM358)

2. Both of the 2ch boards you evaluated use 22K and 4.7uf caps between the CSR module differential outputs and the dual op amp. This YJ board only has a 10K resistor between the CSR8630 and the SGM358 inputs.

3. The switching noises on this YJ board are present on all three channels. Less obvious on the subwoofer, but still there.

4. YJ makes a fully assembled version of this 2.1ch BT amplifier that appears to have a lot of changes / upgrades to the PCB. Does anyone have one that they can post a high res photo of so we can see the differences?


My questions:

1. Is 5v okay on the CSR module? If not, is 3.6v sufficient for the SGM358 and TL072 op amps?

2. Would it make sense to remove the four 10K resistors between the CSR module and the SGM358 and replace each of them with a 22K and 4.7uF? (I can do that fairly easily by tombstoning the two parts on the existing pads). Would switching to 22K change the behavior of the op amp and should I try a combination of a 10K and 4.7uF first?


Thanks for any help you can provide!
 
Last edited:
In direct comparison, the "SANWU TDA7492P + CSR8635" is much noisier.

The interstage section is nearly the same, beside the switched line-input:

attachment.php


Due to the layout, the RF is coupling into the audio path via the 3.5mm connector. This get really worse when having a cable connected and there's a device coupled via Bluetooth. Beside the RF-noise the TDA7492P is noisier on high gain settings than the TPA3116. It would have been better to make use of the internal ADC of the CSR8635.
:rolleyes:

Also this board doesn't switch of the TDA7492P when idling and features Power-On/Off Plop.

Hi guys!

I purchased the exact same board as above for a little BT-Speaker build and stumbled upon this thread showing methods to improve the general sound quality.

My skills in raw electronics are very limited, but i`m confident to get some mods done with your kind help.

I like the examination of the TPA3116 board at the start of the thread and would like to ask if you could do a similar explanation for the SANWU TDA7492 board to eliminate the noise floor while idling.

Many thanks in advance!

Kulitcz
 
That's a bit of a different story, as the BT-modules output is feed into the switched 3.5mm jack via the Diff2SE stage. To have the board modded like the TPA3116/8, you'll loose the wired line-in.

If you noticed power-on-plop:

Change those two resistors to:
R22=680k
R21= 820k

If you don't care for the line-in, then the board can be modded like the TPA3116/8 with differential linked BT-module. Muting while idling have to be added seperately with some more parts.

Muting the amp while idling is possible,
 
Just to note, the CSR8635 module used on the Sanwu boards only support SBC streams per default. MP3, AAC and Faststream are disabled.

To fix this you need to programm:

Code:
//USR 15 - PSKEY_FEATURE_BLOCK              
&0299 =  93B0 AC00 11E7 05A1 3E40 A6FA

This is only valid if you don't alter anything else, the codec features are on the last 3 bytes "6FA".
 
Last edited:
I have just bought few Sanwu bluetooth amplifier boards with CSR6835 and TDA7492. In my version there is no 3.5mm jack, so I hoped that the layout is more streamlined giving less noise. Unfortunatelly, the noise level is quite annoying and it is very noticeable when I go round pressing buttons on my smartphone i.e. noise not being covered by music playback. Changing from single ended to differential input to TDA7492 reduced the noise somewhat, but now the pop-and-click noise is quite noticeable. I am about to increase the R22 and R21 resistors, hoping that it will have the same positive effect like on the boards that you describe in previous posts.

What I am quite surprized about is that I previously bought couple of bluetooth amplifier boards named QS Audio and these have much lower noise. It looks to me that they are using the identical raw PCB layout like Sanwu amplifier although one has more silkscreen information than the other. Some of the components look different though, although they have similar values. If better BOM of the QS audio amplifier helped with the noise level or there are some other differencies I am not aware of, is hard to say without spending more time on reverse engineering. Anyway, I used the same offline SMPS in both cases, so the noise source is definitely on the amplifier board.

Another observation is that I could change the name of the Bluetooth device from Sanwu to something else via the SPI, but I cannot do the same for either of the QS audio boards ??? Is it possible that the SPI interface is locked or some programming fuse has been burned from the factory ? Is there any possibility to bypass this lock?
 
Last edited:
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.