Introduction: RoboCat

This project will show you how to make a simple robotic cat that can react to outside stimuli.

The cat randomly meows, has eyes that change and it purrs when it's being petted.

I might add more features and/or improve the designs later.

Step 1: MoSCoW, Materials and Tools


  • Arduino Uno
  • Arduino USB cable (to connect the arduino to your computer)
  • Breadboard
  • Piezo speaker
  • Touch sensor (FSR - Interlink 406)
  • 12 5mm LED's
  • 6 220 ohm resistors
  • 47k ohm resistor
  • 15 M to M jumper wires
  • 24 M to F jumper wires
  • Acrylic (for the laser cutting)*
  • Material for laser printer*


  • 3D printer*
  • Laser cutter*
  • Glue gun*

*This is just for making the body. If you don't have access to these tools you could also make the body out of other materials.


This is a llist of MoSCoW requirements that I used while designing the RoboCat

Must have:

  • The robot has a 3D printed case
  • The robot makes sounds
  • The robot can feel when it's petted on it's back
  • The robot has LED eyes

Should have:

  • The robot's eyes change
  • The robot can be turned on or off

Could have:

  • The robot has a logo engraved on it's side
  • The robot reacts to light and dark
  • The robot reacts to being tilted

Won't have:

  • The robot can walk

Step 2: Wiring

Got everything? Then let's get started!

The diagrams here show how everything is connected. The first diagram has everything on it, but is a little messy, so I added some extra ones so you can actually tell what's going on.

It's easiest to start with the piezo speaker and the touch sensor. The piezo speaker is connected to pin 2 and ground and the touch sensor is connected to 5v and A0. The touch sensor has a 47k ohm resistor before it.

Then we'll add the LEDs on pin 6, 7, 8, 9, 11 and 12. Youll be putting a whole mess of cables in the breadboard here, so make sure you don't confuse any of them (it helps to color-code your wires). First I made some rows on the breadboard to put the LEDs on , and made some rows that that connect to the ground. I then added 2 LEDs per row with the M/F jumper wires, and connected the other ends to the ground. I basically made 3 identical sets of LEDs on my breadboard, the way you can set up one of them can be seen in the image with just the LEDs.

note: To change the sensitivity of the touch sensor you can also try putting different resistors in place of the 47k ohm one.

Step 3: The Code

So, now we've got all the wiring done, but it doesn't do anything yet, so we need to get some code and upload it to the Arduino board.

Step 4: 3D Printing and Laser Cutting

Okay, now our creation acts like a cat, but it doesn't really look like one yet. Time to make a body!

To make the body we'll be using a laser cutter and a 3D printer. If you don't have access to these tools, you could also use other materials and get creative making your own body.

We'll 3d print a body and a head, and laser cut a tail and a plate to put in the head.

When 3d printing the head, make sure you don't change the size (so the 5mm LEDs will fit exactly into the holes), and make sure the supports are on, as the ears stick out and the printer cant print on thin air. (this is standard on some 3D printers, but on some you'll need to turn it on yourself)

I havent actually had the time to print the body myself, so I haven't actually been able to test if everything fits in there, and I'm suspecting it may not, so you may need to fiddle around a bit. There's also no holes for the touch sensor to come out of or for the wire that connects to the arduino in the body, so you''ll need to saw those out.

The laser printed plate can go behind the mouth, nose and whiskers to give the cat some more colour and so you can't see inside (though it's not really necessary to put in, if you like it better without, just leave it), and the tail goes in the back of the body.

Step 5: Putting It Together

Just a few last things before we're done.

We still need to put the LEDs in the head. You really need to make sure the LEDs go in the correct holes, otherwise the eyes won't look as intended. The LEDs connected to pin 6 are go into the upper outer holes, the LEDs connected to 7 are the ones right next to those (so not below), the LEDs connected to 8 are the ones next to those. The LEDs connected to pin 9 are the lower outer holes, the LEDs from 11 are the ones next to those, and the LEDs from 12 are the ones next to those.

You can put the body and the head together with a glue gun, and this goes for putting in the face plate and the tail as well. If youmade a body/parts yourself, you can attach it in the best way for what you used.