Musical Instrument Device Interface (MIDI) is a protocol and connector for musical devices to accept input and output. A MIDI Arduino® project is a micro electronics project which uses the open source Arduino® microcontroller platform with a MIDI connection. This type of connection is not supported by any of the basic boards of the platform, so special boards or shields must be created to add MIDI functionality. New shields are interoperable with existing boards because the platform is open source.
One common type of MIDI Arduino® project is a custom synthesizer or similar device. These projects use MIDI to connect an existing musical instrument and use that instrument for input, and then process that information and output it. An ordinary synthesizer would output synthesized sound, but the flexibility of this platform allows artists to output anything it could control, including lights, robots, or network connections. Inventors can use this type of device to create light shows that respond automatically in real time to instrumental input. Alternately, the device can be programmed to wait for specific input and then produce a preprogrammed effect, such as an echo or a drum roll.
Other projects use MIDI Arduino® to do the opposite and create new instruments with traditional output. Some of these instruments are constructed as new versions of traditional instruments. One such example is the laser harp which operates much like a traditional harp except that the musician uses his or her hands to interrupt low intensity coherent laser beams instead of plucking strings. Other instruments are more like interactive art displays. These instruments can use a variety of sensors, such as microphones, light sensors, and pressure sensors, to create and modulate sound based on environmental input.
Outside of Arduino® projects, MIDI is typically used to synchronize music or to connect instruments to synthesizers. Some projects take advantage of that fact and use the microcontroller to change the way that connection works. The most common way to do this is to add effects such as a time delay, a buffer, or a more complex synthesis such as an audio differential operation. More complex uses of the MIDI Arduino® platform include synthesizing the data with additional devices or sending it to a computer or phone for additional processing. It is also possible to take advantage of the networking capabilities of the MIDI Arduino® to mix with instruments that are not physically present.