Toothbrush Machine




About: Creative Technologist.

The Toothbrush Machine®: because knowing how to build something doesn't always mean you should.


The other week I built a toothbrush machine as a part of a pilot for a kids show about electronics. And because I love shitty robots and wanted an excuse to make one for myself. I posted it on Reddit and some people requested a tutorial on it so here we go.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Get the Parts

  1. A robot arm from MeArm
  2. A skateboard helmet. I used this one but there are probably cheaper alternatives out there that work just as well
  3. An Arduino UNO
  4. A servo shield from SainSmart
  5. A toothbrush of your fancy

I had all the stuff laying around but I think the parts would come to about $140 all together.

Step 2: Assemble the Robot Arm

First thing I did was to assemble the robot arm. MeArm has a pretty intricate but good tutorial on how to do this.

I skipped step 2 and 3 that takes you through assembling the base and 18, 19, 20 that makes the gripping claw at the end of the robot arm.

Step 3: Attach Toothbrush

Instead of having a claw at the end of the robot arm, we'll attach the toothbrush. I went trough some iterations to find the best way to do this (without getting any extra parts, because I'm lazy).

To attach the toothbrush to the robot arm I used the parts in the first image, which are all left-overs from the robot arm kit.

Take the biggest part and drill two holes in the toothbrush head that co-align with the two topmost holes. Use the pointy screws to fasten it.

Use two screw to attach the collar with the spacers between to the part attached to the toothbrush. Make sure that the longer spacer is facing away from the toothbrush. Then attach all of it to the robot arm with the three remaining screws.

Step 4: Prepare the Helmet

Make a hole in the front of the helmet the size of the servo motor. There are probably more elegant ways to do this but I used a drilling machine an drilled small holes along the outline of the servo motor and then used a knife to cut it out.

Then take the plate from the robot arm and drill holes in the helmet that co-align with the holes of the plate.

Mount the servo with the motor mount facing down and put the acrylic square on top of it. Use the two long screws and the two nuts in the two upper holes. I had to cut out some of the insulation of the helmet to be able to screw them in. Then take the two shorter screws and put them in the two lower holes. It's important that the head of these screws are on the inside of the helmet as they otherwise will be in the way for the robot arm to move.

Step 5: Mount Robot Arm on Helmet

Place the robot arm so that the servo horn on the bottom of the robot arm mounts on the servo motor attached to the helmet. Make sure that the robot arm is placed so that you can move the servo motor as much to the right as you can to the left.

Fasten it with one of the small black screws from the MeArm kit.

Step 6: Attach the Arduino

Now we need to attach the Arduino to the helmet. If you haven't already, mount the servo shield to the Arduino UNO.

I just put a broken hair tie between the Arduino and the servo shield and then pulled it through two of the holes of the helmet. Make sure that the USB-port of the Arduino is facing towards the back of the helmet.

Step 7: Connect the Servo Motors

Pull the cable for the bottom servo motor through the front hole that the Arduino is tied to and connect it to pin 7 of the servo shield. Then connect the lower arm servo to pin 6 and the upper arm to pin 8.

Step 8: Program It!

Here's the code I wrote for the helmet. Might need some calibration to work with your face. Because we're all unique, yada yada yada.

// Written by Simone Giertz

#include <Servo.h> 
Servo servo[3];  
// base, upper arm, lower arm
static const int servoPin[3] = {7,8,6};
void setup() 
  for(int i=0; i<3; i++){ 
  // Fold the robot arm at the top of the helmet
  servo[0].write(90); // base
  servo[1].write(30);  // upper arm
  servo[2].write(150);  // lower arm

void loop() 
   // Wait five seconds before we start the toothbrushing
   // Put the arm in brushing position
   // brush back and forth
   for(int i = 0; i<10; i++){
   // Fold the robot arm back up

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    22 Discussions


    3 years ago

    i tried 40000000000 times cannot do it !!!!!!!!!!!!!!


    3 years ago

    This reminds me of an invention from Wallace and Grommet. :)


    4 years ago

    Or you could just use your hand… just saying


    4 years ago on Introduction

    BTW I Googled "toothbrush helmet" to see if it is possible to buy one of these since I was curious to see how much it costs, and there were tons of articles about you


    Reply 4 years ago on Introduction

    Aaaaah don't understand why the GIF doesn't work for some. Added a video in the description so you can have 8 seconds of toothbrushing bliss.


    4 years ago on Introduction

    I just love that GIF. You and the helmet are one, in perfect synch. You should go on tour with that thing. Jimmy Fallon would love it. :-)


    4 years ago on Introduction

    Simple, effective, and wonderfully "shitty" This blows my machine out of the water ;)


    4 years ago on Introduction

    Hilarious! What a great way to excite kids about electronics.


    4 years ago

    Awesome!! What A great Idea!