My Programmable LED in The Best of instructables

Today I received my copy of The Best of instructables, Volume 1. It’s a compilation of the best DIY projects found on the instructables site. Full of fantastic things, that you can do yourself. Flipping through the pages makes you want to go to your workbench and try them out.

And on page 111, tataaa, the Programmable LED.

I have to admit, I am a bit proud. Thanks instructables and Make for choosing my project.

Programmable LED gallery

Back in March I published my first instructable called Programmable LED. The idea was simple, have a device that is able to record and play back light sequences. Light sequences are recorded with an LDR, a light dependent resistor and played back with an LED.

After a while some users at Instructables began to rebuild, modify and improve the Programmable LED. Ok, that’s what Instructables is all about, to share and to distribute, but it was astonishing to me, how it worked.

This is a gallery of these derived and improved versions. Kudos to all the builders.


Continue reading

Synchronizing Fireflies

I was always fascinated by the emergence of patterns. One I like most is the synchronization of hundreds or thousands of fireflies. First they flash randomly but after some time and influencing each other, they flash in sync.

The rule behind this is very simple. All fireflies have nearly the same frequency for their flashing, but their phase is shifted. If a firefly receives a flash of a neighbour firefly, it flashes slightly earlier.

This circuit simulates fireflies with small microcontrollers.

A single Firefly

The board consists of 25 fireflies. Every single firefly is self contained, there is no over-all controller. A single firefly consists of:

  • ATtiny13 microcontroller, 1k SRAM, 64 bytes RAM
  • Light Dependant Resistor (LDR)
  • LED
  • 2 resistors


The circuit is the same as for the Programmable LED.

The complete Board

Assembling 25 fireflies on a prototype board is easy. Harder is to get the right distance between all fireflies. It has to be close enough to let one firefly influence another, but not the whole group.

The LEDs I used emit the light mostly straight up. So a kind of reflector is needed. I used a piece of paper which is located 5 mm above the LEDs. For the next version I would take LEDs with a wider light emitting angle and use a kind of diffuser, as proposed by Tod for his Smart LED Prototypes.


Here is a video. It is a bit dark as my camera is not very suitable for this.


Programmable LED

Inspired by various LED Throwies, blinking LEDs and similar instructables I wanted to do my version of an LED controlled by a microcontroller.

The idea is to make the LED blinking sequence reprogrammable. This reprogramming can be done with light and shadow, e.g. you could use your flashlight.

How is it done?

It consists of an LDR, an LED and a tiny microcontroller. I used a ATtiny13v which is able to run with 1.8V. That makes it easy to power it with smallest batteries or even fruits.



All components can be easily used on a breadboard. Be aware, that you will need a separate programmer or an ISP adapter to program it.

The final version

The final version is powered by a CR2032 cell. It should have enough power for at least two weeks, depending on the light sequence it plays.

I have done a step-by-step instructable here.


Here are some responses to the instructable