I’d also like to see a Norns grainstorm

1 Like

You don’t have to use the speed param in mangl. :grin:

Set speed to zero. If you hold alt, arc ring 1 will let you quickly scrub through a file in a search for sweet spots. mangl will continue making grains acording to the other params when you stop searching. Each voice also has a filter for further shaping.

5 Likes

Is there a limit on the samples size?

After watching this talk on this development of a headerless Pi build of Yoshimi, I had the idea of a terminal based polysynth. The concept is something like Teletype but with a focus on waveforms rather than cv/modulation. I think you can do similar things with the teletype expander telexo.

I think it would be cool to be able to issue terminal-esque commands, and scripts rather than twiddling knobs.

3 Likes

I’ve been thinking lately about an OP-Z file management script. Here are the things I think would be useful and doable, organized in order of how much work I’d estimate they’d take:

  1. harvest the bounce wav files (and rename them on the way to their destination, as they are all named bounce.wav)
  2. manage sample sets and synth presets
  3. easy backups of projects
  4. create new ‘OP-1’ format sample sets

The only thing that’s kept me from diving in is my general lack of comfort with the proper way to wrangle the mount/unmount of the OP-Z in disk mode without requiring users to SSH in.

Happy to help test and do whatever work I can if someone with more experience wants to give me some guidance!

4 Likes

For my first proper norns script I’m thinking of implementing a MIDI arpeggiator based on the Waldorf note-list arpeggiator concept.

You can set each Step to either play the note it would do so anyway, to pause, to play the previous note again, play the first or the last note, play those together, play a chord consisting of all held notes or a randomly selected note.

Then you can adjust the Accent of each step (including silence), activate or deactivate Glide for each step, set the timing to play a step ahead or behind its nominal time, and finely adjust the note length between short staccato and full legato.

This is somewhat similar to spacetime and Dunes, with the difference that the note list is built from the MIDI input.

Additional arpeggiator details from the Q manual

Arp Step [ * / - / < / > / <> / ♫ / ?] basically determines which note of the note list is played at a particular step.

  • If * is selected (asterisk symbol), the Arpeggiator plays the step unaltered. The note list is advanced beforehand, except when you press a new chord.
  • If off is selected (empty space), the Arpeggiator plays nothing at this step position. When Length or Steplen is set to legato, the previous step that isn’t set to Off is still held to create the legato effect. The note list is not advanced.
  • If - is selected, the Arpeggiator plays the same note as it had to play in the previous step that was set to * or ?. With this setting, you can repeat a particular note of the note list several times. The note list is not advanced.
  • If < is selected, the Arpeggiator plays the very first note of the note list. This might be interesting if you want to only play the “root note” of a chord in a bass sound. The note list is not advanced.
  • If > is selected, the Arpeggiator plays the very last note of the note list. The note list is not advanced.
  • If <> is selected, the Arpeggiator plays a chord with two notes, the first and the last one of the note list. The note list is not advanced.
  • If ♫ is selected (notes symbol), the Arpeggiator plays a chord with all notes from the note list. The note list is not advanced.
  • If ? is selected, the Arpeggiator plays a random note from the note list. The note list is not advanced.
9 Likes

any news on this? anyone willing to collaborate on setting this up?
what is needed:

  • add libmanta to norns
  • add udev (?) rule to start mantaOSC if manta plugged in
  • provide basic manta osc callbacks in supercollider layer (since the manta generates a lot of OSC traffic, IMHO it’s easiest there)

Only just discovered this thread so thought I’d throw this into the mix and see how possible it would be.

This idea is based on Keith Fullerton Whitman’s “Generator” eurorack patch. The core of the patch is as follows:

An LFO (Usually ramp shaped) into the sample in of a clocked S&H, with a quantized output being fed into an ASR into 3 vcos.

Tweaking the Ramp LFO speed and the Clock speed causes shifting yet eventually looping melodies to emerge. The ASR element adds a density to the melodies, which is further expanded by the ability to tune the VCOs to 5ths, 7ths etc.

In my head, there could be pages for the following:

Page 1: LFO speed , shape, depth, clock speed
Page 2: LFO Shape, LFO Depth, VCO shapes, root notes, volume, fine tune
Page 3: quantizer scale etc

The main page for playing the patch would be Pg1 as it’s the correlation between the LFO and Clock speeds that cause the patch come alive, so being able to control those parameters from encoders 2 & 3 would be ideal.

Details on the basics of the patch can be found written by the man himself here:

https://www.muffwiggler.com/forum/viewtopic.php?f=52&t=133029&p=1943758#top

Anyway, I’m completely new to all this so this may be an absolute impossibility to create but I think it would be a fun and useful patch for the community.

5 Likes

Actually, when I mentioned making this patch for Norns in the Shift Registers thread, @Oootini kindly mentioned there’s a Crow script in the Bowery pack that may be repurposed for it.

R might be suited for this. It’s basically a scriptable modular synth…
Here are demo scripts: this one shows how to script a complex patch.

2 Likes

Thanks for that! Hadn’t looked into R before. On an initial read, it seems to click with me a little better, bearing in mind I have no coding experience whatsoever.

The only issues I can forsee based on the modules available is the generation of a quantized output from the S&H and then shift registering the same output across multiple vcos.

Maybe some sort of delay sync’d across a S&H module for each vca might do the trick? Hmm

I know this was written a while back, so maybe someone is already on this, but I’m banging my head against Supercollider currently, with a view to eventually attempting a port of my LPC synthesis Axoloti objects.

1 Like

Hello!
Is there an engine or attempts for one, that deals with Spectral/FFT/Phase Vocoder processing? Maybe a freeze effect as a starting point, or more creative uses with treating the real and imaginary components differently for glitch-like mayhem?

