The type of MSC (Midi Show Control) commands Eos, Ion, and Element can take or send are very specific and preprogrammed into the software. The literal information is transmitted via a special language called a "hexadecimal string." In particular, Midi Show Control is a subset of the MIDI standard known as "SysEx," or System Exclusive, which is typically shown in a hexadecimal format. Most of the time users interface with a software program that can translate simple information, like "Go Cue#" and "Macro#", into this hexadecimal string. On very rare occasions, someone may ask you "What is the hex string I'm supposed to send to the console?" This article attempts to break down the hexadecimal string the console looks for to trigger these commands.
This is a basic hexadecimal string the console will read:
F0 7F 01 02 01 01 31 00 31 F7
This is what that same string looks like, but with the parts you can change to identify specific commands:
F0 7F [device_ID] 02 01 [command] [command_number] F7
So what do these mean?
The console will respond to a range of IDs between 0-126, and ID 127 (which is an "All Call"). It will transmit to IDs between 0-126. Since this is only one digit of hexadecimal (which is one set of two numbers), the numbers are not always straightforward. An ID of "1" for example is "01." An ID of "26" is "1A." Hexadecimal is wacky, so just use this calculator to determine which number should go in this portion of the string:
The device_ID can be set on the Eos in Browser > Setup > Show Settings > Show Control. This is applicable for both transmit and receive of MSC.
The command is established by the MSC standard, and Eos can trigger one of five commands:
Resume Paused Cue
Set Submaster, Master Playback Faders, or Grandmaster
Command_number refers to the number of the macro, fader, or cue you're firing.
Macros have the simplest string to deal with. You can only fire macros 1-127, and this is represented by one hexadecimal digit. Use the calculator above to figure out the number.
Macro number example:
On Eos: Macro 2
In Hexadecimal: 02
On Eos: Macro 57
In Hexadecimal: 39
Three simple rules:
Remember, this is all in hexadecimal, so use the calculator above to figure out what the number should be for both the fader and the level.
Set submaster examples:
On Eos: Submaster 3 @ 50%
In Hexadecimal: 03 00 32 00
On Eos: Submaster 10 @ 75%
In Hexadecimal: 0A 00 4B 00
The master playback fader "up" is represented by the number 128, and the master playback fader "down" is represented by the number 129. The grandmaster is represented by the number 510. Since MSC is 7-bit hexadecimal, any number above 127 cannot be expressed as true hexadecimal in the string. For this reason, master playback faders and grandmaster must be represented in another way.
Four simple rules:
Set Master Playback Faders and Grandmaster examples:
On Eos: Master Playback Up Fader @ 75%
In Hexadecimal: 00 01 4B 00
On Eos: Master Playback Down Fader @ 50%
In Hexadecimal: 01 01 32 00
On Eos: Grandmaster @ 75%
In Hexadecimal: 7E 03 4B 00
In terms of cues, Eos can potentially deal with all the available cues, so this gets a bit tricky since hexadecimal doesn't deal with decimals. The numbering scheme then is not hexadecimal.
This can be represented by:
On Eos: Cue xy/ab.c
In Hexadecimal: 3a 3b 2E 3c 00 3x 3y
Cue number examples:
On Eos: Cue 1/54
In Hexadecimal: 35 34 00 31
On Eos: Cue 4/101
In Hexadecimal: 31 30 31 00 34
On Eos: Cue 10/55.6
In Hexadecimal: 35 35 2E 36 00 31 30
* The intention of this article is to distill the information down to only relevant numbers in the command string as it refers to Eos, Ion, and Element. This article only scratches the surface for explaining all of the elements of an MSC command. For more detailed information about MSC in general, refer to the article http://web.tiscalinet.it/giordy/midi-tech/showctl.htm.