Episode 014 - MIDI
Published: Jun 10, 2016 by Adam Anderson
Listen to this Episode:
MIDI (musical instrument digital interface) was developed to provide standardized communication between synthesizers. Today, it is much more than that and is found in computer, video games, effects processors and more. We’re primarily focusing on how to use it in music production—specifically with synths.
During the late 1970s and early 1980s as synthesizers became more powerful and polyphonic, controlling synths became more and more of a struggle. Traditional methods of using control voltage (CV) and gate signals was particularly problematic due to inconsistent CV requirements among the various manufacturers. Additionally, a single pair of CV/Gate connections could only send one control signal at a time. CV is inherently monophonic. Other control mechanisms had been developed, but these were strictly proprietary to each manufacturer.
MIDI solved these problems. In 1983, Dave Smith and Ikutaru Kakehashi demonstrated MIDI control between a Sequential Prophet 600 and a Roland JP6 promoting collaboration among synthesizer manufacturers.
MIDI’s original connectors are 5-pin DIN connectors. While other physical connections (USB, Firewire, etc.) are able to carry MIDI data, the original connectors are still widely used. Three different connections are possible: IN, OUT, THRU. Generally, a controller (like a keyboard or sequencer) is connected from its OUT jack to another device’s IN jack.
MIDI Thru duplicates the information arriving at a device’s IN jack and passes it back out to some other device. This way several devices can be controlled by a single controller.
MIDI sends its information on 16 channels. Using the connection method mentioned above, the devices connected to a controller can be configured to listen on one or more of these 16 channels and ignore information on others. Maybe a sequencer sends piano information on channel 1 and drum information on channel 10. The piano module and drum module in the chain are then configured accordingly.
MIDI organizes information into various message types. While not an exhaustive list, here are some of the most common message types:
- Note on/Note off messages are accompanied by MIDI note number and a velocity value. Velocity is how hard the note is pressed. Some instruments respond to velocity differences. Some don’t. Most synthesizers which do respond to velocity can be programmed to do something interesting like open the filter more, boost envelope values, etc.
- Program change messages switch the receiving instrument to a different preset number. Beyond synthesizers, this can be used with effect processors or digital mixers to automate performances. Usually program change messages range from 0-127 or 1-128.
- Control change (CC) messages are for things like volume, pan, etc. Generally, anything that benefits from a range of values is a candidate for control change. Think of the drawbars on a Hammond organ or the cutoff frequency on an analog synth. Sweeping through these values rather than simply picking a single value creates dynamic and interesting performances. Control change messages are transmitted with an identifier for the type of CC (0-127) and a value (also 0-127).
- Pitch bend and aftertouch messages are often confused with control change messages. These special message types operate more or less the same but are not transmitted as control changes. Aftertouch describes the amount of pressure put on keyboard keys while a note is sustained and is actually available as either channel aftertouch or polyphonic aftertouch. The first one only sends the pressure value from the single hardest-pressed note while the latter sends pressure values for all notes individually. Incredibly expressive, aftertouch can usually be programmed into your synth patch to respond with something like vibrato, filter changes, LFO speed changes, etc.
- System exclusive messages (sysex) are well beyond the scope of this article. Sysex can be used to dump single preset data or entire machine setups to be stored as a file on your computer or in your sequencer, etc.
MIDI also has provisions to keep everything sync’ed together. Sync messages are not sent on individual channels. All devices receive sync data unless configured to ignore it. Sync options include MIDI Timecode (MTC), MIDI Clock and Song Position Pointer (SPP). When syncing from a computer, it is best to configure your DAW to send either MTC or MIDI Clock and SPP. Transmitting both can cause double notes and hiccups.
Most audio interfaces offer a set of MIDI IN/OUT connections. This is okay when you only have a couple of devices in your MIDI setup. But, once your collection expands and you need more than 16 channels, look for a MIDI interface with multiple ins and outs. Mark of the Unicorn (MOTU) still has a few of these available.
The authority on MIDI is midi.org. Lots of documentation and helpful articles are now available on the official site. Additionally, consult the user guides for your synths. You’ll be surprised how much you can learn from the manuals.