ELSEIF
Your brief EB
201 stories from 105 feeds 337 clusters Refreshed 6 minutes ago next pull 03:06

TECH Signal 480

ESP32-based FM radio replaces Arduino UNO prototype with custom PCB

The project evolved from an Arduino UNO FM radio prototype to an ESP32-based design featuring a custom PCB, PAM8403 amplifier, OLED display, and rotary encoder.

WHY IT MATTERS

This shift highlights how moving to a more capable microcontroller requires careful power management to avoid damaging I/O pins. It also shows the practical steps of creating custom footprints and handling high-current audio amplifiers in a compact PCB design.

Written by elseif from the cluster below · every claim links back to a source

The three things worth knowing

01

The TEA5767 module is run at 3.3V instead of 5V to keep ESP32 I/O pins within safe voltage limits.

02

The PAM8403 amplifier draws up to 1.2A, so it is powered from a separate 5V 1.5A transformer rather than the microcontroller pins.

03

Custom footprints for the ESP32, TEA5767, PAM8403, KY-040, and OLED were created in KiCad because library parts were unavailable.

THE READ

What the cluster adds up to.

ORIGINAL ANALYSIS

The core change is the migration from an Arduino UNO-based breadboard prototype to a design centered on an ESP32 development board and a custom PCB. This move was motivated by the desire to save space and integrate more functionality on a single board. The prototype previously used a 16x2 LCD for frequency display and relied on the Arduino for all control. The new design substitutes a 0.96" OLED and a KY-040 rotary encoder for tuning and preset selection.

Power management became a critical focus after the migration. The TEA5767 tuner, while rated for 5V, is operated at 3.3V to prevent the ESP32 I/O pins from seeing voltages above the 3.6V limit that could damage the chip. The PAM8403 amplifier, which drives two 3-Watt 4-Ohm speakers, requires up to 1.2A; therefore it is powered from an external 5V 1.5A transformer rather than the microcontroller pins, which are limited to 40mA per pin.

Creating the PCB involved drafting a schematic in KiCad and generating custom footprints for each major component because suitable library parts were not available. The schematic shows the ESP32, TEA5767, PAM8403, KY-040, and OLED with their respective connections. The audio path from the TEA5767 to the PAM8403 is implemented with a 3.5mm jack; this link is omitted from the schematic symbol due to pin-footprint constraints, but the physical wiring is realized on the board.

The design still depends on external hardware to function reliably. A power adapter capable of delivering more than 1A is recommended to avoid brownouts when the amplifier drives the speakers at high volume. Without this external supply, the microcontroller could be overloaded or the amplifier could underperform. Additionally, the design does not include an onboard speaker amplifier for the TEA5767, so audio output still requires the separate PAM8403 stage.

These trade-offs illustrate the cost of moving to a more integrated PCB: increased design effort for power routing, custom footprint creation, and reliance on external power sources. However, the result is a more compact, reproducible FM radio that leverages the ESP32’s capabilities while respecting the electrical limits of both the tuner and the microcontroller.

Written by elseif from the cluster below · checked for specifics the sources never contained

THE CLUSTER

Same story, 1 feed.

ORDERED BY FIRST SEEN
github.com via Hacker News Tea5767-Radio-Tuner Open ↗