Introduction: Charlotte

About: Art, design and tech with flavour.

Charlotte’s movements are determined by light interpreted through three sensors located on top of its body. For legs, it has three pens that individually attach to form a tripod. Each light sensor controls the movement of one leg that marks the paper with every act.

You can also download the project from a GitHub @

In collaboration with

Abe -
Peter Kolski

Yuri -

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: Tools Needed

Tools you will need:

3D Pinter



Wire Cutters


Stanly Knife

Lounge Tongued Plyers

Step 2: 3D Parts Needed

A - x1 - Main Body

B - x1 - Lid

C - x3 - Sensor House

D - x3 - Servo House

E - x3 - Wedge

F - x3 - Nut Case

Step 3: Electronics Needed

A - x1 - Arduino Nano

B - x3 - SG90 Servo

C - x3 - Photo-resistors

D - x3 - Resistors (10k Ohms 5%) Brown Black Orange Gold

E - x1 - Small Dot Matrix Bread Board

F - x2 - 12* Female Pin Heads

G - x3 - 3* Female Pin Heads

H - x3 - 2* Male Pin Heads

I - x2 – 2* Female Pin Heads

J - x1 - Extra Long USB mini Cable

Step 4: Nuts and Bolts

A - x10 - M3 3mm x 10mm Bolts

B - x6 - M3 3mm Washers

C - x10 M3 3mm Nuts

D - x10 - M5 5mm Nuts

E - x6 - M5 5mm x 30mm Bolts

Step 5: Exploded View and Schematic

Step 6: Bread Board Preperation

The first step is to prepare the bread board. You will need to cut the bread board down to size then drill the holes in the corners. An additional step would be to sand the corners. Make sure your bread board has 23 by 18 holes available.

Step 7: Pins & Resistors

In this step, you will need to precisely lay the components of the board into the correct position because they are the foundations of the circuit. You can solder the parts into the board once correctly placed.

Step 8: Insert Ardunio

Now slot the Arduino Nano into the female pins. Putting the Arduino in place will help you match the digital and analog pins correctly.

Step 9: Analog and Digital Wires

Now solder in the digital and analog wires. Make sure that you couple the digital pins D3, D6 and D9 and analog pins A0, A3 and A6 for they will be specifically referenced in the code that you upload later.

Step 10: Connect Ground

It is now time to soldier on the digital and analog wires in order to connect the sensors and servos to the Arduino.

Step 11: Connect Power

After connecting the ground, it is time to connect the power. Because there is only one 5v out pin, it is necessary to use a wire as a bridge; this is so that both sides have power and a connection.

Step 12: Drill Servos

Drill two holes into the Servo Horn, exactly 7.5 mm apart from each other. Use a 3mm drill piece. Use the plastic dots on the Servo Horn as a reference.

Suggestion Use double sided tape to stick Servo Horn to cardboard/MDF before drilling. Practice drilling on the spare Servo Horns that comes with all SG90 servos.

Step 13: Calibrate Servos

In order to guarantee that your servos are at exactly 90 degrees before securing them into position, you will need to upload the servo calibration code into the Arduino. After you have completed this you can add the screw to secure it in position.

Step 14: Create Sensors

In order to attach the photoresistors to the body in a secure fashion, a custom solution has been designed. Thread the photoresistor through the ‘Sensor Mount’ then solder it to the wire. Secure it in place by pushing the shrink wrap up into the printed part when you’re heating it.

Step 15: Attach Servos

Now attach the servos to the main body. Repeat this step three times, one for each side.

Step 16: Mount Electronics

Now the Electronics must be secured to the body of the robot. To do this, you will need to slide the electronics into the cavity of the body at an angle. After this slide the screws into place.

Step 17: Attach Servo Housing

The first step is to thread the plastic female Pins through the hole in the bottom of the ‘Servo Housing.’ Now thread through the hole on the side of the body of the robot. You will then be able to plug the servo into its corresponding male pins. Make sure you marry the digital pin on the servo with the digital pin on the bread board. After this, you will be able to press the Servo housing onto the servo (do not worry if it appears loose because everything will be tightened when the pen is inserted and wedge tighten). Then you can attach the rest of the parts as displayed in the diagram.

Step 18: Insert Sensors

Thread the sensor through the hole in the side of the ‘main body’ and gently pull the wire through from the other side until the mounting block is in place. Use this diagram below to ensure that the sensors and servos are plugged into the corresponding pins.

Step 19: Add Lid & Power Supply

Attach the power supply and lid to the robot. The USB mini cable also doubles up as a power supply and attaches to your computer. Now you can upload the behavioral code into the Arduino.

Step 20: Attatch Pens

To give the robot legs that draw, insert the pen into the cavity. Then once inside simply twist the ‘nut case’ in a clockwise rotation. This will pull the wedge down forcing it into the pen and the servo at the same time, creating a solid unit.

Step 21: EXPLORE & DRAW!

Be the First to Share


    • Backyard Contest

      Backyard Contest
    • Silly Hats Speed Challenge

      Silly Hats Speed Challenge
    • Arduino Contest 2020

      Arduino Contest 2020

    6 Discussions


    2 years ago

    well done Tom!


    Reply 2 years ago

    Thanks dude!

    Donald Bell
    Donald Bell

    2 years ago

    I love art bots! This is such a fresh take. Beautiful work in the illustrations too! What type of pens were used in that video demo?


    Reply 2 years ago

    Thank you for the kind words! The pens were Edding 1255 calligraphy pen 5.0 :)


    2 years ago

    That's a really neat setup :)


    Reply 2 years ago

    Thank You!