DIY MiniRadio Projects: Build a Pocket-Sized Player
Overview
A pocket-sized DIY MiniRadio is a compact, battery-powered FM/AM or internet-capable receiver you assemble from off-the-shelf components. Typical builds focus on portability, low power, and simple controls (tuning, volume, on/off). Common goals: learn basic electronics, create a retro-looking gadget, or add Bluetooth/MP3 playback.
Parts list (typical)
- Microcontroller / board: ESP32 (for internet/Bluetooth) or Arduino Nano (for FM/AM with tuner module)
- Radio tuner module: TEA5767 or Si4703 (FM) or RDA5807M (FM) / SI4844 (AM)
- Audio amplifier: PAM8302, MAX98357A (I2S) or small Class D amp
- Speaker: 0.5–2.5” full-range speaker (8Ω)
- Battery & charging:** 3.7V Li-ion cell + TP4056 charger module
- Controls & display: Rotary encoder or push buttons; optional OLED (0.96” SSD1306) or small LCD
- Enclosure & hardware: 3D-printed or repurposed tin, screws, switches
- Misc: PCB or perfboard, wires, resistors/capacitors, headers, antenna (wire ~20–30 cm)
Tools required
- Soldering iron, solder, flux
- Wire cutters/strippers, pliers
- Multimeter
- Hot glue or epoxy
- (Optional) 3D printer or Dremel for enclosure work
Two simple build approaches
- Minimal FM analog radio (fast, low cost)
- Use RDA5807M module + Arduino Nano for simple button tuning.
- Amplify with PAM8302 and drive a small speaker.
- Power from a single Li-ion cell with TP4056 charging.
- No Wi‑Fi required; good for pure local FM listening.
- Internet radio + Bluetooth (feature-rich)
- Use ESP32 for Wi‑Fi streaming + Bluetooth A2DP sink.
- Use MAX98357A or small amp for audio output; stream using libraries (e.g., Audio.h for ESP32-audioI2S).
- Add SSD1306 OLED for station info and rotary encoder for menu/tuning.
- Requires more code and setup but supports thousands of online stations and podcasts.
Basic assembly steps (ordered)
- Mount tuner/microcontroller and amp on perfboard; plan wiring.
- Wire power: battery → TP4056 → protection → device VIN; include power switch.
- Connect tuner/microcontroller to amp output and speaker; add decoupling caps.
- Add user controls (buttons/encoder) and display; wire ground/common.
- Upload firmware: simple FM control sketch (I2C) for tuner or ESP32 streaming code.
- Test functionality with multimeter and headphones before speaker.
- Fit components into enclosure; secure with hot glue; route antenna.
- Final test and calibration (tuning steps, volume limits).
Example code pointers
- RDA5807M Arduino libraries (for FM control)
- ESP32 HTTP stream examples and ESPAsyncWebServer for station presets
- MAX98357A I2S playback examples for MP3/streaming
Power & battery tips
- Use 3.7V Li-ion and a boost converter if you need 5V peripherals.
- Include a low-battery cutoff or monitor voltage with ADC to avoid over-discharge.
- Optimize for power: dim OLED, use sleep modes on microcontroller.
Enclosure and UX tips
- Place speaker at front with bass-reflex port if space allows.
- Use tactile buttons or a detented rotary encoder for better tuning feel.
- Label controls clearly; consider magnetic or USB-C charging access.
Safety notes
- Follow Li-ion battery safety: use protection circuits and proper charger.
- Ventilate enclosure when soldering components; avoid short circuits.
Further resources
- Search for “RDA5807M Arduino tutorial”, “ESP32 internet radio project”, and “MAX98357A I2S example” for step-by-step guides and code libraries.
Leave a Reply