The musical instrument digital interface, or MIDI for short, is a specification that enables computers, instruments, and other hardware to communicate. It first emerged in 1983, when computers started growing in use for music production.
Since it’s a serial protocol that operates at 31,250 bits per second, and Arduino boards with their built-in serial ports can send data at that rate, Arduino is the perfect companion to musical MIDI projects.
In this article, we’ve gathered some cool MIDI projects that use an Arduino board for the microcontroller core. In addition to an Arduino, each controller will need some other electronics and a case to keep it all together.
Some of the projects use existing hardware, like a toy guitar or keyboard, while others have a 3D printed shell. If you don’t have a printer of your own, you might like to leave it to the professionals at Craftcloud.
Without further ado, let’s face the music and check out these projects!
We’ll start simple: This is a 16-button MIDI controller based on the Arduino Leonardo. The ample number of buttons means you can assign a good range of functionalities from your Digital Audio Workstation (DAW).
This project allows you to forgo a mess of wires by using the Adafruit trellis, a button grid controller. There are even spots on the trellis for 3-mm LEDs to be soldered on, so you can make each button light up!
The 3D printable enclosure has had nine Makes and six Remixes on Thingiverse, so it’s definitely an achievable project!
It’s a ribbon synthesizer made with an Arduino! This MIDI controller was made with legato synthesizers in mind, which means the notes can overlap and slide together for more complex melodies.
Instead of normal guitar strings, this build has used three softpot potentiometers, and each of the “strings” is triggered by a drum pad. So, you slide your finger along the softpot while hitting the drum pad to play. Other controls include the potentiometers on the side that can be mapped to other MIDI controls, and there’s a joystick at the end that can be played with your palm while playing other notes.
The maker includes documented code that mentions tips and tricks for playing this MIDI instrument polyphonically. For another way to create an epic ribbon synth instrument, check out the XT Synth!
It looks like a Guitar Hero controller, but it’s not! This MIDI guitar has mechanical key switches instead, and even a whammy bar so you can pitch bend to your heart’s content! Strum chords or power through notes, and with the accelerometer, you can adjust modulation by simply moving the guitar.
The maker has utilized the USB MIDI library in CircuitPython. However, feel free to customize your build! While it uses a Grand Central M4 based on the SAMD51, an Arduino Mega can be used instead. The guitar head encloses some LED strips to really amp up the look.
This versatile MIDI controller was built with a bathroom organizer enclosure! The holes were drilled in to fit sixteen 75-mm arcade buttons. At the heart of it is an Arduino Mega.
This controller includes faders, knobs, pitch bend, and modulation wheels as well as LEDs. The project goes into heaps of detail about the physical construction, but you might need to look to similar projects for the programming side of things.
This maker has created their own budget-friendly MIDI keyboard with an Arduino Uno. In a subsequent post, they also make it velocity-sensitive and add an aftertouch effect.
This project takes a small electronic piano and fully replaces the internal workings to create an Arduino-based MIDI controller. The project description is detailed and includes circuit diagrams for you to follow as well as the full transcript of the code. You’ll need to supply your own toy piano, though!
It sparkles in blue, red, and purple! This RGB MIDI controller is based on the Arduino Pro Micro and translucent 24-mm arcade buttons. Titled the Flipper RGB, the maker created this controller after becoming inspired by the MIDI fighter from DJ Tech Tools.
Each button lights up in a brilliant blue but changes to red when pressed. To achieve the color change, the maker used LED strips instead of single LEDs. Also, he used a multiplexer for the connection of all 16 buttons.
Ever wanted to create your own Guitar Hero controller with a toy guitar? With a simple schematic including the use of an Arduino Uno, this maker did just that!
It will take some programming in Arduino IDE and Java to get this working, but the maker has kindly supplied their original code. Depending on the toy guitar you’re trying to adapt, you might have more or fewer features to play with, so the code could need some tweaks.
If you’re after a DIY controller suitable for DJ sets, then check out the Lune. It’s a MIDI controller equipped with potentiometers for EQ, volume, and other effects. It also has a simple arcade pushbutton.
For effects, it includes ultrasonic distance sensors! Finally, there’s an RGB LED pad and an encoder.
While the pictured enclosure was made of wood, you could always adapt the files to 3D print a case instead.
This one-of-a-kind MIDI controller doesn’t look like a typical musical instrument. However, it’s essentially a drum pad MIDI controller, just in an unexpected shape, with the six touchpads around the edges of the hexagonal case.
This project also includes a 16-LED ring and a step sequencer. Plus, it’s Bluetooth enabled!
While it utilizes a Feather 32u4 BLE, you could swap it out for an Arduino-compatible Pro Micro board. The 3D printed case files are freely available on Thingiverse, and they can be enlarged or shrunk as desired to fit your chosen components.
Need to change your presets but don’t like the hassle involved? Adjust the volume, tempo, and more with this DIY guitar foot pedal.
This MIDI foot controller for guitar playing is powered by an Arduino Uno. According to the maker, there are two expression pedal inputs as well as eight momentary push buttons.
As a convenient bonus, there are eight LEDs incorporated, so you can see from afar what’s been activated.
Lead image source: Adafruit Industries via YouTube
License: The text of "10 Amazing DIY MIDI Controllers Made with Arduino" by All3DP is licensed under a Creative Commons Attribution 4.0 International License.