Introduction: Scary Talking Skeleton With Arduino and DFPlayer Mini

About: Tinkerer, maker, builder and fixer!

Halloween is almost upon us as it is my favorite time of year I thought why not try making my own spooky prop and document it all for my very first Instructable!

So let me know what you think in the comments below and have a spooky time!


Now lets get started!!

Supplies

For this build, I used the following!


Materials


Arduino Nano ( Few pounds on eBay)

An Arduino is a Programmable microcontroller that can do a whole range of different things depending on how you program it

DFPlayer Mini 

The DFPlayer is an MP3 player board that can be controlled by a serial connection from the Arduino.

SD Card

SD card is used to store out MP3 Sound files to be played.

Small Speaker 4Ohm (Cheap on eBay)

The speaker will be how our spooky skeleton speaks to us

Small Skeleton ( £5 in Poundland UK )

This is the bare BONES for this project!

Servo

I had one laying around already but they can be found cheaply online I believe most should work fine for this project!

3mm Red LEDs x2

I had these here already however they're also cheaply available online.

MISC Wire

I had this too but you can salvage wire from old tech or broken phone chargers if need be.

Paper Clip


Tools Required

Soldering iron and Solder

Screw drivers

Zip ties

Electrical tape

Superglue or Hot glue

Step 1: Measuring and Cutting

To begin remove the skull from the skeleton,

Then measure the Servo width, With this measurement, We can cut a hole in the rear of the skull the same width but make the hole slightly longer so we can get the remainder of the electronics inside the skull, see photos

Step 2: Spooky LED Eyes!

So now we have a hole lets make two small 3mm holes in the eyes!


Step 1)

I roughly found the center of the eyes and made a hole using a drill, You can do this however you like carefully with a knife, scissors, or using a drill like me.


Step 2)

Once you have the holes we need to install the LEDs

Take a look at the LEDs, There are two legs one of which is longer than the other this is telling us which leg is the anode ( + ) and which is the cathode ( - ), We need to bend one leg of each LED at a 90° angle, be sure to use the opposite leg on the other LED, We should now have 2 LEDs with one bent leg on each, a small bent leg on one and a longer bent leg on the other.


Step 3)

Now fit these inside the skull into the holes we made in the eyes and turn them so the bent legs are overlapping then carefully apply solder to these legs to secure them together, Remove the LEDs and apply more solder if required,


Step 4)

We need to solder wires to each of the remaining legs so grab two wires strip and tin the ends and solder a wire to each Remaining unbent leg then cover all the legs separately with some electrical tape so they do not touch and short out the circuit.

Step 5)

Put a few drops of super glue on each of the LEDs and refit them into the skull hold them for a few seconds until the glue sets.



Step 3: Servo Time!

Now we have the LEDs installed let install the Servo!


Step 1)

slide the servo into the hole in the rear of the skull with the servo mounts on either side like in the photos and mark the holes on the skull with a pen.

Step 2)

Remove the servo and now make 2 small holes where we marked

Step 3)

put a small zip tie through the servo mounting hole into the skull hole we made then back out of the other hole and through the other hole in the servo then zip the tie! repeat the same for the other side of the servo.

Step 4: Arduino & DFPlayer Mini Wiring

Let's get connected!


The DFPlayer Mini comes with pins Presoldered we don't need these in this project so I snip them all off.


On the Arduino, We have multiple pins that are controlled by the software there are digital and analog pins.

For this project, We are going to be using 4 Digital pins 2 for software Serial connection for communication from the Arduino to the DFPlayer Mini, one for the LED eyes, and the other for the Servo!

we also need to run power and ground from the Arduino to the Servo and DFPlayer Mini 

to do this following the wiring diagram in the photos or following the connection list below,

Arduino connections

Software serial connections are

RX = Pin 10 connects to DFPlayer Mini  TX

TX = Pin 11 connects to DFPlayer Mini  RX

LED eyes = pin 3 connects to LED anode leg

Servo = pin 2 connects to Servo PWM


DFPlayer Mini connections

***Do these With the SD card slot opening facing you and the small notch at the top!***


The first top left pin DOWN is VCC we connect this to the Arduino 5V Pin

The second pin DOWN on the top left is the RX pin

The third DOWN pin on the top left is the TX pin

The Second pin UP on the left side is GND we connect this to the Arduino GND pin.

The First pin UP on the Left side is Speaker +

The third pin UP on the Left side is Speaker -


Speaker connections

Wire the speaker + to the DFPlayer Mini Speaker +

Wire the speaker - to the DFPlayer mini Speaker -


Servo Connections

To make it easier to connect our servo I cut off the supplied connector and just soldered the wires to the Arduino.

Most Servos have 3 wires Power, GND, and PWM on mine this was as follows,

Red = 5V

Black = GND

White = PWM


Once all connections have been made I like to wrap everything with tape as you can see in the photos.


Step 5: Coding!

The code attached was written by myself it may not be the best but it works for this project it may need some modifications to work for you!


Open the Arduino IDE

select the correct board in my case that was an Arduino Nano

Select the correct Port

and upload the code

Step 6: Attaching the Jaw!

We leave this until last to make sure the servo is in the closed mouth position before attaching anything.

I was going to use a paper clip for this however I couldn't find one at the time so ended up using a small alan key, You can use anything you find for this it just needs to be strong enough to move the jaw without bending or deforming,


I simply put the Allen key into one of the slots on the servo and temporarily taped the other end to the jaw as we may need to tweak this so power the Arduino and run the code and tweak the connection as needed once you have this perfect replace the tape with hot glue this to make it strong and more permanent.


Step 7: Sound Files!

I found some creepy voice sounds online

You can make your own using https://voicechanger.io/

Once you have your files load them onto your SD Card Formatted as FAT or FAT32

Currently, This code only uses 3 sound files and you will need to adjust the servo timings and delays to sync better with your MP3

If you require help with this leave a comment and I will try my best to help!