Main Content

Built this primitive 2d pen plotter using two standard servos (plus one microservo for pen) and 3 drawer slides. Software is DrawingBotV3 to create gcode which is sent to Arduino Uno via Python script. Simple and draws crude prints but perfect for artwork. Uses polynomial functions for x and y to translate servo angles into linear positions.

Why build this plotter when you can buy a DIY plotter kit for $60 that prints very accurately? For two reasons: I want a printer that makes hand drawn looking prints though I am probably just rationalizing a bit. Two, it really teaches you the whole process from creation of jpeg, to Gcode, to serial communication, to Gcode interpretation, to line drawing algorithms, and a short intro to polynomials. What an education.

The still-life is a plot of a painting by Cathleen Rehfeld which I then painted with acrylics. Took just a few minutes to paint.


- (2) standard size servos, I used cheap analog servos at first but finally settled on TD8130MG digital servos (also cheap)
- 1 micro servo
- (3) drawer slides - mine slide out about 10cm but wish I had gone with longer ones. Use longer than you want the drawing area so that servos have some slack area.
- Arduino Uno
- Sensor shield for easily plugging in servos
- 6 volt regulated power supply to easily run servos
- various brackets and dodads for servo linkage
- a bamboo cutting board to mount the slides on”

Link to article