Norns: ideas



Was just envisioning myself sitting down in a park next week and recording some phrases into the tape and thought a metronome that doesn’t get recorded to tape would be really handy.

Hmm now I say this “out loud”, I wonder what a global clock could provide.


A more minimal approach on this: morphing between the tape recordings…


Not sure how this would work with the UI, but the ability to start tape recording on beat for scripts that have implemented beat clock would be nice.

I keep finding myself wanting to record something rhythmic and then load the sample into another script. I suggested earlier an audio editor that lets you set start and end points, but this would be a nicer solution.


another idea- vocal harmonizer/autotuner/vocoder engine to do Bon Iver-y stuff, with grid or midi input to play the vocoder. scale selection parameter for autotune, or perhaps just nearest semitone autotune would be fine. if someone managed to make something like this I would be happy to donate money to your efforts.


I was listening to James Cigler’s episode of Podular Modcast and he mentioned some of the noise engineering modules have musical downsampling by putting the base sample rate by whatever the pitch is set to. I would enjoy exploring this concept. Would also be cool to have the ability to bitcrush like the bastl microgranny.


Something like AU/VST host capability would be amazing. I’ve done this using the vst~ object in Max, but haven’t tried it with SuperCollider (if it’s even possible within that environment).

An ideal scenario would entail being able to host Aalto and Kaivo—arguably my two favorite software synths—and play them with keyboard, grid, knobs, etc.


Couldn’t agree more !


id suspect the easier/more flexible route is to allow norns to run different backends other than supercollider - e.g. using PD or a plugin host, this could expose parameters in the same way to matron as supercollider does… that said, not a trivial task

note: id love aalto too, but theres no arm version yet, and i remember early versions of kaivo were pretty cpu intensive on an i5, let alone on small arm cpu.
i guess this could become more likely if randy decided to release on Linux and iOS :wink:

but i guess, never say never…


Good points! While Aalto and Kaivo are ideal for me, I understand that they’re pretty CPU-intensive.


we’re actually working on this— it’s not an impossible task!


I was talking to a friend who’s building a bunch of noise instruments based off Peter Blasser’s unstable circuits like the Rollz5 and some of the paper circuits. We got to talking about chaotic/stochastic oscillators and unstable circuits in general. It seems the Teletype has a CHAOS operator but I don’t have a Teletype. I do have Norns and I’m moderately familiar with the Gendy1 UGen. Browsing the docs…there’s a two different categories for unstable UGens!

So yeah no concrete ideas but wow, exposing some of these to Norns would be interesting.


I’m very interested in this! Just got a little practice app whipped up that displays flash cards (the term for the current card is drawn on the screen, the definition is only drawn below it when KEY3 is held down) and it’d be great if I could read keyboard input to edit them from the app itself. It’s my first attempt at programming… anything… (outside some shell script stuff) so I’m not sure I can contribute much but I’d love to help!


Any plans on increasing the recording resolution from 16bit to 24bit, or higher? Or maybe there’s an audio setting I’m missing :thinking:


Something like Xenakis’ UPIC would be fantastic as well, and given the inputs available on Norns, connecting a Wacom tablet in order to draw compositions would be easy, right?


Oh wow, I hadn’t thought of that on Norns. There is a wacom-linux driver in mainline kernel but it’s not a generic HID device because Wacom has teh patentz. OR IS IT?

I dunno. Experimentation would be required to get all the features like pen/eraser and pressure. Or it would “just work”.

update: oh my…check this out. Spoilar, it’s a HID device detected by default.

we@norns:~ $ locate wacom
locate: warning: database ‘/var/cache/locate/locatedb’ is more than 8 days old (actual age is 11.9 days)
we@norns:~ $ uname -a
Linux norns 4.14.52-9-g646fe91 #8 SMP PREEMPT Fri Oct 5 01:45:05 UTC 2018 armv7l GNU/Linux

from dmesg

[ 2841.362858] usb 1-1.1: new full-speed USB device number 5 using dwc_otg
[ 2841.505585] usb 1-1.1: New USB device found, idVendor=056a, idProduct=0302
[ 2841.505594] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2841.505599] usb 1-1.1: Product: Intuos PTS
[ 2841.505603] usb 1-1.1: Manufacturer: Wacom Co.,Ltd.
[ 2841.559058] input: Wacom Intuos PT S Pen as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:056A:0302.0001/input/input4
[ 2841.559753] wacom 0003:056A:0302.0001: hidraw0: USB HID v1.10 Device [Wacom Co.,Ltd. Intuos PTS] on usb-3f980000.usb-1.1/input0
[ 2841.560199] input: Wacom Intuos PT S Finger as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1:1.1/0003:056A:0302.0002/input/input8
[ 2841.560414] input: Wacom Intuos PT S Pad as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1:1.1/0003:056A:0302.0002/input/input9
[ 2841.560599] wacom 0003:056A:0302.0002: hidraw1: USB HID v1.10 Device [Wacom Co.,Ltd. Intuos PTS] on usb-3f980000.usb-1.1/input1


try it with the hid.lua module. this module is misleadingly named, (and as @okyeron mentioned it is rather weird) because it is not a “simple” or “high-level” keyboard/gamepad driver, but rather a pretty light wrapper around low-level libevdev events. the lua module contains all the literal event codes and you should be able to get which codes are supported by any connected device.

the codes include:

  [0x18] = 'ABS_PRESSURE',
  [0x19] = 'ABS_DISTANCE',
  [0x1a] = 'ABS_TILT_X',
  [0x1b] = 'ABS_TILT_Y',
  [0x1c] = 'ABS_TOOL_WIDTH',

which looks promising for tablet users.

i pretty much did it this way because i figured we would never be able to test higher-level interfaces for every possible device someone might want to use; higher level interfaces for e.g. ascii keyboards could be wrapped around this low-level layer.

would be gratified if you wanted to put the system through its paces for a tablet.


I’m down. This is kind of a dream I’ve had for a while. I went down the tablet as multi dimensional controller rabbit hole a few years ago but got jammed up on Wacom’s SDK on macOS. It seems like it might be easier to do on Linux.

I wanna get a small demo of a chaos oscillator engine working first. I’m using an example from the Terman Wang neural oscillator by Nick Collins and the controller is the mouse x/y so it’s a logical transition to the tablet hid work.


Nice. Looking forward to seeing if I can get a Manta working with norns.


It would probably take more work to adapt, but if we’re talking X/Y/Pressure interfaces, the Sensel Morph does that in multitouch.

(I’m sure we can use it now, by establishing a layout in their editor and setting it to output in MIDI or as a joystick. But the raw multitouch data is much more compelling)

Here’s the API for that, in various flavors:
(c, cs, python, processing, and arduino. I think that’s it.)

Side note:
The morph is significantly more affordable this weekend.
(Black Friday…)


I got the chaos engine to work in a minimal way. Then I tried a basic print the events from a connected tablet and it seems the function names for the hid module have changed. Everything returned nil. I didn’t do much debugging. I’ll try some more next weekend.