Chapter 2 Contents
MIDI Basics
MIDI is an acronym for Musical instrument digital interface. The concept of and protocols for MIDI were established and consolidated at the National Association of Music Merchants (NAMM) conference in 1980. Then in 1983, version 1.0 general MIDI I was developed and implemented by the MIDI Manufactures Association (MMA). The standard configurations include
​
• A sound bank of 128 timbres.
• Responds to 16 discrete MIDI channels.
• Percussion sounds dedicated to channel 10
• Originally a 24-note polyphonic protocol was established but in 1999 it
changed to 32 polyphony, general MIDI version 2.0.
• 16 part multi-timbral.
• Are responsive to key velocity and respond to pitch bend, modulation, after
touch, breath controller and others 7 (channel volume), 10 (pan), 11
(expression controller), 41 (portamento on or off), 64 (sustain on or off), 121
(reset all controllers) and 123 (all notes off). There are numbers undefined
data numbers that could be exploited for other data that one wanted to
control.
General MIDI 2 is the industry standard today and is compatible with General MIDI 1.
​
The one safeguard in the MIDI protocol to sound patents of proprietary data based, which were based on investments in research and development, was system exclusive messages. System exclusive messages allow for the transmission of data form one synth to another synth from the same manufacturer (Korg to Korg, Roland to Roland, Yamaha to Yamaha, etc.). This ensures that other product lines could not harvest proprietary information and by doing so could maintain competitive differences.
​
Serial Transmission
​
MIDI data is transmitted in series–that is one byte at a time. There are two types of bytes that are transmitted via a shielded MIDI cable. The connector at each end has 5 pins. Pins 4 and 5 are the + and – data, pin 2 is the shield, and pins 1 and 3 were included in consideration for future developments. Today they are still not used.
Illustration 2.1: MIDI Connection
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
WIkipedia
The two bytes that are transmitted carry data bytes (0-127), which are an elaboration of status bytes (128-255) note on and off. (Data bytes control velocity, aftertouch, portamento, breath control, sustain pedal and more. All bytes are transmitted at the rate of 3,125 bytes per second or 31,250 bits per second (Baud rate). Each byte has an 8 bit + 2 configuration (8 bits for data and 1 bit at each end for byte separation). The bytes can be transmitted to 16 discrete channels.
Illustration 2.2: MIDI serial transmission.
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
WikiSpaces
MIDI Interface
​
A MIDI interface is required to connect MIDI devices together and specifically to connect to a computer, usually via a USB cable. An interface is a microprocessor that receives and sends data and status bytes. These processors work with all audio software programs since the data matrix is the same. Most synthesizers and controllers will have an IN, OUT, and THRU (through) while some sound models, especially percussion, may have only IN and OUT.
The IN port receives MIDI data, the OUT port sends data and is typically used by the keyboard controller, while the THRU port is a direct copy of the IN port. This allows for the ability of all devices to receive the data. Multi-THRU MIDI boxes were popular in the past to mitigate the limits regarding the speed of data being transmitted and to avoid MIDI lag.
Illustration 2.3: MIDI In, Out, and THRU on a Keyboard
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Wikipedia
Today, simple 2 MIDI IN and OUT interfaces are usually used since most sounds will be virtual and originate within the software program. There is no real need for multiple devices unless you are working with some older synthesizers.
Figure 2.4: Focusrite Scarlett 2i4 Interface
​
​
​
​
​
​
Modes
If you are using a workstation environment (controller and computer only) your concern about the different modes will be negated. However, if you are integrating some vintage technology in the form of synth modules and percussion (drum) machines you will need an understanding of MIDI modes.
​
MIDI interfaced equipped technologies come in the forms of multi-timbral (up to 16 different sounds, i.e. Korg T3), mono-timbral (one sound at a time, i.e. a MIDI retrofitted Moog), polyphonic (more than one note at a time typically up to 32 notes) and monophonic configurations (one note at a time). Usually synths that are polyphonic (2,6,8,16,24, or 32 notes at one time) will be multi-timbral while monophonic synths will be mono-timbral by definition.
​
The following four modes are using for receiving data via MIDI and are assigned to each device based on their channel reception:
• Mode 1–Omni On/Poly On. When the device is in this mode it will receive data for all channels (1-16) all MIDI and will execute polyphonic data. This is the standard mode used in most computer/controller set-ups today.
• Mode 2–Omni On/Mono On. When the device is in this mode it will receive all MIDI channels and will execute only in mono. Not useful today.
• Mode 3–Omni Off/Poly On. When the device is in this mode it will receive data on only one channel and will execute polyphonic data. This requires different channel assignments for different instrument or tracks on the software used.
• Mode 4–Omni Off/Mono On. When the device is in the mode it will receive on only one MIDI channel and will execute in mono. This requires different channel assignments for different instruments or tracks on the software used.
Illustration 2.5: MIDI Modes (Bold indicates modes most commonly use today)
​
​
​
​
​
Author
​
MIDI Configurations
There are several MIDI configurations that one can use. The three most common are presented here.
Illustration 2.6: MIDI Interface
​
​
​
​
​
​
​
​
Author
With this approach, the controller, which is an integrated MIDI device (combines controller hardware and sound generating circuitry) is set to receive data from all channels (Omni On). If the user wants to use the internal sounds of the controller then they will need to ensure that local control is turned on. Should they only want to use the virtual sounds within the software then they need to turn local control off. Otherwise, every track with a discrete channel number will trigger the sound of the controller for that channel. One would need to set a specific receive channel for the controller, i.e. Mode 3.
Illustration 2.7: Multi-through (THRU)
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Author
The multi through is useful for those who have an array of different MIDI instruments and/or modules within a studio setting since the audio outs from each device will be sent to a mixing console. Note that attention to channel assignments and modes are critical when using this configuration. The advantage to the use of a multi-through is that it alleviates issues regarding MIDI lag, that is, data running from one microprocessor to another in series. Each time the data goes through a microprocessor it loses about 10 milliseconds of transmission speed.
Illustration 2.8: Daisy Chain
​
​
Duncan Metcalfe
In this configuration the data goes through all of the devices and therefore the drum machine will be set to Ch.10, poly (industry standard although it can be changed), the sound module (a MIDI device contains sound generating set up to receive MIDI data from controllers and/or sequencing software) assuming it is polyphonic and multi timbral, will be set to receive Ch. 1-8 while the keyboard control will be set to the remaining channels 9, and 11-16, poly. Likely a decision will need to be made as to which device should have audio priority. This channel configuration could be: Keyboard Ch. 1-12 (if it is a 16 channel polyphonic synths, which most of them are today), then the sound module with Ch. 13-15, poly, and last a reassignment for the drum machine to receive on Ch. 16, poly. Note that most keyboard controllers today have percussion instrument(s) banks and therefore will alleviate the need for a drum machine. Last, this configuration will have MIDI lag but will not be noticeable.
Exercise 2.1:
Create a MIDI schematic that includes the following devices:
• computer
• MIDI interface
• 16 channel multi timbral and polyphonic keyboard controller
• synthesizer monophonic
• sound module 8 channel polyphonic
• drum machine 1 channel polyphonic
Be sure to indicate MIDI data flow, local on/off, channel assignments and modes. All devices must be used.
Note: there are several possible configurations based on type of instrument.
Additional MIDI Messages
In addition to status and data bytes associated with sound generation, there are also messages that control a variety of different aspects when using MIDI.
Illustration 2.9: MIDI messages
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Author
Mapped Instruments
Drum machines and synthesizers (channel 10) contain different percussion sounds for each key. This is referred to as a mapped instrument. They are placed to facilitate performance and by type. They can also be customized and relocated for personal preferences.
Illustration 2.10: A Mapped Percussion Patch
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Wikimedia
Keyboard Controllers
Perhaps the most important device in a MIDI set-up is the controller. Making the proper choice for your needs is critical in establishing the kind of workflow you require. Do you want to spend more time entering data manually or in real time using the controller? All MIDI data can be manipulated after entry, how every being able to enter all data including modulation, pitch-bend, touch sensitivity, key and channel pressure is best done while performing and less labor intensive.
Not all controllers are made equal, some will have 88 weighted keys while others will have plastic keys and/or less than 88 keys. Some will have joysticks, track pads, or wheels for modulation and pitch-bend, while others will have none. Some will have pads to manipulate percussion and some will have controls for a variety of MIDI data. A trained pianist will likely prefer 88 weighted keys to capture nuances in performance while music technologist may prefer controllers with the maximum of data entry flexibility.
There is also the consideration for portability and choice of personal, lab or studio use. The more flexibility the better–you may not think you need some aspects of control now but it will likely become important in the future as you develop you skills.
Illustration 2.11: Portable Synth with Multi MIDI Controls. Disadvantage is number of keys.
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Wikipedia
Some controllers will have no internal sounds and are strictly used for data entry like the one pictured above. Others will have sound banks with a typical configuration as listed below.
Illustration 2.12: General MIDI Sound Banks
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Author
Furthermore, the following identifies the MIDI data number associated with each pitch on a controller. This is important to understand since it will be used in the manipulation of data in the event list of a software program.
Illustration 2.13: Value assignments used in MIDI and their Frequency Equivalent.
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Joe Wolf, University of New South Wales