Here’s my take on an Audulus version of Rob Hordijk’s Triple LF-VCO.
The first of the three VCOs is pretty much the same as oscillator A in the Rungler, and so I used @stschoen’s Audulus recreation of it as a starting point. Oscillator A, taking the 3rd oscillator of the EMS Synthi as a point of inspiration, has a range from around a minute extending all the way up to 5 kHz, well into the audio range. Its special feature is a rounded triangle ‘parabol’ waveform (very close to a sine) and the fluctuation modulation1 that can be applied to it with LFO C as the modulation source. Fluctuation, a combination of frequency and amplitude modulation, makes for a gentler, more natural sounding vibrato than is possible with regular frequency modulation, and since the amplitude varies, opens up for interesting modulations when combined with a waveshaper.
LFO C is closer to a more standard LFO with a range from around 60 seconds to 100 Hz. Both oscillators A and C have bipolar audio outputs and this, in combination with the wide range of oscillator A, makes them useful in combination with the modulation inputs on Hordijk’s other modules, many of which can be used with bipolar signals well into the audio range.
In the version of the Triple LF-VCO demonstrated in both the NOVARS tutorial and Mallorca demo, LFO C has a selfmodulation feature in which the downward part of the triangle wave can be modulated with the pulse wave that runs parallel with it. This means that the upward slope maintains the set frequency while the downward slope can be slowed down allowing for the creation of an something approaching an inverted sawtooth wave. The pulse width of the accompanying pulse wave is coupled to the upward slope of the triangle, and maintains its width, while the time between the pulses (the downward slope) can be stretched to as much as half an hour! 2
Hordijk has apparently replaced this selfmodulation feature with a sample and hold circuit in his most recent version of the Triple LF-VCO. The S&H is triggered at both the upper and lower peaks of the triangle wave making it possible to create slopes that rise and fall at different rates, again with potentially large differences between them, as was possible with the selfmodulation version. In this case the modulation input for LFO C, i.e. the input for the S&H, is normalized to the output of LFO A, which can in turn be modulated by LFO C, allowing for complex cross-modulations.
LFO B differs in that it generates a unipolar signal, making it suitable for generating envelope-like modulations. Inspired by the modulation generator on the KORG MS-20 it has a range from around 10 seconds to 100 Hz, and its triangle wave can be skewed to gradually approach an inverted or regular sawtooth shape. As with LFO C the accompanying pulse wave follows the rising slope of the triangle wave, meaning that skewing the triangle also adjusts the width of the pulse wave. I used the skewed triangle LFO in the Audulus library as my starting point, but ended up having to rethink the equation for the triangle wave so that it syncs from the bottom point of the triangle rather than in the middle of the wave (as it does in the Audulus library/docs examples) – in this way both the transient of the inverted saw (when the triangle is skewed that way) and the pulse wave correspond to the beginning of a new (sync) cycle.
The syncing is an important aspect since LFO B can be synced via a switch with LFO C (which can in turn be synced externally). This makes it possible to easily generate irregular or shuffle-like rhythms. The switch can also be set to a ‘hold’ position so that on each downward slope of LFO C the pitch of LFO B is frozen until the point at which LFO C changes to an upward slope, at which point LFO B continues from the point at which it left off, making it possible to create interesting step-like modulations. Hordijk provides at good demonstration of the possibilities in his Mallorca demo as well as at the close of the NOVARS tutorial video.3
I’ve uploaded both the S&H and selfmodulation versions to the Audulus forum.
For schematics and further information see: thehordijkmodular.blogspot.com
In the hardware version the LFO C pulse wave is normalized to the modulation input of LFO C – in my Audulus version this ‘internal’ connection needs to be re-connected manually if broken when connecting an external modulation source.) ↩
The switch in my Audulus version doesn’t maintain its state when closing the patch, and so I’ve chose to have the free, ‘mode’ position at the top, followed by the sync and hold settings.) ↩