How to: LED-Flitzer (english)

(Diesen Artikel gibt es auch in deutsch)

LED-Flitzer (3)
The LED-Flitzer is a further development of the Dance Messenger that can be found at
The LED-Flitzer is like the Dance Messenger a persistence of view (POV) toy.
What is it good for? Use it to show your messages to others when you dance, run. Or mount it on the wheels of your bike.

How does it work:

Led-Flitzer POV PCB
A string of 8 LEDs is controlled via a AVR microcontroller. By switching them in a certain way, it is possible to create different kind of forms. This firmware is limited to capital letters. But you can add numbers and figures if you want.

Improvements to the Dance Messenger

There are several improvements in comparison to the design from

  • USB connectorUSB-interface for easy download of new text strings (no ISP programming necessary for changing the LED texts). The text is then stored nonvolatile in the EEPROM.
  • MMA7260Q Accelerometera three axis acceleration sensor senses the movement of LED-Flitzer, so the LEDs were only turned on, if a moving was detected
  • voltage regulator added
  • polarity protection via diode


Schematic and Layout

You can download the schematic and layout in the download section at the bottom of this page. You’ll need the Eagle schematic/layout program from

AVR Firmware – Sourcecode

The software for the AVR microcontroller is also available in the download section on this page. It is written in C in the AVR Studio/WinAVR.
Software-Settings: The code is programmed for an ATmega8 running at 1MHz. The UART baudrate is 4800 baud, due to the lowest error vs. speed value. The UART is used to get new texts strings.

LED Flitzer Proga – Text download programm:

LED-Flitzer Text Download Tool
I have progammed a small tool for download new text strings into the LED-Flitzer. It’s written in C#. Since you can also download the sources, you can also port it from windows to other OSs, like Linux or MAC OS.
This tool uses the virtual serial port, to communicate with the pov device.
Next to this tool (download link at the bottom of this page) you need the latest .net-runtime and the USB-drivers from FTDI:



Known issues:

Voltage is a certain problem when using batteries. The voltage level decreases over time. The voltage regulator creates 3.3V when more then 4.5V are present at the input. If the batterie voltage drops below that, the voltage regulator will lower the system voltage under 3.3V. In normal use, that is no problem, only the LED brightness will decrease a little bit. But when using the USB interface that might will cause communication problems. The text, that will be stored in the EEPROM might will differ form those, you programmed in. So just take some new batteries, and it should work fine again.

Never compile the firmware in highest optimization (OS). The code will then behave in an unpredictable way. Instead chose O1 or O2.