ESP32 FM Radio with Custom PCB: From Breadboard to Manufactured Board
Tea5767-Radio-Tuner

This project documents the journey of building an FM radio using an ESP32, TEA5767 tuner, KY-040 rotary encoder, PAM8403 amplifier, and 0.96" OLED display. The author started with an Arduino UNO prototype, then designed a custom PCB in KiCad, learning to create custom footprints for modules not available in KiCad's library. Key insights include powering the TEA5767 at 3.3V to protect the ESP32's I/O pins, and using a separate power supply for the amplifier to avoid overloading the microcontroller. The final PCB was manufactured by JLC PCB, and the repository includes schematics, footprints, Gerber files, and code.
The manufacturer of the microcontroller Nulllab mentioned that a voltage larger than 3.6V on the I/O pins can cause chip damage, and powering the TEA5767 module from 5V and connecting the SCL and SDA pins to the data pins on the microcontroller will drive them up to 5V, exposing them to the risk of being burnt out.