When you open a camera’s shutter, it exposes the sensor to light. Not all of this light, however, has to be present at one time — which is why skilled photographers can produce images of streaking car lights, stars, and artistic light manipulations called light painting or light graffiti.
I’ve experimented with this concept in the past, and after seeing Matthew Rayfield’s web app that can make a 3D printer produce dot matrix images, I decided to try it out. Unlike his device, however, I utilized a larger CNC router, and instead of a pen or other traditional drawing element, I used a programmable LED as the “pen,” with a diffuser made out of “clear” PLA.
A button on the bottom of the new 3D-printed fixture provides input when it hits the CNC bed in the same way that a marker would apply ink. An Arduino Nano is for control to produce green, red, blue, yellow, or random LED colors. The user can select between these five options with a DIP switch, which is wired to ground, and uses pullup inputs in order to avoid the need for resistors.
Code for the project, along with 3D print files for the fixture are found on GitHub, and the build process is laid out in the video below. If you want to try this yourself, you’ll also need to grab files for the magnetic ring “Clamp-MagnetsDC0.stl”, so it can affix to the router.