We, along with the rest of the maker community, often just say a project uses “an Arduino.” But there are many microcontroller development boards in the Arduino lineup, so how do you know which one to use? All of them can be programmed through the Arduino IDE using the same code, but that doesn’t mean they’re all equal. The most common board is the Arduino Uno, which is affordable and very well-documented. But this 3D-printed MIDI “Jammer” Keyboard, designed by Michael Koopman, was built using an Arduino Due.
Like the Uno, the Due is a development board you can use for low-level control in your projects. But it dramatically expands the Uno’s capabilities with a faster 32-bit CPU, 54 digital I/O pins, and 12 analog input pins. That makes it perfect for this MIDI keyboard, because it has a lot of buttons. In total, there are 91 arcade buttons and four potentiometers used for inputs. As you probably noticed, that’s more inputs than the Arduino has pins, which is why multiplexing was used for this project.
Those buttons are all mounted on a 3D-printed enclosure. The button layout isn’t arbitrary, and those arcade buttons are arranged to make it easy to play common musical chord progressions. That means you can use the same finger positions to play chords anywhere on the keyboard. The Arduino Due is programmed to show up as a MIDI controller when connected to a computer. In this case, it’s connected to a Raspberry Pi which runs MIDI software with different patches that can be selected or layered. Finally, the potentiometers can be used for adjusting the pitch and modulation. If you want to create a very capable MIDI keyboard, this is definitely worth replicating.