The Monome Norns Shield

This is another long overdue post about my music hobby, and a sort of follow-up to the one about the in the sense that it too describes a musical gadget that’s been in the house for a while–in this case, a homebuilt Monome Norns Shield:

The Norns, running a drum sequencer piped through the Novation Circuit Tracks audio in

So what is a Norns, you might ask?

Well, in short, it’s a -powered music device with an active community and a large library of tiny little apps for MIDI and audio processing–which, importantly for me, include audio loopers, sequencers and generative music.

I knew of it for a while since I’ve been considering building a Zynthian as a way to re-purpose some of my phased out 3 boards1, and as I was keeping track Pi-related stuff I came across Monome and their gear.

But I didn’t realize at the time they offered a “shield” version of their synth, and mostly forgot about them for a while–also, at the time, I hadn’t really picked up on what it actually did, and was more interested in seeking out synths and samplers.

What It Can Do

Loopop has a great demo video of how the whole thing works, but as it happened Luis Correia had built one, which he loaned to me lastOctober or so.

I played around with it for a while and was immediately in love with its quirky UX, vibrant community and software platform.

I have plenty of synths, but literally nothing else like the Norns, and its default generative sequencer (awake) hooked me from the start because you can go a long way with very minimal twiddling:

So I talked to Luis – crucially, he still had extra Shield PCBs and CS4270 DAC chips, which were (and still seem to be) impossible to obtain due to supply chain constraints, and we hatched a cunning plan to order the remaining parts and build at least two more.

Hardware and Software

The Norns Shield PCB lacks the full set of ports that the “regular” Norns provides, but gives you line in/out TRS (unbalanced) jacks, a nice OLED display and three pairs of buttons and encoder knobs, which allow you to navigate the interface and tweak various parameters in exactly the same way as the “full” device.

Mine is powered by a 3B+, which has more than enough oomph to do everything it needs.

Under the hood, the Norns runs its own stack (based on Raspbian) with suitable drivers for the OLED and encoders, and uses Supercollider and bindings to do everything from drum machines to generative audio.

The bit, in particular, drew me in because it makes the Norns almost infinitely extensible to do just about anything you want where it regards manipulating audio or MIDI data (and there are hundreds of creative hacks out there already to learn from).

Monome provides regularly updated firmware images (I’m running release 220306, which was released a few weeks ago), and once you get it running and on your network (where it defaults to showing up as norns.local), you can use its web interface (called maiden) to edit Supercollider or scripts, manage libraries, install new packages off lines, play back recordings, etc.

You can do a lot via the web interface, including editing core scripts.

A Note On Grid Controllers

One thing you should know is that The Norns is supposed to integrate with Monome’s Arc and Grid controllers (and many scripts assume you have one of them), but there are a number of third-party add-ons out there to get it to work with other grids like the Novation Launchpad.

I’ve started hacking on a “soft” Grid, but as usual time hasn’t been on my side at all.

My Case Build

While we waited for parts to arrive, I came across a very nice case design on Thingiverse and decided to run it through my , which resulted in an acceptable but unpolished print (the layer lines were clearly noticeable, for starters):

I started out with white PLA, but this clearly needed work

Before I got the actual shield from Luis, I took the time to do some test fittings as I sanded it down and began evening out the surface:

The case measurements were A-OK, and (even though you can't see it) the MicroSD card slot was also perfect.

I then got some spray-on filler, and the painstaking work of filling the layer lines, sanding and painting began.

Total time: 4-5 hours to print, around three times that (spread over a couple of weeks) patiently sanding with 120 and 400 grit paper, applying primer and a few coats of paint and waiting for things to dry before trying again.

I took my time and did more, lighter coats for a nicer finish. That is the safe and sure way, and I learned that the hard wat after melting away a coat of primary by not allowing it to dry.

On the whole, it was quite fun and I found it a welcome, almost therapeutic excuse for spending some time “outside” on the balcony during yet another round of COVID restrictions (actually getting some sunshine in 20-30 minute sessions near my lunch break) and it clearly paid off–I got a nice, smooth matte look with a subtle textured finish:

The final top half, just before assembly. Some print artifacts are still visible inside the holes, but were easy to smooth off with a fine file.

I also printed, sanded and sprayed the knobs (which can be seen in the top photo), tacked on four little domed translucent rubber feet, and everything was pretty much done.

Pluses and Minuses

My impressions of it in five bullet points:

  • The Norns is huge fun. You can literally spend hours just experimenting and fiddling around with it, even without anything else attached, and some community scripts are works of pure genius.
  • You can record anything you do on the Norns itself (you get a built-in mixer, recorder, preset effects, etc.).
  • However, it relies too much on the first-party Grid and doesn’t play well with non-Norns MIDI devices out of the box–there are community hacks for a lot of things, but it would be nice to have those baked in.
  • The UX can be bit fiddly, in the sense that you have to remember what each button and encoder does across each app, and buttons can also be held down for different lengths of time, so sometimes it’s hard to navigate.
  • Finally, Supercollider can be obtuse in various ways. I’ve yet do to much but minor tweaks to some instruments, but its first-party documentation could be better (the Norns site is excellent, though).

But I do think it was more fun to build than the Zynthian would have been. I don’t think I’ll know any time soon, though because it is currently also impossible to buy a Zynthian kit, although I’m considering hacking something together.

Likely Improvements

The case lacks markings to distingush Line In and Line Out, and I’m loathe to use a permanent marker to daub little triangles on it, but if I were to do it all over again I’d have inset them using CSG on the raw STL file, since I end up mostly figuring them out by trial and error.

The only thing I would (and probably will) re-do are the encoder knobs, since the shafts of mine clearly don’t match the models I got and I had to spend extra time filing and widening the hole to fit them.

But, most importantly, since they are set on continuous encoders that don’t click, I might print octogonal or hexagonal knobs to give me some sense of how much I’ve rotated them.

  1. I did hack one together with a Series 1 Pi , so that was always at the back of my mind. ↩︎

This page is referenced in: