Yeah, missed a couple of features on Substitute. oh well!
Thanks Dave for assembling this patch, just playing with it now, alsorts of rhythms are coming out of it-8bit sequences, Industrial Japanese noise, YMO.
It’s cool, right!? Such a simple patch, especially if you eliminate the slew limiting (but I wouldn’t want to do that). Yet many cool sounds to discover, and plenty of happy surprises when you start combining clock divisions.
Be sure to let me know if you dial up anything extra tasty with the concept and post it.
I still love Substitute though. You are basically getting 6 oscillators which use about the same amount of cpu as a single oscillator. And it sounds good!
Great - thanks for the feedback! I’ve got a newer version of the Subharmonicon emulator - version 4
View of complete emulator:
Detail of user controls:
Detail of patch bay:
Here are the major changes from the prior version:
- Alma LPF instead of Lateralus
- Improved Mixer with better saturation profile, independent voice 1 vs voice 2 control, and mutes.
- Addition of detune capability for each sub, from -10 to 10 cents
- Compute harmonic V/Oct values with VCV Prototype instead of Frank Buss Formula. This enables dynamic display of each sub harmonic integral value. I’ve got some ideas of turning this into a fully developed plugin module. I just need to decide if I want to become a VCV plugin developer - VCV rack already is an incredible time suck!
Please share if you create a cool patch with the emulator.
Here is a demo video where I pair my Native American flute improvs with two patches created from the emulator. The link takes you directly to the VCV pieces, but I encourage you to listen to the beginning of the video for some really cool contrabass overtone flute improvisation - it has a very unique sound.
Dave, you’re killing it! That contrabass overtone flute sounds amazing and your meticulously labeled & documented emulator is truly impressive. I really enjoy your flute + rack improvs and the spaces you create with them.
Thank you so much! A response like that really makes my day.
There is quite a bit to unpack in this patch. Awesome, thanks for sharing that meticulously created beast of a patch.
Here is my entry, “Tuning with A”, for the Day of the Dead Give Away 2021.
The title “Tuning with A” is a poor play on words, where “tuning” not only refers to the modern orchestral standard of tuning to A440, but also I’m inventing a definition of “tuning” to mean “writing a song”. This is a slow moving, scripted ambient patch where almost everything is derived from a single VCV VCO-1 droning at a fixed pitch of A4 (A440). It functions as both a sound source, as well as a clock. I use lots of clock dividers and sequencers to establish subharmonics, event timing, complex polymeter rhythms, LFO modulation, and some envelopes. One subharmonic voice is created by a SEQ-3 clocked at audio rates by the VCO-1. I use recursive filtering to establish additional high frequency pitches from the natural harmonic series created by A2 and A4.
There are a total of 6 or 7 voices, depending on how you count. Every voice incorporates at least one Nitrous, Wolv, or both.
The only voice not derived from the VCO-1 is a Karplus Strong bass guitar voice (tuned to A of course), that uses VCV NOIS for excitation.
The only timing/modulation not derived from the VCO-1 are some VCA envelopes for half the voices, (though still with triggers derived from VCO-1), and some chaotic modulation from CAUDAL for one droning voice. I also use Geodesics Fate to introduce random mutes, but its trigger is also derived from the VCO-1.
Much of this patch is derived from concepts I have been exploring since I first started my modular journey with VCV Rack 7 months ago. Part of the fun/challenge was figuring out how to employ various techniques I had already used, but this time using only the VCV, Vult, and Geodesics plugins.
My intent is for the patch to be used in multiple contexts
- As a quiet ambient piece that can play in the background unobtrusively for hours, establishing a tranquil environment
- As a solo piece that can bear up to concentrated listening, with enough subtle shifts in timbre, harmonies, voicing, etc. to maintain interest.
- As a backing track for improvisations on my Native American flutes.
If you download the patch, use the top button in the PULSES module to start and stop the patch. Press the bottom PULSES button twice while the patch is stopped to reset the patch to the initial state.
Below is a detailed walkthrough of the various sections of the patch:
The patch image is broken out into numbered sections going from left to right, top to bottom. The red outlined sections are voices and have additional labels V1 – V6. The scopes are labeled in black to indicate which voice(s) they are animating.
Row 3, Blue Box 6 – Master Clock and Sound source
- VCO-1 is the master clock driving the entire patch, and direct sound source (A4) for voices V1, V4, and V6. It also directly clocks the voice V2 SEC-3 “oscillator”.
- NOPSKATE – Functions as a clock divider ( 2nd pass down to 27.5 Hz) for the entire patch, and sound source (1st pass down to A2) for voices V5 and V6. NOPSKATE is primarily intended as an audio effect, so not surprisingly it does not produce clean square waves, so does not work well as a clock divider beyond 2 passes (4 octaves).
- SS-1 x 9 – These switches function as flip flop clock dividers going down to 3.22 BPM (18.6 seconds per beat). The switch rise and fall is too slow to work at audio rates, but creates nice unipolar square waves when clocked with the final NOPSKATE output and fed a constant 10V signal.
- Switch 6 (25.78 BPM) drives the Box 10 Polymeter Generator, and helps determine the length of the Voice 6 VCA envelope.
- Switch 8 (6.45 BPM) triggers the voice V3 VCA envelope.
- Switch 9 (3.22 BPM) clocks the voice V2 sequencer and VCA envelope, and also is the signal source for the Box 2 modulation.
Row 4, Blue Box 10 – Polymeter Rhythm Generator: Three VCV SEQ-3 clocked at 25.78 BPM by the clock divider in Box 6 are used to establish complex rhythms using polymeters.
- The first SEQ-3 has a step size of 5 using only the first step gate to generate a single meter in 5.
- The second SEQ-3 has a step size of 6 using steps 1 and 4 to generate meters in both 3 and 6. It also uses the first sequence row to generate a 50% duty cycle square wave for modulation of voice 6.
- The third SEQ-3 has a step size of 7 using step 1 to generate a single meter in 7 that triggers voice V6.
- VCV Unity mixer combines the gates from meters 3 and 7 for a complex rhythm to trigger voice V4, and meters 5 and 6 for a complex rhythm to trigger voice V5.
Row 2, Yellow Box 5 – Reverb effects and final output
- Plateau reverb #1 is set to a long decay with 0 dry level and 0.33 wet, and input diffusion enabled. Different voices are fed into the left and right inputs to give some stereo definition, but the reverb bounces the sound to both channels, so the end effect is subtle. This reverb is used for a pad and an amorphous legato phrase.
- Plateau #2 uses a shorter decay with 0.68 dry and 0.39 wet, and input diffusion disabled. All incoming voices are mixed into a single signal that is fed to both left and right inputs. This reverb is used for discrete notes.
- A UNITY mixer merges the reverb outputs (average mode) before sending the final left and right signals to the AUDIO-8 output
Row 1, Green Box 2 – Complex shape modulation source.
- The 3.2 BPM unipolar square wave from the Box 6 clock is fed into Vult LEAKAGE where the slew rate is tuned to create a triangle wave
- The signal then passes through a WOLV to generate a complex LFO wave shape.
- The complex shape is also passed through a second LEAKAGE with slew to smooth out some of the discontinuities.
Row 1, Red Box 1 – Voice V1: A complex droning pad that constantly modulates in pitch, harmonics, volume, and timbre.
- The Sine, Triangle, Saw, and Square waves from Box 6 VCO-1 are each passed through NOPSKATEs to generate complex voices that combine the original wave, plus sub octaves -1 and -2. The saw wave goes through a 2nd NOPSKATE to add in sub octaves -3 and -4.
- All four waveforms are then mixed by VCV MIXER into a single voice.
- CAUDAL at a slow rate is used to chaotically modulate all parameters within each NOPSKATE, as well as the VCA for each channel in the Mixer. One of the CAUDAL outputs is also used to chaotically self trigger the CAUDAL Hit feature to randomly reset the pendula starting positions and angular velocities.
- The Mixer output is fed into Nitrous for filtering. The raw (not smoothed) complex LFO shape from Box 2 modulates the Cutoff to provide filter sweeps.
- The final output is fed into Box 5 Plateau #1 right input to create a lush pad.
Row 2, Red Box 4 – Voice V2: A “cello/double bass” sequence derived from sub-harmonics of the original VCO-1 square wave.
The first SEQ-3 is clocked at 3.2 BPM by Box 6 to create three 8 step phrases that last ~2.5 min each (18.6 seconds per step) – very slow!. The same clock also triggers the ADSR that controls the voice’s VCA.
All three rows are fed into an SS-2 switch, which is triggered by gate 1 to effectively cycle through the 3 rows, thus turning the SEQ-3 into a 24 step sequencer consisting of 3 phrases of 8 steps each.
The second SEQ-3 is clocked at audio rate by the square wave from VCO-1 in box 6. Steps 1, 5, 6, 7, and 8 are at 10V, and the rest at 0. So the “oscillator” creates square waves with varying duty cycles, depending on the number of steps used. The sequence from the first SEQ-3 varies the number of steps to create different pitched sub-harmonic square waves.
- 1 step: no voltage change so effectively a rest
- 2 steps, 50% duty: down 1 octave (A3)
- 3 steps, 33% duty: down a perfect fifth (D3)
- 4 steps, 25% duty: down 2 octaves (A2)
- 5 steps, 40% duty: down 2 octaves and a major third (F2)
- 6 steps, 50% duty: down 2 octaves and a perfect fifth (D2)
- 7 steps: not used
- 8 steps, 62.5% duty: down 3 octaves (A1)
A Vult KNOBS biases the unipolar output by -5V to create a standard bipolar wave.
The square wave is filtered through NITROUS at a fixed cutoff, drive, and resonance.
The filtered signal is then wave shaped by WOLV to get the cello/double bass sound. The WOLV width is modulated by the complex LFO shape from Box 2. The smoothed CV is used to prevent sudden voltage spikes from creating pops during the rests.
The voice’s VCA is normally held open with a 10V bias, so that left on its own it would drone on. The controlling ADSR (configured as AD) with a fast attack and slow decay is inverted by KNOBS to leave space for each prior step’s reverb to decay a bit before the next step slowly swells in.
The final output is fed into the Box 5 Plateau #1 left input
Row 3, Red Box 8 – Voice V3: Actually composed of two voices sharing the same SPANK envelope
- The SPANK is triggered by the Box 6 clock at 6.45 BPM.
- The SPANK envelope is used to ping a NITROUS to produce a bass drum sound for voice V3A. The output is passed through DECLINE to filter some of the initial low rumble to cut back on distortion.
- NOIS is fed into the SPANK VCA, which excites DELAY, and then on to another NITROUS for a Karplus Strong bass guitar note tuned to A2 for voice V3B.
- Voices 3A and 3B are fed into the Box 5 Plateau #2 MIXER. Voice V3 tolls at a steady slow rate that serves to ground the entire piece.
Rows 4, Red Box 11 – Voice V4: A celesta like voice
- The complex polymeter 3,7 rhythm from Box 10 triggers both a SEQ-3 sequencer and SLAP envelope/VCA.
- The voice uses MERGE, SPLIT, and NITROUS to recursively filter and isolate one or a cluster of partials from the VCO-1 A4 saw wave. This of course has both odd and even harmonics.
- The 8 steps from the SEQ-3 are tuned to center the NITROUS cutoff at different specific harmonic partials, which tends to include a cluster of partials as the pitch rises. If the NITROUS cutoff was 1 V/Oct then the required CV could be computed. But I’m pretty sure it is not, so I just manually tuned each step.
- The final output is fed into the Box 5 Plateau #2 MIXER.
Rows 3,4, Red Box 9 – Voice V5: Another bell like voice using recursive filtering. Basically the same as voice V4, except:
- The complex polymeter 5,6 rhythm is used as the trigger
- An SS-2 is paired with 8VERT to create a 4 step sequencer. Left over 8VERT ports are used elsewhere as constant CV and in one case an attenuated signal.
- The A2 square wave from the NOPSKATE in Box 6 is used as the harmonic source, so only odd harmonics are present.
- The final output is fed into the Box 5 Plateau #2 MIXER.
Row 1, Red Box 3 – Voice V6: An eerie shimmering glissando produced by a recursive NITROUS resonant filter sweep. Though a simple concept, this voice has the most moving parts.
- The filter sweep controlling CV is created by sending the Box 10 step size 6 50% duty cycle unipolar square wave to 8VERT for attenuation, and then to LEAKAGE where slew transforms the signal into a triangle wave. The result is fed into the NITROUS cutoff input.
- The Box 10 length 7 meter is used to trigger the VCA envelope. Since the trigger and filter sweep lengths are different (6 vs 7), they are out of phase, and each glissando starts at a different point in the filter sweep from the previous.
- The length 7 trigger also clocks an SS-2 switch that alternates the NITROUS input signals between the VCO-1 A4 saw and the NOPSKATE A2 square.
- The VCA envelope is formulated from a pair of SS-1 switches, a UNITY, and LEAKAGE. The switches and unity create a 10V envelope that lasts 7 seconds (3 times the period of the Box 6 25.78 BPM divided clock signal). LEAKAGE slew fades the glissando in and out at the beginning and end of the envelope.
- An SS-2 switch alternates the output between the left and right inputs of the Box 5 Plateau #1. The switch is triggered by the filter sweep CV, which is negatively biased by KNOBS such that the trigger point is at the apex of the triangle wave. So the upward and downward sweeps are always sent to opposite channels.
Row 3, Green Box 7 – Random independent mutes for six voices.
- Geodesics Fade is used to randomly mute all but the voice V3A bass drum. Each voice has its own channel in the polyphonic trigger input. The “Hold trigger out during step” context menu is enabled so the gate output is held high while generating random CV, and held low while not generating random CV. The gate state can only change at a trigger point. The random CV is not used, just the gate output is used. A high state enables the voice, low state mutes the voice. The Free Will input is typically set at 7.8V (78% ?), so each voice spends most of the time enabled.
- Each mute signal is passed through LEAKAGE where slew fades the 10V signal in and out.
- Each voice’s mute signal is passed to a VCA. Sometimes it is first passed to a KNOBS to be mixed with other CV before going on to the VCA.
- The triggers come from the first SEQ-3 in Box 4, one SEQ-3 step per voice. So multiple voices may be muted at any one time, but the entrances are always staggered. Each voice’s mute period lasts one or more 8 step cycles of the SEQ-3 – usually just one cycle at 2.5 minutes.
- The VCA in Box 7 is used solely as a polyphonic graphical CV meter to monitor the mute state of each voice. I found the VCA easier to monitor than a VIZ module.
Left edge, Orange box 0 – Transport control and startup mute sequencing
- The top button of the PULSES module in the upper left is used to start and stop the patch. It triggers an SS-1 switch to toggle whether the 4 VCO-1 voices are connected to the rest of the patch or not. MERGE and SPLIT are used to pass all four waves polyphonically through the switch.
- The bottom PULSES button is used to reset the patch to an initial state, ready for starting. Reset should be pressed when the patch is stopped. It may take two reset presses to achieve the correct initial state. The VCA mute monitor in Box 7 should show all channels muted (no green bars) when properly reset. The reset button is connected via SPLIE to the reset input on all the sequencers and switches in the patch.
- Two SS-2 switches are used to control what CV is fed to the Box 7 Fate Free Will.
- While stopped, 0V is used, guaranteeing that any Fate trigger will mute the corresponding voice.
- After startup, during the first two iterations of the Box 4 8 step phrase, a value of 10V is used to guarantee that any Fate trigger enables the corresponding voice. Upon startup, only the V3A bass drum is active. Then each of the 6 remaining voices is enabled one at a time during steps 3 through 8 of the first phrase. Voice V2 is enabled on step 8 during a rest, so you do not hear it until the first step of the 2nd phrase. During the 2nd phrase, all voices are heard.
- From the 3rd phrase onward, a 7.8V value is used so each voice has a small chance of being muted each time the corresponding Fate channel is triggered.
- One last SS-2 switch is paired with a MERGE to control what triggers are fed to the Fate. While stopped, the PULSES reset button triggers the Fate so it can be reset to an all muted state. While running, the Box 4 SEQ-3 step gates trigger the Fate.
Spooky, atmospheric, beautiful, calming - I will be studying this to work out what’s going on and there’s a lot going on. Just going to leave it playing for a while…
Thanks! Glad you like it. I have already chilled to the patch for hours - it was a great background atmosphere while I was working at my day job (software development)
I went ahead and updated my post to include detailed patch notes, in case you want to get a head start on figuring out how it works.
I first saw the recursive filtering technique I used in voices 4, 5, 6 in a video by Jacub Ciupinski, though he did not use that term.
Wow that’s very informative - thanks
I took my Day of the Dead Give Away 2021 entry “Tuning with A”, and paired it with improvisation on various flutes for my most recent Virtual Open Mic performance on November 11, 2021.
Nothing like a “Desolate Drone” to finish out the year. The video is from the last Virtual Open Mic of 2021.
Last Monday I performed two new pieces during the weekly VOM, both featuring Native American flute and VCV with some Fundamental Constructs. The patches use only VCV modules (except for some VST reverb from Valhalla Supermassive)
Ambiguous Ambience - Slow autogenerative piano like “melody” that randomly switches between D major and D minor pentatonic scales - keeps me on my toes! The patch and notes are at VCV Fundamental Constructs - #36 by DaveVenom
I am really disappointed I forgot to direct this patch’s audio to my DAW, so I had to use the ZOOM broadcast audio for the video, causing the audio to suffer a bit.
The Ganymede Children’s Hour - I find this one simultaneously eerie/unearthly, yet playful in a peaceful way. EDIT - Strike that. This is down right creepy. I envision alien children laughing and skipping, just before they jump on our backs to sip out our brains through our ears.
One voice uses hybrid AM and Ring Modulation with sine waves for both the carrier and modulator. The sine waves are generated by VCFs, and rather than use a VCA, I control volume via the carrier wave Resonance CV, which causes pitch drift that contributes to the eeriness of the piece.
I hope to add more variability to the patch in the near future
- Different AM/RM offset settings to vary the AM/RM ratio
- Different RANDOM Step Shape values to vary the number of steps in the arpeggios, which also modifies the rhythm.
Your flutes fit so perfectly with the sometimes shrill, sometimes airy backdrop, excellent stuff!
Here is the final evolution of “The Ganymede Children’s Hour” into something much bigger and quite different. I think it is darker, but not so creepy.
This uses even more of my Fundamental Constructs. The opening flute is a contrabass overtone flute I constructed out of 2" PVC. There are no finger holes. Different harmonics are achieved by blowing harder and/or covering the end of the flute. When open it can produce both odd and even harmonics. When closed only the odd harmonics. The fundamental pitch is a C2 - the lowest note on a cello.
You can find the patch with more info about it at VCV Fundamental Constructs - #38 by DaveVenom
Here is a pure VCV patch (except for Valley Plateau reverb) that is chock full of complex meters and poly-meters. It features a 32 Sequencer I constructed as part of my VCV Fundamental Constructs project.
I finally got around to resurrecting my Subharmonicon emulator patch for Rack version 2. I’ve got some nice enhancements, like unison with optional detune, and improved FM. But I’m using some plugins that are not yet available in the library, and I’m not sure what changes (if any) will be needed when they finally get there. So for now here is a video of a performance with that patch paired with some Native American style flutes. I’ll post the patch when the plugins become available.
2022-04-23 Update: The patch and a description are now available