Mini-Controller Protocol

Mini-Controller Protocol

The Mini-Controller interface is via a USB port. The MC implements a standard Communications Device Class (CDC) and under Windows will appear as an ordinary COM port. Packets of RGB data are sent down the COM port using a simple framing protocol based on the ENTTEC PRO DMX PROTOCOL. The RGB frames use a DMX like format.

Data Frame format:


<BOF> = 0x7e;
<ID>  = 0x06;
<LEN> = 16-bit length of DMX field, LSB first.
<DMX> = <start-code> [<RGB>]..
          <start-code> = 0;
          <RGB> = 3 byte RGB value for each light on the string
<EOF> = 0xe7;

The MC will take the 24-bit RGB data, do a gamma correction (2.0) and 36-bit conversion on it, power-limit it to about 25ma, and send it to the LEDs.

Reading config data

You can also send a special command packet to read back info about the attached Mini-Controller. To do this, send a request frame with ID=240, and LEN=0, with no DMX section.

You will get a reply frame back in the same format but with ID=241, and some LEN value followed by that many data bytes.

The data reply bytes have a number of fields, the important ones are:

Index   Description
  0-1    "3W"   (signature bytes, always "3W")
  2-5    model-name, "TLMC" for MC-v1 (standard),  "TLM2" for MC-v2 (deluxe).
  8      if MC-v1, this is number of lights set by user
  8-9    if MC-v2, then (byte#8 << 8) + (byte#9) forms 16-bit number of lights set by user