Norns on Raspberry Pi



The update broke my screen and audio settings by overwriting /boot/config.txt which caused a bit of a headache until i figured that out. YMMV


OK will update when i get back from hols well git pull norms and dust and ./waf. Think I will invest in a launchpad and dive into Lua.


some amazing work on this forum as always. I want to try and get this up and running - had a look over the build guide, I don’t have a pi yet so looking to order the pi3, is the pisound a good way to go? Anyone tried using a tablet as a screen/interface yet? I have an android one not getting a lot of love recently


yeah, I think the pisound is a great addition to the rPI, as latency is low, and it makes a compact setup.

id be also interested to hear what others have come up with
(I’ve lost track of whos doing what, and how far they have got…)


Rpi 3b+, audio injector zero, and a Pitft 2.8 screen using osc for encoders and buttons. Much fun had.


Rpi 3b+, PiSound, HDMI screen and TouchOSC for interface


I ended up manually running rpi-update to update my kernel to 4.14.52.

And then added all the norns software from the script.

This killed my OLED screen as the display driver module was not included in that kernel - thus I had to go and recompile the display module for the correct kernel version.

I think if I had gone with the full update, it would have hosed my audio setup, so either way seems slightly troublesome.


Does anyone tried to input or output sounds from norns via an USB-soundcard. I have a Zoom H1 that can be used as a audio interface and wondered if it would be possible to use it with an rpi3-norns (probably via Jack)


I’m using a USB m-audio fast track for the 5 pin MIDI connector. I thought of the same thing. It’s a known challenge for jack to sync > 1 audio interface. Might not be worth spending time on…


Thanks for the info!
Maybe I wasn’t clear about what I meant. I don’t want to use the H1 in conjunction with the Norns audio codec. I want to build a DIY Norns by myself and use the H1 as the sole audio interface.


sure works with my Zoom H5 (though i use a PiSound normally), so no reason I can see why H1 won’t work.

you’ll probably have to mess about with the buffer sizes a bit due to it being over usb, but im sure it’ll be workable. (I tried with 256 and seemed ok)


Hi there was going to try to use launch key as a grids controller . Do you thinking it would be best to use the push2 code in your branch of matron minus the screen and encoder stuff or start experimenting with lua. Thanks in advance


hmm, good question…

if you want grid emulation, then the push2 code is a good place to start,
but theres quite a lot of code involved in the Push2 matron code, so I guess it depends on your confidence in reading/writing C so you can ‘rip out’ what you need. (you’ll also want to look at what i did with the ‘device detection’ , as you’ll need that too)

I think this is definitely the best way to do it, as it pretty much solves what your trying to do already, and mainly the task is to remove what you don’t need, and convert a few lines to do with note numbers used for grid positions etc.

however, if your not that confident with C, the Lua would be easier to get ‘something’ going.

all that said…
Ive just realised mis-read your post, you said launchkey , whereas I read launchpad and I think that makes a big difference,

whilst you could very effectively emulate a monome grid on the launchpad,

its not going to buy you much with a 2x8 grid, as all the grid apps would be unusable (as is)
so you’d need to start doing lots of lua coding anyway, so you might as well go that way!?

if you want a grid experience, id definitely recommend getting a launchpad.

(Ive actually been wondering about getting a 2 launchpads midi, and doing a full 16x8 emulation mode for fun, but they are a bit expensive to do that just for fun :wink: )


Just jumping into this,

I see OSC Norns controls on here (maybe screen mirroring also?) but has anyone done grid emulation via ipad/tablet? (Grid is OSC anyway)

I’ve been doing some installations where I just leave a pi plugged in and do OSC for controlling via WiFi, would be sweet to just turn matron on and run sound as well (my pi3 CPU is pretty much unused since I’m using shaders). Any foreseeable issues with this?

As an iOS dev I would be interested to create a standalone OSC control app that standardizes the input :thinking:


grid on norns is serial, so in order to implement the emulation you’d have to hack the grid driver to interact with the ipad. depending on the setup it might be easier to add osc support to a script in addition to grid and have touchosc or similar running as a native osc (non-grid) controller.


Sorry no my error I did mean launchpad yes.


ah, cool then the first half my post stands :slight_smile:


I see no reason to '‘hack the grid driver’" to emulate the grid in norns.
its simpler to just write a matron “osc” driver that is able to send/receive grid events, its not that difficult to do, and is more flexible.

Im also not convinced of hacking scripts to support other devices, I think most want to be able to use existing scripts, and its also quite a lot of effort to start changing scripts like mlr which are not that simple - also then if/when that script gets updated, if your not careful you have to repeat the work again - imho, its not a sustainable approach.

screen mirroring - this is a bit trickier over osc, just because of the volume of data involved.
there would be two approaches:

a) send the underlying cairo calls as osc messages, (e.g. drawing lines, clear screen etc)
there would be quite a lot of (small) osc messages being sent, and it requires quite a bit processing on the tablet (which depending on what your using there might be easy or hard)

b) send ‘regular’ screen buffers
so let cairo process the messages then send back a screen buffer,
this makes the client side fairly ‘dumb’ / easy, but means quite a bit of data being transferred.
though admittedly the norns screen is pretty low resolution, so its not that much data.

Id probably try (b) first (as its quick and easy) , and see what the performance is like, before venturing into (a)

if your doing norns emulation, you’ll also need to do encoder/button emulation - but I think that’s already being done ( see above posts)

anyway, an ipad front end could be interesting :slight_smile:


doesn’t it imply that you’ll have to replace the current grid driver with the “osc” driver? in that case we are talking about identical things.


no you don’t need to replace the grid driver, they can co-exist ( as i said a separate driver)
so you could have a monome grid and a ‘virtual grid’ connected , this would then appear to norns as 2 (or more) grids. (norns already has support for multiple grids)