The mcu328: “Does it make a noise?”


Yes it does.

mcu328: Eurorack version

mcu328: Desktop version

Something of a chameleon module, this – it arose out of me having a bunch of Arduino Nano boards loitering in the bits box and having no idea what to do with them until I dreamed this up.

Basically, it can be considered to be a breakout for some of the pins on the Nano board – The analogue inputs A0-A3 are configured as, well, inputs for control voltages. Each input has a pot attached to it configured as a voltage divider so you can control the level of the incoming signal. The inputs also have some fairly hefty Zener diodes attached to them since the Arduino tends to go poof if you try and push more than 5V through any of the inputs.

mcu328 PCB: top

In addition, the digital inputs D0 and D1 are broken out – these can be attached to hardware interrupt handlers to do interesting things when they’re triggered. Or not. They can be configured as digital outputs too – you can generate trigger signals although since the microcontroller can only source a limited amount of current they may well need buffering and amplifying (I’m planning to rectify this in a future revision)

In terms of outputs, digital pins D9-D12 are exposed

– D9-D11 are PWM capable whereas D12 is a straight digital out. Each output has a switch associated with it – this allows the user to switch between ‘raw’ PWM mode (good for harsh-sounding stuff) where the output is resistively coupled, and filtered whereby the PWM signal is passed through an RC filter in order to generate something approximating an analogue voltage. Use-cases will vary – if you’re generating control voltages (eg. like the Lorenz firmware) then you’ll want the output to be filtered in order to create a ‘smooth’ transition between voltages. Conversely, for audio applications you’ll want the output to be ‘raw’ as the RC filter is quite aggressive and will flatten an audio signal – however, as with many things, there are exceptions to the rule.

It is also available as a kit if you want to DIY it (partial kits and other stuff are available as a custom order, naturally) – whilst there are a lot of components, the build isn’t particularly challenging as long as you take your time. In particular there are three possible power options: a 2×5 Eurorack header, a DC barrel jack or you can power the module over USB through the Nano board itself. Just remember that you should only use one power input at a time …

Hacking it …

Of course, being an Arduino-based module means that it is hackable – if you have the knowledge, you can write (or rewrite) the firmware to do whatever you want it to do.

The stock firmware is the ‘granulator’, a four-voice granular synthesis engine which is capable of some extremely weird and strange noises as well as being able to track 1V/oct reasonably well.

Then there’s ‘lorenz’, which implements the Lorenz attractor algorithm to generate chaotic CVs – combine this with the firmware’s built-in sample and hold functionality and you’ve got a great way to generate trippy, chaotic sequencers.

The best thing is, you can mix and match – reflashing the firmware on and Arduino board is a simple matter of plugging the board into your computer, firing up the Arduino IDE and uploading the new code to the board.

All the firmwares are freely available from the Github page:


Yes, it makes a noise 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *