- USB connection to PC (bus powered)
- 3 volume controls (2 channels + master, should be extensible though)
- LCD display for channel selection display
- Push buttons for channel selection and mute
- LED bars to display per-channel signal levels
GitHub under MIT license.
|Message||Tech details||Bits (octets) on wire||Sender|
|channel name||channel (1/2) + name (max 63 chars)||0CLLLLLL followed by ASCII string (L = length)||host|
|signal level||3 × 4 bits (2 bytes)||1000AAAA BBBBCCCC||host|
|volume change||channel (1/2/M) + level (10 bits)||0000CCLL LLLLLLLL||device|
|mute||channel (1/2/M) + mute (on/off)||01000CCM||device|
|channel change||channel (1/2)||1000000C||device|
Most of the time, the only messages sent to the device are signal level updates, which are 16 bits long, so one can achieve 7.2 kHz updates even with a 115,200 bps serial line.