K8062 USB Protocol
The controller is a standard USB HID device. Data is sent by packets of 8 bytes. In the following tables, d0, d1, ... are DMX channel values and n is a number of consecutive channels whose value is 0.
The program needs to send the packets in sequence to transmit some DMX data on the DMX output of the interface. If all 512 channels are sent, it'll take about 25ms to send the whole DMX sequence.
Start of Data
4 | n+1 | d0 | d1 | d2 | d3 | d4 | d5 |
This packet signals the start of the DMX channels data. Counter start back at channel 1.
The second byte gives the number of starting channel at value "0" (unused or turned off) increased by one (the channel "0" which is used for sync). This act as a shortcut as many of the 512 channels are unused in the DMX universe.
Data
2 | d0 | d1 | d2 | d3 | d4 | d5 | d6 |
This packet sends the next 7 channels data. It can be repeated several times but you may NOT go over channel 512.
Single Data
3 | d0 | ?? | ?? | ?? | ?? | ?? | ?? |
This packet sends a single channel. It can be repeated several times and it has to be used for the last channels, when other commands would make more than 512 channel sent
Unused then Data
5 | n | d0 | d1 | d2 | d3 | d4 | d5 |
This packet instruct to leave n channel at "0" then set the next 6 channels. It works like the Start Data packet and allows to skip large unused channels ranges.