This project is a decorative yet functional music player that works by placing an NFC-enabled music card on the base of the player. Each music card has an individually identifiable NFC chip that allows the music player to recognize the album, display relevant information (song name, album name, and artist), and play the album on a connected speaker. To add a decorative touch, the player displays personalized photos while idling without a music card. These photos are also shuffled in a random order and change every ten seconds.
Electronic Hardware
The brain of this project is the Arduino MEGA 2560. It receives the NFC data via an MFRC522 RFID Reader over SPI and compares this to a defined list of albums in the code. Once it finds the matching album, it prints the song name, artist name, album name, and album cover art to the attached TFT LCD screen. To ensure a unique listening experience, the album is shuffled every time a new card is placed. The player continues to play each song in the album, and once it reaches the end of the album, it returns to the home screen. If an album is removed before finishing, it will also return to the home screen.
User IO
For increased functionality, pause and skip buttons were added to the front of the player. These are force-sensitive resistors programmed to trigger with a simple touch. A power switch was also installed on the side of the player. On the rear of the player, a USB cable and 3.5mm audio cable are provided for power and audio output respectively.
Enclosure Design
The housing was designed in Autodesk Fusion 360 and printed on an Ender 3 Pro. It maintains a compact form factor such that the player can easily fit on a desk or shelf with an aesthetically appealing design and an angled display holder for improved viewing.
Upgradability and updating photos/music are essential features for this project, so the SD cards for photos and music are easily accessible. Additionally, the USB port for the Arduino MEGA is accessible from the rear of the player.
NFC Card Shelves
The card shelves were built using 1/8" plywood as the backing, 1x2" wood for the rear mounting, and 3D printed shelves that insert into the plywood. These shelves have notches that hold each card in place for even spacing and more secure mounting. Additionally, white LED strips were installed facing outwards behind the plywood backing to give a soft glow on the wall.Â
Photos of the Build Process
End Result
Inspiration for this project came from Juuke and Vinyl Emulator