Skip to content
All prices US$ - All orders receive free delivery, worldwide - Click here to learn more
All prices US$ - All orders receive free delivery, worldwide - Touch here to learn more
This light painting machine puts a new spin on the old geometric chuck

This light painting machine puts a new spin on the old geometric chuck

from arduino.cc

Light painting is a fun way to create digital images by using just a few points of light to “draw” across a camera with a long exposure time. This gives the illusion of a virtual streamer being dragged on the canvas and can produce amazing photos.

Ted Kinsman wanted to build a light painting machine, which mimics the geometric chucks from the 1860s that used several spinning platters on a lathe that rotated at different speeds to carve ornate patterns into wood. His version has a series of three platters all stacked on top of each other and are driven by three stepper motors.



A single Arduino Uno runs the program for the geometric light painting machine, and it is responsible for controlling the stepper motors through its three attached TB6660 motor driver modules. The code works by first initializing each stepper as an AccelStepper object and then setting its max speed.

The magic comes from this next part, and each motor gets assigned a constant speed value that determines what kind of pattern will be drawn. And finally, the motors are run at these speeds until the machine is stopped. The vast number of combinations from these variables means that even a small change to the motors’ speeds or where the LED is positioned on the top platter can generate wildly different results.

You can read more about Kinsman’s geometric light painting machine in his article on PetaPixel.

Finally - to keep up to date with interesting news, offers and new products - interact with us on facebook, instagram, and twitter.

Previous article Ken Shirriff Unlocks the Secret of an Unusual IBM SMS Board — Reverse Engineering an Early Modem

Leave a comment

Comments must be approved before appearing

* Required fields