Hosted by
SourceForge.net Logo
Build process Hardware Firmware Host software Images Mailing list Talks Licenses Links

The LED Toy is a matchbox-sized electronic circuit, which uses motion to produce 2D images with a single line of flashing LEDs. The design is based on a PIC microcontroller. Program (firmware) and images can be updated over an RS-232C port from a PC.

This project aims to provide all the information necessary for building such a device. This includes a detailed description of the production process, using readily available equipment. This description also serves as a reference for unrelated and independent development work, illustrating that the use of modern components is easy and cost-effective.

We focus particularly on resources available in Argentina, list sources for tools, components, and other material needed, and try to work with local companies or individuals willing to provide kits for hobbyists or even selling completely built devices.

We hope that this project will be useful not only for the entertainment value of owning such a LED Toy, but will also enable hobbyists, small companies, and educational institutions to experience that efficient use of modern electronics is no more difficult than that of antiquated techniques, and to apply this knowledge.

The history of how this project came into being and other background information can be found here.

 Build process


Modern electronic circuits use tiny components, which are optimized for automated assembly. Manually building circuits using such components is often considered difficult or even impossible. We describe a complete build process, illustrating how this can be accomplished with tools and material easily available to hobbyists, small companies, and educational institutions.

In Argentina, low-budget microcontroller designs tend to use obsolete technology, because of the perceived difficulty and cost of using modern alternatives. One main goal of this project is to give step-by-step instructions for overcoming the imaginary obstacles, and to help to coordinate assistance for the few real difficulties.

In particular, we document:

  • Making a printed circuit board (PCB) suitable for state-of-the-art components, with household means
  • Soldering surface-mounted devices (SMD), including a chip in an SSOP package (0.65mm pin pitch), without special tools
  • Building a small case for the circuit
  • Where and how to obtain the tools and material needed for this project in Argentina

The following documents are available:

  • The description of the build process (Postscript)
  • Which tools you need, why, and where to buy them (HTML)
  • Component cost, where and how to buy them (HTML)

Note: Soon, it will be useful if someone could translate this material to Spanish, but please don't start yet, as there are still major changes happening.


The hardware comprises the board in the LED Toy, an RS-232C interface circuit, and an adapter for the PICSTART Plus programmer. The electronics are designed with gschem from the gEDA project and PCB. There are also some mechanical drawings, done with Xfig.

The hardware is constantly under development. Please be sure to read the BUGS file included in the distribution.

The current version of the hardware design is ledtoy-hw-4 (29 kB), released 29-JAN-2006.

Changes since the previous version:

  • lt24.schem: the LEDs were the wrong way around
  • changed R15 (button series) from 10k to 1k, to reduce effect of weak pull-up
  • PARTS: changed name XP0111500LCT to more official XP01115
  • PARTS: added package codes for transistors and (non-LED) diode
  • lt24.schem, lt24rs.schem: added boxes around components inside the transistor arrays
  • Makefile: "make a" now prints the assembly, magnified by a factor of 5
  • pcbprint: new helper script to handle printing tasks

Older versions can be found here.


The firmware is the program that runs on the LED Toy. It is written in PIC assembler and translated using the GNU PIC Utilities.

The current version of the firmware is ledtoy-fw-10 (30 kB), released 31-JAN-2006.

Changes since the previous version:

  • lt24merge.pl: usage now contains detailed syntax description
  • lt24merge.pl: usage confused $ARGV[0] with $0
  • lt24merge.pl: added option -A to produce assembler output for an image file
  • pgm.asm, Makefile: build default image on the fly instead of using a hard-coded version

Older versions can be found here.

 Host software


The host software allows the interactive generation of images, sequences, and the composition of a downloadable binary containing them plus the firmware. For now, all this is developed for Linux.

The current version of the host software is ledtoy-sw- ( kB), released .

Changes since the previous version:

Older versions can be found here.


Drawing new images is very easy. Here are a few considerations for making and for contributing new images.

The current version of the image collection is ledtoy-img-1 (4 kB), released 27-DEC-2005.
You can also view these images online.

Changes since the previous version:

  • "make install" failed to do anything useful
  • love/heart.xbm, love/heartfull.xbm: made the top arcs rounder
  • signs/question.xbm: rounded the top
  • religion/angel.xbm: fattened the halo
  • gallery.sh: script to produce a HTML-based gallery (see README for details)

Older versions can be found here.

 Mailing list
General discussion of the LED Toy and issues related to the project takes place on the ledtoy mailing list. Also announcements of new versions are posted to this list.
The mailing list is archived at http://sourceforge.net/mailarchive/forum.php?forum=ledtoy-general

  • "The LED Toy - Building Modern Hardware With Modest Means", FISL 7.0, April 2006
    (Postscript: gziped | Source)
In general, we use the GNU General Public License (GPL) for all material related to this project. The project contains elements that may not easily be considered "code", such as schematics, the PCB layout, and images. However, the spirit of the GPL should also be applicable to these items. As a consequence, they are licensed under the GPL, with an additional explanation of how to apply the terminology of the GPL. Such an explanation is an integral party of the respective license. Please see the individual packages for the exact licensing terms.

For further discussion of hardware licenses, please refer to The License Zone of the Open Collector project.

There is also an older article where Richard Stallman expresses some thoughs on the issue: Richard Stallman -- On "Free Hardware".

Coming soon.

Last update:    Werner Almesberger