Sentimental Audio Gift

by oKeeg in Circuits > Arduino

1268 Views, 8 Favorites, 0 Comments

Sentimental Audio Gift

Untitled-1.png
Best Sentimental Gift Ever!(3D Printed DIY Project With Arduino)
IMG_0051.jpeg
IMG_9920.jpeg
IMG_0049.jpeg

After my grandpa had passed away, I got the idea to build my mother a gift to show my condolences. I wanted to make my gift as memorable as possible and help her cope with her loss. That is when I came up with the idea to build a 3D printed box with a picture of my grandpa and I. The goal is to have his voice and his favorite song play at the press of a button. I luckily had saved a voicemail I had from him a year ago and I wanted my mother to remember his voice. At the press of the button, his voice as well as two other songs will play. The hearts around his picture will light up to the beat to mimic him talking to my mother. This is my favorite project I have created yet and I hope to share it all with you.

Supplies

Prototype the Solderless Breadboard

GPA_Diagram.png

One of my favorite parts of projects is prototyping and watching your design come to life. For this project, I used a series of jumper wires in conjunction with a solderless breadboard and an Arduino to make sure what I was building was correct. I first pushed the Arduino into the board as well as the Micro SD Card reader and plugged them in. From far left when looking at the micro sd card reader, the first pin is ground and we can connect this pin to a ground on the Arduino. To the right is the VCC and we can power this to the 5v pin on the Arduino when testing. When actually building the project, we would want the VCC pin going to the VIN pin on the Arduino because the batteries will be supplying the power to both of the devices instead of plugging in a USB. The next pins to plug in follow from left to right:

MISO(3rd from the left): Pin 12 on Arduino

MOSI: Pin 11 on Arduino

SCK: Pin 13 on Arduino

CS: Pin 10 on Arduino

Then we can plug the toggle push button into the solderless bread board. Jump one side to ground and the other side to the pin D3 on the Arduino. When this is pushed, it will send a ground signal to the D3 pin to let it know it has been pushed.

Next, we can start with the speaker and the 2n2222 Transistor. Plug the transistor into the breadboard. Put the left most pin into a ground slot on the Arduino, the Middle pin next to a 220Ohm resistor, and have the resistor go to pin 9 on the Arduino. The far right pin on the transistor can go to the Positive on the speaker and the speaker ground can go into a ground spot on the Arduino.

Finally we will plug in the LEDs to the Arduino. You can connect all of the ground on the LEDs(the shorter side) together and tie it to the ground pin on the Arduino. Next, the A0 pin on the Arduino will be the positive for the first two LEDs. We first connect two separate 220 Ohm resistors to the positive pin and then connect the other side to the positive end on the LED bulb(long side).

Repeat this process for the next 3 sets of LEDs by plugging them into A1, A2, A3 slots.

Download/upload Song for SD Card

MusicSettings.png

For this step, we need to first download the song we want to use and upload it to the SD card to test. However you get your file whether it's through Youtube, iTunes, or anywhere else we need to go to this site to convert the audio to a .wav format: https://audio.online-convert.com/convert-to-wav

Follow the image above to see what resolution the music needs to be set at.

  • Bit Resolution: 8 Bit
  • Sampling Rate: 16000 Hz
  • Audio Channel: Mono
  • PCM Format: PCM Unsigned 8-bit

Once the music is converted we can give it a short name. The name has to be just a few characters long for the Arduino to read it properly. When the song is renamed, we can drag and upload it to the SD card on the computer.

Program the Arduino

Arduino Code.png
ArduinoCode1.png

After we have built our setup and have our music, it is best to program it to make sure it works. Once it is programmed and ready to go, then we can start soldering on the PCB board and putting our project together. For now, I have wrote this code that will play 3 songs. Each time the button is pressed it will play either song 1, 2, or 3. Make sure the names match exactly what the file name is on the SD card.

Downloads

Design the Print

Battery Pack.png
Controller.png

For this project I will not list the .stl files I used for my 3D print since I want my project to be unique for my mother. However, some key features to keep in mind is to use a Digital Caliper to measure lengths and sizes of your components. Using this comes in handy when measuring LED caps, buttons, battery lengths, etc.. Make sure you leave spots for screw holes to screw together the 3D printed components in the project.

Get creative with this design. I wanted mine to run off of 3AA batteries. Since this is the case I wanted everything to be proportional to the battery case so I was able to make my image pretty large and clear for the human eye.

3D Print!

Throughout the course, it took me about 12 hours to print. The 3AA battery case took about 4 hours, the small and large hearts took about 3 hours, and the top enclosure took about 5 hours because of the awkward shape. I used white and black filament all together. The printer I have is the Ender 3D printer and I use 1.75mm thickness of filament.

Find and Print Picture

IMG_9924.jpeg

For this step, I found a picture in my family photos that I wanted to use for my image of my grandpa and I. I took the image out of the photo book and put it in a printer/scanner and scanned the image. I had the image scan to my email where I downloaded it and threw it into a photo editing software. For this, I used Photoshop. I slightly enhanced the photo where it was needed and measured to size. The size I needed to measure to was the size of the heart from the 3D print model. Once I got the sizing correct I printed them out on 4x6 glossy card decks. I wanted the picture to be glossy to give it a better look.

After printing out the paper, I had to cut it to size of the heart. Afterward, glue the picture to the heart frame and once it is dry, glue the back of the heart to the heart frame and the new image.

Connect the Project Together

Now we can transfer over the Prototype solderless breadboard design to our actual PCB. This step should not be too hard as we can just follow the exact prototype that was built.

Once the PCB is designed, we can start putting the project together and screwing/gluing in the project where needed.

Test and Enjoy!

Overall, this is what the final product was and I am extremely happy with the results. I was nervous at first with how quite the speaker was until I added the 2n2222 transistor to boost the audio. It now sounds crystal clear and the flashing LEDs was a stunning touch.

I hope everyone enjoyed this project. It definitely made my whole family tear up listening to my grandpas voice again. I want to share this project with everyone in hopes they can have something special to remember their loved ones with. Let me know what you thought of this project and if you have any other comments or questions about it. Thank you all for your time and I will catch you in the next project :)