And something related to convolution? Maybe not the stereotypical convolution reverb, but more creative uses, I tried to layer sounds on itself via convolution in Ableton live, with hard to manage but sometimes interesting results in the past.

These are just ideas, I’m currently in the process of getting the parts for a Raspberry shield, so am not experienced with norns at all but willing to learn all the stuff.
I tried some FFT-stuff on the Bela/Beaglebon Black with SC but quickly reached it’s limits in terms of processing power, hopefully the Rpi 4 will provide some better results!?

here is an example of one. it does many things including a phase vocoder freeze effect (which is the tip of the iceberg of the PV_ChainUGens really)

you can get a lot of PV done on norns. optimization tips would include:

  • use PV_Copy and friends when possible/appropriate for parallel processing, avoiding multiple FFTs
  • prefer dedicated PV_* ugens (well-optimized) to rolling your own with pvcalc and pvcollect (not optimized)
3 Likes

Norns + grid seems to have a lot of potential as a platform for interesting “intelligent” midi controllers. I’d love to have a chord-based MIDI controller to quickly build progressions in ableton or just play around intuitively with hardware polysynths. I made this quick mockup sort of inspired by the Omnichord, Kordbot, and accordion bass buttons. I have almost zero coding experience and have no idea how feasible this is to implement, so I’m mostly just putting this out there because it’s fun to think about. None of this is precious or refined.

The right half is a play surface with buttons that trigger chords (top right quadrant) or individual notes of a chord (bottom right quadrant). Each column is a different scale degree plus an octave repeat. Each row in the top right quadrant represents diatonic triads or 7th chords built on the major or minor scale, so everything sounds in key (i.e. the row that says “major” aren’t all major chords, they’re triads built from the major scale). Bottom right quadrant lets you play individual notes of each chord (whether it’s octave/7ths or major/minor depends on the last played row in the top right quadrant).

The left half sets parameters. All are latching unless held for momentary selection.

“Base” columns set the center point of a parameter (bottom button = minimum, top button = maximum). “Spread” columns set the variance/distribution width of the values for the parameter for all the notes in a chord (i.e. it determines the average offset from the base value for a cluster of notes). E.g. MIDI note velocity base is column 7 and spread is column 8, so if velocity base is maximum and velocity spread is minimum, all the notes in a chord will have a velocity of 127. If velocity base is medium and velocity spread is medium then you’ll get a distribution of note velocities clustered around 64.

Note density leaves all notes in at maximum value and thins notes from of large multi-octave chords at medium or low values.

Different strike types are for different timing offsets of the notes and might include block chord, strum up, strum down, strum in, strum out, zig zag down, zig zag up, etc. Spread range in the timing offsets could be large to accommodate both naturalistic strums (low spread) and pseudo sequences (high spread).

Bottom half of column 1 sets chord inversions.

Top half of column 1 is for miscellaneous functions including a separate key select page, all notes off button, note-on latch or sustain (midi cc 64) button, and a secondary dominant modifier.

The secondary dominant button is a little wacky but seems like a good way to generate less “in key” sounding chords and quickly create tension and release without being totally random. When this button is pressed and a chord is selected in the top right quadrant, instead of playing the chord itself it will play the dominant chord of that chord. That means if you press the 5th scale degree chord in the major scale triads row (column 13, row 1) while the secondary dominant button is pressed, then it will play the dominant (fifth) chord relative to the chord you selected. In that case it’s the fifth of the fifth but you can select other scale degrees to play the fifth of the second chord or the fifth of the fourth chord, etc. I hope that makes sense as I know just enough music theory to say dumb things that might sound smart.

It’s sorta complex but everything is layed out on one page besides key select. One variant might be that instead of having major (ionian) and minor (aeolian) as the only two modes, you could select two modes from a larger list, but I’m not sure if that’s necessary (probably fine going my whole life without hearing locrian 7th chords).

9 Likes

So, I recently assembled my DIY Norns Shield. I’m still going through all the scripts available, which is great fun, and I have found a couple of uses to incorporate it in my music. But I’m looking for two apps/scripts which could be of great use to me. Does anyone know whether any of the following is out there?

  • I’m looking to use the Norns as a sample playing device. I would like to have a quick access menu to select a sample uploaded to the Norns. One button would act as a play button, another button as a stop button. No further audio processing necessary.

  • I’m also looking for a script similar to the looper function in the Line6 DL4 guitar pedal. One button acts as a record and overdub button (first press starts recording the input, second press puts the device in overdubbing mode, meaning that the loop starts playing but immediately records the input on top of the loop). A second button functions as both a play and stop button. A third button retriggers the loop with every press and plays it only once. If there could be a half speed/double speed function, as well as reverse mode, that’d be great. As this requires somewhat more controls, I’ve no idea yet how this would work with the limited controls on the Norns.

I’m still really new to this platform, so I have no idea how the coding would work. If someone could point me in the right direction (either an existing script or pointers on how to write the code for this), that would be great!

Thanks in advance, guys!

You could use TAPE.

I don’t have experience with that particular looper, but there are tons of great looper scripts. If none fit the bill, i’m sure you could work something up with softcut.

Check out the norns studies :slight_smile:

2 Likes

wrms + cranes !

2 Likes

I think a Norns roguelike would be super fun and a cool opportunity at a novel control surface. Anyone interested in getting libtcod wrapped for Lua 5.3? The last working wrapper I found was for Lua 5.1 and I have a few too many things rn to figure that one out… yet!

3 Likes

Now that I think about it, this thread might be a nice inspiration for screen interface designs for norns instruments/devices:

2643c1294a7249ff

23 Likes