Arduino based MIDI arpeggiator, sequencer, recorder and looper

Sep 2019 - Aug 2020

Arpeggino is an Arduino based MIDI arpeggiator, sequencer, recorder and looper.

A detailed step-by-step tutorial on how to build it is available on GitHub and on Arduino Project Hub.

Check out the tutorial

Having studied Computer Science, I wanted to experiment with technology other than software. I love music, and I was intrigued to know how it is represented digitally. This led me to learn DSP, and after a few weeks of studying, I started to look for a project idea that would involve both music and technology.

I ran into this Arduino project and even though MIDI is not proper DSP, it was immediately clear to me that I want to build a MIDI sequencer myself.

Back then I knew nothing about Arduino or electronics. I did not know how to begin the project, and I was certain that I would not get to the level of the project I took inspiration from. I started by playing a single note via MIDI, then chords, scales, and arpeggios. By the time more and more ideas came to me, such as having an LCD, supporting dynamic configuration, recording and looping, etc.

During the development of Arpeggino, I learned a lot about Arduino and electronics, MIDI, and music theory, and I was fascinated by how code and music theory seamlessly integrate.

Arpeggino consists of three sub-projects:

  • Controlino - An Arduino library for using complex gestures of input controls behind a multiplexer.
  • Midier - An Arduino library for playing, recording, looping and programming MIDI notes, arpeggios and sequences. This is the engine behind Arpggino, that lets it do all the musical and rhythmical stuff.
  • Arpeggino - An Arduino sketch responsible for the I/O controls, LCD, serial connection, etc.