Propellerhead Reason tutorials made by Hydlide

Published on Reason Experts

Generative music using Reason and modular synthesizers part 2

Published: one year ago

In this article about Generative music, I will mainly look at the step sequencer of Thor and what you could do pretty fast to get something going. If you think simple you will realize pretty fast that the step sequencer of Thor comes with a setting called random playback on the step sequencer itself. The issue that sometimes comes back to me, random playback is defined by a random seed value and based on this value it will play the sequencer in a random state. Now sure, this might be really your thing to do, or sometimes it may not. Overall the random features come with lack of control over what is really happening. This type of composition is usually a combination of having something random, based on logical terms (OR, AND, IF, XOR etc) to make changes in the music based on those logical operators. While reason by default (without Rack Extensions that is) is not the best environment it work. However, you can get pretty with just a few limitations you will be having. So that is what we'll be doing today, throwing in different ideas with having the limitations we have and try to create generative music.

Generative music and sequencers

Thor step sequencer

To set up the Thor step sequencer in the realm of Generative Music we can do the following few steps:

  • create a Thor Polysonic Synthesizer
  • Reset the device (right click on Thor and select reset device)
  • Click on show programmer
  • Set the step sequencer in "Repeat mode" (default is off)
  • The playback mode goes to Random


At this point, the concept of generative music can already work. While the notes are default all set to C3 we can make a few adjustments in the note information to make the random sequence sound a bit more interesting by default.

To create notes in this context it may require some info about chords, circles of fifth, harmonics and knowing what works and what doesn't. In this context, I am going to focus on the perfect fifth method (since it works pretty well). The perfect fifth is based on a native note (which is C3 in this case) and has all the notes go 7 semitones up or down.

So if C3 is the native note in the perfect fifth sequence and we want to go lower this means we can pick the notes F2, A#1, D#1 (and continue to go 7 notes lower if you want to go lower then this). If the C3 is the native note in the perfect fifth and we want to go higher this means we can pick the notes G3, D4, A4 etc. 

 Random Sequences

A sequence can be looking like the above picture. Make note that by default the Octave range is normally limited to 2 octaves. If you want to have a higher octave selection you can set the Octave range to 4 or to full. 


While at this point we are generating a sequence that plays all the notes from a perfect fifth in a random sequence. From a sound designers perspective you can add an additional layer using sounds to add different harmonics while doing so.

Adding Harmonics

When looking at Thor in particular there are some wave table oscillators which can create harmonic changes in the sounds pretty decent. The wave tables I am referring too are:

  • Synced Sine ThorSynced Sine 
  • Synced Ramp ThorSynced ramp
  • Ramp Harmonics ThorRamp Harmonics
  • Square Harmonics ThorSquare Harmonics 
  • Sine Harmonics ThorSine harmonics

Harmonic tone generators can be quite an additional tool to use because it gives the sound an additional change in tone while playing the exact same note over and over again. Just to present this concept in a different Thor patch I will be sharing a different Thor patch where all the notes on the step sequencer are completely equal (all playing C3 in this case). While doing this I will be using the LFO 1 to connect to the position knob of a wave table.

Harmonics Sine

So even while we are playing a straight C3 note, the harmonics change while the tune progresses over time. 


It is this concept I will be implementing in the next element while being a part of a random sequence.


Making Random more Random

Now what would make Thor (and its step sequencer) quite awesome is if it has a Start / End sequence mode. Meaning you could define the first step of the sequencer and the length of the sequencer. While there are replacement tools for this (in the form of Rack extensions) I think the start method will just have to be done using the PSQ-1684 version 3 one day. But for now, let us add one simple Control voltage that will reshape this whole sequencer in to total random sequence.

To make this work, we'll be needing a Combinator. Because we'll be using a setting which cannot be modified by Thor itself (since it is not in the modulation bus matrix). The source in this case can be any LFO, matrix step sequencer with a random curve or anything else that sends out random Control Voltage values. In this case I will be using LFO 2 of Thor itself.

Thor step sequencer manipulation

The connection could be looking like the above picture. We'll be using the rear of the rack however to make this one work.

Thor generative music Thor

To make this work we'll be using the control voltage output (which is in this case Low Frequency Oscillator 2). This goes in to the CV1 input slot. Make note, the values are bi-polar in this case because the LFO we'll be using in this context is bi-polar by nature (has negative values and positive values).

Thor Generative Music

To program the step sequencer we'll be using the section Sequencer > Step Count as a target. In this case the connection from LFO to Step sequencer count is established. This means that in a random state the step sequencer will have a longer length while the lfo progresses over time.


In conclusion

When you think in terms of generative music you have a pulse that can be generated (as mentioned in our previous article). But once you start touching the sequencers realm you also have different options to make changes in the tone height, its duration and the way it plays back. There are plenty of things you can do to manipulate sequencers in different ways. While the original step sequencer in Thor itself is very 'simplistic', there are however some rack extensions that take these concepts a few steps further. So I might touch a few rack extensions in a later stage. While in context of generative music I usually tend to avoid the matrix pattern step sequencer while using native devices only. Since the latter has a lot more limitations (like the playback mode is always linear just to name one).

Maybe this technique I am providing in this article might show a few doors. Have a nice weekend.

Published on Reason Experts
Written by
Published on Reason Experts
Published: one year ago

Post reply

Post reply

Edit comment



You need to login to post a comment on

28 Dec 2017 


Thanks Hydlide - another enjoyable blog!Strange point of note - in the last example (and maybe others - I didn't check), the step sequencer count never exceeds 6, although the Combinator programmer is set for 1 through 8! If I set the programmer instead for 1 through 10, then the step sequencer count goes up to 8!!!! It's as though there is something in the Propellerheads code that knocks off a count of two?
 28 Dec 2017 


interesting. I just did some tests using the square pulse and set the whole thing to max (16), and it seems to only reach 12 at max.

You need to login to post a comment on

Who is Online

Online users:

Registered users:   Anonymous users:   Total: