How MPE Allocates MIDI Channels Explained
MIDI Polyphonic Expression (MPE) achieves per-finger expressive control by dynamically assigning each newly played note to its own dedicated MIDI channel from a predefined pool. Unlike traditional MIDI, which transmits performance data for all notes across a single shared channel, MPE isolates each touch gesture so that parameters like pitch bend, pressure, and timbre modulation apply only to the specific note assigned to that channel without affecting others.
MPE Zones and the Master Channel
An MPE configuration divides the standard 16 MIDI channels into one or two "Zones" (Lower Zone and Upper Zone). Each active Zone consists of a Master Channel and a contiguous range of Member Channels.
In a standard Lower Zone configuration:
- Channel 1 is designated as the Master Channel. It transmits global data intended for the entire instrument, such as sustain pedal messages, program changes, and global pitch bends.
- Channels 2 through 16 (or a smaller user-defined subset, such as 2 through 8) serve as the Member Channels reserved exclusively for individual notes.
Dynamic Note-to-Channel Allocation
When a finger strikes an MPE-enabled surface or expressive keybed, the controller executes a real-time allocation sequence:
- Detection and Selection: The controller detects a finger press and scans the Member Channel pool for an idle channel that is not currently sustaining a note.
- Assignment and Note-On: Once an open channel is
identified, the controller issues a standard MIDI
Note Onevent solely on that channel. - Continuous Tracking: As long as the finger remains
on the key, all subsequent dimensional expression data generated by that
finger is routed exclusively through that assigned channel:
- Pitch Bend (X-Axis): Transmits lateral movement or microtonal vibrato for that specific note.
- Channel Pressure or Poly Aftertouch (Z-Axis): Transmits downward pressure directly to the assigned channel.
- MIDI CC 74 (Y-Axis): Transmits vertical slide or brightness adjustments along the length of the key.
- Note-Off and Channel Deallocation: When the finger
is lifted, a
Note Offmessage is transmitted on the dedicated channel. Once the synth voice completes its release envelope, the controller flags that channel as free and returns it to the idle pool.
Polyphony and Channel Cycling
If a player triggers more simultaneous notes than there are available Member Channels, the controller employs a channel-cycling or voice-stealing algorithm.
Most MPE controllers use a round-robin or "least-recently-used" allocation method. If all designated Member Channels are occupied and a new key is pressed, the controller will allocate the channel of the oldest sustaining note or share an active channel, prioritizing the most recently pressed keys to preserve uninterrupted expressive response.