πŸ“» DIY Digital FM Radio With Arduino + 3D Printed Case

by TylerDDDD in Circuits > Arduino

152 Views, 4 Favorites, 0 Comments

πŸ“» DIY Digital FM Radio With Arduino + 3D Printed Case

23 février 2026
IMG_5346.png
F1OL1Y5MLZVL65B.png

Build your own digital FM radio using an Arduino Uno, a TEA5767 FM module, and a custom 3D printed enclosure. This radio:

* πŸ“‘ Receives FM stations digitally

* πŸŽ› Tunes using a button

* 🎧 Works with headphones

* πŸ”Š Connects to vintage radios or external speakers

* πŸ“² Can transmit to Bluetooth audio receivers

* πŸ–¨ Has a fully custom 3D printed case

Perfect for beginners and makers who love audio projects!

Supplies

Electronics

* Arduino Uno

* TEA5767 FM Radio Module (choose an already wired, to avoid soldering the small module)

* Push button

* OLED display

* LM386 Audio Amplifier module (or similar)

* 3.5mm audio jack

* Optional: Bluetooth audio transmitter module

* Optional: Vintage radio or powered speaker

* Jumper wires

* Breadboard

* Power, I used a cable converting 220V to 5V.

Tools

* 3D printer .. or ask a friend :)

* PLA filament

* Soldering iron

* Computer with Arduino IDE

βš™οΈ Upload the Arduino Code (DO THIS FIRST)

Before wiring everything permanently, upload the code.

Install Required Library

In Arduino IDE:

* Go to **Sketch β†’ Include Library β†’ Manage Libraries**

* Search for **TEA5767**

* Install a compatible TEA5767 library

Arduino Code

Download the latest version on GitHub

Important : change the frequency of the radios according to your location :) You can preset 10 different radios and frequencies.

Upload to your Arduino Uno. If it uploads successfully, you’re ready for wiring.

πŸ”Œ Wiring the FM Module, OLED Display, Etc

tea5767wiring.png
IMG_5329.png
IMG_5327.png

TEA5767 Wiring

| TEA5767 Pin | Arduino Uno |

| VCC | 3.5V |

| GND | GND |

| SDA | A4 |

| SCL | A5 |

The TEA5767 communicates using I2C.

LCD Screen Wiring

| LCD Pin | Arduino Uno |

| VCC | 3.5V |

| GND | GND |

| SDA | SDA Uno |

| SCL | SCL Uno |

Push Button Wiring

* One side of button β†’ Pin 12

* Other side β†’ GND

We use Arduino’s internal pull-up resistor.

πŸ”Š Add the Audio Amplifier (LM386)

IMG_5325.png

The TEA5767 outputs low-level audio, so we amplify it.

Connections:

* TEA5767 Audio Out β†’ LM386 Input, mine was jack to jack

* LM386 VCC β†’ 5V

* LM386 GND β†’ GND

* LM386 Output β†’ 3.5mm jack OR speaker. In my case it was cable connections

Now your radio can drive:

* Headphones

* External speakers

* Vintage radio AUX input

🎧 Audio Output Options

IMG_5349.png

This is what makes the project unique and clickable.

Option 1: Headphones

Directly plug into 3.5mm jack.

Option 2: Vintage Radio

If your vintage radio has AUX input, connect the output.

If not:

You can connect to a small FM transmitter module and rebroadcast the signal locally.

Option 3: Bluetooth

Connect output to:

* Bluetooth audio transmitter module

* Then pair with Bluetooth speaker

Now your DIY radio is wireless.

πŸ–¨ 3D Print the Case

IMG_5335.png
IMG_5336.png

Download the stl file from GitHub : LINK

Transform to a gcode file with Cura, steps for both .stl files :

  1. Open in Cura
  2. Change XY to X=80mm, Y=80mm
  3. Slice and Export to .gcode file
  4. Transfer to the 3d printer and print

Print settings:

* PLA

* 0.2mm layer height

* 20% infill

* No supports if designed properly

Mount components with:

* M3 screws

* Hot glue (if needed)

πŸ§ͺ Final Testing

IMG_5344.png

Power the Arduino.

Plug in headphones or speaker.

Press the button


If you hear static:

* Adjust antenna wire length (75cm works well)

* Keep wires short

* Avoid USB noise


🎯 Why This Project Is Awesome

IMG_5351.jpg

* Beginner friendly

* Mixes electronics + audio + 3D printing

* Expandable

* Great gift idea

* Can be modern OR retro

Keywords

Digital FM Radio

Arduino UNO

3D Printed Case

Modern Radio

Retro Radio