MSC Midi Show Control

Navigation:  Pandoras Box > External Control (DMX,Midi,...) > Input Protocols >

MSC Midi Show Control

prev main next

Navigation:  Pandoras Box > External Control (DMX,Midi,...) > Input Protocols >

MSC Midi Show Control

prev main next


The Midi Show Control (MSC) input protocol allows remote controlling the Pandoras Box timeline and layer parameters. MSC commands are based on System Exclusive messages (SysEx) according to the MSC specification.

MSC Syntax

This shows how the format of a MSC (Midi Show Control message) is defined and what Pandoras Box accepts. Below you find some examples.

Beginning of SysEx Message


Defines message as SysEx




End of Message

F0h 7Fh

= PB Sequence ID as set up in the Configuration tab > Remote Control Prototcols > Midi
01h = Seq1


01h Lighting
30h Video
40h Projection
7Fh All-Types
(PB processes all formats)

01h GO
02h STOP
05h LOAD
06h SET

<data> is optional and described below, all others are needed


In other words, if you would like to control Sequence 1 and choose the "All Types" command format, your string should look as follows.

F0h 7Fh




<command and optional data>


All data must be encoded from ASCII Format. So the decimal number 1 in ASCII is ONE and in hex 31h.
Multiple data elements must be separated (SET) with 00h.
Separators as dec.(2Eh) are accepted but the next value is not processed.

The chapter "Syntax TCP- / UDP- / Serial Messages" shows a table with hexadecimal values translated to more human readable decimal values and ASCII.

In case you would like to test the MSC feature with Widget Designer, you can send a command called MidiSendSysEx. As shown in the command's help, the syntax is slightly different: instead of the above shown "XXh" format it should be "hXX" in WD.

Examples for PB Sequence Control

As above, for the examples the Sequence ID should be 1 and the command format is "All Types", which gives us this string:

F0h 7Fh 01h 02h 7Fh <command> <optional data> F7h

GO-command = 01h

GO - without a cue:
a) if the last command was a LOAD cue, the loaded cue will be called.
b) in all other cases the timeline will continue from its actual play position.

<command> = GO = 01h
<data> = not needed

F0h 7Fh 01h 02h 7Fh 01h F7h

GO - in conjunction with a cue:
Jump to Cue + Play (the cue will overwrite a previously loaded cue)

<command> = GO = 01h
<data> = Cue, e.g. Cue 24 is TWO FOUR which is 32h 34h

F0h 7Fh 01h 02h 7Fh 01h 32h 34h F7h

It is valid to send a cue 24.001 which is : 32h 34h (TWO FOUR) 2E (decimal separator) 30 30 31 (ZERO ZERO ONE) 00 (SET separator is optional)

F0h 7Fh 01h 02h 7Fh 01h 32h 34h 2E 30 30 31 00 F7h

As decimal places for cue numbers are not supported in Pandoras Box, you can use the check box option "Use Cue Subsection" in the Configuration tab > Remote Control Prototcols > Midi. Doing this will multiply the incoming cue command x1000 (for example: GO to Cue 24.001 will no be interpreted as GO to Cue 24001). With this option three decimal places are supported.

PB also accepts this string which is according to the GrandMA format with cue list and cue path – only the first cue is processed.

F0h 7Fh 01h 02h 7Fh 01h 32h 34h 2Eh 30h 30h 31h 00h 31h 00h 32h 00h F7h

Go to Cue 0 (ZERO = 30h) can have different result according to the option "Cue ID 0 Handling" in the Configuration tab > Remote Control Prototcols > Midi.

F0h 7Fh 01h 02h 7Fh 01h 30h F7h

Regular Cue

if it exists, PB goes to Cue 0 and plays the timeline


PB ignores the message


PB stops the timeline

Stop & Reset

PB stops the timeline and resets all active values

STOP-command = 02h

This pauses the PB timeline at the current position.

F0h 7Fh 01h 02h 7Fh 02h F7h

RESUME-command = 03h

This has the same effect as the GO-command.

F0h 7Fh 01h 02h 7Fh 03h F7h

LOAD-command = 05h

LOAD must be used with a cue. The example loads Cue 24 which is processed by the next incoming GO or RESUME command. In other words, the LOAD command by itself is not visible in Pandoras Box.

F0h 7Fh 01h 02h 7Fh 05h 32h 34h F7h

F0h 7Fh 01h 02h 7Fh 01h F7h

RESET and GO_OFF-commands = 0Ah or 0Bh

Both commands stop the timeline so that the time is 0:00:00:00

F0h 7Fh 01h 02h 7Fh 0Ah F7h


F0h 7Fh 01h 02h 7Fh 0Bh F7h

Examples for PB Parameter Control

As above, the examples refer to Sequence ID 1 and use the command format "All Types", which gives us the same string to start with:

F0h 7Fh 01h 02h 7Fh <command> <optional data> F7h

SET-command = 06h

This allows you to transmit individual device parameters. The <data> message consists of 4 values which must be followed by a 00h-separator. All decimal values will be ignored.

<data1>: Device ID
<data2>: Layer ID
<data3>: Parameter ID
<data4>: Value

F0h 7Fh 01h 02h 7Fh 06h <Device ID> 00h <Layer ID> 00h <Parameter ID> 00h <Value> 00h F7h

Sample message with:
Device 1 = ONE = 31h
Layer 3 = THREE = 33h
X-Position = see table, EIGTH = 38h
Value 32768 = THREE TWO SEVEN SIX EIGTH = 33h 32h 37h 36h 38h

F0h 7Fh 01h 02h 7Fh 06h 31h 00h 32h 00h 38h 00h 33h 32h 37h 36h 38h F7h

The Value 32768 translates to 0 generic units for all position parameters. Per default, Pandoras Box version 6 displays pixel values where applicable. In the Configuration dialog > Unit Management values can be set back to the old default. In that case value 0 (30h) translates to -256 units and 128 (31h 32h 38h) to -255 etc.

List of Pandoras Box Parameter IDs:

None 0
Opacity 1
Mesh 2
Media 3
Inpoint 4
Outpoint 5
Transport 6
TransFx 7
XPos 8
YPos 9
ZPos 10
XRot 11
YRot 12
ZRot 13
XScale 14
YScale 15
ZScale 16
Colour1 17
Colour2 18
Colour3 19
ColourFx 20
Fx1 21
Fx2 22
Fx3 23
VideoFx 24

XAxis 25
YAxis 26
ZAxis 27
Rot 28
XOffset 29
YOffset 30
Mode 31
KSL 32
KSR 34
KST 36
KSB 38
LinX 40
LinY 41
SEL 42
SER 44
SET 46
SEB 48