Fourtunes - a 4-track polyphonic step sequencer


A 4-track polyphonic step sequencer with independent rates, lengths, and trigger patterns per track.


Fourtunes is a 4-track polyphonic step sequencer, inspired by sequencers you’d find in instruments like the JX-3P and SH-101, and the unusual paths you find yourself wandering down when you trigger those sequencers with an external clock source (like a drum machine) that is decoupled from the programmed sequence of pitches.

Fourtunes currently requires MIDI input for programming pitches. Fourtunes can output MIDI on an independent channel for each track, and also integrates with the excellent Molly The Poly synth engine from @markeats. Each track output can be routed to MIDI, to the internal synth, or both.

Each of the four tracks contains the following:

  • A polyphonic pitch sequencer that is programmend in step time via MIDI

  • A 16-step trigger sequencer that advances the pitch sequencer.

  • A 16-step euclidian rhythm based trigger sequencer that works in tandem with
    the main trigger sequencer (or on its own if you leave the trigger sequencer empty) to advance the pitch sequencer.

  • An 8-step transposition sequencer that transposes the main pitch sequencer.

The length of each of the 4 sequences (pitch, trigger, euclidian trigger, transposition) can
be set independently while the sequencer is playing. The rate and gate times of the trigger and euclidian trigger sequencers are shared. The rate of the transposition sequencer can be set independently from the others.

There are 8 pattern slots available (a pattern being a collection of every sequencer from every track).

It all maps out like this:


Fourtunes features multiple pages/modes, but the controls all tend to follow the same pattern.

K1 - hold to shift

K2 and K3 - functions always displayed at the bottom of the selected page.

E1 - select current track

K1 + E1 - select current page/mode

E2 and E3 - change whichever parameter(s) are displayed on the left and right side of the main
viewport. If there are more than two parameters, K2 will select between the different parameter


MIDI input



v1.0.1 -


Looking forward to trying this! Thats my favourite sequencing approach, different lenghts, clock divisions…thanks for this!

1 Like

I love that you created a manual for this. Excited to give it a try!

1 Like

Awesome! Hopefully the manual isn’t needed, but I figured why not.

1 Like

This is so neat, thank you so much for this!

1 Like

Awesome sequencer! Had a ton of fun with this, this leads to a lot of happy accidents!

Any plans for Grid support? Using the grid to activate and select steps for triggers would be nice.


Awesome! This is definitely intended to work as a happy accident machine so I’m really happy to hear that.

I have some ideas for how to add Grid support to this, but I don’t have a Grid. One day! One day…

I do have a Midi Fighter Twister and will be adding support for that as soon as I have time. I’m also planning on adding track LFO’s for getting weirder with things like transposition, sequence length, pattern selection, etc.

If you have an iPad, check out TouchOsc it works pretty well as long as you don’t refresh the grid too often. It works, but not as fun as a hardware grid.

Track LFO’s should be fun!

I just got in to Norns development and am also working on a Polyphonic Step Sequencer, also using Molly The Polly for sound until I decide to dive into Supercollider.


Wow! Had some time to experiment. That’s a wonderful sequencer.

At the end of my session I had some problems with midi input (Sensel Morph though recognised by my Fates couldn’t input notes) but this is nothing I can reproduce so I will check again some other time.

Thanks a lot. Besides Cheat Codes this is one of my favorites!

1 Like

Would love to see Crow support and Just Friends.
Can imagine that this would be a killer sequencer with Just Friends!


Thank you! I’m happy to hear that you had fun with it.

As for the MIDI issue, that kind of sounds familiar…did you happen to remove an attached device? I think something like that happened to me while working on it. Pretty sure I switched the MIDI Input device from 1 to and back to 1 again to restore it.

Hmm I’m pretty sure I could get this working with Just Friends without too much trouble? I don’t have a JF module but I did play around with that Exquisite Script exercise and could test with the Imaginary Friends engine.

1 Like

That would be amazing!
Happy to beta test it for you too.
Preferably having JF run in note mode over vox mode although both would be awesome.

Yes, I think it was that kind of situation. I accidentally removed the power plug and had to restart Fates… that’s, I guess, when the midi input did not work anymore. I restarted again and also repeated the midi device assignment serveral times. Finally it worked again but - as far as I remember - not for all tracks.

Somehow weird and nothing I could report on in a systematic way. I will check again and report back.

By the way: I also like the Fourtunes interface very much! And yes, as I have a grid, grid support would be ace!

1 Like

hi, the interface lags a bit and i do not get some tones out. midi in works and i can hear the internal synth but if i recorded some notes, after pressing play nothing happend :confused:

but i like the idea of this script, perfekt for a digitone for exmapl (4 channels)

1 Like

Uh-oh that doesn’t sound good! Were you experiencing interface lag on a particular page, or all pages?

As for recorded notes not playing back, could this have been caused by the track output(s) being set to MIDI? I just noticed that if the track output is set to MIDI, you’ll still hear the internal synth while playing MIDI in, but the synth won’t be triggered on playback. I can see how that might be confusing and I’ll take steps to correct that.

Either way, thank you (and everyone else) for pointing these issues out! I appreciate the feedback. :heart:

hey thanks, now midi out works like expected i just restartet norns several times.
lag on all pages dont know why sorry.

Could your midi controller be sending excessive messages? Or routing midi out back in?

hi, this could be the reason, yes :=) i use the rk005 with norns and the pyramid with a lot of other stuff… :wink:
i will have a loook, thanks for the hint!

Updated script to version 1.01. Minor bug fixes:

  • Fixed K2 param (up) behavior.
  • MIDI input now only echoes to selected track output.
  • Turning Encoder 1 in any of the “All tracks” page modes no longer changes the current track selection.