I'm having a problem with a weird audible noise in my sound player circuit.. It's due to an interference with a LED strip.
I've used this circuit (Arduino + DFplayer + Amplified Mini Speaker) many times but since I decided to add a LED strip to the circuit, a very loud noise (which sounds like high frequency strings) appeared..
I've tried to use a 104 capacitor with 270ohm resistor to create a filter, but it didn't work.
Maybe a diode with a capacitor somewhere??
Could anyone give me some suggestions to fix this?
Many thanks in advance!
Ian
simulate this circuit – Schematic created using CircuitLab
Best Answer
The source of the noise is the PWM controlling of the WS2812 LEDs within the stripe. Their PWM frequency is approx. \$1\,kHz\$ (some say \$400\,Hz\$), what is audible for humans.
The first fix is to add a electrolyte capacitor close to the terminal of the stripe. Chose a \$\ge470\,\mu F\$ cap with a voltage rating from at least \$\ge6\,V\$. You even can use several caps in parallel.
The next step is to filter noise on the player supply lines. Therefore use a resistor of \$\approx 100 \Omega\$ and again a cap \$\ge100\,\mu F\$ with again \$\ge6\,V\$ voltage rating. If you have inductors available replace the resistor with a solenoid. The suitable equation for determining the values is \$f_{Filter} = \frac{1\,kHz}{10} = \frac{1}{2 \cdot \pi \cdot \sqrt{L \cdot C}}\$
If you do not have inductors and there is still noise, you should consider to supply the DFplayer with a separate USB cable from the USB hub.