What Causes MIDI Stuck Notes and Infinite Sustain?
A MIDI stuck note is an unintended, indefinitely ringing tone that occurs when a digital instrument receives an instruction to start playing a note but never receives the corresponding command to stop. In standard MIDI protocol, sound generation relies on distinct pairs of messages: "Note On" and "Note Off." If the data packet containing the Note Off command is lost, corrupted, or delayed in transit, the receiving synthesizer remains in an active sustain state, creating an infinite drone until the voice is manually reset.
The Mechanics of MIDI Note Messages
Unlike analog audio signals, MIDI (Musical Instrument Digital Interface) transmits performance data rather than actual sound. When you press a key on a MIDI controller, the device transmits a Note On message. This message typically consists of three bytes:
- Status Byte: Identifies the message type (Note On) and the MIDI channel.
- Data Byte 1: The pitch value (0 to 127).
- Data Byte 2: The velocity or how hard the key was struck (1 to 127).
Critically, a standard Note On message contains no information about duration. The receiving sound module or virtual instrument (VST) has no idea how long the note is intended to last. It simply allocates a synthesizer voice to that pitch, triggers the attack and decay stages of its envelope generator, and holds the sound in the sustain phase indefinitely.
How a Missing Note Off Byte Causes Infinite Sustain
To end a note, the controller must send a matching command when the key is released. This can take the form of an explicit Note Off status byte followed by the pitch and release velocity, or a Note On message sent with a velocity of zero (a common bandwidth-saving technique known as "running status").
The synthesizer relies entirely on receiving this specific termination byte to trigger the release phase of the audio envelope. If the Note Off message fails to arrive, the synthesizer assumes the musician is still physically holding the key down.
Because MIDI instruments do not have an automated internal timeout for held notes, the sound engine continues to loop the sample or sustain the synthesized waveform. The sound will ring out infinitely until the maximum voice polyphony is reached and the voice is stolen, or the instrument is manually interrupted.
Common Causes of Dropped Note Off Messages
A Note Off byte can be dropped or bypassed due to several hardware and software issues:
- Buffer Overflow: When an excessive amount of continuous controller (CC) data—such as pitch bend or modulation—is sent simultaneously, the MIDI interface or serial buffer may choke, dropping trailing bytes.
- Physical Disconnection: Unplugging a MIDI cable or turning off a controller while holding down keys interrupts the signal path before the Note Off message can be transmitted.
- DAW/Software Glitches: Latency spikes, audio engine dropouts, or abruptly stopping playback in a digital audio workstation (DAW) in the middle of a MIDI sequence can leave active notes open.
- Packet Loss over USB/Network: Legacy 5-pin DIN connections, poor-quality USB-MIDI hubs, or Wi-Fi-based RTP-MIDI setups can experience electrical interference or packet drops that swallow critical data bytes.
Clearing Stuck Notes: The "MIDI Panic" Function
Because dropped Note Off messages are a fundamental limitation of unidirectional, event-based data streams, the MIDI standard includes safeguards.
Synthesizers and DAWs utilize a "MIDI Panic" feature, which sends a series of emergency control messages. Most notably, it transmits Control Change (CC) 123 (All Notes Off) and CC 120 (All Sound Off) across all 16 MIDI channels. If that fails, modern software often sends a batch of Note Off commands for all 128 available pitches sequentially, forcing every lingering voice into its release cycle.