Making An ARM Powered MIDI Synthesizer

What you see in the picture above is a hand-made 4-oscillator synthesizer with MIDI input, multi-mode filter and a handful of modulation options. It was built by [Matt], an AVR accustomed electronics enthusiast who made an exception to his habits for this project. The core of the platform is a DIP packaged 32-bit Cortex-M0 ARM processor (LPC1114), stuffed with ‘hand’ written assembly code and compiled C functions. With a 50MHz clock speed, the microcontroller can output samples at 250kHz on the 12bit DAC while being powered by 3 AA batteries.

Reading [Matt]‘s write-up, we discover that the firmware he created uses 4 oscillators (sawtooth or pulse shape) together with a low frequency oscillator (triangle, ramp, square, random shapes). It also includes a 2-pole state-variable filter and the ability to adjust the attack-release envelopes (among others). The system takes MIDI commands from a connected device. We embedded videos of his creation in action after the break.


  1. dings says:

    Arduino + Mozzi lib ne1?

  2. iong says:

    I wonder if you could play “Honor – Narodowy Socjalizm” on this thing.

  3. Trui says:

    Why not output 44 kHz instead of 250 kHz samples, and leave much more time for the software ?

  4. pcf11 says:

    It needs bigger knobs.

  5. Niklas says:

    Very cool, thanks for sharing the sauce. I have one of these chips I’ve been meaning to play with.

  6. fartface says:

    how many notes can you play at a time?

  7. Will Weber says:

    Matt, I am a novice with programming. I am a musician and truly like the build and form factor of this synth. I have an arduino uno. Is it possible to build this without an arm processor? Would you be willing to give the schematics/help me build one if I run into problems? Also, have you considered putting in an arpeggiator?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 96,562 other followers