Fluctuation a la Nonlinear Labs C15


This is maybe a dumb question. But that’s ok.

I was reading a review of the (hardware, very expensive) C15 synthesizer from Nonlinear Labs.

It mentions this:

If this wasn’t complex enough, each oscillator offers a parameter called Fluctuation that applies a random frequency offset to each cycle of the oscillation, creating anything ranging from an unusual smearing of the sound at low values to wide-band noise at higher ones. The amount of Fluctuation can also be controlled by an Envelope, which makes all manner of strange effects possible. A low-pass filter called Chirp lies in the summed modulation path and removes some of the more aggressive consequences of high modulation amounts.

I’m wondering if something like this is possible in VCV Rack using existing modules. Specifically the part about applying a different random frequency offset to each cycle of the oscillation.

Or would this require writing a new oscillator module from scratch?

Interested in people’s thoughts on the matter.


Sure, just use the oscillator as the trigger of a sample and hold, then add the output of the sample and hold to the oscillator frequency, badabing

1 Like

Thanks for your reply.

Do you mean like this?

It just seems to add some noise on top of the oscillator sound, it does not change the frequency. I’m also not clear how I would control the amount of fluctuation in this setup.

No, more like this :

The lower knobs on the seq3 are all the same but by mixing in just a little bit of S&H into the CVMIX the notes vary just slightly.

Here is the selection:

Vary notes 28032023.vcvs (9.8 KB)

I think your gate input to S&H should come from the VCO output, not the SEQ 3 gate output. The doc said the fluctuation occurs every VCO cycle, not on every note change.

I recommend the VCO square output to trigger the S&H.

1 Like

Thanks. I appreciate you sending along the image and selection.

I am not sure this is what the article describes. This changes the pitch with every tick of the SEQ-3’s internal clock. But they are talking about adding a different offset with every cycle of the oscillator (261.63 times per second for the default FREQ value of the VCV VCO). That is what I am interested in reproducing in VCV Rack.


Here you go :

Same solution, but with a scope to watch it work, minus the external pitch control provided by the CVMIX in @Yeager 's solution

1 Like

Or even including an env

It’s up to you where you want to place the filter :smiley:

EDIT: Below I am babbling on about samplerate FM, but…as @Yeager correctly showed above and @DaveVenom pointed out below,this should indeed be cycle/pitch/frequency rate FM. So, the Sample & Hold Solution is the way to go. The rest of the text holds value.

This reads like it’s just FM with (perhaps filtered) noise as the modulator. Where the modulation level can be either set at some fixed level between 0 and 100% and the modulator amplitude level can be controlled by an envelope.

Most ‘FM’ implementations are actually PM, but I guess that’s OK for this frequency modulation concept to work just fine. Since we are using noise as the modulation source, tuning is not an issue anyway. It doesn’t even matter whether to go for linear or exponential ‘FM’.

Also, since we are using noise and are modulating at full audiorate, we don’t need sample & hold in between. Sample & hold generally samples an internal noise source (or some external input signal) whenever a trigger is received. But since we would be triggering the S&H at full audiorate, effectively, we are just getting each noise sample anyway.

VCV Rack offers all sorts of oscillators that support FM/PM. Ranging for FM/PM towards basic waveforms (e.g. the Fundamental VCO) to complex ones (e.g. Valley Terrorform). Though in the spirit of Nonlinear Labs C15, we should try and see where we can end up, starting of with just sines.

In VCV Rack we can also use any modulation source to control the amplitude of the noise (modulation) signal (e.g. vca’s and envelopes).

The Fundamental the NOIS module gives us several ‘colors’ of noise (besides the evenly distributed white noise). Each giving their own ‘modulation’ characteristics. You could also add a (fast) slew limiter in the modulation path (e.g. NYSTHI or BEFACO) to further limit the ‘chaos’. Or use intrroduce a (resonant) filter…


In theory I disagree. The description is pretty clear that a new random frequency offset is applied every oscillator cycle, not every sample.

(emphasis is mine)

So it seems that the sample and hold would be important.

As to what the sonic difference is between using a new offset every sample vs once per VCO cycle, I have no idea.

1 Like

You have to be careful which VCOs you use with that setup. It is safer to direct the fluctuation to the FM input.

Some VCOs (I’m thinking of Bogaudio) do not read the V/Oct input every sample.

1 Like


You’re so right…implying I am so wrong. Not at sample rate, but at pitch/frequency/cycle rate. That implies that having the oscillator (e.g. from a square output) trigger a sample & hold is the right way to go, into either V/Oct or FM input. Shame on me for leading you all astray…

I guess over time, the modulation should be zero sum, to avoid average detuning? So, bipolar modulation seems to be the way to go?


Well. the pitch is modulated (mostly a lot) less often. Not samplerate (say 44.1 Khz - 96 Khz), but still at audiorate (say 20 Hz - 20 Khz), where the amount of modulation fluctuates by some range between 0% and 100%, for every cycle. With the previously mentioned setup, we will soon find out what it sound like. A lot less ‘noisy’ then my per sample modulation description…