-
Notifications
You must be signed in to change notification settings - Fork 1
Smart Messages
Smart Messages are used for triggering events and controlling various functions within the device. They can be added to most MIDI message stacks just like regular messages, however, they are handled specially by the device. Due to the flexibility and diverse nature of these functions, the API handling is kept as generic as possible to simplify the interaction. A smart message is designated by the non-standard MIDI status byte 0x70
.
There are no MIDI output handles typically associated with a smart message. A Smart Message consists of 4 unique fields, matching the memory footprint of a standard MIDI message. However, instead of status byte
, data byte 1
, data byte 2
, outputs
it is structured as follows:
Label | Values | Description |
---|---|---|
statusByte |
string 8-bit hex | Indicates a Smart Message, this will always be 0x70 and requires no MIDI channel assignment |
smartType |
string | Smart Message type describing it's function |
dataByte1 |
string 8-bit hex | Data byte which varies depending on the message type |
dataByte2 |
string 8-bit hex | Data byte which varies depending on the message type |
Note that to ensure correct validation, the four data elements must be sent in the order shown above.
Label | Data 1 | Data 2 |
---|---|---|
switchOn |
switch index |
0 = Primary1 = Secondary |
switchOff |
switch index |
0 = Primary1 = Secondary |
switchToggle |
switch index |
0 = Primary1 = Secondary |
sequentialResetStep |
switch index | |
sequentialIncrementStep |
switch index | |
sequentialDecrementStep |
switch index | |
sequentialGoToStep |
switch index | step index |
sequentialQueueNextStep |
switch index | |
sequentialQueueStep |
switch index | step index |
scrollingResetStep |
switch index | |
scrollingIncrementStep |
switch index | |
scrollingDecrementStep |
switch index | |
scrollingGoToStep |
switch index | step index |
scrollingQueueNextStep |
switch index | |
scrollingQueueStep |
switch index | step index |
bankUp |
||
bankDown |
||
goToBank |
bank index | |
incrementExpStep |
exp index | |
decrementExpStep |
exp index | |
goToExpStep |
exp index | step index |
trsSwitchOut |
Flexiport index |
1 = tip2 = ring3 = tipRing0 = none |
trsPulseOut |
Flexiport index |
1 = tip2 = ring3 = tipRing0 = none |
uiMode |
0 = standard1 = simple |