Traffic

traffic

edit of @markeats loom for quickly decoupling motifs from their harmonic framework. updated to take advantage of global clock and menu redesign

i was going to wait until i found time to do the Big Redesign to add this to the library, but since there aren’t many scripts using arc on norns yet (and because i have no clue if i will ever be able to find time for the Big Redesign) i am adding it now.

as a computer music person i have always been drawn to sequencers as compositional tools. a standard way for me to write a song usually involves writing or creating an ostinato that i then reharm or recontextualize until it feels like it’s saying something that i agree with. usually this involves a lot of non chord tones, and i would never think of trying to do it in real time. but loom has become one of the most inspiring sequencers i’ve used. so much so that i wanted to try to do more of my compositional process on loom beyond just the initial inspiration.

so that was the goal for this project. i removed a lot of features from loom to condense the screen to one page. and on that page there’s always a way to 1) modulate key without transposing all the notes the same amount (through the circle of 5ths), 2) move the pitches up or down within that key, and 3) record these movements and play them back (have since learned this is called ‘metasequencing’…).

i am not good at coding and it took a long time but i have been really happy with the results!

a year later, the verdict is in. i will never find time for the Big Redesign. please enjoy this functional but nevertheless unfinished realization of personal goal.

Requirements

molly the poly – Molly the Poly

grid (optional but without a grid the sequencer pattern is random generator only)
arc (optional)

Documentation

quickstart:
–turn enc 3 to add/remove notes to a sequence. when you have a sequence you like,
–turn enc 1 to modulate the sequence through the circle of fifths, and/or
–turn enc 2 to transpose the sequence up/down within the current scale. when you hear some chords in an order you like,
– tap key 3 to turn on pattern recording, perform the key changes you like, then hit key 3 again.
–???
–song

other features:
key 2 toggles major/minor. if you hold key 2 it becomes shift.
shift + encoder 2 changes the amount encoder 2 moves per turn up to an octave.
shift + encoder 3 tweaks how the notes/triggers on loom interact.
stationary: normal loom
phasing: triggers move slower than notes
stationary: triggers don’t move
road rage: triggers are angry

known issues:
–pattern recording is not integrated with the new clock at all. unfortunately it is unlikely that i will be able to wrap my brain around fixing this.

Download

v1.2.0 - https://github.com/ypxk/traffic/archive/master.zip

github: https://github.com/ypxk/traffic

22 Likes

I am really digging this, thanks @ypxkap!

3 Likes

other two arc knobs:

I vote for controlling sound parameters. It would be neat if it’s assignable as well.
:slight_smile:

1 Like

not assignable but they should be working as of like 12 hours ago if you redownload!

they are pretty random though:
#3 controls adsr of env 2. counter clockwise more percussive, clockwise for more pad
#4 controls filter cutoff, resonance, env 1 attack/decay, filter tracking. counterclockwise for more percussive, clockwise for more brightness

i agree assignable would be good, but personally i don’t get enough utility out of just two parameters being mapped 1:1, there are too many parameters and sweet spots to just use cutoff/resonance or whatever. in my opinion the instrument rack mapping system in ableton is the gold standard, where more than one param can be assigned to a knob and the min/max value of the param can be set for each one and not for each knob.

i have no clue how to do that though.

but if you/anyone has ideas of stuff they’d want mapped to the arc other than what i put in here i could make some options as a meta param

1 Like

AWESOME!!!

downloading tonight!

thanks!!!

1 Like

small fix, midi clock in and clock out should now be working. i should have done it sooner, i did not actually realize how much fun midi sync is. sorry for the noise, here’s a video for the trouble.

4 Likes

(despite its decrepit, amateury code) i got this thing switched over to the new clock thanks to @dan_derksexcellent guide.

that was all i was planning to do since i have almost completely forgotten everything i know about scripting over the past busy year, but link support is such a great addition to norns! once i got it working, i had to add a couple more quality of life changes.

the main one is sync offset, a trigger in params that delays the sequence by 1 of the present step length. this is helpful because loom (the sequencer this is based on) by design has no concept of “measures”. this is part of the appeal—defining a note’s tempo only in relation to the tempo of other notes creates a lot of possibilities for unexpectedly deep/catchy grooves. but when you are driving a synth with loom and playing with a drum sequence also on link somewhere else, you at some point will discover that what you’re hearing as the downbeat of the pattern is actually the second 16th note of the third beat of measure 2. when that happens, just mash sync offset until the groove is landing in the pocket!

also, the params page is overhauled to include the new param group options. that’s it.

so thankful to everyone who put in all the work to get these things in. to anyone on the fence about scripting, i cannot overstate how little i know about any of this. that i could knock out all these changes in a single sunday evening after not thinking about this for literally an entire year is objectively insane.

here’s a pretty hard to follow video demonstration of the link workflow. traffic on norns is sending midi out to the OPZ, which is sending midi note data to ableton (basically a fancy midi bluetooth dongle so i don’t have to have a cord running to my laptop).

8 Likes