PicoStepSeq – RP2040 music maker
By Rosemary Hattersley. Posted
Embedded systems and hardware hacking hold no fear for Tod Kurt, who has years of experience with both. Tod shares expert tips on Arduino and MicroPython, and recently unveiled this PicoStepSeq MIDI sequencer based on our favourite microcontroller board.
Advertisement
Get started with Raspberry Pi – everything you need to know to start your journey!
Prior to his adventures in Raspberry Pi Pico programming, Tod’s company, ThingM, had launched a “simple but popular” USB LED notification light known as blink(1). This provides a visual indication that you’ve received a message, email, retweet, and so on. The idea behind the PicoStepSeq is also visual: using GPIO pins, Tod planned to program Pico to light a series of LEDs at varying intensities when each note played. “The Pico and the RP2040 are wonderful parts. So much possibility in such a small, inexpensive package!”

Musical muse
Tod found easily available ‘step switches’ – lever switches with LEDs – as an inspiration. “I wanted to make a MIDI step sequencer, looking like the 1980s synths and drum machines that had these switches,” he says. “Their integral LED makes it really clear of the state of the parameter that the switch is controlling, and they take up only a bit more space than a regular tactile switch. And their clicky-clicky sound is ‘chef’s-kiss’.”
Tod was also keen to make a Raspberry Pi version of a four-button step switch project he’d read about on the Adafruit website. “MIDI is a very forgiving protocol and much easier than trying to make an actual synthesizer”, says Tod. He thinks step sequencers are “a good way to think about music creation, because it limits you to only eight notes and a small amount of time.”

Simple steps
Tod was keen to use both USB MIDI and serial MIDI, which meant he’d need some sort of display or user interface. Given the number of GPIOs he was going to need, the GPIO-laden Pico was an obvious choice and made project design a breeze. Every part – button, LED, display, encoder, and MIDI – is wired directly to the Pico without the need for GPIO expanders, key matrix, or ‘charlieplexing’, says Tod. (Assigning multiple functions to a button by giving them different responses if they are enabled, disabled, or partially enabled.)
Since Pico has PWM (pulse-width modulation) and movable UARTs, Tod could simply assign a command to any pin, as well as use variable brightness LEDs. Getting the timings right for the I2C displays was trickier: their 35 ms refresh rate is relatively sluggish compared to the rate of incoming MIDI messages.

Tod turned to CircuitPython for its displayio library, which sends only necessary messages over I2C. With this, “most display updates take 5-10 milliseconds, which means I can still send notes with relatively good timing,” Tod explains. The code is on GitHub.
Tod is already thinking of how to refine the StepSeq with “a MIDI arpeggiator that has a little bit of music theory built into it, so it always stays in the right musical key.” The exact hardware can become a nifty tiny synthesizer too, he adds. “Perhaps the improved audio circuitry will be in PicoStepSeq Mk II.”
Rosie has worked for consumer tech titles such as PC Advisor, Computeractive, CNET and Macworld and written For Dummies books on using iPads, Androids and tablets
Subscribe to Raspberry Pi Official Magazine
Save up to 37% off the cover price and get a FREE Raspberry Pi Pico 2 W with a subscription to Raspberry Pi Official Magazine.
More articles
Get started with Raspberry Pi in Raspberry Pi Official Magazine 161
There’s loads going on in this issue: first of all, how about using a capacitive touch board and Raspberry Pi 5 to turn a quilt into an input device? Nicola King shows you how. If you’re more into sawing and drilling than needlework, Jo Hinchliffe has built an underwater rover out of plastic piping and […]
Read more →
Win one of three DreamHAT+ radars!
That’s right, an actual working radar for your Raspberry Pi. We reviewed it a few months ago and have since been amazed at some of the projects that have used it, like last month’s motion sensor from the movie Aliens. Sound good? Well we have a few to give away, and you can enter below. […]
Read more →
RP2350 Pico W5 review
It’s Raspberry Pi Pico 2, but with a lot more memory
Read more →