Each MIDI CC operates at 7-bit resolution, meaning it has 128 possible values. The values start at 0 and go to 127. Some instruments can receive higher resolution data for their MIDI control assignments. These high res assignments are defined by combining two separate CCs, one being the Most Significant Byte (MSB), and one being the Least Significant Byte (LSB). Most instruments just receive the MSB with default 7-bit resolution. Here is a table that lists all MIDI CCs:
CC | Name | MIDI CC Details | Values | Type |
0 | Bank Select | Switch Preset Banks for Patch Selection. This is used in combination with program change commands. | 0-127 | MSB |
1 | Modulation Wheel | The Mod Wheel is one of the most used CC messages. It can be assigned to a variety of different controls in your synthesizer/sampler/effects units. Common mappings include adding vibrato, or adjusting filter cutoff. | 0-127 | MSB |
2 | Breath Controller | Like the Mod Wheel, this CC is intended for real time performance modulation. The CC2 Breath controller was originally defined for electronic wind instrument breath amount. | 0-127 | MSB |
3 | Undefined | | 0-127 | MSB |
4 | Foot Pedal | The Foot Controller CC4 can be used like an extra expression pedal, for real time performance modulation. | 0-127 | MSB |
5 | Portamento/Glide Time | The Portamento/Glide defines how consecutive note pitches are interpolated between. With no portamento/glide, the pitch of a new key press is immediate and in tune to the key. With portamento/glide, the frequency is glided up/down from the previous frequency. | 0-127 | MSB |
6 | Data Entry (MSB) | This CC is used with SYSEX NRPN or RPN messages | 0-127 | MSB |
7 | MIDI Volume | The MIDI Volume CC7 is used to control the overall volume of the instrument - the output volume. | 0-127 | MSB |
8 | Stereo Balance | The Stereo Panning CC8 is used to control the Left/Right balance for instruments with stereo signal paths. Note: CC10 is often used instead to control panning. | 0-127 | MSB |
9 | Undefined | | 0-127 | MSB |
10 | Pan Position / Balance | The Mono Panning CC10 is used to control the Left/Right balance for instruments with stereo signal output. Note: CC8 is occasionally used instead to control panning. | 0-127 | MSB |
11 | Expression Pedal | The Expression Pedal CC11 is one of the most common used CCs for live performance modulation. It is usually assigned within the instrument to control a variety of different modulation options. | 0-127 | MSB |
12 | Effect Controller 1 | This Effect Controller CC12 is intended for controlling effects parameters within an instrument. | 0-127 | MSB |
13 | Effect Controller 2 | This Effect Controller CC13 is intended for controlling effects parameters within an instrument. | 0-127 | MSB |
14 | Undefined | | 0-127 | MSB |
15 | Undefined | | 0-127 | MSB |
16 | Slider, Knob or Ribbon Controller | The CC16 is a general purpose MIDI controller that can be used for performance modulation. | 0-127 | MSB |
17 | Slider, Knob or Ribbon Controller | The CC17 is a general purpose MIDI controller that can be used for performance modulation. | 0-127 | MSB |
18 | Slider, Knob or Ribbon Controller | The CC18 is a general purpose MIDI controller that can be used for performance modulation. | 0-127 | MSB |
19 | Slider, Knob or Ribbon Controller | The CC19 is a general purpose MIDI controller that can be used for performance modulation. | 0-127 | MSB |
20 | Undefined | | 0-127 | MSB |
21 | Undefined | | 0-127 | MSB |
22 | Undefined | | 0-127 | MSB |
23 | Undefined | | 0-127 | MSB |
24 | Undefined | | 0-127 | MSB |
25 | Undefined | | 0-127 | MSB |
26 | Undefined | | 0-127 | MSB |
27 | Undefined | | 0-127 | MSB |
28 | Undefined | | 0-127 | MSB |
29 | Undefined | | 0-127 | MSB |
30 | Undefined | | 0-127 | MSB |
31 | Undefined | | 0-127 | MSB |
32 | Bank Select (LSB) | This is used in conjuction with CC0 Bank Select for some instruments with additional mod resolution. | 0-127 | LSB |
33 | Modulation Wheel (LSB) | This is used in conjuction with CC1 Mod Wheel for some instruments with additional mod resolution. | 0-127 | LSB |
34 | Breath Controller (LSB) | This is used in conjuction with CC2 Breath for some instruments with additional mod resolution. | 0-127 | LSB |
35 | Undefined | | 0-127 | LSB |
36 | Foot Pedal (LSB) | This is used in conjuction with CC4 Foot Pedal for some instruments with additional mod resolution. | 0-127 | LSB |
37 | Portamento/Glide Time (LSB) | This is used in conjuction with CC5 Portamento/Glide Time for some instruments with additional mod resolution. | 0-127 | LSB |
38 | Data Entry (LSB) | This CC is used with SYSEX NRPN or RPN messages | 0-127 | LSB |
39 | Volume (LSB) | This is used in conjuction with CC7 Volume for some instruments with additional mod resolution. | 0-127 | LSB |
40 | Balance (LSB) | This is used in conjuction with CC8 Stereo Balance for some instruments with additional mod resolution. | 0-127 | LSB |
41 | Undefined | | 0-127 | LSB |
42 | Pan Position (LSB) | This is used in conjuction with CC10 Pan Position for some instruments with additional mod resolution. | 0-127 | LSB |
43 | Expression (LSB) | This is used in conjuction with CC11 Expression for some instruments with additional mod resolution. | 0-127 | LSB |
44 | Effect Control 1 (LSB) | This is used in conjuction with CC12 Effect Controller 1 for some instruments with additional mod resolution. | 0-127 | LSB |
45 | Effect Control 2 (LSB) | This is used in conjuction with CC13 Effect Controller 1 for some instruments with additional mod resolution. | 0-127 | LSB |
46 | Undefined | | 0-127 | LSB |
47 | Undefined | | 0-127 | LSB |
48 | Undefined | | 0-127 | LSB |
49 | Undefined | | 0-127 | LSB |
50 | Undefined | | 0-127 | LSB |
51 | Undefined | | 0-127 | LSB |
52 | Undefined | | 0-127 | LSB |
53 | Undefined | | 0-127 | LSB |
54 | Undefined | | 0-127 | LSB |
55 | Undefined | | 0-127 | LSB |
56 | Undefined | | 0-127 | LSB |
57 | Undefined | | 0-127 | LSB |
58 | Undefined | | 0-127 | LSB |
59 | Undefined | | 0-127 | LSB |
60 | Undefined | | 0-127 | LSB |
61 | Undefined | | 0-127 | LSB |
62 | Undefined | | 0-127 | LSB |
63 | Undefined | | 0-127 | LSB |
64 | Sustain Pedal On/Off | The Sustain Pedal CC64 is one of the most commont MIDI CC messages, used to hold played notes while the sustain pedal is active/depressed. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | <=63 OFF, >=64 ON | --- |
65 | Portamento/Glide On/Off Switch | This CC65 is indeded to be used as an on/off switch for Portamento/Glide. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | <=63 OFF, >=64 ON | --- |
66 | Sostenuto On/Off Switch | This Sostenuto CC64 is intended to activate the sustain of only the active notes when the pedal is first engaged. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | <=63 OFF, >=64 ON | --- |
67 | Soft Pedal On/Off Switch | The Soft Pedal CC65 is a switch to activate the soft strike effect. Most pianos have three strings that are struck by a hammer, but the hammer or keys are shifted so only two strings are struck with a key strike. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | <=63 OFF, >=64 ON | --- |
68 | Legato On/Off Switch | The Legato CC68 is a switch to enable or disable Legato / Smooth transitions between consecutive notes. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | <=63 OFF, >=64 ON | --- |
69 | Hold Pedal 2 | The Hold Pedal CC69 is an alternative control message to Sustain that controls how notes are held and fade out. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | <=63 OFF, >=64 ON | --- |
70 | Sound Controller 1 | Sound Controller CC70 is often assigned to sound generation variance. | 0-127 | |
71 | Sound Controller 2 - Filter Resonance | Sound Controller CC71 is often assigned to filter resonance amount / Q amount. | 0-127 | |
72 | Sound Controller 3 - Amp Envelope Decay | Sound Controller CC72 is often assigned to the amp envelope release time. It may affect how notes are held and fade out. | 0-127 | |
73 | Sound Controller 4 - Amp Envelope Attack | Sound Controller CC73 is often assigned to the amp envelope attack time. This is the amount of time from key strike to maximum volume. | 0-127 | |
74 | Sound Controller 5 - Filter Cutoff | Sound Controller CC74 is often assigned to filter cutoff point / Q location, at some frequency/hertz. | 0-127 | |
75 | Sound Controller 6 | Sound Controller CC75 is a general purpose CC for altering some sound generation, filtering or effect. | 0-127 | |
76 | Sound Controller 7 | Sound Controller CC76 is a general purpose CC for altering some sound generation, filtering or effect. | 0-127 | |
77 | Sound Controller 8 | Sound Controller CC77 is a general purpose CC for altering some sound generation, filtering or effect. | 0-127 | |
78 | Sound Controller 9 | Sound Controller CC78 is a general purpose CC for altering some sound generation, filtering or effect. | 0-127 | |
79 | Sound Controller 10 | Sound Controller CC79 is a general purpose CC for altering some sound generation, filtering or effect. | 0-127 | |
80 | General Purpose | General Purpose CC Switch. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
81 | General Purpose | General Purpose CC Switch. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
82 | General Purpose | General Purpose CC Switch. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
83 | General Purpose | General Purpose CC Switch. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
84 | Undefined | | | |
85 | Undefined | | | |
86 | Undefined | | | |
87 | Undefined | | | |
88 | Undefined | | | |
89 | Undefined | | | |
90 | Undefined | | | |
91 | Effect 1 Amount (Reverb) | Reverb Amount CC91 controls the amount of reverb. Reverb is a delay/echo effect to emulate spaces. | 0-127 | |
92 | Effect 2 Amount (Tremelo) | Tremelo Amount CC92 controls the amount of tremelo. Tremelo is volume/amp modulation. | 0-127 | |
93 | Effect 3 Amount (Chorus) | Chorus Amount CC93 controls the amount of chorus. Chorus duplicates and time shifts the incoming signal to create multiple variants, like a chorus of players. | 0-127 | |
94 | Effect 4 Amount (Detuning) | Detuning Amount CC94 controls the amount of detuning. Detuning alters the frequency of one or more sound generators away from their nominal pitch/frequency. | 0-127 | |
95 | Effect 5 Amount (Phaser) | Phaser Amount CC95 controls the amount of phasing. | 0-127 | |
96 | Data Bound Increment (+1) | | | |
97 | Data Bound Decrement (-1) | | | |
98 | NRPN LSB | Non-registered Parameter (LSB) | 0-127 | LSB |
99 | NRPN MSB | Non-registered Parameter (MSB) | 0-127 | MSB |
100 | RPN LSB | Registered parameter (LSB) | 0-127 | LSB |
101 | RPN MSB | Registered Parameter (MSB) | 0-127 | MSB |
102 | Undefined | | | |
103 | Undefined | | | |
104 | Undefined | | | |
105 | Undefined | | | |
106 | Undefined | | | |
107 | Undefined | | | |
108 | Undefined | | | |
109 | Undefined | | | |
110 | Undefined | | | |
111 | Undefined | | | |
112 | Undefined | | | |
113 | Undefined | | | |
114 | Undefined | | | |
115 | Undefined | | | |
116 | Undefined | | | |
117 | Undefined | | | |
118 | Undefined | | | |
119 | Undefined | | | |
120 | Channel Mute / Sound Off | CC120 is used to indicate all sounds off or instrument mute. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
121 | Reset All Controllers | CC121 is used to reset all controllers / set controller to off. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
122 | Local Keyboard On/Off Switch | CC122 is used to set the instrument into Local Keyboard Mode On/Off. In some cases, this can be used to prevent MIDI feedback loops, or if using the keyboard as a MIDI controller for other instruments. | 0-127 | |
123 | All MIDI Notes OFF | CC123 is a switch used to tell an instrument to turn all active notes off. This may be useful if a note is hung in the on position. Values of 0-63 indicate OFF. Values 26-127 indicate ON. | 0-127 | |
124 | OMNI Mode OFF | CC124 is a switch to set MIDI Channel OMNI Mode OFF. Omni means that the instrument will send/receive on all MIDI channels (1-16) rather than a specific channel. | 0-127 | |
125 | OMNI Mode ON | CC125 is a switch to set MIDI Channel OMNI Mode ON. Omni means that the instrument will send/receive on all MIDI channels (1-16) rather than a specific channel. | 0-127 | |
126 | Mono Mode | CC126 is a switch used to tell an instrument to operate in Mono/Unison mode rather than Poly mode. | 0-127 | |
127 | Poly Mode | CC127 is a switch used to tell an instrument to operate in Polyphonic mode rather than Mono/Unison mode. | 0-127 | |