Part 2:
MIDI Controller Numbers
14 Bit Controllers
Controllers 0 to 31 were originally specified as optionally 14 bit resolution controllers. To use them as 14 bit controllers the msb is transmitted as one controller (0-31), and the lsb is transmitted as a second controller (32-63 respectively). Controller 0 and Controller 32 have been defined as a Bank Select that qualifies Program Changes [sic.] and both messages must always be transmitted together.
In practice, it was impossible to differentiate between 14 and 7 bit usage, so 14 bit resolution never really worked.
HEX | DECIMAL | CONTROLLER |
00 | 0 | Bank Select |
01 | 1 | Modulation Wheel |
02 | 2 | Breath Controller |
03 | 3 | (undefined) |
04 | 4 | Foot Controller |
05 | 5 | Portamento Time |
06 | 6 | Data Entry |
07 | 7 | Volume |
08 | 8 | Balance |
09 | 9 | (undefined) |
0A | 10 | Pan |
0B | 11 | Expression |
0C | 12 | Effect Control 1 |
0D | 13 | Effect Control 2 |
0E | 14 | (undefined) |
0F | 15 | (undefined) |
10 | 16 | General Purpose #1 |
11 | 17 | General Purpose #2 |
12 | 18 | General Purpose #3 |
13 | 19 | General Purpose #4 |
14-1F | 20-31 | (undefined) |
7 Bit Controllers
Controllers 64 to 95, originally defined as switches, may now also be used as 7 bit resolution controllers.
HEX | DECIMAL | CONTROLLER |
40 | 64 | Hold 1 (Sustain) |
41 | 65 | Portamento On/Off |
42 | 66 | Sostenuto |
43 | 67 | Soft Pedal |
44 | 68 | Legato Footswitch |
45 | 69 | Hold 2 |
46 | 70 | Sound Controller 1 / Sound Variation |
47 | 71 | Sound Controller 2 / Timbre Content |
48 | 72 | Sound Controller 3 / Release Time |
49 | 73 | Sound Controller 4 / Attack Time |
4A | 74 | Sound Controller 5 / Brightness |
4B | 75 | Sound Controller 6 |
4C | 76 | Sound Controller 7 |
4D | 77 | Sound Controller 8 |
4E | 78 | Sound Controller 9 |
4F | 79 | Sound Controller 10 |
50 | 80 | General Purpose #5 |
51 | 81 | General Purpose #6 |
52 | 82 | General Purpose #7 |
53 | 83 | General Purpose #8 |
54 | 84 | Portamento Control |
55-5A | 85-90 | (undefined) |
5B | 91 | Effect 1 / External Effects Depth |
5C | 92 | Effect 2 / Tremolo Depth |
5D | 93 | Effect 3 / Chorus Depth |
5E | 94 | Effect 4 / Detune (Celeste) |
5F | 95 | Effect 5 / Phaser Depth |
60 | 96 | Data Increment |
61 | 97 | Data Decrement |
62 | 98 | Non-Registered Parameter lsb |
63 | 99 | Non-Registered Parameter msb |
64 | 100 | Registered Parameter lsb |
65 | 101 | Registered Parameter msb |
66-77 | 102-119 | (undefined) |
Channel Mode Messages
Mode change messages are only received on the Base Channel that an equipment is set to. Messages 124 to 127 also act as an All Notes Off message. When Omni Mode is set to on the receiver responds to all Channel Voice messages, ignoring the Channel Number.
HEX | DECIMAL | CONTROLLER |
78 | 120 | All Sound Off; data = 00 |
79 | 121 | Reset All Controllers; data = 00 |
7A | 122 | Local Control; data = 00 for off, 7F for on |
7B | 123 | All Notes Off; data = 00 |
7C | 124 | Omni Mode Off; data = 00 |
7D | 125 | Omni Mode On; data = 00 |
7E | 126 | Mono Mode On; data = number of channels |
7F | 127 | Poly Mode On; data = 00 |