- 16 obsługiwanych kanałów MIDI,
- 8 obsługiwanych kanałów PWM,
- Obsługiwane komunikaty MIDI: Note On, Note Off,
- Rozdzielczość kanałów PWM: 7 bitów
- Wydajność prądowa kanałów PWM: do 10 A (zależne od zastosowanego radiatora),
- Napięcie zasilania: 7,5…12 VDC, pobierany prąd 8 mA.
Zadaniem prezentowanego urządzenia MidiLights jest odtwarzanie efektów wizualnych towarzyszących nagraniu muzycznemu zapisanych na jednej ze ścieżek MIDI. Zanim jednak przejdę do opisu urządzenia, kilka słów komentarza należy się samemu interfejsowi MIDI. Interfejs ten jest szeregowym interfejsem komunikacyjnym pracującym z szybkością 31250 (±1%) bits/s, w którym dane przesyłane są w paczkach po 8 bitów, z jednym bitem startu i jednym bitem stopu, bez bitów kontroli parzystości. Układ wejściowy interfejsu MIDI wykonuje się zwykle przy użyciu szybkiego transoptora (6N138), który zamienia prąd w linii (ok. 5 mA) na przebiegi napięciowe, zaś interfejs wyjściowy z wykorzystaniem pary rezystorów ograniczających prąd diody LED w urządzeniu odbiorczym.
W standardzie MIDI dane przesyłane są grupowo w formie tzw. komunikatów (Messages), przy czym wprowadzono bardzo prosty sposób na odróżnienie bajtów poleceń sterujących (Status Byte) od bajtów danych (Data Byte): bajty poleceń mają ustawiony najstarszy bit (0xFF...0x80) a bajty danych najstarszy bit mają wyzerowany (0x7F...0x00). Zwykle informacje przesyłane są w kolejności: bajt polecenia i po nim jeden lub dwa bajty danych (w zależności od rodzaju polecenia). Polecenia wysyłane są tylko przy zmianie danego elementu sterującego. Bajt polecenia określa jedną ze standardowo zdefiniowanych funkcji, którą instrument ma wykonać (4 najstarsze bity), np. Note On/Off (włącz/wyłącz nutę), Control Change (zmień parametr urządzenia), Program Change (zmień rodzaj brzmienia) oraz numer kanału MIDI, na którym informacja ma być odebrana (pozostałe 4 bity określające jeden z 16 kanałów MIDI).
Dla porządku należy wspomnieć o możliwości ograniczenia transferu danych poprzez usunięcie redundancji, z której korzysta metoda Running Status. Polega na wysłaniu jednego bajta polecenia i wielu bajtów danych (bez każdorazowego ponawiania bajta polecenia) w przypadku przesyłania tego samego rodzaju sygnałów sterujących jeden za drugim, np. sygnały wywołane zmianą jednego i tego samego regulatora. Przy projektowaniu programu obsługi naszego urządzenia metoda ta nie została zaimplementowana.
Co ciekawe, MIDI, choć wymyślone w latach 80., jest na tyle uniwersalne, że z powodzeniem wykorzystują je najnowsze urządzenia estradowe. W praktyce prawie każde urządzenie estradowe korzysta z dobrodziejstw tego medium transmisyjnego, zaś jednym z powodów użycia technologii MIDI jest szeroka dostępność i uniwersalność takich sterowników.