MIDI stands for Musical Instrument Digital Interface. It is a communication protocol that allows computers and other MIDI-compatible devices to exchange data. With built-in serial ports, Arduino is ideal for DIY MIDI projects. Let’s take a closer look at ten of the best Arduino MIDI projects for beginners!
1. Arcade midi fighter
Create your own arcade MIDI controller! This MIDI controller is based on the Arduino Uno and has 12 buttons, four knobs, and two faders. Play drums, synths, effects, or match them to anything else related to MIDI!
The Arduino Uno has six analog inputs for knobs and sliders and 12 digital inputs that can be used for buttons. However, analog inputs can also be used for digital inputs, so you can tweak this build to have more buttons instead of sliders and knobs if you like.
For assembly instructions, check out the complete Arcade MIDI Fighter guide .
2. Mini UNTZtrument
This 16-button MIDI controller was inspired by the Novation Launchpad and designed by Adafruit. Based on the Arduino Leonardo, this device has four rows of buttons, each with a built-in LED, and four knobs. Since the project is equipped with a button grid controller, the Adafruit Trellis, it will be easy to solder without tangle of wires.
A complete list of materials, as well as step-by-step instructions, can be found in the complete Mini UNTZtrument manual . There is also another manual for the larger UNTZtrument .
3. MIDI guitar
It was inspired by the Guitar Hero controller, but this MIDI guitar uses mechanical key switches instead and has a NeoPixel LED strip light around the head of the guitar. It also features a shock bar for pitch bend. Users can play chords or notes, and adjust motion modulation using the built-in accelerometer.
This build has a Grand Central M4 development board that uses the SAMD51 chip, but the Arduino Mega can be used instead. The MX MIDI guitar body has been modeled in 3D and the manual is available on the Adafruit website.
Related: The Ultimate Guide to Connecting LED Strips to Arduino
Designed for DJs, Lune includes six EQ potentiometers, three effects potentiometers, an eight-button RGB LED panel, arcade buttons, an encoder, and even ultrasonic distance sensors for MIDI control!
The wooden body is laser cut; however, it is possible to 3D print the case with the various models available on Thingiverse. Follow the step-by-step instructions on Instructables.
5. MIDI arpeggiator.
Arpeggio is when the notes of a chord are played in rapid succession. This is a MIDI device that creates Arpeggio sequences in the form of MIDI messages. They are then sent through the DIN port to a central device such as a computer with its software synthesizers. However, it can also be used with hardware synthesizers. Assembly tutorial and code are available on the Arduino Project Hub.
6. Cthulhinho: MIDI sequencer
This is a MIDI sequencer built using the Arduino Nano for live performance. Although it is a prototype, this wooden box is equipped with an OLED display, rotary encoder, six momentary buttons, LEDs, DIN connector and more. According to the manufacturer, it is capable of driving up to five synthesizers.
Users can also feed the melody to Cthulhinho so they can focus on adjusting effects and shaping the sound with knobs or faders instead of fiddling with the keyboard. Full assembly instructions can be found in the Arduino Project Hub.
7. Arduino MIDI controller with encoder + OLED display + EEPROM.
This Arduino MIDI controller has unlimited MIDI channels, faders, buttons, OLED display, and even uses EEPROM to save changes to data . Other features include bank selection, editable notes, and encoder sensitivity. This controller can be used for all kinds of recording software, virtual instruments (VST), and playback devices.
The manufacturer also notes that a different Arduino may be required to add additional controls. An alternative option is the Arduino Mega, which has 54 digital I / O. A tutorial is available on the Arduino Project Hub.
8. Arduino MIDI Poly Synth.
This is a polyphonic synthesizer made on the Arduino Nano. Polyphonic means that two or more notes can be played at the same time, as opposed to monophonic, in which only one can be played. This synthesizer can be used to play up to three musical notes at the same time, so it is suitable for playing chords.
The manufacturer notes that an effects pedal can be connected to it, resulting in all sorts of interesting sound textures with delay, chorus, phaser, flanger, reverb distortion, etc. could use Arduino Uno R3 or Pro Mini.
A complete assembly description, including a list of materials and code, can be found in the Arduino MIDI Poly Synth manual .
9. Arduino MIDI Stepper Synth.
The creator was inspired by music for floppy drives, where floppy drives are driven by stepper motors that pulse at a specific frequency to play musical notes. Sounds amazing and it is!
This project uses stepper motors to create music by extracting MIDI data, which is then converted to a speed value that causes the stepper motor to generate the appropriate pitch. Build instructions and code can be found on the Arduino Project Hub.
10. DIY guitar MIDI controller (aka Guitorgan).
As the name suggests, this is a MIDI controller built with a guitar. It works by detecting which notes are playing by checking the electrical conductivity between the frets and strings. This method of determining the frets was used in the Guitorgan, an old school electric organ.
The manufacturer notes that this build includes an Arduino Mega and a guitar with metal strings. One caveat seems to be that only partial polyphony can be expected from it. Create this assembly by following the step by step instructions and the Instructables code !
Which MIDI controller is right for you?
In this article, we looked at a number of Arduino-built MIDI controllers. You can even use them with a digital audio workstation (DAW) such as Ableton Live.
All of these assemblies require other electronics than the Arduino; others require existing equipment such as an electric guitar. In addition, the housings for some of these assemblies require the use of a mock only during the prototyping phase. After that, you will need to use a 3D printer or laser cutter to assemble the case. Why not try doing one like this?