TC-Helicon VoiceLive Sysex Manual User Manual
Voicelive midi system exclusive version 1.2, Hexadecimal notation, Voicelive sysex message format
Page 1
TC-Helicon Vocal Technologies
www.tc-helicon.com
TC-IVL
VoiceLive MIDI System Exclusive Version 1.2
Hexadecimal Notation
Many values in this document are presented in hexadecimal notation.
Hexadecimal numbers will be prefixed with “0x”.
Example:
Hexadecimal 0x123 = Decimal 291
Decimal 123 = Hexadecimal 0x7B
VoiceLive SYSEX message format:
0xF0
MIDI System exclusive message start
0x00
3 byte manufactors ID for TC-Helicon
0x01
...
0x38
...
<Device ID>
System exclusive device ID (user parameter)
0x4E
VoiceLive model ID
<Message ID>
VoiceLive message type identifier
<Data>
Start of message data
...
Variable number of data bytes based on message type
0xF7
MIDI System exclusive message terminator
Data Packing (24-bit words to 4x7-bit bytes)
The idea of packing data is to take a 24-bit value (the normal width of
parameters in VoiceLive) and represent it as 4 bytes of 7 bits each.
This is done because SYSEX data can only be 7 bits in size. The first
three bytes hold (in sequence) bits 0-6, 7-13 and 14-20 of the 24-bit
value. The fourth byte hold bits 21-23 of the 24-bit value with zeros
in the remaining bits.
For example, If the value of a 24-bit parameter is 614 (0x266), it
would look like “0x66 0x04 0x00 0x00” in a SYSEX message.
Byte1 0x66 = binary X1100110 (abcdefg)
Byte2 0x04 = binary X0000100 (hijklmn)
Byte3 0x00 = binary X0000000 (opqrstu)
Byte4 0x00 = binary X0000000 (****vwx)
Final 24-Bit Value:
vwxopqrs tuhijklm nabcdefg
Total = 00000000 00000010 01100110
= 0x0 0x2 0x66 = 0x000266