Engineering Projects — Electronics

Jukebox

A Minecraft-themed physical jukebox with NFC disc switching, stereo audio, and full playback controls — built around an ESP32-S3 with a custom 3D-printed enclosure and a library of hand-made discs.

Year

2026

Status

In Progress

Main cover image
NFC discs
Interior

The Jukebox is a self-contained music player built inside a custom enclosure modeled after the Minecraft in-game jukebox. The core interaction is physical — you insert one of several hand-made discs, each embedded with an NFC tag, and the player reads the tag and starts playing the associated playlist from an SD card. Stereo audio comes from two 3W speakers with dedicated amplifiers, powered by a standard 5V USB battery pack. The front panel has four buttons (shuffle, previous, next, play/pause) and a potentiometer for volume control, making it fully usable without any phone or screen.

Jukebox overview
Full enclosure — front view

The finished enclosure with disc slot, speaker grilles, and control panel.

The project started with the enclosure design in Fusion 360, modeled to match the proportions of the Minecraft jukebox while leaving enough interior volume for all the electronics. The disc slot geometry was one of the trickier CAD challenges — it needed to guide the disc consistently over the RFID reader without jamming or misreading.

CAD model
Inner parts
Inner parts

The Fusion 360 model (left) and electronic parts before assembly (right).

The electronics side had two significant hardware problems to solve. The first was a pin conflict — the RFID module and SD card module both use SPI, and sharing the same SPI bus caused them to interfere with each other. Switching from a standard ESP32 WROOM to an ESP32-S3 gave enough additional GPIO pins to assign each module its own dedicated SPI bus, which resolved the issue cleanly. The second problem was power: the ESP32's 3.3V output couldn't supply enough current during SD card read spikes, causing resets and read failures. Adding a 5V-to-3.3V buck converter with adequate current headroom fixed this.

Wiring layout
Electronics assembled

Internal wiring layout (left) and fully assembled electronics before closing the enclosure (right).

Loading the music library was its own process. I used an open-source tool to export a CSV of song and artist names from my Spotify playlists, then fed that into a second tool that automatically found each song on YouTube and downloaded the MP3. This gave me a clean library organized by playlist folder, which maps directly to each disc's NFC tag ID in the firmware.

Disc detail
Disc collection
NFC tag

Custom discs with embedded NFC tags — each maps to a different playlist folder on the SD card.

Final build — in use

The finished jukebox with a full set of discs.

← Tipsy Eagle Project →