MIDI Channel Modes and the Basic Channel

MIDI Devices - Physical vs. Virtual

Modern keyboards, synthesizers and sound modules are often capable of sending or receiving messages on several MIDI Channels at once.

Thus, a single physical MIDI device may be structured as several independent 'virtual' devices, each being a receiver or transmitter of MIDI Channel Voice messages, and each having its own independent Channel Mode and Basic Channel.

In the following discussion, the terms 'MIDI receiver' and 'MIDI transmitter' refer to a single 'virtual' device. The terms Basic Channel and Channel Mode apply to a single 'virtual' device.

Not all MIDI devices implement all Channel Modes as described below. In the event that a particular mode is not implemented, a suitable alternate mode should be selected.

Basic Channel

The concept of the Basic Channel of a MIDI device is a little slippery, as it depends on the current Channel Mode the device. However, a useful definition might be be as follows:

The Basic Channel of a MIDI device is the MIDI Channel on which it 'normally' sends and/or receives Channel Voice messages.

The word 'normally' is used here because a MIDI receiver in Mode 4 may sound notes on channels other than the Basic Channel (if m>1).

A more precise definition would be:

The Basic Channel of a MIDI transmitter is the channel on which it sends Channel Voice messages while in modes 1, 2 or 3.

The Basic Channel of a MIDI receiver is the channel on which it responds to Channel Voice messages while in Mode 3.

A MIDI device must only recognize a mode-change message which it receives on its Basic Channel. (note 1) The Basic Channel of a device may be permanently assigned, or configurable by the user, or configured by a System Exclusive message. It may not be changed by any Channel Mode message.

MIDI Channel Modes

A MIDI device may have up to 4 different modes. These are controlled by two switches:

When a MIDI Device is put into a Monophonic mode, it is given a parameter 'm', which is used in Mode 4 to define the number of MIDI Channels to be used. (note 3)

Whilst a MIDI receiver is in a Mono Mode, if a 2nd note-on message is received before the note-off message for the previous note, for example

	 90 3C 40      90 3D 40      80 3C 40      80 3D 40
	----------- ~ ----------- ~ ----------- ~ -------------> time
        note-on(1)     note-on(2)   note-off(1)   note-off(2)
                              |<------------------------->|

then the MIDI receiver must sound only one voice (for that MIDI Channel). Beyond this requirement, the precise response of the receiver is not specified. However, it is suggested that the frequency of the sound may be shifted from the 1st note to that of the 2nd, without restarting the envelope.

Regardless of the Channel Mode, a note-off message must still be sent for each note-on message.

 

MIDI Channel Modes
 Omni Poly/Mono MIDI Receiver behavior MIDI Transmitter behavior
Mode 1 On Polyphonic The receiver will respond to Channel Voice messages on any and all MIDI channels.

Multiple notes will be played at once, if required.

The transmitter sends Channel Voice messages on one channel only.
This is the Basic Channel of the transmitter.

Multiple notes may be 'on' at any given time.

Mode 2 On Monophonic The receiver will respond to Channel Voice messages on any and all MIDI channels, playing only one note at a time (ie one note only across all MIDI channels).

The Mono Mode parameter 'm' is ignored, and m=1 is assumed.

The transmitter sends Channel Voice messages on one channel only.
This is the Basic Channel of the transmitter.

The transmitter may continue to send notes in a polyphonic manner.

Mode 3 Off Polyphonic The receiver will respond to Channel Voice messages on one channel only.
This is the Basic Channel of the receiver.

Multiple notes will be sounded at once, if required by note-on messages.

The transmitter sends Channel Voice messages on one channel only.
This is the Basic Channel of the transmitter.

Multiple notes may be 'on' at any given time.

Mode 4 Off Monophonic The receiver will respond to only one voice per channel, on channels:

n ... n+m-1

inclusive, where:
'n' is the Basic Channel,
'm' is specified in the Mono Mode message (note 3)

Whilst in this mode, a Control Change message received on channel:

n-1

is a Global Control message, affecting all the receiving channels (note 4)

The transmitter sends Channel Voice messages on channels:

n ... n+m-1

inclusive, where:
'n' is the Basic Channel,
'm' is specified in the Mono Mode message

Only one note may be 'on' for each channel at any given time.

Note 1
The MIDI Specification seems (at least to me) to be a little ambiguous on this point.
In particular, in the case of a device which is an Omni-On mode, if a Poly/Mono mode-change message received on a channel other than the Basic Channel, it is not clear whether this message should be recognized or not.
Note 2
Monophonic-mode is intended primarily for guitar controllers, where is it useful to have completely independent channels for different notes. This makes it possible to apply pitch-bend and portamento effects on a per-note basis.
Note 3
The special case of 'm'=0 tells the MIDI receiver to use the channels 'n'...16.
Note 4
The ability to respond to such a Global Control message may not be implemented in all MIDI receivers. If Ch.1 is the Basic Channel, Ch.16 may be used as the Global Control channel.

 

Previous midi_messages.html Up Contents Next midi_channel_voice.html