Juuke - A Rfid Music Player For Elderly And Kids

About the project

The Juuke Box works by using RFID cards to play specific songs from an SD card. You could also play the songs randomly using the green button, or play and pause with the red button. This way, it is really simple for everyone to play music.

Items used in this project

Hardware components

Arduino Uno - R3 Arduino Uno - R3 x 1
DFPlayer Mini DFPlayer Mini x 1
RC522 RC522 x 1

Hand tools and fabrication machines

3D printer 3D printer x 1
Soldering Station Soldering Station x 1

Story

Step 1: Watch the Video!

We made a video showing how me made it:)

Step 2: Gather the Parts:

We got all the parts from AliExpress, and links to the parts are listed below:

Parts:

Arduino UNO AliExpress & Amazon

DFPlayer Mini AliExpress & Amazon

Micro SD card AliExpress & Amazon

Arduino UNO DIY Shield AliExpress & Amazon

RC522 - Buy 2 to be sure, some of them arrive broken AliExpress & Amazon

RFID Cards AliExpress & Amazon

AUX Stereo Jack AliExpress & Amazon

22 mm Momentary Push Button - 1 Red and 1 green - 3-6V AliExpress

10K Potentiometer AliExpress & Amazon

Wires AliExpress & Amazon

1K Resistor AliExpress & Amazon

Pin headers AliExpress & Amazon

Breadboard - Optional AliExpress & Amazon

Jumper wires - Optional AliExpress & Amazon

5V power supply -AliExpress & Amazon Power Jack - AliExpress & Amazon

Tools:

3D printer AliExpress & Amazon

Soldering Kit AliExpress & Amazon

Wire Stripper AliExpress & Amazon

Step 3: Test the Parts

I recommend connecting everything up, and test if it all works before starting.

To do that, I used a breadboard and some jumper wires to quick and easy check that it all worked as intended. I had some problems with the first RC522 module I bought, it just didn’t work even though it came straight from the factory. So I had to get a new one… That’s why I recommend getting 2 of them, that way you are sure that if you break one of them, you have a spear.

Connect everything according to the circuit diagram here (Link), or see the attached pictures.

Remember to use a 1K resistor between RX on the DFPlayer Mini and the Arduino.

To check if the card reader works, you can use the “Dump card” example sketch from the library. (See step 4)

Step 4: The Code - Programming the Cards

To get a better understanding of how the code works with the DFPlayer mini, I will try to explain it as easy as possible. The DFPlayer mini works by playing songs from a micro SD card. To know which song to play, the songs has to be stored as a number to the SD card. Song number 1 is stored as “0001 - SONG NAME”, song number 2 is stored as “0002 - SONG NAME”, and so forth. We can write a number to the RFID cards, so if we write the number 2 to one of the cards and place it on the reader, the Arduino will read the number and say to the DFPlayer mini, “play song number 2”.

The number we write to the card has to be the same number as the name of the song we store on the SD card.

If you would like to learn more about the DFPlayer mini, visit this page with lots of great information

You can now open Arduino and upload the code for the card programming. I have divided the code into two parts. One for programming the cards, and one for the actual player. In this step, we will start by programming the cards. The code is published to GitHub, and added below. You will also need to download the following libraries:

- MFRC522

- DFRobotDFPlayerMini.h

I have tried to explain the code with comments as much as possible, but if you have any questions, don’t be afraid to ask them in the comment section!

Also, I am not a great programmer but I would like to become one, so if you see any mistakes in the code a comment would be great!

To upload the code to the Arduino, see this article. To add libraries, see this article.

MODES:

The card programmer has two modes, automatic and manual.

Manual mode: Writes the number you want to write to the card. Type in a number, and it will store it.

Automatic mode: Starts at the number you specify in the code, and increases it by 1 every time you place a card on.

HOW TO USE THE CARD PROGRAMMER:

Connect the Arduino Open Serial monitor (top right corner) Write “manual” for manual mode and “auto” for automatic mode. (See above) Place a card on the reader, and make sure it says succeeded.

Step 5: The Code: Player Mode

Once you have programmed the cards, you can upload the music player code. This is the code that reads the card and plays the associated song. The process is exactly the same as for the card programmer code. Upload the sketch, and start using it!

PS: IMPORTANT! To disable the serial communication where you can see what the program is doing in the serial monitor, you have to comment out “Serial.begin(115200); “. Just add“//” in front of the line. I had some problems where the program would not run if it was enabled. (It was waiting for a serial connection before it would start)

Step 6: Download Songs to the SD Card

As said previously, you have to give the music files on your SD card a specific name for it to work. Every song has to start with a number. The number also has to be 4 digits (1 is 0001 for example). After these digits, you are free to add the name of the song. For example: “0035 - Frank Sinatra - Fly me to the moon”

It uses standard MP3 files, so it’s simple to copy them over to SD card and rename them.

Step 7: Test, Then Solder

When you have tested that everything is working as intended, you can start soldering the parts to the Arduino UNO shield.

Just follow the circuit diagram wire for wire. It is smart to print it out, and use a colored marker to mark which wires you have soldered on. I also recommend to use pin headers for the DFPlayer Mini so you don’t damage it under soldering.

I also desoldered the RC-522 Led, because it was showing through the print.

Step 8: Make the Enclosure

In this step I am going to show you how I made the enclosure. I designed it using Fusion 360, and 3D printed it. I also made one using a CNC machine, and some plywood.

If you don't have a 3d printer or a CNC machine, don't worry! It's also possible to make an enclosure out of cardboard or using a project box

You can find all the files here:

3D printed:

STL: CULTS 3D | Thingiverse

FUSION 360: Ananords.com

The settings I used to 3D print it is:

Infill: 15%

Layer height: 0.2mm

Supports: YES

Just insert the UNO and the RC522 into the pins on the 3D print. They should fit snugly. I recommend using a drop of glue to secure them in place. Do the same with the audio jack. For the buttons, potentiometer and power socket, use the included hex nuts.

When you are done, just snap the bottom plate and the “face” together.

Step 9: Make the Cards

Start with the design. I made the designs in Adobe Spark, where I used the card dimensions (85 mm x 54 mm) as the custom size

I found the pictures on google and imported them into Adobe Express, set the song title and artist, and done!

Since I don’t have an id card printer, I had to find another way to make the print on the cards. I went the simple route, and just printed it on paper then glued it to the cards.

You can also just use a pen and write directly on the cards.

Step 10: Done!

You are now done!

If you make this project, please post a make:)

Any questions? Just ask, and I will try to answer them.

For updates about the Juuke, sign up to the newsletter!

Follow me on Instagram for updates on upcoming projects!

Instagram: https://www.instagram.com/ananordss/

Contact me: Ananords@outlook.com

••• Support me •••

Patreon: https://www.patreon.com/ananords

Donations: https://ananords.com/products/donation/

Buy me a coffee: https://www.buymeacoffee.com/Ananords/

Schematics, diagrams and documents

Schematic

Code

Juuke Card Programmer

Juuke Player

Credits

Leave your feedback...