TC-Helicon VoiceOne Sysex User Manual

Page 1
TC-IVL Ventures Inc.
TC-Helicon VoiceOne MIDI System Exclusive Control
Note: All numerical values will appear in HEXADECIMAL notation unless otherwise indicated:
0xF0 = F0h = F0 – The latter value is the expression of the hex numeral used.
Decimal equivalents will appear in brackets after their hex counterparts:
General message format:
F0 MIDI System exclusive message start 00 3 byte manufactors ID for TC-Helicon 01 ... 38 ... <Device ID> System exclusive device ID (user parameter) 4B VoiceOne model ID <Message ID> VoiceOne message type identifier (see table below) <Data> Data – depends on message type (see format description.
below) … … F7 MIDI System exclusive message terminator
Preset numbers
Preset numbers are represented in the SysEx messages as 2 bytes (14 bit value). The first byte is the 7 most significant bits and the second is the 7 least significant bits. The preset numbers are mapped as follows: 01 (1) to 64 (100) Factory bank 64 (101) to 96 (150) User bank
Preset number zero is the currently edited preset.
Examples:
Factory preset number 67(decimal) would be translated into bytes 00 (MSB) and 43 (LSB – 67 in decimal). User preset number 48 (decimal) would be translated into number 148 (decimal) = 1x128+20 and would thus be represented as bytes 01 (MSB) and 14 (LSB – 20 in decimal)
Message data format
The format of the data used/needed in the different SysEx messages depends on the type of message. Below are descriptions for each message type explaining data formatting.
Page 1
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 2
SysEx message type Identifier
VoiceOne Request Preset 45 VoiceOne Request Parameter 47 VoiceOne Request Shift Map 51 VoiceOne Preset Data 20 VoiceOne Parameter Data 22 VoiceOne Shift Map Data 31
VoiceOne Data Request messages
Preset Request - 45:
<Data> is 2 bytes representing the number of the preset requested. See above for description of preset number representation. The data transmitted by VoiceOne upon receiving this message will be formatted as a Preset Data message (see below for complete description)
Parameter Request -
<Data> is 2 bytes. The first byte defines the group to which the parameter belongs and the second byte identifies the parameter within the group. See below for a complete listing of parameters and grouping. The data transmitted by VoiceOne upon receiving this message will be formatted as a Param Data message (see below for complete description)
Shift Map Request -
<Data> is 1 byte. The value of this byte is ignored. The data transmitted by VoiceOne upon receiving this message will be formatted as a Shift Map Data message (see below for complete description)
47:
51:
VoiceOne Data messages
Preset Data - 20:
<Data> is 344 bytes organized as follows (in sequence):
2 bytes Preset number (see above) 20 bytes Preset name (as ASCII characters) 12 bytes Custom correction scale (in chromatic scale degrees) 1 byte Number of notes in custom scale 16 bytes (cs) Shift map (4x3 8-bit bytes packed – see below for description) 4 bytes (cs) Accidental attributes of custom scale (see below for description) 288 bytes (cs)9 24-bit values for each of the 8 FX groups (packed data – see below) 1 byte Checksum of the data marked cs (see below for description)
Packed data: The idea of packing the data is to take a 24-bit value (the normal width of
parameters in Voice One) and represent it in 4 bytes of 7 bits each. 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 as LSB’s with zeros in the remaining bits.
Shift map: The shift map is represented internally as 12 8-bit bytes (see VoiceOne
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 2
Page 3
manual for detailed description). For the purpose of storing and dumping, the 12 bytes are packed into 4 24-bit values each holding 3 bytes. When dumped/received these 24-bit values are packed according to the above mentioned scheme.
Accidental attributes: These 4 bytes (representing a 24-bit value packed) define the
display properties of the custom scale. Bits 0-11 (of the 24-bit value) define whether flats or sharps are used for every custom scale note. A bit value of zero selects flat and a bit value of one selects sharp. Bits 18-22 define what scale type the VoiceOne displays (MAJOR, MINOR, OTHER, CUSTOM or MIDI) when the custom scale is selected as current scale.
Checksum: The checksum is 1 byte holding the 7 least significant bits of the sum of
all bytes contributing to the checksum. In this case the contributing data is the data sections marked by cs in the table above.
Example: The byte values 1,2,3,…,126 would result in the following checksum. 1+2+3+…,+126 = 8001. To get the 7 least significant bits divide by 128 and then multiply the remainder by 128. In this example it would be 65.
Parameter data - 22:
<Data> is 4 bytes. The first two bytes identify the parameter as described above under Parameter Request. The last two bytes determine the value of the parameter represented as a 14 bit 2’s complement signed value. If a value exceeds the limits of the parameter the value will be limited. If the parameter changed belongs to the System Parameter Group (see below) and the parameter was changed by the message, the message ‘Kernel Par Changed’ will flash on the text line of VoiceOne.
Examples: The value 169 (decimal) = 1x128 + 41 would be represented as bytes 01 (MSB) and 29 (LSB) The value –43 ~ 16384-43 (decimal) = 16341 = 127*128+85 would be bytes 7F (MSB) and 55 (LSB)
Example – Turn the Resonance Bypass Off (light in the Resonance key illuminates).
F0 00 01 38 00 4B 22 07 08 00 00 F7 F0 = SysEx start. 00 = Byte 1 of 3 byte manufacturer’s ID for TC-Helicon. 01 = Byte 2 of 3 byte manufacturer’s ID for TC-Helicon. 38 = Byte 3 of 3 byte manufacturer’s ID for TC-Helicon. 00 = Sysex Device ID (defaolt value of 0). 4B = VoiceOne model ID. 22 = VoiceOne Message Type Identifier (Parameter Data Identifier) 07 = Parameter Group ID. 08 = Parameter Name ID. 00 = Parameter Data MSB (Most significant bit). 00 = Parameter Data LSB (Least signicant bit). Value, 0 decimal. F7 = SysEx message end. Sending this stream of bits will turn the Resonance effect on. This defeats the Resonance bypass. The light on the Resonance key will turn on.
Shift Map Data -
31:
Page 3
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 4
<Data> is 12 bytes. Each byte represents the shift mapping for the respective note in the chromatic scale. A value of 0 is equivalent to –24 semitones (down two octaves), 1A (26 in decimal) is equivalent to +2 semitones (up two semitones), 30 (48 in decimal) is equivalent to +24 semitones (up two octaves), and 36 (54 in decimal) is equivalent to N/C (no change). Consult the VoiceOne manual for a complete description of the Shift Map user parameter. If any entry in the shift map is beyond the limits the message will be ignored.
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 4
Page 5
Parameter Grouping and Listing
Group name Group ID
Correction (COR)0 Shifting (SHI)1 Inflection (INF)2 Vibrato (VIB)3 Spectral (SPE)4 Breath (BRE)5 Growl (GRO)6 Resonance (RES)7 System (SYS)8
(The following numbers are in Decimal notation)
Group, Parameter Name ID Min Max
COR, Scale 0 0 49 COR, Root 1 0 11 COR, Window 2 0 600 COR, Attack 3 0 100 COR, Amount 4 0 100 COR, Custom N/A COR, Bypass 8 0 1
SHI, Amount* 0 *Note1 *Note1 SHI, Mode* 1 0 8 SHI, Map N/A (see above) SHI, PureShift 3 0 1 SHI, Formnt 4 -50 50 SHI, Hybrid 5 0 101 SHI, Bypass 8 0 1
INF, Amount 0 0 100 INF, Style 1 0 11 INF, Retrig 2 0 1000 INF, Length 3 0 2000 INF, PitRnd 4 0 100 INF, TimRnd 5 0 100 INF, TimDly 6 0 600 INF, TimBuf 7 0 600 INF, Bypass 8 0 1
VIB, Amount 0 0 100 VIB, Style 1 0 35 VIB, OnsTim 2 0 2000 VIB, OnsRnd 3 0 100 VIB, PerTim 4 100 250 VIB, PerRnd 5 0 75 VIB, Bypass 8 0 1
SPE, Amount 0 0 100 SPE, Style 1 0 27 SPE, Bypass 8 0 1
BRE, Amount 0 0 100 BRE, Style 1 0 28
Page 5
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 6
BRE, Harm’X 2 0 100 BRE, Bypass 8 0 1
GRO, Amount 0 0 100 GRO, Style 1 0 19 GRO, Bypass 8 0 1
RES, Amount 0 0 100 RES, Style 1 0 21 RES, Tract 2 50 200 RES, Bypass 8 0 1
SYS, Input 0 0 3 SYS, Output 1 0 1 SYS, Clock 2 0 2 SYS, LCut Filt 3 0 2 SYS, LCut Thrsh 4 36 90 SYS, Dither 5 0 3 SYS, StatusBits 6 0 1 SYS, Dig InGain 7 -100 6 SYS, Input Rng 8 0 1 SYS, Output Rng 9 0 3 SYS, Latency 10 0 2 SYS, BypassMode 11 0 1 SYS, MIDI Chan 12 0 16 SYS, MIDIPchShf 13 0 16 SYS, MIDIPchCor 14 1 16 SYS, MIDIPchOut 15 0 16 SYS, MIDI PrgCh 16 0 1 SYS, Bend Range 17 0 2400 SYS, BreathCtrl 18 0 1 SYS, GrowlCtrl 19 0 1 SYS, VibCtrl 20 0 1 SYS, Bulk Dump N/A (see above) SYS, VMParmLock 22 0 1 SYS, Footswitch 23 0 2 SYS, SysEx ID 24 0 127 SYS, Prg Bank 25 0 2 SYS, Tuner Ref 26 400 480 SYS, ViewAngle N/A
*Note1: When shift mode is chromatic the max/min is +/- 2400 cents. Otherwise max/min is +/­twice the number of scale degrees in the selected scale.
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 6
Page 7
TC-Helicon Vocal Technologies
www.tc-helicon.com
Page 7
Loading...