You can employ ESP32 for this and make a nice GUI. A library is available.
Without the GUI it's a few lines of code. I've got a blob like this under construction for a micro tower with BT audio.
https://github.com/pschatzmann/ESP32-A2DP
sq3evp wrote:
You can always attach the BT module and connect to the audio output of the DAC
It's not possible to make an eqalizer out of Esp32 wrom either. I'm already thinking about this ADAU1701 DSP solution, as I think it's the right decision, because the rest is not suitable. You can do adc 2 pc audio aux inputs, radio connect I2s and i2S output to dac.
I did the control of the spectrum styles from the radio with the same SRC key.
>>21906412 Looking at what piece of software you need to have for such a DSP to prepare its configuration, it is probably simpler to have an environment from TI for TAS amplifiers. They also all have built-in DSP, but in the Evo configuration, when TAS is switched on, it is deactivated and bypass is made only to the amplifier.
>>21906412 Looking at what piece of software you need to have for such a DSP in order to prepare its configuration, it is probably simpler to have an environment from TI for TAS amplifiers. They also all have the DSP built in, but in the Evo configuration when the TAS is switched on, it is deactivated and a bypass is made only to the amplifier.
And yet it was possible to make an equalizer on ESP32C6 EQ 16 +-12dB
I bought a Waveshare 5 inch 1024×600 at a bargain price and had a problem how to solve the connection with the PCM5102.
I read what you are doing now with the VU, and added a second ESP32. I did the communication between them over UDP.
I already thought I would have to cut paths.
>>21881513 Yes, I have a 22uF/10V MLCC doped in ( could be 10uF just left over from a Dell laptop repair).
I have replaced the inverter with a TPS61040DBVR and supply it with 5V instead of 3V. For the large OLED (the 5.5 one) I bumped its voltage up to 15V and it works stably. I will probably still bump it up to 16V.
And here is a picture of the display PCB from Ali, where the layout is much better designed and the inverter is powered from 5V. Microscope photo:
Here the appearance of the whole PCB:
@kula350 you made something like a "shield" out of UTP cable - question why when there are dedicated shielded audio cables? Good, inexpensive and looks nice.
Soldering a capacitor in this location like this reduces the amplifier interference less can be heard in the speakers is this a good idea?
If this capacitor is soldered parallel to the power supply of the display module / ESP / logic , i.e. between VCC and GND , and there is less interference in the amplifier when it is added, then the direction is good. This means that interference is most likely entering the audio path via common supply or common ground .
On the other hand, I would treat the capacitor 1500 µF in such a location as an auxiliary, not a target solution. It may help, but it is still worth improving the filtering and ground routing, as a large electrolyte alone will not remove all interference from the ESP32, Wi-Fi, display and inverter.
---
What you probably did
From the photo it looks like you want to add a large electrolytic capacitor at the display module, most likely on its power supply.
If it is connected like this:
Code: text
Log in, to see the code
then it is a power supply buffer capacitor. It acts as a local energy store and reduces voltage collapses and ripples caused by the display, ESP32 or other digital modules.
interference very often comes precisely from the pulsed current consumption of the digital part. Then such a capacitor can realistically help.
---
Is 1500 µF a good value?
It may work, but it is quite a large capacitance for adding directly onto a small module board.
Benefits
- reduces momentary voltage drops, - suppresses slower power supply ripple, - can reduce "chirps", squeaks and interference from display refresh, - helps with pulsed current draw of the ESP32/Wi-Fi.
Disadvantages and risks
- causes a large charging pulse when switched on, - can overload the USB port, the stabiliser or the inverter, - the electrolyte itself poorly filters very fast interference, - if it is soldered far from the source of interference, its efficiency decreases, - if the polarity is wrong, the electrolyte can become damaged.
If you leave 1500 µF, definitely check:
- the capacitor's operating voltage: minimum 6.3 V for 5 V, better 10 V or 16 V, - correct polarity, - that the 5 V / 3.3 V stabiliser does not heat up more, - that the circuit starts correctly after power-up.
---
Better solution than 1500 µF alone
The large electrolyte is worth supplementing with small ceramic capacitors. A typical filtration set up looks like this:
The 1500 µF capacitor alone filters mainly the lower frequencies. Interference from ESP32, SPI, I2S, Wi-Fi and the display often have much higher frequencies, so there should be a ceramic capacitor in parallel:
Code: text
Log in, to see the code
Preferably ceramic X7R/X5R, connected as short as possible to ground.
---
Where such a capacitor makes the most sense
The best places are:
1. At the display power input If the display is causing interference, the capacitor should be close to its VCC/GND pins.
2. At ESP32 The ESP32 can draw pulsed current during Wi-Fi. Here, 470-1000 µF + 100 nF works well.
3. When powering the DAC PCM5102A Particularly important if the DAC and ESP are powered from the same 5 V/3.3 V line.
4. At the amplifier The power amplifier should have its own electrolytic capacitor close to the power supply pins.
It is less advantageous to solder a large capacitor in a random place on the module, where the tracks are thin and it is not clear if this is actually the main power rail.
---
Very important: do not give a large capacitor in the audio path
If the capacitor is connected to the power supply - fine.
But if it would be plugged in between the audio signal and ground, for example:
Code: text
Log in, to see the code
then you have to be careful. Then you create a low-pass filter. It may be quieter because the noise is attenuated, but along with it the treble may be clipped.
For the capacitor to ground at the input of the amplifier you have to count the cut-off frequency:
Code: text
Log in, to see the code
Example for a 10 kΩ amplifier input:
Capacitor to ground
Limit frequency
100 pF
100 pF
about 159 kHz
470 pF
470 pF
about 34 kHz
1 nF
about 16 kHz
10 nF
about 1,6 kHz
That is, 470 pF-1 nF may still make sense as a noise filter, but higher values may already spoil the audio bandwidth.
---
What I would improve in your circuit
With a design like the one in the pictures - ESP32, modules, Dupont wires, display, DAC/amplifier - interference is practically expected. I suggest:
1. Separate the power supply for the digital and audio parts
Best:
Code: text
Log in, to see the code
For the DAC branch you can give:
Code: text
Log in, to see the code
And behind the ferrite:
Code: text
Log in, to see the code
2. Mass in star topology
Do not route the mass like this:
Code: text
Log in, to see the code
Better is:
Code: text
Log in, to see the code
One common point of mass, not a chain.
3. Short audio cables
The wires between the PCM5102A and the amplifier should be:
- short, - shielded or twisted to ground, - away from the display ribbons and SPI/I2S wires, - routed away from the ESP32 Wi-Fi antenna.
4. Move DAC away from ESP and display
The DAC and amplifier input are the most sensitive. They should not lie directly next to the LCD tape, backlight inverter or Wi-Fi module.
5. Give a filter on the DAC power supply
Practical layout:
Code: text
Log in, to see the code
Instead of a ferrite you can test give a 1-4.7 Ω resistor, but only if the current consumption of the DAC is small. For an ESP or amplifier a resistor is unlikely to be used.
---
Should I leave this capacitor in place?
If it is between power and ground, works and nothing heats up -- you can leave .
But ultimately I would do it like this:
1. I would leave 1500 µF rather at the power input of the module/display or the whole circuit. 2. I would add a 100 nF ceramic directly in parallel to it. 3. At the DAC PCM5102A I would give separately 100 nF + 10-47 µF. 4. At the amplifier separately 470-2200 µF + 100 nF. 5. I would separate the ground and power wires of the digital and audio parts.
---
My rating
Yes, that's a good clue, but I wouldn't take that as a complete solution to the problem. If there is less interference after adding the capacitor, this confirms that the problem sits in the power supply/bass. It is now worth sorting out the filtering and grounds rather than just increasing capacitance.
The most likely set up to help:
Code: text
Log in, to see the code
And necessarily a short, shielded DAC → amplifier audio connection.
If you can, still show exactly between which two points you soldered this capacitor: plus/minus, VCC/GND or some signal point. Then it will be possible to say unequivocally whether it is in the ideal place or just accidentally masks the problem.
You can call me in any topic by writing @ElektrodaBot. Disclaimer: Some answers provided by the ElektrodaBot may be inaccurate. Elektroda not responsible for accuracy, reliability or completeness of the information presented. All ElektrodaBot responses should be verified by the user. OpenAI can monitor and save information entered after calling ElektrodaBot.
>>21909897 Thanks fetites I have put on the display cable and on the power supply of the amplifier and the radio but the beads did not give anything, only this capacitor slightly eased the operation of the inverter but it is still not perfect.
That the ferrites/corridors did nothing , and the large capacitor improved the situation only partially , is very typical. The problem most likely does not go mainly "along the cable as an antenna", but through:
- a common power line, - common ground impedance, - ripple and current pulses of the inverters, - interference from the display / OLED / backlight, - interference from ESP32/Wi-Fi, - possible ground loop between DAC, radio and amplifier.
So a capacitor is a good lead, but a capacitor alone won't completely take care of the issue.
---
Why the ferrites didn't help
If you have put a clamping ferrite on the whole power cable , i.e. plus and minus passes through the core at the same time, such a ferrite acts mainly as an interference suppressor common .
For differential interference:
Code: text
Log in, to see the code
such a ferrite across the cable often has little or no effect.
A filter type is needed to suppress the junk from the inverter on the audio supply:
Code: text
Log in, to see the code
i.e. a choke/ferrite in series with one power supply wire , usually with plus, followed by capacitors to ground. A clamp-on ferrite on the cable alone is not enough.
---
Capacitor at display - leave, but carefully
If this 1500 µF capacitor is indeed plugged in between:
Code: text
Log in, to see the code
then you can leave it in. This improves the local current buffering and therefore "softens" the operation of the OLED inverter/inverter or backlight.
But an important note: do not give such a large capacitor in place of the charge pump capacitor/high voltage OLED inverter if this is not the module's power input. The large electrolyte should sit on the module power input, not on a random node of the internal inverter.
Safest arrangement at the display:
Code: text
Log in, to see the code
Capacitors should be as close as possible to the module power pins.
---
Most important: separate the "dirty digital" from the audio
You can see from the photos that you have in one enclosure:
- 12 V switching power supply, - dC/DC converters, - ESP32, - display, - dAC / radio module, - amplifier, - lots of cables and ferrites.
This is a circuit where interference penetration is very easy. Ultimately I would make the power supply like this:
Code: text
Log in, to see the code
Don't power the DAC and the audio path from the same point from which the current pulses go to the display and ESP.
---
Concrete filtration proposal
1. At the amplifier
If the amplifier is powered from 12 V, give directly at its power input:
Code: text
Log in, to see the code
Keep the amplifier's power supply wires short and fairly thick. Do not route the amplifier ground through the ESP board or the display.
If you want to give a filter in the amplifier power supply, the choke must be for the right current, e.g. a few amps. A small 100 µH / 200 mA choke will saturate and do nothing.
---
2. For the PCM5102A DAC / radio
Here the filter can be much more effective as the currents are small.
Example for a 5 V DAC/radio supply:
Code: text
Log in, to see the code
Even better:
Code: text
Log in, to see the code
For the DAC itself, a good linear stabiliser usually gives a better result than adding more large electrolytics.
---
3. For the display
I would leave the display on the "dirty" digital branch, but with its own filter:
Code: text
Log in, to see the code
Plus 100 nF and 10 µF at the module itself.
If the interference changes with the brightness of the screen, it is very likely that the backlight inverter or the OLED inverter is seeding.
---
Mass - probably a big part of the problem here
Don't lead the masses that way:
Code: text
Log in, to see the code
This is asking for interference, because the display and ESP currents then flow through the same ground that the audio track sees.
A better arrangement:
Code: text
Log in, to see the code
That is, one central ground point, preferably at the main power supply capacitor / power input to the unit. From this point separate wires to:
- amplifier, - DAC/radio, - ESP32, - display.
The audio path should not be current return from the display.
---
Filter on amplifier audio input
If some of the rubbish enters through the amplifier input, a mild RF filter can be added. For each channel:
Code: text
Log in, to see the code
Such a filter cuts off high-frequency rubbish, and should not move the audio band if the values are reasonable.
Don't put large capacitors like 10 nF, 100 nF to ground in there, as you might start clipping the highs.
---
Diagnostic tests worth doing
Test 1 - short circuit the amplifier input
Disconnect the audio signal from the amplifier and short its input to ground via a short cable.
- If the interference is still in the speakers - the problem goes through the amplifier power supply. - If the interference disappears - the problem goes in through the DAC, the radio, the signal ground or the audio cables.
Test 2 - separate amplifier power supply
Power the amplifier for the test from a separate 12 V power supply or battery.
- If it gets quiet - the current power supply/inverters are sowing after the power supply. - If it continues to hum/squeak - look for ground and audio input.
Test 3 - disconnect the display
Briefly disconnect the power supply to the display or reduce the brightness.
- If the nature of the interference changes - the display or its inverter is to blame. - If no change - more suspicious is the 12 V power supply, the DAC or the ground routing.
Test 4 - power the ESP/DAC from the powerbank
For the test, power the digital/DAC part from a separate USB powerbank.
- If the interference drops sharply - you have confirmation of a common power supply/powerbank problem.
---
Note about the 230 volt power supply
The photo shows an open 230 V/12 V switching power supply module inside the housing. Caution here:
- maintain clearance between the mains side and the low voltage side, - protect the 230 V side from touching, - the mains cables must have mechanical strain relief, - the power supply should be mounted on spacers, - it would be good to give a fuse on the 230 V side.
From an interference point of view, it is often better to use a decent external 12 V power supply, e.g. from a laptop or a branded module, than to fight with a cheap open power supply in the same enclosure as the audio.
---
What I would do in your circuit as the next step
I would not add any more random capacitors. I would do consecutively:
1. Short-circuit the amplifier input to ground and see if the interference stays. 2. Power up the amplifier for a test. 3. Separate power branch for DAC/radio via LC filter or RC + LDO. 4. Ground to star - separate GND wires for amplifier, DAC/radio, ESP and display. 5. Capacitors at amplifier and DAC , not just at display. 6. Short, shielded audio cable between DAC/radio and amplifier. 7. Only at the end possibly ferrites, but already as an add-on, not the main means of fighting.
---
Summary
The capacitor you added, makes sense since it improved the situation. This confirms that the problem is power supply/pulse currents. But ferrites on cables will not solve this type of interference if the main problem sits in the ground and power supply.
The biggest improvement should give:
Code: text
Log in, to see the code
If you throw in a simple sketch of exactly where the 12 volts goes from, where you do the 5 volts, where the ground is for the amplifier, DAC, ESP and display, you can point specifically to "this wire rewire here, give a choke here, a capacitor here, and disconnect this ground from the chain".
You can call me in any topic by writing @ElektrodaBot. Disclaimer: Some answers provided by the ElektrodaBot may be inaccurate. Elektroda not responsible for accuracy, reliability or completeness of the information presented. All ElektrodaBot responses should be verified by the user. OpenAI can monitor and save information entered after calling ElektrodaBot.
If I disconnect the cable from the OLEDA, the interference disappears completely.
It's the inverter that's sowing the seeds. Do you have any way of embracing this problem too?
Power the 5v and gnd from a separate 5v charger i.e. the radio from one power supply and the OLED from the other, connecting the grounds only for the OLED signals.
When I disconnect the cable from the OLED, the interference disappears completely.
It's the inverter that's sowing. Do you have any way of embracing this problem too?
Maybe not the inverter but the OLED, i.e. the pixel control? It's probably a muliplex installation and the power supply interference is probably adding to it.
>>21910317 I have already described this topic. In my opinion, the layout of the OLED inverter is wrong. Powering the OLED from a linear 14-17V source removes any interference. Correct layout to the coil, filtering also solves this problem.
In Denon/Marantz equipment it is organised in such a way that the main inverter generates several voltages including one +18V for the OLED and on the main board itself there is additionally a linear LDO stabiliser creating +16V and this is how the pixel system is powered.
These most popular 3.12 inch OLED displays additionally have, as it were, a "by force" inverter supply from 3.3V instead of 5V because this inverter is so "shoddy" that it cannot withstand a 5V supply. You have to replace it with the original MCP, do a good filtering, power it from 5V and the problems disappear.
✨ The discussion centers on the development of an internet radio and audio file player based on the ESP32-S3-WROOM-1 module, featuring a custom-designed prototype PCB with OLED display and user controls including rotary encoders and buttons. Key challenges addressed include pin spacing discrepancies in the ESP32-S3 module footprint, integration of Wi-Fi connectivity with dynamic station list updates, and handling of Polish character encoding on the OLED display. The project uses Arduino IDE (version 2.3.2) with ESP-IDF support and requires enabling PSRAM. Audio playback supports MP3, AAC, and FLAC streams, with the ESP32-audioI2S library recommended over the incompatible Audio library. Users reported issues with SPI MISO pin assignment causing bootloader conflicts, resolved by reassigning MISO to pin 35. The project incorporates WiFiManager for network configuration, EEPROM and SD card storage for saving last played station and settings, and includes plans for tone control via an external KA2107 equalizer and a CS8673 amplifier module. Problems with encoder input stability and memory limitations for Bluetooth A2DP on ESP32-S3 were noted. The community suggested alternatives like KaRadio and ESP32-MiniWebRadio projects. Debugging tips include serial terminal logs for HTTP errors and flash memory erasure to resolve boot loops. The project is open-source on GitHub, encouraging forks and modifications. Additional features under development include browser-based updates, directory navigation, and potential audio recording to SD card. Generated by the language model.