Lightpainting with a Bunch of LEDs

Radovan Semančík, January 2007
Colors: Blue-Red-Yellow

I usually try to experiment a lot while making photos. Some time ago I tried light painting technique. You can see the results in my gallery. I've found out that LEDs are very good light sources for light painting. They are easy to use, quite directional and have good performance.

After I did that first series of photographs, I've got an idea. It I could use several LEDs with different colors ... control them exactly in a way I like ... switching the colors during painting ... that can produce very interesting effect. Being a computer engineer, the idea materialized quite quicly. Almost every computer has a device that is ideal for controlling many kinds of things: parallel port. First I've tried to connect LEDs directly to data lines. But as parport data lines provide only some 15mA, that didn't work quite well. Well, that was where my practical knowledge of this hardware stuff got to it's limits (I'm a software engineed after all). I'm lucky that I have good friend Mamut who helped me out.

Mamut sketched a circuit that used photocouplers to separate parallel port signals from the "working" circuit for LEDs. He said that it is the safest way (I'm not very skilled with soldering small pieces of electronic circuits, maybe he meant that). I've modified the circuit to take power from USB. It can supply at least 500mA, which is enough for quite a lot of LEDs.


After a while of soldering, assembling the circuit, finding a problem, swearing, deconstructing it, assembling it again, trying to fit the resulting ugly thing into a box that was few milimeters smaller, using the force and a lot of duct tape, I've finally got the thing assembled.

The Thing The Thing

Now the fun beggins: software. I'm a Linux guy. I'm using it most of the time, it is a primary operating system on my notebook. And I'm still quite skilled in Perl. It took me just few moments to find that Device::ParallelPort module is exactly what I need. After few hours I've got small curses-based Perl application ready:


Everything other is just simple ligh painting. Get pretty woman, have her lie on a sheet of black fabric, put camera on tripod, set it to bulb mode, turn off all lights and shoot. You can get something like this: