Hi! Just starting along with Norns and so far Otis is the most immediately useable and lovely script I have found. Thank you x1000 to the developers!

I have a few questions:
1 - Am I correct in assuming that SC Input and SC Engine don’t do anything?
2 - Is it possible to have Otis running at the same time as other scripts?
3 - what does write buffers to tape do? Saves the buffer to the internal storage?
4 - what do speed and pan slew do?
5 - on the main menu to the far left (??) what does “enq” do? And is “cut” just the master filter? And “tp”. does this stand for tape? And if so, what does this do?

That’s more than a few questions. I’ve tried to look for answers in the thread, so please forgive me if I my questions seem obvious.

Thanks in advance for your help!


Question 1: not sure which page you’re seeing this so I can’t really help.
2: Combos
Otis can be combined with some other scripts! @Justmat has done so already here, take a look at the script in maiden to see how.
3: yes!
4: these will slew/smooth the rate at which these parameters change.
5: these are the norns mixer page, “eng” is engine level, “cut” is softcut (a multi head delay that can be implemented in many ways depending on the script), “tp” is tape. Tape playback allows you to record audio files and play them back simultaneously to using scripts.

1 Like

Thanks for your reply!
Q1 was referring the main menu page farthest to the right. It has all the available parameters of Otis in a list~
Q2 Wonderful! Gotta get a Grid at some point then - and learn how to read scripts~~~
Q3,4,5 Excellent! That’s all very clear.

I appreciate you taking the time to reply!

In otis the sc input level and sc engine level parameters are to set the volume of input to softcut. I will try to write up a more detailed description of all the parameters and add it to the top post here. tbh, most of my script docs could likely use some love :sweat_smile:

1 Like

Thank you for clarifying that! I really appreciate it~~
And despite the above questions, I really love the script. It has made my first few weeks with Norns a true pleasure. Thank you!!


otis :dog2: gloops :poop:

really love the decimator ugen + softcut combo


Hi Mat!

Is there a way to force the 1speed and 2speed LFO targets to respect the “octaves” speed param? For instance, if I set otis to constrain speed changes to octaves (which is usually what I want), but then target the speed param with an lfo, right now the speed ramps smoothly at normal intervals. Would be great if the lfo snapped to octaves as well, kind of like turning the “dir” knob on a Count to Five.

Does that make sense?


That does make sense, and it’s something that I have been meaning to implement for a long time… just somehow never got to it :sweat_smile: :sweat_smile: :sweat_smile:

I’ll see what I can do :slight_smile:


20 chars of seconded!

adding onto to this, is there any way for midi cc to respect the octaves parameter as well?

i might dive into the code but i do not have experience with lua so i do not know how useful i will be.

1 Like

there are definitely ways to do this! i’ve been slowly working on an update :sweat_smile: i’ll add this to the list :grin:


I just read that you can use Otis with other scripts. I couldn’t find details above? Can you please direct my reading TY again @Justmat

1 Like

no worries of course and no rush! i am perfectly capable of using the native norns knobs for now.

1 Like

I will edit this with a better answer tomorrow.

Until then, check out bounds or oats for examples :slight_smile: (look for references to tlps for the otis looping setup)


Thanks heaps. I had a play with these fantastic scripts. I see they are packaged at your end and I remember some discussion of supercollider and softcut scripts being used simultaneously which it appears you are doing here

So, otis includes a file called tlps.lua (two loops) that sets up all the softcut stuff. It’s super easy to drop this into other scripts. just add a

local sc = include "otis/lib/tlps"

at the top of your script, and put a


in your init function. This will get you otis style softcut setup and parameters. You’ll still need to code in encoder/key interactions if you want them.

Oats is a good example of using otis with a supercollider engine. I basically just mashed boingg and otis together, UI’s and all :slight_smile:


Sharing a modification I’ve been using that adds monobright 64 Grid control… tested in a Zoom ambient jam last night :slight_smile:

64.lua (15.3 KB)

Controls are:

R r . F S . . C
D . . . . . . I
. . . . . . . .
. . . . . . . .
R r . F S . . C
D . . . . . . I
. . 1 2 3 4 . .
. . o o o o . .
  • R record enable
  • r record disable
  • F flip
  • S skip
  • C clear
  • D decrease rate (follows octave/free setting, would be nice to be able to hold down for free mode)
  • I increase rate
  • 1234 enable LFO at index
  • o disable LFO at index

Loop L is at the top, Loop R is below.

All touchable buttons are lit, and the LFO/record indicators light up depending on state.


Being a former coco owner I can say there is certainly some of that magic in this patch!!! wow.

Ive wanted to start a coco thread and somehow missed this patch until today. Thanks so much!


Whenever I’m in a situation where I’ve got only a handful of gear and I’m in a bit of a rush to record/perform something (i.e. can’t really begin preparing a lot of things beforehand) I find Otis to be the ultimate tool to turns those sessions way better.

I’ve been traveling around Finland a lot lately with small amount of gear, so I’ve decided to film some small improvisations here and there. Here’s one where I play hammered dulcimer, reindeer bells, Cocoquantus and Otis:

And I think that Cocoquantus and Otis complement each other really well :slight_smile:


I found the SK-5 that was mine as a child at my parents’ house today. Had fun doing a little Otis jam with it.