Welcome to the world of MIDI. The acceptance of the MIDI standard by manufacturers, developers, and consumers around the world has resulted in an explosion of MIDI hardware and software that ultimately benefits you, the user. MIDI is a complex subject, though, and many new users feel intimidated. It may help to realize that the reason for the complexity of MIDI is to allow you as much flexibility as possible. The purpose of this introduction is to explain to the new user the basics of MIDI, so that you can exploit the LN-4's features to the fullest.
MIDI stands for Musical Instrument Digital Interface. An interface is a way for two (or more) dissimilar devices to communicate with each other. MIDI is a way for two dissimilar digital musical instruments to communicate with each other.
In 1982, twelve American and Japanese synthesizer manufacturers decided to adopt a standardized communication format to allow their synths to "speak" to each other. (These twelve companies exchanged proprietary information for the benefit of musicians. If the personal computer industry had done the same, you'd be able to use a Macintosh disk in an IBM PC today). In 1983, the MIDI Specification, MIDI Spec for short, was published and made available to all synthesizer manufacturers.
The interface part of MIDI consists of a physical connection (the MIDI cable) and a common language that all MIDI instruments speak and understand. That language is a computer language and is generated and interpreted by the tiny computers (microprocessors) that every MIDI instrument contains. We'll take a closer look at the physical connection before going on.
The Physical Interface
Let's imagine that you want to connect your LN-4 to a keyboard-less synth module. First, you have to run a MIDI cable from the LN-4's MIDI Out to the synth's MIDI In. MIDI Out is used to transmit data. MIDI In is used to receive data. To connect another synth, you could connect a MIDI cable from the first synth's MIDI Thru to the second synth's MIDI In. MIDI Thru is a direct connection from a synth's MIDI In to the Thru jack. An important point to realize is that MIDI Thru and MIDI Out have nothing to do with each other. They are completely different data streams.
Now, you play a note on the LN-4 and MIDI data is generated. What happens? The information produced by playing the keyboard (the fact that you played a note, what note was played, how fast you pressed the key, and so on) is converted by the microprocessor in the LN-4 to a MIDI message, sent to the Power Module, and routed out over the MIDI cable.
The MIDI Language
MIDI is a digital language that consists of strings of ones and zeros, like all computer languages. The information in a MIDI message is transmitted on the MIDI cable in the form of a current that switches on and off very quickly. When it's on, the voltage is interpreted by the microprocessor receiving the voltage to mean zero. When the voltage is off, it means one. All MIDI data consists of nothing more than these voltages representing ones and zeros (called bits), which is why you need a computer (the microprocessor) to interpret them. The microprocessor then tells the synth to respond appropriately; usually, to produce a sound.
It's important to realize that MIDI data does not produce sound in and of itself. Synthesizers make the sound, MIDI data controls the synths. (The LN-4, like all MIDI master controllers, doesn't make any sound on its own. You need synth modules to hear something.) That's one reason why MIDI uses the 5-pin DIN connector — to help distinguish MIDI data from audio signals and so that people can't plug MIDI outputs directly into their amps.
Another important thing to remember is that MIDI data flows in any cable in only one direction. To have a two-way communication between synths, you need two cables.
Now we're going to take a closer look at our MIDI data.
Bits, Bytes, and Words
MIDI data consists of bits (ones and zeros) grouped into bytes of data, ten bits per byte. The bytes are then grouped into words. The byte is actually the basic information unit in MIDI, since bits convey too little information to be useful by themselves. Some of the bytes in the word carry actual musical information (a note attack, a pitch, a dynamic). These are called data bytes. Data bytes are just values. Your synth doesn't know to which of its parameters (its variable functions) it should apply the values without something to identify that value. That identification number is called a status byte. Every data byte is preceded by a status byte, which says in effect, "the value following me will be applied to pitch" — or volume, or any of hundreds of parameters.
Together, the data byte and the status byte form the basic building block of the MIDI message. What kind of information can be carried in that message, hmmm?
Types of Messages
First you have note on messages which, as you might imagine, tell the receiving synth to turn a note on — to play a note. They're produced when you press a key down. A related message is note off, produced when you release the key. This tells the synth to turn off the note previously turned on. In the dense rush of data that can be produced in a complex MIDI setup, note offs will sometimes get lost in the shuffle, resulting in "stuck" notes — notes that don't shut off. (In the LN-4 we've provided an emergency solution to this problem, as you'll see when we talk about the Panic button in Chapter 4).
Then you have note number messages, which tell the synth which particular note to play. The MIDI Spec allows for 128 different notes — about ten and a half octaves. Each note has its own number. Middle C, also called C3, is Note Number 60 for instance. The actual pitch or sound played when a note number is received depends on the synth's (or sampler's) settings. It could play a note in any number of different octaves, a non-pitched percussion sound, or a dog bark, according to how the note has been programmed or assigned in the synth. The controller doesn't know. It just sends out the note number.
Another type of message is MIDI velocity. This is one of 128 different values that corresponds to how fast you pressed the key on the keyboard. The faster the keystroke, the higher the value. That value can be applied to different parameters in most synths. Very commonly, it's applied to level or volume, so that a faster keystroke results in a louder sound. Consequently, velocity is often used as a synonym for loudness or dynamics in MIDI systems. You often hear a synth or sound referred to as velocity-sensitive, or touch-sensitive, meaning that it can respond to MIDI velocity messages by playing louder or softer.
Most synths allow you to adjust their degree of velocity sensitivity, and to apply velocity messages to other parameters, such as brightness or panning.
The MIDI velocity message has its own status I.D., as do all MIDI messages. Non-keyboard controllers are designed to convert their particular method of changing loudness to MIDI velocity messages so that synths can respond correctly, even though no actual keystrokes are involved. For instance, a MIDI wind controller will convert wind pressure to MIDI velocity so that the receiving synth will play louder with increased pressure.
Another common MIDI message is MIDI volume, which is often confused with velocity. Volume and velocity are related but different, and each has its own status I.D. Volume can be thought of as the maximum level at which your synth will play, and velocity as the range of possible values below the maximum. MIDI volume is something like the volume knob on a radio. The music being played by the radio covers a range of volumes, but the overall volume is controlled by the volume knob.
Some synths are permanently set so that the MIDI volume message always controls overall loudness. Other synths need to be set so that MIDI volume controls loudness. Still other synths don't respond to MIDI volume at all.
You'll notice that the LN-4 has a "volume knob", which in fact is a MIDI data controller permanently set to produce changes in MIDI volume.
Continuous controller messages are another common form of MIDI data. The wheel closest to the keyboard on the LN-4 produces continuous controller messages when moved. A continuous controller message is simply constantly changing values that correspond to the position of the wheel (or a knob or slider) at any point. These messages are often applied to modulation amount, so that you can add vibrato or tremolo to a note. (The other wheel is a pitch-bend wheel. Pitch-bend is a separate MIDI message.)
There are 128 (!) different continuous controller messages available, which can cause some confusion if you don't know what's going where. The LN-4 has one wheel permanently assigned to pitch bend. The other is assignable to any of the continuous controller numbers, so you can use it for anything. We'll talk about assigning the wheel in the next chapter.
Other types of MIDI messages are switch controllers, which just turn some function on and off. A common one is sustain, produced by stepping on your synth's sustain or damper pedal. Then we have program change messages, which will tell your synth to change to a new patch or program.
There are many other MIDI messages, but the ones we've just covered are among the most common. Not all synths respond to all MIDI messages. In fact, very few do. A synth's MIDI implementation chart in its owner's manual will tell you which messages are sent, received, and ignored.
It's significant that all MIDI data is sent serially, that is, one message is sent, followed by the next, and so on. The high speed of this serial transmission makes chords, for instance, sound together as blocks of notes rather than as arpeggios, but in fact each note in a chord is sent one at a time in a chain of data. The serial transmission format can be the cause of MIDI delays and traffic jams, which can occur when large amounts of data are sent via MIDI. This is one reason why the LN-4 has four individually assignable MIDI outputs. MIDI delays can be minimized by sending different MIDI data to different outputs.
If you have more than one synth, or if your synth is multi-timbral, it is easy to conceive of situations where you would want each synth to play a different part. For instance, you'd like one synth to play a bass sound, another to play a sting pad, and a third to play a flute solo. For this to work, each synth must listen to, or receive, only its own part and ignore all others. The data being sent from the master controller must correspondingly be designed so that the parts can be separated by the synths, since all the data travels on the same wire. This is where MIDI channels and MIDI modes come in.
Channels and Modes
In the situation described above, what we need to do is to send each part on a different MIDI channel and to set each synth so that it receives only on the correct channel. The MIDI Spec provides for 16 different channels of information in the data flow. (In fact, almost all MIDI words carry an I.D. number which assigns the word to one of the channels.) All of the MIDI messages we've discussed carry a channel I.D., which means that all these messages are assigned to a particular channel. Which message goes to which channel is assignable in the controller.
So suppose we set up our LN-4 so that notes played in the bottom octave are assigned to Channel 1 and will be our bass part; notes played in the middle two octaves are assigned to Channel 2 and will be the string pad; and notes played in the top octave are assigned to Channel 3 and will be the flute solo. (We'll show you how this is done in Chapter 5).
Clearly, the next step is to set the synth that will play the bass sound so that it will respond to notes on Channel 1 and ignore notes on any other channel. We also want to set the string synth and the flute synth to Channels 2 and 3, respectively. To do this, we'll need to set the MIDI mode for each synth.
In the early days of MIDI, all of four years ago, four different receive modes were conceived of in the MIDI Spec. Each mode consisted of two possible settings of two different functions, giving four different possibilities. The functions are: whether to receive on all MIDI channels (Omni On) or on one only (Omni Off) and whether to play one note only (Mono) or multiple notes (Poly).
The first mode, Omni On Poly, is commonly called Omni Mode. This is the default or startup mode for most synths, since it means that any notes received over MIDI will be played. It's an easy way to be sure that two synths connected together via MIDI will communicate. Omni Mode is sometimes called "idiot mode". When a synth is in Omni Mode, it will respond, or try to respond, to every MIDI message on every channel. This would not be to our advantage in the setup we described above because our bass part would be played by the string and flute synths as well as the bass synth. Not good. The mode we want in this situation is Omni Off Poly, commonly called Poly Mode.
In Poly Mode, a synth will play only those notes assigned to its receive channel and ignore all others. In Poly Mode you must set the synth to the channel that corresponds to the part you want the synth to play. In this case, the bass synth should be set to Channel 1, Poly Mode, the string synth to Channel 2, Poly Mode, and the flute synth to Channel 3, in Poly Mode. Now each synth can play its assigned part without overlap or confusion. If everything's been set up right.
The other modes are Omni On Mono, which is almost never used, and Omni Off Mono, commonly called Mono Mode or Mode 4. Soon after the original MIDI Spec was developed, synthesizers were released which could play more than one sound at a time, so-called multi-timbral synths. In order to play these different sounds simultaneously via MIDI, at first it was necessary to work in Mode 4 and to assign each individual note and sound to a different MIDI channel. This was really inconvenient and soon a variant of Mono Mode appeared, called Multi Mode.
In Multi Mode, any number of notes can be assigned to different MIDI channels in one synth, so that one synth could conceivably play all the parts outlined above. In fact, this is a common procedure.
Most multiple-synth setups are operated in either Poly Mode or Multi Mode, which allows the most flexibility. Omni Mode is most useful with a setup consisting of one or two synths. Mono Mode is generally used only by MIDI guitarists these days.
Masters and Slaves
The final concept we're going to cover is masters and slaves. No, it's not what you think. We're talking about MIDI masters and slaves. Any device which controls other devices is called a master controller. Devices controlled by master controllers are called slaves. The LN-4 is designed to be used as a master controller with any number of slaves.
You should realize, by the way, that the concept of MIDI Modes only applies to the way devices receive MIDI data. The LN-4 can send on up to 4 MIDI channels at once but we don't refer to it as being in Omni or Poly Mode. Omni, Poly, and Multi only have meaning when applied to slave devices.
At any rate, if your slave devices are keyboard synths, you may want to set them to Local Control Off, which means that a keyboard doesn't control its own synth section. This will help reinforce the master/slave relationship. Not all synths provide for Local Control Off, however.
A Little Philosophy
There is one final point to discuss before leaving. What does all this technology mean? Many musicians have voiced the beliefs that "MIDI is too easy" or that "MIDI is putting musicians out of work". Others fear that MIDI music is "too mechanical" or worse, that it dehumanizes its listeners. Is MIDI bad?
The fact is that technology has no morality; it's not good or bad. It's the application of technology by people that is moral, good or bad. For most people, MIDI opens doors that were previously closed. More people, professionals and amateurs, are able to make music easier than ever before.
Consider the handicapped musician who, through accident or disease, has lost the use of his limbs. At one time this musician would never have been able to make music again. Now, however, with computers, MIDI, and special input devices, such a musician is able to create again, on his own. It's happening today. What could be a more benevolent application of technology than that?