Professional MIDI Guide
MIDI Routing Matrices
As soon as a MIDI system grows above six pieces of equipment there is a need to route them in different configurations and, as most commercially available instruments use cheap connectors, some patching method is required to prevent constantly replugging cables. The very simplest types are passive, just a few switches, but these soon become unusable when changes are made while data is being sent. When devices that continuously transmit clocks or active sensing are used there is a high likelihood of corruption when changing patches which may put some equipment into undesirable states. A system of safe switching becomes necessary that can detect the boundaries between MIDI messages and synchronise patch changes to them. Even then there is still the possibility of separating a note off from a note on and leaving a synthesizer with a stuck note playing, so a means of dealing with this situation is required.
MIDI matrices may be either hardware or software based. The software types are really a microprocessor with multiple MIDI interfaces and the routing is done by the program. This technique is used by many small units, usually of 8x8 size, but does not work well under heavy traffic conditions or as the size increases. The timing performance of such units is statistical, not constant, and rarely given by the manufacturers at all. There is a minimum delay caused by the two parallel/serial conversions and the software queuing. Extra features such as merging or data processing are usually provided by this type of router, but under worst case conditions, such as hitting stop on a sequencer when a large amount of zeroing data is transmitted, corruption may occur that leaves equipment in random stuck states.
A hardware matrix does not convert the MIDI data at all; it electronically routes it from one input to one or more outputs with only the propagation delay of the circuitry, typically less than 0.5 microseconds. By its nature a hardware matrix cannot provide merging or processing, but it is far better to patch to dedicated processors only when required than to have them permanently inline and not used, but creating a delay and unreliability overhead.
Once a matrix router has been incorporated into a MIDI system it soon becomes indispensible so that reliability and ease of maintenance become prime considerations. A fault that requires a return for repair effectively stops a studio working.
When planning a MIDI installation, provision should be made for future expansion. New devices may be introduced that suddenly require eight more MIDI ports and adding another small matrix will not provide the functionality required.