If you ever use MIDI, you’ll want to master the use of continuous controllers. Here’s a reference chart for the standard CC mapping. Learn these things and share the info.

MIDI CC List
CC Number Purpose Description
CC 0 Bank Select Allows user to switch bank for patch selection. Program change used with Bank Select. MIDI can access 16,384 patches per MIDI channel.
CC 1 Modulation Generally this CC controls a vibrato effect (pitch, loudness, brighness). What is modulated is based on the patch.
CC 2 Breath Controller Often times associated with aftertouch messages. It was originally intended for use with a breath MIDI controller in which blowing harder produced higher MIDI control values. It can be used for modulation as well.
CC 3 Undefined
CC 4 Foot Controller Often used with aftertouch messages. It can send a continuous stream of values based on how the pedal is used.
CC 5 Portamento Time Controls portamento rate to slide between 2 notes played subsequently.
CC 6 Data Entry Most Significant Bit(MSB) Controls Value for NRPN or RPN parameters.
CC 7 Volume Control the volume of the channel
CC 8 Balance Controls the left and right balance, generally for stereo patches.
0 = hard left, 64 = center, 127 = hard right
CC 9 Undefined
CC 10 Pan Controls the left and right balance, generally for mono patches.
0 = hard left, 64 = center, 127 = hard right
CC 11 Expression Expression is a percentage of volume (CC7).
CC 12 Effect Controller 1 Usually used to control a parameter of an effect within the synth/workstation.
CC 13 Effect Controller 2 Usually used to control a parameter of an effect within the synth/workstation.
CC 14 Undefined
CC 15 Undefined
CC 16 – 19 General Purpose
CC 20 – 31 Undefined
CC 32 – 63 Controller 0-31 Least Significant Bit (LSB)
CC 64 Damper Pedal / Sustain Pedal On/Off switch that controls sustain. (See also Sostenuto CC 66)
0 to 63 = Off, 64 to 127 = On
CC 65 Portamento On/Off Switch On/Off switch
0 to 63 = Off, 64 to 127 = On
CC 66 Sostenuto On/Off Switch On/Off switch – Like the Sustain controller (CC 64), However it only holds notes that were “On” when the pedal was pressed. People use it to “hold” chords” and play melodies over the held chord.
0 to 63 = Off, 64 to 127 = On
CC 67 Soft Pedal On/Off Switch On/Off switch
– Lowers the volume of notes played.
0 to 63 = Off, 64 to 127 = On
CC 68 Legato FootSwitch On/Off switch
– Turns Legato effect between 2 subsequent notes On or Off.
0 to 63 = Off, 64 to 127 = On
CC 69 Hold 2 Another way to “hold notes” (see MIDI CC 64 and MIDI CC 66). However notes fade out according to their release parameter rather than when the pedal is released.
CC 70 Sound Controller 1 Usually controls the way a sound is produced. Default = Sound Variation.
CC 71 Sound Controller 2 Allows shaping the Voltage Controlled Filter (VCF). Default = Resonance –
also(Timbre or Harmonics)
CC 72 Sound Controller 3 Controls release time of the Voltage controlled Amplifier (VCA). Default = Release Time.
CC 73 Sound Controller 4 Controls the “Attack’ of a sound. The attack is the amount of time it takes forthe sound to reach maximum amplitude.
CC 74 Sound Controller 5 Controls VCFs cutoff frequency of the filter.
CC 75 Sound Controller 6 Generic – Some manufacturers may use to further shave their sounds.
CC 76 Sound Controller 7 Generic – Some manufacturers may use to further shave their sounds.
CC 77 Sound Controller 8 Generic – Some manufacturers may use to further shave their sounds.
CC 78 Sound Controller 9 Generic – Some manufacturers may use to further shave their sounds.
CC 79 Sound Controller 10 Generic – Some manufacturers may use to further shave their sounds.
CC 80 General Purpose
MIDI CC Controller
Generic- On/Off switch
0 to 63 = Off, 64 to 127 = On
CC 81 General Purpose MIDI CC Controller Generic – On/Off switch
0 to 63 = Off, 64 to 127 = On
CC 82 General Purpose
MIDI CC Controller
Generic – On/Off switch
0 to 63 = Off, 64 to 127 = On
CC 83 General Purpose MIDI CC Controller Generic – On/Off switch
0 to 63 = Off, 64 to 127 = On
CC 84 Portamento CC Control Controls the amount of Portamento.
CC 85 – 90 Undefined
CC 91 Effect 1 Depth Usually controls reverb send amount
CC 92 Effect 2 Depth Usually controls tremolo amount
CC 93 Effect 3 Depth Usually controls chorus amount
CC 94 Effect 4 Depth Usually controls detune amount
CC 95 Effect 5 Depth Usually controls phaser amount
CC 96 (+1) Data Increment Usually used to increment data for RPN and NRPN messages.
CC 97 (-1) Data Decrement Usually used to decrement data for RPN and NRPN messages.
CC 98 Non-Registered Parameter Number LSB (NRPN) For controllers 6, 38, 96, and 97, it selects the NRPN parameter.
CC 99 Non-Registered Parameter Number MSB (NRPN) For controllers 6, 38, 96, and 97, it selects the NRPN parameter.
CC 100 Registered Parameter Number LSB (RPN) For controllers 6, 38, 96, and 97, it selects the RPN parameter.
CC 101 Registered Parameter Number MSB (RPN) For controllers 6, 38, 96, and 97, it selects the RPN parameter.
CC 102 – 119 Undefined
MIDI CC 120 to 127 are “Channel Mode Messages.”
CC 120 All Sound Off Mutes all sounding notes. It does so regardless of release time or sustain. (See MIDI CC 123)
CC 121 Reset All Controllers It will reset all controllers to their default.
CC 122 Local On/Off Switch Turns internal connection of a MIDI keyboard/workstation, etc. On or Off. If you use a computer, you will most likely want local control off to avoid notes being played twice. Once locally and twice whent the note is sent back from the computer to your keyboard.
CC 123 All Notes Off Mutes all sounding notes. Release time will still be maintained, and notes held by sustain will not turn off until sustain pedal is depressed.
CC 124 Omni Mode Off Sets to “Omni Off” mode.
CC 125 Omni Mode On Sets to “Omni On” mode.
CC 126 Mono Mode Sets device mode to Monophonic.
CC 127 Poly Mode Sets device mode to Polyphonic.

Undefined MIDI CC List

3, 9, 14-15, 20-31, 85-90, 102-119

Using the undefined controllers is a best choice for programming virtual instruments. Lots of instruments will use the default CC settings for various parameters. Using the undefined controllers as a first can prevent accidentally modulating other default settings. This list isolates the undefined controllers.