Best digital volume control to use with TEA5767 FM Radio + LM386 AMP

Hello,

After trying my circuit with a TEA5767 FM radio module + LM386 AMP Kit + 100k Potentiometer it is working well, no issues and sound is clear.
Now i want move forward and replace the potentiometer with a digital pot or digital audio control.

Currently i have a DS1803-100 (Digital 100k pot) but i’m not sure if i should use it.
Does a digital pot will work in this situation? Or should i use a Audio Control IC? Any suggestions?

I tried the DS1803-100 but it output lots of noise from speakers! At high resistance level it will not play music and instead play lots of noise, if resistance is low it will play the music but noise is always present. Maybe DS1803 is not made for audio?

Thanks

Maybe your sketch is updating the volume continuously on each pass through loop(), thus creating the noise? How are you interfacing and commanding the DS1803? When you set a gain level, do you leave it alone until it needs to be set to a different value?

aarg: Maybe your sketch is updating the volume continuously on each pass through loop(), thus creating the noise? How are you interfacing and commanding the DS1803? When you set a gain level, do you leave it alone until it needs to be set to a different value?

I managed to fix it!

My radio and amp are connected to a N-MOSFET to cut speakers noise when radio is OFF and i have soldered DS1803 L0 pin to GND - Thats the cause of massive noise. After changing the L0 solder trace and connect it to speaker GND (MOSFET DRAIN) it works without flaws! Clear sound.

Now i have two "insues" that im not able to fix:

1) I'm using internal speakers inside a box to output the sound, but i have also an stereo jack in my box, so anyone can plug a external speaker or earphones and listen to music. I wan't to cut off internal speakers when someone plug a stereo jack. My PCB mount stereo jack is in round format and only have 3 pins (GND RIGHT LEFT) it doesn't include the switching options. How can i detect when the jack is plugged into external jack?

2) I'm using a normal pin to interface NEOPIXEL LEDs when i send a command to LEDs (Frequency) speakers do a bass beep, for example: if i send a command every second, speakers will do that bass beep every second. My father told me it can be because of that frequency is getting out and affecting the speakers, it is possible to remove that effect? Does a capacitor resolve this?

Thanks

1) You need a switching jack. 2) You probably have a grounding issue. A ground loop or poorly grounded circuit is causing some of the LED current to get into the amplifier.

aarg: 1) You need a switching jack. 2) You probably have a grounding issue. A ground loop or poorly grounded circuit is causing some of the LED current to get into the amplifier.

1) can't use standart stereo jack because it wont fit my box/case, currently i must use that one:

It can exist a round jack with the internal switches? If not i will try to hack the case and try fit a standart one

2) I have tested all the circuit and looks ok. It only happens when i interface the LEDs, when they are static ON nothing happens to speakers. Beside that my radio circuit is on bottom right, and LEDs are just 3 paths in TOP LEFT. If i disconnect all LEDs but keep the LED circuit (LEDs GND LEDs DATA AND LEDs VCC) connected to nothing (just atmega1284p) speakers will not pop'ing when send a command to LEDs.

My LEDs connections:

|500x375

They are connected to the 3 pin socket near PIR on the left:

|500x375

Should i tie last LED DATA to GND?

Thanks for the good images. I believe that type of LED uses high clock speeds and so can generate high frequency interference. RFI problems rarely have any common solution, instead there are a multitude of things that can go wrong. In your case, I think that the length of the wires in proximity with the FM receiver, and with no shielding, is suspect.

Such problems can be solved, but prepare yourself for a tough time. You can't limit the drive signals to the LEDs because they depend on high speed to work. All you can do is try to keep the signal away from the receiver.

Does the FM receiver have an antenna? Is there adequate power supply isolation between the LEDs and the receiver?

aarg:
In your case, I think that the length of the wires in proximity with the FM receiver, and with no shielding, is suspect.

Maybe, but cut wires at correct size and remove the tip would be a big pain to complete 72 LEDs * 3 ^^ so i have used a simple wire to do it fastter and smaller.
And its big frequency since i can cath a choke by touching it (5v).
still it get a paper cover, wires are not uncovered, paper not a big help but protect me from choke ^^

aarg:
Such problems can be solved, but prepare yourself for a tough time. You can’t limit the drive signals to the LEDs because they depend on high speed to work. All you can do is try to keep the signal away from the receiver.

Since LEDs is a separate module i will try put it next to the case, 40cm away from mainboard.

aarg:
Does the FM receiver have an antenna?
Is there adequate power supply isolation between the LEDs and the receiver?

Yes and Yes.
Antenna is a 20cm cable with 3 wires inside. (Only one used)
Power supply is a switching 5v 5a power adapter.

Here power tips from fastled:

Some of these are just good engineering. Some are just plain voodoo. Use whichever ones that work for you.

At the ‘far’ end of long LED strips, connect the Data line to Ground.
Insert a 200 ohm resistor between the output pins on the microcontroller and the inputs (data, clock) on the LED strip.
Use a level-shifter to raise the voltage of the output pins’ 3.3 volts to a full 5 volts before sending it into the LED strip’s data (and/or clock) inputs.

i havent done that bold tip, should i?

NOTE: this pop sound is not a big issue or a uncomfortable problem, after switch to digital potentiometer over the analog pop sound goes a little soft/dimmer. But i want to know his source, solving is not a requirement but would be good :slight_smile:

sn4k3: And its big frequency since i can cath a choke by touching it (5v). still it get a paper cover, wires are not uncovered, paper not a big help but protect me from choke ^^

Let me get this right - are you saying that it is giving you an electric shock?

aarg: Let me get this right - are you saying that it is giving you an electric shock?

Yes that right, when wires are uncovered i can get a shock by touching multiple wires at LEDs. It's not a big one but it hurts a bit or fells like

Final look of my project: |500x375

You probably have a lot of stray inductance somewhere. It likely the root cause of both your interference and the electric shocks. I don't see any bypass caps on the LEDs. On the Neopixel LED strips, there is a bypass cap for each LED.

Oh, and... really cool clock!

aarg: You probably have a lot of stray inductance somewhere. It likely the root cause of both your interference and the electric shocks. I don't see any bypass caps on the LEDs. On the Neopixel LED strips, there is a bypass cap for each LED.

Oh, and... really cool clock!

Thanks for your tips. I will check things when i arrive home. Yes im using this ones: http://www.ebay.co.uk/itm/Wholesale-10-2000pc-WS2812B-5050-RGB-LED-PCB-Board-1-LED-Module-Pixel-Light-5V-/351371203368?var=&hash=item51cf5b1328 They have a bypass capacitor in each one i think with a protection resistor.

Yes my clock is getting really good with many features. I developed a mobile app to control everything and lot of options inbuilt. I pretend to make it open source. It features a gas sensor, temperature and humidity, bluetooth, radio fm, infrared receptor for remote config, alarms, motion sensor for intruder, counting and stop alarms, and more.

Mobile app can customize all colors, brightness auto or manual, time show style. Disable/enable optional sensors. Change radio station and volume with a click I will post more pics once its all done :)