Approaching: norns



----Polygon Window----


Many thanks to @tehn and @okyeron in helping me get things rolling with norns today over on the updates thread. Here’s what I made once I got it working:

first norns
truthfully, it’s the second thing I made with mlr, because the first one was lost after norns crashed

and here’s the video if that’s your style:


what usb cable is that you’re using between your grid and norns??


just ordered, too excited.


catching up on this thread while my anticipation mounts.

has there been any update on the release of Crow?


Nothing too concrete except for this recent update from tehn last week:


Inspired by @stripes setup last month when we played at Commend, I picked up this 2-pk


Thanks! They look great on your setup. I think I would want them without the branding… I’m sure there’s an easy way to remove it, will have to order some.


My thoughts exactly after seeing the video. I wonder if a magic eraser would do the job…


Im not sure if this is the right place to ask - im hoping to control Just Friends via its Just Type awesomeness. Is this something that is planned?
Im pretty sure Ive asked before and the answer was yes and i think via Crow

This just popped up

Communication via i2c - so im assuming it shouldnt be that difficult to create something with that?


I’ve been reading these threads and I don’t recall seeing any plans for that, just people asking about it and the answer being that it’s not impossible.


crow will control jf (!)


Cannot wait for the crow!
I love norns, but I am dying to have it woven in with my modular instruments!
So excited for this.


@tehn will we have to siwch i2c cables from tele to crow to make this happen or will they work side by side?


I do not own any monome grid, but i do have an ableton push 1 lying around…
how difficult is it going to be to make its grid work?

(push’s MIDI implementation maps the “grid”-buttons to mini notes values, all other buttons are MIDI-CCs)


  • Could we use the 8 extra encoders on the push in parallel to the grid functionality?
  • Possibly send some information to the push’s screen



Thank you, i just wanted to make sure…


Very excited about this. No worries if you don’t want to take it in this direction but it would be rad if you could select a sample as the sound source.


Well: Push and the grid emit every different things; Push is (in user mode) a MIDI device, wheras the grid uses its own protocol (serialosc - as it says, OSC over serial). Norns has support for MIDI built-in (and a study coming soon), but most of the grid-specific apps like mlr won’t be expecting MIDI data. So you’d need to recode most of the UI for them. It would be possible, but… time-consuming. Also, note that the grid is 16x8, not 8x8 like a push, and some functionality always falls outside the 8x8 space.

In short: it’s more apples and oranges than you’d think; the fact both have a grid of buttons is deceptive.

Sending data to the Push’s screen is much more complex: in Push 1 it’s not really available iirc2, and in Push 2, you effectively have to render it on the computer and push it over a protocol to the Push itself.


recoding the patch is one way to go, but has to be done for every patch!
the other approach is to emulate a grid - I have the push2 emulating Norns, a Grid, and Midi, simultaneously :slight_smile:

(note: although this is shown on a rPI3, this code would work on Norns hardware)

the code is a bit lower level, but I’ve already done it for the push2 , and its available in my repo/ push2 branch.
this code could be quite easily adapted for a push 1. its mainly just removing the display code.
(note: i cannot do this, as i don’t have a push 1 anymore)

emulating the monome grid was pretty simple, as it has quite a restricted api (things like set, refresh) ,
if there was a will this could be done quite easily, not only for push, but also other grids like launchpads, using the same/similar approach.

there are older monome grids that are 8x8, so surely the apps should be being written in such a way to allow for these!?

to cope with this on the push 2, I just ‘virtualised’ the grid to appear to be 16x8. (trivial to emulate a 256 too :wink: )
this actually worked very well for almost all functionality, not many functions need access to both sides of the grid at once.

also bare in mind push has so many extra buttons, so these can easily be reused (with custom code) to move a lot of grid functions to dedicated buttons e.g. you dont need a alt func +grid key to do quantise, as push has a dedicated quantise button to use.
this obviously means patch changes, but is fairly simple, as your not actually affecting the grid code, rather supplementing it with new ‘shortcuts’

a push 2 screen is no more complex than the norns lcd , and in fact can be programmed in pretty much the way (once the usb comms is don) - the similarity is why I was able to replicate the norns UI on it, and it can be all run on the norns, which is a computer after all :wink:

push 1, now that is different… as its a character display rather than bitmap (like norns/push2)

this means that you cannot just hook into the norns display api and render as done on the push2.

rather you’d have to create your own UI, this would not be too difficult (e.g. just look at the lua code for displaying/changing parameters) and the midi/sysex model for push is really easy to code.

also you can see this as something of an advantage, as you can redesign the UI to reflect the push closer, e.g. using dedicated buttons (mix, tempo, bpm, etc) and also using the 8 encoders and paging system.
so sure some effort, but the results would be worth it!

of course would not help for patches which are graphically oriented, so only patches that are mostly parameter/grid driven will work ‘out of the box’

but you still have the option to create your own patches, and/or adapt existing patches, which again can make use of the full push hardware.

an even simpler way, if your using the norns hardware is to not try to use the screen this way.
rather, turn the encoders into CC’s which can then be used with norns built in midi mapping, and then use the pads as an 8x8 grid (or virtualised to 16x8 as discussed above)

Its an interesting area…

its seems most norns users have monome grids, so unsurprising thats where the main support lies.
but the new grid api allows for multiple grids, so perhaps this might generate more of a demand for other grids too be support as ‘secondary’ grids.

anyway, not saying any of this is 100% perfect , rather that its definitely viable, and if you have a push (or other grid) - why not!


I made a polyrhythmic sampler that uses the grid.
I’ve got some cleaning up to do, and a few more features to add. But it otherwise functions at a low ppq.

had to break out the ol’ potato to do some filming…