System exclusive (sysex) explained – Kenton Control Freak all versions User Manual
Page 44
System Exclusive (SysEx) Explained
SysEx messages contain data that is specific to one manufacturer and usually to one individual
product. Each manufacturer wanting to use SysEx messages has been assigned a Manufacturer ID
number.This is always the first byte after the begin SysEx byte [F0H], as in the example below:
F0H
Manufacturer ID
data
data
data
F7H
Begin SysEx
End SysEx
In some cases, the Manufacturer ID number may be three bytes instead of one. If the first byte after [F0] is
00H, then it is a three byte ID number – the two bytes following the 00H define the manufacturer. For
example Yamaha is one byte: 43H, whereas Kenton Electronics is three bytes: 00H, 20H, 13H.
Apart from ‘Begin SysEx’ [F0H], ID number and ‘End SysEx’ [F7H] the format of the data in the rest of the
message is entirely at the manufacturers discretion as long as they all have a zero in the most significant bit,
i.e. all values must be between 0 and 127. Manufacturers are free to use the data in any way they see fit.The
string below can be seen as a typical example:
F0H
Manufacturer ID
SysEx device no.
Command
Parameter
Data
F7H
Begin SysEx
XX
XX
XX
XX
XX
End SysEx
All SysEx bytes are usually represented in hex (hexadecimal). Don’t worry because the Freak shows both a
decimal and a hexadecimal value in the display when you are in edit mode.The hexadecimal value has h after
it, eg 0Eh is decimal 14.
Three SysEx ID numbers have been set aside for special purposes:
7DH for non-commercial use. e.g. schools, research etc. where the product will not be released to the public.
7EH for Non Real-Time use.
7FH for Real Time use. e.g. MIDI machine control (MMC) MIDI show control (MSC)
For you to be able to program SysEx strings into the Freak to control any piece of equipment, you will
definitely need the appropriate product literature for that equipment.This can often be found at the back of
the product manual, or may be available either on request from the manufacturer or from their website. From
then on it depends on the individual product literature how easy or difficult they have made it to program
the Freak. In the ideal case, manufacturers give the whole string you need to enter, this can easily be entered
into the Freak just as it is. Unfortunately, some manufacurers make it more difficult than it needs to be by
splitting the information up so you have to collate the stuff you need from various parts of the product
manual.
A typical example of a SysEx string is that which the Kenton Pro-2000 MIDI-CV converter uses to change the
speed of LFO1:
F0H
00H
20H
13H
02H
20H
01H
05H
data
data
F7H
...where the two data bytes in this case are actually an 8 bit value (0-255) split into two bytes of 4 bits each
because this is the way the Pro-2000 wants it.The two bytes are entered on the Freak by entering Sx Data
0Lh/0Hh once only. In other words setting Sx Data 0Lh/0Hh automatically sends two bytes of data, the first
containing the low four bits and the other the high.The Pro-2000 happens to want the bytes sent in this
order.There is another similar function available on the Freak called Sx Data 0Hh/0Lh which sends the two
bytes in the revcrse order, as some other manufacturers need them this way round instead.
SYSEX EXPLAINED
CONTROL FREAK
40