From Data to Art: Building a Drawing Machine Prototype with a Micro:bit and Automata Tinkering Kit
Updated: Apr 8
This experiment emerged as I was co-facilitating an automata tinkering workshop with Cabaret Mechanical Theatre and builds on on the automata tinkering kit that all workshop participants receive.
I'd been thinking a lot about "drawing machines" at this point in time and drew inspiration from a few sources such as:
Representing garden data through lanterns - Luminous Science
I wanted to make some sort of drawing machine with the automata tinkering kit that could represent data from the environment. Using the micro:bit was a natural next step as I could use the micro:bit to program motors which would move the pen, and move the paper. And the micro:bit has plenty of sensors built in that I could pull data from.
I used cardboard boxes to create a base for the drawing machine. The linkage mechanism sat on top of one box, and the paper sat on top of the other. It took some tinkering to figure out what combination of pegboard automata tinkering pieces would create the best marker-moving mechanism. I was looking for something that had a nice range of motion and allowed me to place the marker in different spots. After I found a mechanism that worked, I added a positional servo motor to the back side of the pegboard to turn the crank. I also added a continuous servo motor to the back side of the platform that the drawing paper sits on.
Here's what it looked like– In this video I'm showing the sound-responsive machine. When a loud noise is sensed by the micro:bit, it moves the pen. When it's quiet, the pen moves back to the original position.
In this drawing, each spike coming out from the center represents a time when a loud noise was sensed.
This video shows a tilt-responsive program. When I tilt the micro:bit one direction, the pen moves out. When I tilt the micro:bit in another direction, the pen moves back in.
This screenshot shows all of the code I used to create these programs on the micro:bit using the makecode editor.