How Does the MIDI Sequencer Work?



Circuit Hardware

Can we really build a MIDI sequencer at home? The answer is yes and, when you see how simple they can be, you will never look at shop-bought MIDI mixer in the same way!



Before we build, however, we'll need to understand how MIDI sequencers work.

MIDI stands for Music Instrument Digital Interface and is, at its heart, a UART bus with a baud rate of 31250. While this baud rate may seem strange, it turns out that it is perfectly divisible into 8MHz which was a commonly used crystal in the past (MIDI goes as far back as 1980).

But MIDI is more than just a UART baud rate; it also includes a bit of circuitry and software, too! MIDI connections are (or at least should be) optoisolated and so our MIDI output uses two series resistors with an inverter (for driving), while our MIDI input uses an optoisolator and a Schmitt trigger buffer. The buffer, itself, is made of two inverters (to cancel out the inverting effect), while the Schmitt trigger action is used to improve the rise and fall times of the incoming UART.

The sequencer shown in this project has eight step buttons (pattern), four functional buttons, eight step LEDs, and four function LEDs. Since there are not too many IO pins on the PIC16F1516, row selection is being used, which means that each row is enabled and scanned to see which buttons have been pressed. (See my project, the DIY Laser Tripwire, to learn more.)LEDs are also turned on in waves very quickly (faster than the human eye can see) so all the LEDs appear to be on at the same time.

The only other circuit is the LM7805 linear regulator that uses the same standard circuit found in most of my projects.