This is a very basic question but I am having trouble finding a CV (as opposed to trigger or gate) sequencer that does what I want, which is:
Say I have a sequence of N steps (it doesn’t matter what the value of N is at this point). Initially I want most of the steps to be turned off. So let’s say we have a 16-step sequence, but only 4 steps are turned on to start with. So assuming we are sequencing pitch, we would hear four notes with some silence in between, something like:
A---B---C---D---
Gradually I want to bring in other notes.
There are a number of sequencers where you can turn individual steps on and off, but I have not found one where this can be controlled by CV. Of course I can use Stoermelder’s CV map in cases like this, but I was wondering if there is a sequencer that natively allows CV control of turning steps on and off.
Given that it’s a pitch sequencer, what would you want it to put out during the “silences”? There are lots of ways to do things in modular but I think of the typical pitch sequencing approach (for me, anyway) as having continuous pitch information that’s interrupted by gates or modified by envelopes that drive a VCA after the VCO.
That is a great idea, direct access with cv to turn on/off notes on the sequencer. There may be one but I am not sure I know one. I sort of fake a thing like this by access to sequence length, so maybe the length is zero at first, then 4, then zero again then 8, and create a sparser arrangement.
And if you work with the gate cv itself, you can cv Chances to control gate output.
Ideally there would also be a gate output so I could feed that to an envelope generator, and I’d end up with silence between the notes when the envelope is not being triggered.
I guess you could do this using a combination of a pitch sequencer and a gate sequencer. Turn on/off gates on the gate sequencer, and then the gate goes to a S/H attached to the pitch sequencer. This would allow you to bring in/out individual steps from the sequence in an arbitrary way.
Run the gate output from the sequencer through an AND logic gate and apply the CV to that. Any time the CV goes higher than the logical input threshold, the gate signal will pass through, any time it is lower the gate will be blocked.
@dandante, am I right that you want to implement what the video calls the “block additive process” (like Sextet and Patterns of Consciousness), not (at least not at the moment) the “expansive additive process” that it demonstrates?
And also that you want the sparseness to be under control of a single CV, say 0V is all steps off and 10V is all steps on?
This uses two rows of a sequencer (pretty much any one will work). The top row contains the pitches (here I just used ftov() to enter C3, E3, G3, C4, E4, G4, C5, E5). The bottom row contains the level of density required to activate the pitch (here I just entered 0V, 1V, 2V, …). Note that these can be in any order and are not mutually exclusive.
With this setup, when B Offset on the compare module is 0 (lowest density), no notes will play. As you move B Offset up towards 10V, more and more notes will play. Since the offset here is -10V to 10V, it might make more sense to start with negative voltages, in which case you could use the full range of the knob, rather than half the knob. And if you prefer to think in terms of increasing sparseness rather than increasing density, just use A > B and adjust accordingly.
Obviously, this will click, etc. since you’re clobbering the VCA with step functions, but it may be a useful starting point! (EDIT: running the comparator output through a slew module set fairly fast would handle the clicking if you don’t want a fancy enveloped solution EDIT 2: actually, the pitch leakage from the slew doesn’t sound great, lemme think)
Now the comparator A<B output is going to LOGIC along with the trigger pulse from the sequencer, and the AND output is driving an ADSR in trigger mode (not gate mode, so it’s really just acting like an AR envelope). The comparator is now blocking triggers rather than modifying a gate. This means that as long as the total time of the envelope is less than the step time of the sequencer, you won’t hear the next pitch leak in if that pitch is out of the sequence. (EDIT: seems to be a bug, hold on…)
Due (I think) to the timing of the LOGIC module, the second version was allowing two triggers through per step. What we need is a very small trigger delay to ensure that the trigger on a blocked note falls outside of the AND gate from a previous un-blocked note. Using the ML Modules module has an advantage–we can put length back into the trigger, so now we can use a gate-mode full ADSR (again, as long as the whole envelope is less than one sequencer step). With settings like the ones above, you should hear no clicks and exactly one note with B Offset from (0V, 1V], two notes from (1V, 2V], and so forth.
Let me know if you have any questions (or improvements) and have fun!
Unfortunately, I am not aware of a module that can do this, there already are a few great patches above.
I am not sure whether you could be interested in a polyphonic solution, but if so, Polyphonic Selector (PS) by Sparkette’s Stuff might be an interesting approach.
The idea is to use separate polyphonic gate and pitch signals, respectively, and feed each signal into a designated PS, driven forward by a phasor-type LFO that is synced to the clock.
Each PS plays only one polyphony channel at a time, so you’ll get pairs of gate on/off and pitch over time, together playing a sequence.
Gates for each step are set to 10V (on) or 0V (off). In the first example patch below, steps are turned on and off using Bolly Puttons (computerscare), but the voltages can principally be created any way you like; they only need to be coming in a single polyphonic cable for each PS.
Sequence length can be set to up to 16 steps using Countdown 3 (Count Modula).
FM-OP (Bogaudio), with it’s ADSR envelope turned on, is used as oscillator. You may have to adjust ADSR settings (especially the release portion) by ear to curb bleeding of pitch changes to subsequent notes/gates.
A T-type Flip Flop plus VCA is used to stop the sound if clock is stopped.
To generate more versatile polyphonic gate patterns, you can for example use Poly Chances (Count Modula) and control the Chance parameter with PLC (docB). If all knobs in PLC are zero, all notes are being played. Increasing PLC levels will lead to more note dropouts on the respective steps.
The patch can also be modified to use different sequence lengths for gates and pitches, as well as clock divisions, creating polyrhythmic and/or polymetric variations.
There are many ways to control what steps are sending a GATE (or CV) out to some GATE (or CV) input. Either by selecting and/or controlling the step on the sequencer itself, or by intercepting the step output and control that.
And there are many ways to generate the CV/Trigger/Gate needed. Not sure what control you need.
But, how should CV control the steps? I guess you want to be able to set any pattern of steps via CV?
One approach is to generate 1/0 (bit/gate) patterns from CV use Analog to Digital conversion (ADC). They generally come as 8-bit encoders/mappers. That way you can use CV to set any possible pattern of 8 steps (256 patterns, ranging from none to all). So, you would need more then one to control more then 8 steps…
Some 8-bit Analog to Digital converters (and a mapper).
Once you can control the per step GATE/TRIGGER/CV I/O…there are many ways to proceed.
Some sequencers offer a per step output GATE/TRIGGER/CV.
Some sequencers have a per step CV input to set the voltage to 0V to silence a step.
Some sequencers are addressable or phasor driven, so you can address/select only the desired steps.
You can use a stochastic sequencer and set per step probability to either 0% or 100% (or anything in between). Same can be achieved by routing the per step output gates via Bernouli switches and thus control per step probability.
You can control the length of the GATE via CV use something like Bogaudio [RGATE] (VCV Library - Bogaudio RGATE) where Len=0 is no GATE/TRIGGER.
You route GATE/TRIGGER/CV outputs to a Mixer and mute (lower amplitude to 0) per step.
All the per step output controlling/switching solutions require splitting up the sequencer step outputs and converge back into some target GATE/CV input. Since only one step of a sequencer is active at any time, you can simply connect many cables into some target GATE/CV input. This will sum all cables voltages at that input, but the sum will always be just that steps Voltage (GATE/TRIGGER/CV).This way, no mixer or OR logic is needed and no unneccessary per cable sample delay.
Maybe also check out the SIM plugin modules with polyphonic channel sequencing options
For custom step- and/or continuous sequncer patterns, phasors and much more, the (8 channel) multitool MindMeldShapeMaster might be useful. It can be used to implement all sort of custom behaviour components (custom solutions for many problems). The free version does not support clock sync or 1V/oct, but that can mostly be circumnavigated using an external phasor (as a clock, an LFO or a low frequency or audiorate phasor to drive sequencer patterns or even audiorate oscillator shapes).
Maybe have a look at Jakub Ciupinsky’s demo/tutorial series on MindMeld ShapeMaster. Some episodes are specifically on sequencing.