top of page

Chapter 1:
Real Randomness vs. Complex Cycles
(and the combination of both)

Chapter 1.2:
Other Devices Generating Regular Cycles

And don´t worry, the 6 types of networks are valid with the other “cycling” modules too. Each of the following is able to substitute an element or a whole block of the above mentioned classes/types of networks.

Chapter 1.2.1:
Looping Envelopes

If our envelope generator is equipped with an end-of-cycle output/signal jack, we can make the envelope loop. There are advantages and disadvantages (like always) of using a looped envelope instead of an LFO. The biggest advantage are the two, three, four or more stages of the envelope, which allow us to create more complex cycling curves. Not only sine, triangle, saw and square, but different wave shapes. But we have to be careful: attack, decay and release are times, not levels.

This means, that the length of a cycle depends on its shape. If I want the slope of the cycle to rise more gently without making the fall less gentle at the same time, there is no way to maintain the same frequency, the same length of the cycle.

There isn´t anything like a frequency knob in most of the AR, AD and ADSR modules.

And there is another feature to take care of: the sustain parameter is a level, not a time.

This means turning the sustain parameter completely up to 100% leads to no development at all with some modules.

Decay means a fall to the level of sustain, and with sustain = 100% there won´t be any decay, and no decay may – depending on how the electronic circuit is set up – mean no cycling back to the first stage of the cycle.

The graphic shows some typical shapes produced by a looped ADSR module.











