Light emitting diodes (LEDs) are the perfect electronic transducer.
They convert electric current into light with typically a 10%-30%
efficiency, and can respond in sub-microsecond time scales. Their
brightness and efficiency is why they are becoming the standard for
lighting applications. They’ve already taken over the flashlight and
portable application space, and as their price goes down, will likely
take over the residential light bulb application space as well.
However, if all we do with an LED is use it for steady, dull, boring
illumination, we are leaving so much of their performance on the
table. Instead, why not take advantage of their ability to quickly
respond to a changing current, and modulate their drive current to
turn your room into a responsive environment?
In this article, I’m going to show you how to make any LED dance
to the small randomly unstable air currents that make candles flicker.
The technique can be applied to turn ANY environmentally-sensed
input into an LED’s or light bulb’s brightness.
The usual 10 mA current levels recommended for LEDs just aren’t
bright enough for me, however. I want brighter. How bright, you ask?
As my buddy, Frank Schonig says, “A lot is good, more is better, and
too much is just right.” I’ll show you how to modulate a current
source right up to the limits of “too much.”
38 March 2016
Make Your LED Dance
Just Like a Candle
Looking to add some dynamic lighting to your room?
Then, modulate an LED to respond to the world
around it with this simple technique.
The Basic Architecture for this
There are lots of ways of turning a
sensor’s signal into an LED’s light output. In
this project, I chose to use an Arduino as the
go-between because I wanted a general
approach, and know I can add additional
scaling and adjustments to the sensor signal
using a little bit of code running in the
Arduino. As good as I am in analog circuit
design, I know I can get to the final
performance I want faster and easier with
the advantage of some digital signal
The architecture of the system I wanted
to implement — which I think is a good
template for many applications — is shown in
Figure 1. The start is the sensor which is
picking up a particular quality in the
environment and turning it into an electrical
feature: a current, voltage, or resistance.
The interface between the sensor and
the Arduino is the Analog Front End (AFE)
that turns the sensor response into a high
level voltage signal the Arduino’s