Gizmo is the codename for an open source MIDI utility device which targets the Arduino Uno or Mega. It can do at least this:


  • Full-featured Arpeggiator
  • Full-featured Step Sequencer (16, 24, 32, 48, 64 steps, many performance options)
  • Small Note Recorder
  • Capable MIDI Gauge or Monitor
  • Small two-button, two-pot MIDI Controller
  • (On the Arduino Mega) 8-stage Loopable Control Envelope and Random/S&H LFO
  • (On the Arduino Mega) Keyboard Splitter
  • (On the Arduino Mega) Channel Merging, Chord Memory, Debouncing, Multichannel Note Distribution, Channel Blocking, and Note Replication
  • (On the Arduino Mega) Measure and Beat Counter
  • (On the Arduino Mega) MIDI NRPN/CC/Sysex Converters for Blofeld, Matrix 1000, Microsampler, and TX81Z


  • MIDI In and Out
  • NRPN, CC, and by-Note Control of Gizmo
  • Swing
  • Bypass
  • Additional control via joysticks and other pots
  • Tempo and Note Speed
  • MIDI Clock Control, Filtering, and Division
  • Click Tracks
  • (On the Arduino Mega) Transposition and Volume Modulation
  • (On the Arduino Mega) Output to 0-5V DC Control Voltage (V/Octave with Gate and auxillary voltage for velocity or pressure)
  • Storage for 10 Arpeggios and 2 (Uno) or 9 (Mega) Sequences / Recordings
  • Sysex memory dumps
Have an Uno but want a feature only available on the Mega? No problem! Gizmo is fully modular: you can customize the software to add or remove applications or features as you like.

Other Projects

  1. Flow, a fully-modular, polyphonic, additive software synthesizer.
  2. Edisyn, a patch editor toolkit with sophisticated exploration tools.


Gizmo's LED display is rock-solid, steady bright red. But in these videos it looks like flickery, junky yellow due to the camera. :-( Annoying. Note: these demos were of Version 1: there have been improvements since.

Introduction and Arpeggiator

Step Sequencer

MIDI Gauge, Controller, and Note Recorder

Obtaining Gizmo

Assembling Gizmo

To assemble Gizmo, you just need an Arduino Uno or Mega (if you want to develop, or have all of Gizmo available at one time, definitely get a Mega), a SparkFun MIDI Shield, an Adafruit 16x8 LED Matrix Backpack (they come in various colors, shapes, and sizes -- I use 1.2" round amber red), and some wire. And you'll do a bit of soldering.

In my current configuration, I use an Arduino Mega, a small breadboard to atttach the LED Matrix, and an acrylic mounting plate for the Mega and the breadboard.


Damian Raistrick wrote in with pictures of his beautiful custom enclosure for Gizmo. Check it out! Click on the pictures below for larger versions.

GearSlutz user Saint Gillis passed along his enclosure too!

And now for the coup de grâce. GearSlutz user PatMaximum has provided photographs of his Five-Gizmo monster. They're all headless versions controlled remotely over MIDI.

Development Ideas

I'm making Gizmo available in the hopes that people will do fun things with it. Ideas I've had include porting it to the E-licktronic MIDI shield family, extending the interface to include the 16x8 Unztrument or even just the Trellis Keypad, upgrading to an OLED (though it may be too slow), attaching a synthesizer shield, and of course making a decent case for this thing.

If you're thinking of doing development for the Gizmo, you should do it on an Arduino Mega. At present Gizmo takes up all but just a few bytes of the Arduino Uno's memory: there's no space left to code.

Similar Devices