The video behind the following link demonstrates the behaviour of a looped envelope generator, and the preset “loopedEnvelope.vcv” (only in the ebook, see shall serve as a starting point for experiments of your own.

There are envelope generator modules, which deliver end-of-phase” trigger outputs for each of the stages of the envelope. And envelope generators, which have CV inputs to modulate the length/value of each stage bear great generative potential. I´m going to introduce some of these modules in the chapter “The Generative Potential Of Certain Modules”.

Only one example of how to integrate a looping envelope in a modulation network may be sufficient here. And again there is a preset for you: “loopEx.vcv” (only in the ebook, see and a video:











Chapter 1.2.2:


You may not think of sequencers at once, when talking about sources of cyclic/repeating CV. But sequencers are quite useful a tool if we want to sculpture a complex shape of cyclic CV, and together with a slew limiter
these shapes won´t even be only square-cut.










The preset “sequencer_slew.vcv” (only in the ebook, see may inspire you to develop examples of your own, and there is of course a video clip demonstrating the matter:


Chapter 1.2.3:
Shift Register With Feedback

Even less than of sequencers you might think of shift registers as sources of regularly cycling CV generators. But shift registers can be downright exciting sources of regular CV cycles. We must apply a little trick though.
Let me recapitulate, how a shift register works.

There are (at least) two inputs, one of which is a trigger input. Always when an impulse reaches the trigger input the shift register takes a sample of the voltage level, which is at the other input at that moment, and leads it to the first of its outputs.

The voltage value, which had been there before is shifted to the second output. The value of this second output is shifted to the third output and so on. The value, which had been at the last output of the shift register vanishes to the sound heaven (“is thrown out of the register module”).
It reminds a lot of the behaviour of a sample and hold unit, because we cannot predict, which voltage level is at the non-trigger input most of the times, and there isn´t any new level taken as long as no new trigger impulse arrives at the trigger input.











To make shift registers generating regular and repeating cycles I have to achieve two things:

first: the last step (pushing the content of the last register out of the module and into the waste basket) must be redirected back to register 1.

second: the register must start working at all!!! And this means it must get trigger impulses and an initial signal at the nontrigger input, but then no further signals to sample, because the content of the registers would permanently change otherwise.

If I were able to achieve that, I would get a regular sequence of output CVs. Well, which levels they would have I don´t know, but the levels, which they adopt once would never change, the sequence, the cycle would
be an unpredictable one, but a regular one, after its first initialisation. The randomly achieved cycle would go on and on – unchanged, as long as I won´t change the patch.

It´s kind of being in my own garden of regularity, but having a short glimpse over the fence to neighbour´s garden of randomness.
But how to fulfil the above mentioned two conditions?

Well, there are two ways to achieve that, one using switches – which I won´t do now, but will do and demonstrate later in this book – the other is using a mixer, one channel for the trigger, another one for the signal the sample is taken from.
And once there is content (= there are samples taken) in the registers of the module I fade out or disconnect the signal channel manually.
The preset “shiftregister.vcv” (only in the ebook, see is a good starting point for your own experiments, and the video behind the following link shows what I´m talking about here.

Or – what great fun it will be – I use the square wave output of an LFO running at a quite low frequency to switch the signal channel of the mixer on and off.
Watch the video behind the following link to see what I mean, and the preset “squareshift.vcv” (only in the ebook, see delivers a starting point for you.

There are 8 outputs of the shift register, right?! So why not using more than only one (perhaps even all 8) to modulate the pitch of more than only one (perhaps even of 8) oscillators?

And even if polyphony is a matter of the chapter “Compositional Aspects” I can´t help demonstrating a bit of it in the video behind the following link already now and here (and the corresponding preset is “earlypolyphony.vcv”).













Chapter 1.2.4:
Sequential Switches

We were standing in the “garden of sources of regularly repeating CV” and were looking over the fence into the realm of randomness in the last chapter, which I could have called “Changing Randomness into Regularity”.

In this chapter we are standing in the same garden again, but at the opposite side and we are going to look over another fence into another realm, the realm of switches, which are no sources at all – neither of CV, nor of anything else. And again I´m going to “misuse” them and I´m going to force them into pseudo sources of complex but regular and regularly repeating CV cycles.

There will be a whole chapter about switches later in this book, but let´s deal only with one certain kind of (sequential) switches now, which takes a number of different inputs and leads each of these inputs sequentially to one output.









And now I take as many CV wave shapes – e.g. from LFOs – as the switch has inputs and patch each of them to one of the inputs. What I get at the output is a regularly repeating complex wave shape (of CV), which consists of all constituent individual shapes. The result may be a cycle consisting of a sine followed by a square followed by a triangle followed by a saw etc. and this again and again. Or I take more complex shapes to the inputs – e.g. the results of a couple of modulation networks.

The only thing I have to take care of (if I want something regular) is that the frequency of change between the inputs as well as the frequency of all input generating units are integer multiples of each other. Otherwise we would loose our wanted regularity.











The resulting (and regularly repeating) CV development generated by the situation, that is depicted in the graphic (switching from f1 to f2 to f3 back to f1 etc.) would look like this:




(It´s not necessary to have the same wave shapes!)

With non-integer frequency relations each switch would “catch” the input shape at always different phases leading to an always changing and never repeating succession of resulting wave shapes.

But wait a minute! Do we really loose regularity?

Well, we do not, of course. We simply get what we got at the very beginning of this chapter 1: we combine a couple of waves, which are running at different frequencies and different phase shifts, which means an actual situation will surely occur again after some time, and from then on repeat again – only that this “some time” can be a quite long one, which causes the impression of randomness. And again its on us, it depends on our compositional decision how much regularity and how much randomness we want at a certain point in our patch.

The preset “sequentialSwitch.vcv” (only in the ebook, see and the video behind the following link may lead you deeper into this matter.


Chapter 1.2.5:
The Turing Machine – Part 1

In the chapter “Generative Potential of Certain Modules” I´m going to introduce the Turing Machine and its applications in generative music in detail.

But there is one aspect, one function witch makes it seem reasonable to mention this module even in this early chapter here.
In chapter 1.2.3 about shift registers we met the situation, that on one hand we didn´t know which sequence of CV levels we would get, but – once got – this development of CV levels would regularly repeat over and over again.

With the Turing Machine we can create a similar situation (and therefore we are looking over the fence into the realm of randomness again).

Let me make it short and simple here.


The big knob in the upper center of the picture sets the amount of randomness the Turing machine will produce. In it´s 12 o´clock position we get only and 100% random successions of CV levels, whereas in the 5 o´clock position the sequence/succession of CV levels, which is in the buffer of the module at a certain moment won´t change any more – we have “caught” or frozen the sequence, which will regularly repeat as long as we sustain the five o´clock position of the knob.

The smaller knob below and a bit to the left sets the number of steps of the sequence/succession of CV levels in both situations: in randomness as well as in regularity. We can say it sets the length of the sequence.

And the five knobs at the right let us adjust certain steps manually, which means we can change the CV level of certain steps of the sequence, which is in the buffer of the module at the moment.

And the speed/rate is set by the CLOCK input.


The preset “turing_1.vcv” (only in the ebook, see and the video behind the following link show the way to your first experiences with the module.

To read about its whole functionality, please go to chapter 5 of this book.


Chapter 1.2.6:
Samples and Recordings

And why not recording/sampling CV, and play it back in loop mode?

It would be a regular CV development, a regular and repeating cycle of CV levels, right?

And what´s more, these sampled CV cycles – which may be the result of a complex network of LFOs, sequencers, shift registers etc. - can easily be stored away and used anywhere and at any time as completely independent units without the need of loading all the modules or even the whole patch, which generated these CV cycles some time ago.

And the functionality of a sampler with its loop-start and loop-end and other functions can change us into a cosmetic surgeion of CV cycles.
The preset “sample.vcv” (only in the ebook, see and the video behind the following link introduce you to the matter.

And combining all the mentioned ways of generating regularly repeating cycles of CV levels we can build really complex and long cycles, and generate quite perfect illusions of “ever changing” events.

… to be continued


Rolf Kasten

bottom of page