Implementation Table
MIDI Implementation Chart
| Function | Rx | Tx | Remarks | |||
|---|---|---|---|---|---|---|
| Group | Entry | 1 | 2 | 1 | 2 | |
| Channel | Default | ✓ 1-16 |
✕ | ✕ 1-16 |
✕ | |
| Changed | ✓ 1-16 |
✕ | ✕ 1-16 |
✕ | Supports up to 256 channels. | |
| Note number | ✓ | ✕ | ✕ | ✕ | 0-127 | |
| Mode | Default | - 3 |
- 3 |
- | - | Omni off, polyphonic |
| Messages | ✓ 3, 4 |
✕ | ✕ 3, 4 |
✕ | ||
| Velocity | Note on | ✓ | ✕ | 9n vvvv=01 00-7f 7f (0080-3fff) |
||
| ✕ | ✕ | 9n vv vvvvvv=0000-ffff |
||||
| Note off | ✓ | ✕ | 8n vvvv=00 00-7f 7f (0000-3fff)9n vvvv=00 00-00 7f (0000-007f)Velocity ignored. |
|||
| ✕ | ✕ | 8n vv vvvvvv=0000-ffffVelocity ignored. |
||||
| Aftertouch | Note | ✓ | ✕ | Same as Note On. | ||
| ✕ | ✕ | An nn 0032-bit resolution Truncated to 16-bit. |
||||
| Channel | ✓ | ✕ | Same as Note On. | |||
| ✕ | ✕ | Dn 00 0032-bit resolution Truncated to 16-bit. |
||||
| Pitchbend | Channel | ✓ | ✕ | 0-24 semitone steps 14-bit resolution |
||
| ✕ | ✕ | 0-24 semitone steps 32-bit resolution |
||||
| Note | ✕ | ✕ | 0-24 semitone steps 32-bit resolution |
|||
| Program Change | MIDI 1.0 Split |
✓ 0-127 |
✕ | Cn pppp= 0-127 |
||
| MIDI 2.0 Packed |
✕ 0-127 |
✕ | Cn 00 oopp= 0-127mm= 0-127ll= 0-127 |
|||
| Messages | Control Change | ✓ | ✕ | Bn cc ddcc= 0-127dd= 0-127 |
||
| ✕ | ✕ | Bn cc 00cc= 0-127dddddddd=0000-ffffTruncated to 31-bits. |
||||
| Registered Parameter | ✓ | ✕ | Bn 65 mmBn 64 llBn 06 ddmm= 0-127ll= 0-127dd= 0-127 |
|||
| ✕ | ✕ | 2n mm llmm= 0-127ll= 0-127dddddddd=0000-ffff |
||||
| Registered Parameter Shift | ✓ | ✕ | Bn 65 mmBn 64 llBn 60 ??mm= 0-127ll= 0-127Bn 60 ??Bn 61 ?? |
|||
| ✕ | ✕ | 4n mm llmm= 0-127ll= 0-127dddddddd=0000-ffff |
||||
| Non-Registered Parameter | ✓ | ✕ | Bn 63 mmBn 62 llBn 06 ddmm= 0-127ll= 0-127dd= 0-127 |
|||
| ✕ | ✕ | 3n mm llmm= 0-127ll= 0-127dddddddd=0000-ffff |
||||
| Non-Registered Parameter Shift | ✕ | ✕ | 5n mm llmm= 0-127ll= 0-127dddddddd=0000-ffff |
|||
| System Exclusive | ✓ | ✕ | F0 dd ... F7 |
|||
| ✕ | ✕ | UMP SysEx | ||||
| Control Change Slots | 0 | ✓ | ✕ | MSB Bank Select | ||
| 1 | ✓ | ✕ | ✕ | ✕ | Modulation | |
| 2 | ✓ | ✕ | ✕ | ✕ | Breath | |
| 4 | ✓ | ✕ | ✕ | ✕ | Foot | |
| 5 | ✓ | ✕ | ✕ | ✕ | Portamento Time | |
| 6 | ✓ | ✕ | MSB (N)RPN Data Commit | |||
| 7 | ✓ | ✕ | ✕ | ✕ | Volume | |
| 8 | ✓ | ✕ | ✕ | ✕ | Balance | |
| 10 | ✓ | ✕ | ✕ | ✕ | Pan | |
| 11 | ✓ | ✕ | ✕ | ✕ | Expression | |
| 12 | ✓ | ✕ | ✕ | ✕ | General-purpose effect PLG-AN ribbon X |
|
| 13 | ✓ | ✕ | ✕ | ✕ | General-purpose effect PLG-AN ribbon Z |
|
| 16 | ✓ | ✕ | ✕ | ✕ | General-purpose sound | |
| 17 | ✓ | ✕ | ✕ | ✕ | General-purpose sound | |
| 18 | ✓ | ✕ | ✕ | ✕ | General-purpose sound | |
| 19 | ✓ | ✕ | ✕ | ✕ | General-purpose sound | |
| 32 | ✓ | ✕ | LSB Bank Select | |||
| 38 | ✓ | ✕ | LSB (N)RPN Data Commit | |||
| 64 | ✓ | ✕ | ✕ | ✕ | Sustain (Hold) | |
| 65 | ✓ | ✕ | ✕ | ✕ | Portamento | |
| 66 | ✓ | ✕ | ✕ | ✕ | Sostenuto | |
| 67 | ✓ | ✕ | ✕ | ✕ | Soft Pedal Store only |
|
| 68 | ✓ | ✕ | ✕ | ✕ | Legato Store only |
|
| 69 | ✓ | ✕ | ✕ | ✕ | Hold 2 Store only |
|
| 70 | ✓ | ✕ | ✕ | ✕ | Timbre Variation Store only |
|
| 71 | ✓ | ✕ | ✕ | ✕ | Resonance | |
| 72 | ✓ | ✕ | ✕ | ✕ | Release Time | |
| 73 | ✓ | ✕ | ✕ | ✕ | Attack Time | |
| 74 | ✓ | ✕ | ✕ | ✕ | Brightness | |
| 75 | ✓ | ✕ | ✕ | ✕ | Decay Time | |
| 76 | ✓ | ✕ | ✕ | ✕ | Vibrato Rate | |
| 77 | ✓ | ✕ | ✕ | ✕ | Vibrato Depth | |
| 78 | ✓ | ✕ | ✕ | ✕ | Vibrato Delay | |
| 84 | ✓ | ✕ | ✕ | ✕ | Portamento Source Note | |
| 88 | ✓ | ✕ | High Resolution Velocity Affects MIDI 1.0 note on and note off |
|||
| 91 | ✓ | ✕ | ✕ | ✕ | Effect 1 Send (Reverb) | |
| 92 | ✓ | ✕ | ✕ | ✕ | Effect 2 Send (Tremolo) | |
| 93 | ✓ | ✕ | ✕ | ✕ | Effect 3 Send (Chorus) | |
| 94 | ✓ | ✕ | ✕ | ✕ | Effect 4 Send (Variation/Delay) | |
| 95 | ✓ | ✕ | ✕ | ✕ | Effect 5 Send (Phaser) | |
| 96 | ✓ | ✕ | RPN Data Increment | |||
| 97 | ✓ | ✕ | RPN Data Decrement | |||
| 98 | ✓ | ✕ | LSB NRPN | |||
| 99 | ✓ | ✕ | MSB NRPN | |||
| 100 | ✓ | ✕ | LSB RPN | |||
| 101 | ✓ | ✕ | MSB RPN | |||
| 120 | ✕ | ✕ | ✕ | ✕ | All Sound Off | |
| 121 | ✓ | ✕ | ✕ | ✕ | All Controllers Reset | |
| 122 | ✕ | ✕ | ✕ | ✕ | Local ON/OFF | |
| 123 | ✓ | ✕ | ✕ | ✕ | All Notes Off | |
| 124 | ✓ | ✕ | ✕ | ✕ | Omni Off Same as cc123 |
|
| 125 | ✕ | ✕ | ✕ | ✕ | Omni On Same as cc123 |
|
| 126 | ✓ | ✕ | ✕ | ✕ | Mono | |
| 127 | ✓ | ✕ | ✕ | ✕ | Poly | |
| 128 | ✓ | ✕ | ✕ | ✕ | Dry level (internal) | |
| 129 | ✓ | ✕ | VL Breath Strength (internal) | |||
| 130 | ✓ | VL Pressure (internal) | ||||
| 131 | ✓ | VL Embouchure (internal) | ||||
| 132 | ✓ | VL Tonguing (internal) | ||||
| 133 | ✓ | VL Scream (internal) | ||||
| 134 | ✓ | VL Breath Noise (internal) | ||||
| 135 | ✓ | VL Growl (internal) | ||||
| 136 | ✓ | VL Throat Formant (internal) | ||||
| 137 | ✓ | VL Harmonic Enhancer (internal) | ||||
| 138 | ✓ | VL Damping (internal) | ||||
| 139 | ✓ | VL Absorption (internal) | ||||
| 140 | ✓ | VL Filter (internal) | ||||
| 141 | ✓ | VL Amplitude (internal) | ||||
| 142~149 | ✓ | DX Carrier Level 1~8 (internal) | ||||
| 150~157 | ✓ | DX Modulator Level 1~8 (internal) | ||||
| Registered Parameter Slots | 0x0000 |
✓ | ✕ | ✕ | ✕ | Pitch Bend Range/Sensitivity |
0x0001 |
✓ | ✕ | ✕ | ✕ | Fine Tune | |
0x0002 |
✓ | ✕ | ✕ | ✕ | Coarse Tune | |
0x0003 |
✕ | ✕ | ✕ | ✕ | Tuning Program Select | |
0x0004 |
✕ | ✕ | ✕ | ✕ | Tuning Bank Select | |
0x0005 |
✓ | ✕ | ✕ | ✕ | Modulation Depth | |
0x3d00 |
✕ | ✕ | ✕ | ✕ | 3D Azimuth Angle | |
0x3d01 |
✕ | ✕ | ✕ | ✕ | 3D Elevation Angle | |
0x3d02 |
✕ | ✕ | ✕ | ✕ | 3D Gain | |
0x3d03 |
✕ | ✕ | ✕ | ✕ | 3D Distance Ratio | |
0x3d04 |
✕ | ✕ | ✕ | ✕ | 3D Max Distance | |
0x3d05 |
✕ | ✕ | ✕ | ✕ | 3D Gain at Bound | |
0x3d06 |
✕ | ✕ | ✕ | ✕ | 3D Reference Distance Ratio | |
0x3d07 |
✕ | ✕ | ✕ | ✕ | 3D Pan Spread Angle | |
0x3d08 |
✕ | ✕ | ✕ | ✕ | 3D Roll Angle | |
| Non-Registered Parameter Slots | 0x0108 |
✓ | ✕ | ✕ | ✕ | Vibrato Rate Redirected to cc76 |
0x0109 |
✓ | ✕ | ✕ | ✕ | Vibrato Depth Redirected to cc77 |
|
0x010a |
✓ | ✕ | ✕ | ✕ | Vibrato Delay Redirected to cc78 |
|
0x0120 |
✓ | ✕ | ✕ | ✕ | Brightness (LPF Cutoff) Redirected to cc74 |
|
0x0121 |
✓ | ✕ | ✕ | ✕ | Resonance Redirected to cc71 |
|
0x0124 |
✓ | ✕ | ✕ | ✕ | HPF Cutoff | |
0x0130 |
✓ | ✕ | ✕ | ✕ | EQ Bass Gain | |
0x0131 |
✓ | ✕ | ✕ | ✕ | EQ Treble Gain | |
0x0134 |
✓ | ✕ | ✕ | ✕ | EQ Bass Frequency | |
0x0135 |
✓ | ✕ | ✕ | ✕ | EQ Treble Frequency | |
0x0163 |
✓ | ✕ | ✕ | ✕ | Attack Time Redirected to cc73 |
|
0x0164 |
✓ | ✕ | ✕ | ✕ | Decay Time Redirected to cc75 |
|
0x0166 |
✓ | ✕ | ✕ | ✕ | Release Time Redirected to cc72 |
|
0x14rr |
✓ | ✕ | ✕ | ✕ | Drum Brightness (LPF Cutoff) | |
0x15rr |
✓ | ✕ | ✕ | ✕ | Drum Resonance | |
0x16rr |
✓ | ✕ | ✕ | ✕ | Drum Attack Time | |
0x17rr |
✓ | ✕ | ✕ | ✕ | Drum Decay Time | |
0x18rr |
✓ | ✕ | ✕ | ✕ | Drum Coarse Tune | |
0x19rr |
✓ | ✕ | ✕ | ✕ | Drum Fine Tune | |
0x1arr |
✓ | ✕ | ✕ | ✕ | Drum Level | |
0x1crr |
✓ | ✕ | ✕ | ✕ | Drum Pan | |
0x1drr |
✓ | ✕ | ✕ | ✕ | Drum Reverb Send | |
0x1err |
✓ | ✕ | ✕ | ✕ | Drum Chorus Send | |
0x1frr |
✓ | ✕ | ✕ | ✕ | Drum Variation/Delay Send | |
0x24rr |
✓ | ✕ | ✕ | ✕ | Drum HPF Cutoff | |
0x30rr |
✓ | ✕ | ✕ | ✕ | Drum EQ Bass Gain | |
0x31rr |
✓ | ✕ | ✕ | ✕ | Drum EQ Treble Gain | |
0x34rr |
✓ | ✕ | ✕ | ✕ | Drum EQ Bass Frequency | |
0x35rr |
✓ | ✕ | ✕ | ✕ | Drum EQ Treble Frequency | |
0x4100 |
✓ | ✕ | ✕ | ✕ | SD-20 Set Selection | |
0x5801 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Charactor Store only |
|
0x5820 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Tone Switch | |
0x5822 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Tone Bass Gain | |
0x5824 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Tone Treble Gain | |
0x5827 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Tone Mid Gain | |
0x5830 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune C | |
0x5831 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune C# | |
0x5832 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune D | |
0x5833 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune Eb | |
0x5834 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune E | |
0x5835 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune F | |
0x5836 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune F# | |
0x5837 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune G | |
0x5838 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune Ab | |
0x5839 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune A | |
0x583a |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune Bb | |
0x583b |
✕ | ✕ | ✕ | ✕ | HyperCanvas Scale Tune B | |
0x5840 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Reverb Global Switch | |
0x5841 |
✓ | ✕ | ✕ | ✕ | HyperCanvas Reverb Type | |
0x5842 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Reverb Time | |
0x5850 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Chorus Global Switch | |
0x5851 |
✓ | ✕ | ✕ | ✕ | HyperCanvas Chorus Type | |
0x5852 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Chorus Rate | |
0x5853 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Chorus Depth | |
0x5854 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Chorus Feedback | |
0x5855 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Chorus to Reverb Send | |
0x5870 |
✓ | ✕ | ✕ | ✕ | HyperCanvas Master Volume | |
0x5871 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Master Fine Tune | |
0x5872 |
✕ | ✕ | ✕ | ✕ | HyperCanvas Master Coarse Tune | |
0x587f |
✓ | ✕ | ✕ | ✕ | HyperCanvas System Reset | |
| System Exclusive Standard Support |
General MIDI | ✓ | ← | ✕ | ← | |
| General MIDI 2 | ✓ | ← | ✕ | ← | ||
| YAMAHA XG | ✓ | ← | ✕ | ← | ||
| YAMAHA PLG-150AP/DR/PC/PF | ✕ | ← | ✕ | ← | AWM2 plugin cards | |
| YAMAHA PLG-150AN | ✕ | ← | ✕ | ← | ||
| YAMAHA PLG-150DX | ✓ | ← | ✕ | ← | ||
| YAMAHA PLG-100SG | ✓ | ← | ✕ | ← | ||
| YAMAHA PLG-150VL | ✓ | ← | ✕ | ← | ||
| YAMAHA CS2x | ✓ | ← | ✕ | ← | ||
| YAMAHA S90 ES | ✓ | ← | ✕ | ← | ||
| YAMAHA Motif ES | ✓ | ← | ✕ | ← | ||
| YAMAHA TG300 | ✓ | ← | ✕ | ← | ||
| YAMAHA DOC | ✓ | ← | ✕ | ← | Yamaha Clavinova included. | |
| YAMAHA QY10 | ✓ | ← | ✕ | ← | ||
| YAMAHA QY20 | ✓ | ← | ✕ | ← | ||
| Roland GS | ✓ | ← | ✕ | ← | ||
| Roland SD | ✓ | ← | ✕ | ← | ||
| Roland C/M | ✓ | ← | ✕ | ← | Roland MT-32 included. | |
| KORG NS5R | ✓ | ← | ✕ | ← | ||
| KORG N1R | ✕ | ← | ✕ | ← | Redirected to NS5R | |
| KORG X5D(R) | ✓ | ← | ✕ | ← | ||
| KORG 05R/W | ✓ | ← | ✕ | ← | ||
| KORG PA | ✓ | ← | ✕ | ← | ||
| KORG KROSS 2 | ✓ | ← | ✕ | ← | ||
| KAWAI GMega | ✓ | ← | ✕ | ← | Also known as KAWAI K11 | |
| AKAI SG01 | ✓ | ← | ✕ | ← | ||
| CASIO GZ-50M | ✓ | ← | ✕ | ← | ||
| ALESIS NanoSynth | ✕ | ← | ✕ | ← | ||
| Gravis UltraSound | - | GUS does not have additional SysEx support. | ||||
| System Common | Song position | ✕ | ✕ | ✕ | ✕ | |
| Song select | ✕ | ✕ | ✕ | ✕ | ||
| Tune | ✕ | ✕ | ✕ | ✕ | ||
| System Realtime | Time Code | ✕ | ✕ | ✕ | ✕ | No action defined |
| Clock | ✕ | ✕ | ✕ | ✕ | No action defined | |
| Start | ✕ | ✕ | ✕ | ✕ | No action defined | |
| Continue | ✕ | ✕ | ✕ | ✕ | No action defined | |
| Stop | ✕ | ✕ | ✕ | ✕ | No action defined | |
| Aux Messages | Local ON/OFF | ✕ | ✕ | ✕ | ✕ | |
| Active Sense | ✕ | ✕ | ✕ | ✕ | No action defined | |
| Reset | ✕ | ✕ | ✕ | ✕ | No action defined | |
Notes
- Some cells are blank because they are in an invalid combination. For example it doesn't make sense to indicate MIDI 2.0 status in a MIDI 1.0 column.
- Lyre the state engine itself may truncate the resolution of some MIDI 2.0 messages, which effects transmission but not passthrough. Other components, including MICC, are not affected by truncation.
Explanations
??: Ignored bytes.- Omni: When active, a single part will receive from all channels (N:1). Octavia does not support this mode in any form, its scope only maps channels to parts in a 1:N relationship.