Santa's Sorting Hat With Arduino

14K5315

Intro: Santa's Sorting Hat With Arduino

We've been working closely with Santa's Workshop to bring you this innovation in naughty or nice list communication. Now, you can check in real-time if your good and bad deeds have affected your standing on Santa's Naughty or Nice list! A fun project to make and share with your friends who's results may surprise you!

Over the holidays we created this cute shorting hat for a workshop we attended. The hat consists of a servo, Arduino, and a pushbutton and is powered by a USB Power Bank. It's a pretty simple build overall and a real big hit with kids of all ages.

This project could easily be adapted for other events or expanded on to animate a Harry Potter Sorting Hat, add in sound effects, or even mp3 sound effects via a cheap mp3 playback module.

If you like our projects and want to see more of what we get up to each week please follow us on Instagram, Twitter, Facebook, and YouTube.

STEP 1: Cut Strips of 1/4 Inch EVA/Craft Foam

  • We first measured our heads and came up with some average measurements. You may want to tweak these depending on your head sizes.
  • Cut strips of 1/4 inch EVA/Craft foam to these measurements:
  • 1.25 in x the Circumference of the head
  • 1.25 in x Over the top of the head front to back
  • 1.25 in x Over the top of the head side to side
  • Attach the pieces with duct tape to make the structure as shown in the drawing. You may also use rubber cement.

STEP 2: Attach the Motor

  • Since our LEGO compatible servo has flat edges and also some large holes it was very easy to tie it down. Other servos can be attached with glue or even strong foam tape.
  • Attach the motor to the top of the structure by threading twine thought the foam, around the motor, and back thought the foam.
  • Tie a big knot on each side to secure as shown.

STEP 3: Attach the Board

  • The Crazy Circuits Robotics Board is designed to stick on LEGO, which is why it has so many large holes on it. We took advantage of this to help us tie this down. If you're going to use a different Arduino board make sure you secure it down properly as to not cause shorts or breaks.
  • Attach the Crazy Circuits board to the back of the structure using twine.
  • Thread the twine through the holes in the Crazy Circuits board and tie a knot as shown.

STEP 4: Connect the Button

  • The button will trigger the hat to make a Naughty or Nice decision when placed on a new wearer's head. :)
  • Using conductive thread, connect the D9 pin to the positive pin of the button.
  • Using a new piece of conductive thread, connect the ground pin to the ground pin of the button. Alternatively you could also use conductive tape, such as Maker Tape, to connect the Robotics Board to the pushbutton.
  • Tip: Use a small piece of tape to hold the button in place while you sew. Trim any stray threads and use clear nail polish to set the thread once you've checked that it works.
  • Use twine to tie the button to the inside of the hat structure with twine through holes D11 and D12.

STEP 5: Connect the Motor to the Board

  • The reason we're using the Robotics Board is because of it's size, holes to help us tie things down, and built in pin headers to easily connect our servo.
  • Connect the Servo to D3 as shown. You can wind the wire around the structure a few times first so that it takes up the slack.

STEP 6: Connect the Popsicle Stick to the Lego Arm

  • Align the LEGO piece so that the "+" shaped motor connector hole sticks out beyond the stick, and mark two spots for holes to secure it.
  • Drill two holes in the popsicle stick.
  • Secure the Lego piece to stick with zip ties.
  • Trim the zip ties (not pictured).

STEP 7: Upload the Code

  • Our Arduino code is extremely basic, feel free to change it if you want.
  • Download, or copy and paste the code into the Arduino IDE.
  • Upload the code to your Crazy Circuits board.
  • If this is your first time using the Crazy Circuits Robotics Board, review this setup guide.
  • Connect the LEGO piece to the top of the motor.
  • Use a protractor to check the angle, and adjust the code if you'd like to change its behavior.
  • Once you've set the "up" position, use a marker to mark the motorhead so that if the arm comes off you can put it back on in the correct position.

STEP 8: Make the Outer Ring

  • Cut another piece of foam that is 3 in wide and as long as needed to wrap around the hat structure.
  • Make or buy a Santa hat.
  • Place the Santa hat over the new outer ring.

STEP 9: Power It Up!

  • We're just using a random USB power bank that we bought from Amazon because it fit well in the hat. If you wanted to you could use a 3AA or 3AAA battery holder and connect it to the Robotics Board.
  • Plug in the USB battery pack.
  • Tuck the Santa hat around the edge of the outer ring. Insert the hat structure inside.
  • Insert the popsicle stick through the top of the hat, or otherwise secure it a the top.
  • You can choose to embellish the pom-pom, make it look like an arrow, or create a design that you like.

STEP 10: Cut the File and Wear!

  • We designed a really cute "Naughty Or Nice" graphic which we cut out of craft foam. You could also use a Cameo Silhouette or laser cutter to make something as well. We've included a PDF of our vector design in case you want to print it off or machine cut it out.
  • Download and cut out the "Naughty or Nice?" template out of paper, craft foam, or any material that you like.
  • Use hot-glue to attach it to the front of the hat.
  • Then you're done! It's time to see which of your friends are naughty and which are nice!
  • To reiterate, it would be easy to turn this hat into something bigger and better using this basic design. Especially for Halloween. If you have some fun ideas please share them in the comments below!

12 Comments

I have to ask is it programmed for specific results or completely random.
That's what I was afraid of.
I need something like that but that is controllable.
Then you should adapt the code to your needs.
How would you like to control it? Are you comfortable with coding?
I wish I was so I could set it for either a hidden switch or preferably a remote transmitter.
This particular Santa never wants to have a child result as naughty.
Hidden switch is very easy to implement.
Additional hardware: switch and a couple of wires
Change in software: just a few extra lines as well

For a remote transmiter, although not very complicated, requires the additional module, connections and extra coding.

I guess the original idea from the author was also to keep this simple.

I spotted this a while back and have finally got around to making one.
I added a small lithium battery, charging circuit, and a 5v boost for the nano I used.
Mine currently randomly wobbles then settles down to an answer like this instructable.
After reading this thread, I have now decided to add an NRF24L01 to it to provide a level of cheating.
It means also creating another module for the remote and a bit more complex code, but I think the result could be fun. Child friendly and biased in the pub.
For anyone not used to using the affordable NRF24L01 modules, I have created a couple of instructables using and explaining them myself.
Very nice idea.
Great work.
We're going to try and expand this project into a Harry Potter sorting hat later this year. It would make for a nice halloween activity.
That will be amazing! I love this one too, it's so adorable!
This is just the cutest and it looks like the kids are just having so much fun!!!
The looks on their faces as they wait to know if they're naughty or nice had me cracking up. What a fun project! :D