Home Semitone Lighting
Semitone Lighting Controllers | Print |  E-mail


The aim of this pro­ject is the devel­op­ment of com­fort­able stan­dalone dig­ital lighting con­trollers (“dim­mers”) for home use, which are inex­pen­sive, easy to build, yet very fea­ture-rich and highly con­fig­urable.
All devel­op­ment details, such as the micro­con­troller oper­ating sys­tems (firmware), schematics, board lay­outs, and doc­u­men­ta­tion, are freely avail­able under the GNU Gen­eral Public License (GPL), ver­sion 2.
This pro­ject was founded on May 1, 2003.

Con­troller models

Until today, two lighting con­troller models have evolved from this pro­ject:

  • Semi­tone Crystal: The first con­troller devel­oped for this pro­ject. A simple one-channel fading con­troller with IR remote input, UART, push-button con­nector, 3 LED indi­ca­tors. 50 Hz/230V mains only.
  • Semi­tone Dia­mond: The flag­ship of the Semi­tone pro­ject. An advanced, very fea­ture-rich 20 channel fading con­troller with char­acter LCD, IR remote input, DMX512 inter­face, but­tons, rotary encoder, and more. Sup­ports both 50 Hz/230V and 60 Hz/115V mains.

Apart from the offi­cial releases there are SVN devel­op­ment ver­sions avail­able. Espe­cially for the Dia­mond model these ver­sions have many fea­ture enhance­ments as well as changed hard­ware require­ments. Please check out the EngDR.

All Semi­tone dimmer models are con­trolled by Atmel AVR® RISC micro­con­trollers.


Semi­tone Crystal Semi­tone Dia­mond
MCU AT90S2313
Mains fre­quency 50 Hz 50 Hz
60 Hz
Chan­nels 1 20
Max. output 300 W (resis­tive load only!) (depends on output stage)
TRIAC: 300 W (resis­tive load only!)
FET/IGBT: 300 W (resis­tive load only!)
User inter­face (input) RC5 capable IR remote con­trol
standby push button
RC5/RC6 capable IR remote con­trol
push but­tons
rotary encoder
User inter­face (output) 3 LEDs 20×2 char­acter LCD
20×4 char­acter LCD *
UART pro­to­cols “R1” (ded­i­cated) USITT DMX512 (250 kb/s or 9600 kb/s)
SLCPv0 (ded­i­cated; still to be defined)
Radio clock DCF77 *

* Fea­ture cur­rently only avail­able in devel­op­ment ver­sion. Check out the Semi­tone Dia­mond Trunk.

Required parts

One impor­tant design goal was to develop a system with min­imum and inex­pen­sive hard­ware that is easy to recreate.

The core of each lighting con­troller is a micro­con­troller which is pro­grammed with this pro­ject's firmware. A micro­con­troller is a micro­pro­cessor with ROM, RAM and many other units inte­grated in a single chip.

The Atmel AVR® is a very pow­erful, pop­ular, yet inex­pen­sive micro­con­troller series with an 8 bit RISC core, using the Har­vard archi­tec­ture (pro­gram memory sep­a­rated from data memory). You can find more infor­ma­tion at the AVR® web­site. All micro­con­troller models in this pro­ject are avail­able in DIL pack­ages and thus easy to solder with stan­dard equip­ment.

The Semi­tone Crystal uses the ATtiny2313 (or the obso­lete model AT90S2313), pro­grammed in assem­bler. This con­troller has 2 kB of flash memory, which is almost com­pletely in use. So, unfor­tu­nately, there is no way of adding more fea­tures to this model.

The Semi­tone Dia­mond uses the ATmega644, pro­grammed in C (using avr-gcc). This con­troller model has 64 kB of flash memory, which is enough for the cur­rent firmware ver­sion, and even for many more fea­tures.
Note: Sup­port of the ATmega32 was dropped with ver­sion 2.0.0 of the Dia­mond RTOS.

Pre-pro­grammed micro­con­trollers can be ordered from Engbedded (see pro­ducts list). World-wide ship­ping is no problem.

The rest of each device is few ana­logue stuff and – depending on the model – some more ICs.

Hard­ware expenses

The price for the Semi­tone Dia­mond is around 20 € for the main­board parts, plus the 20 x 2 HD44780 char­acter dis­play (which varies from 4 € to 40 €, greatly depending on the size, back­light con­fig­u­ra­tion and color), plus the output driver stages (depending on the kind of output you want to drive with each channel – e.g., cal­cu­late 5 € per TRIAC channel), plus but­tons, wheel and case (com­pletely depends on your wishes and expec­ta­tions).

The price for the parts of the Semi­tone Crystal is around 12 € for the main­board, including LEDs and output driver stage.


You can obtain all pack­ages released by this pro­ject from our Source­Forge Down­load Page.

Sup­porting this pro­ject

This is a free non-profit pro­ject. If you like this pro­ject and want to donate, then I'd be more than happy to add your name to the list of our gen­erous donors.

To donate money, please click one of the but­tons at the right. Many thanks in the name of all users!