How do I split and distribute a CV input signal to two outputs based on probability?

With VCV Rack, I frequently run into seemingly simple technical questions (How do I do this … ?) that somehow turn out not so easy to answer for me as a beginner.

Part of the challenge appears to be related to having to navigate a plethora of modules, which per se is a good thing, but also makes it more difficult to properly choose the ones that fit best for the desired task.

It then feels like impeding the creative flow because it takes quite long to solve a seemingly simple question.

For example: “How do I split and distribute a CV input signal to two outputs based on probability?”

  • First module that come to mind is Chances by Count Modula. It takes a trigger signal as input, which then fixes a moment in time. The result is 0V or 10V on either output.
  • If I want two of them responding to the same input signal, there is Bernoulli Gate by Audible Instruments.
  • If I’m dealing with a polyphonic input signal, there is Poly Chances by Count Modula.
  • If I want the inverse, i.e. two inputs to one output, there is Fork by Coffee, and while the above modules output either 0V or 10V, Fork actually samples the winning input signal at the time of trigger input and holds it until the next trigger.

So, what do I do if I want to distribute the actual continuous signal (e.g. an LFO) into one of two channels by probability? Is there a module that can do that or do I need to build a switch? What if I want two input signals to one output?

At its core, I would like to start this thread in the hope of building and discussing a guide/repository of seemingly straightforward techniques to hopefully answer such basic beginner’s questions more quickly and hence shorten the path to creating effective racks. Or are there already good resources available for this?

1 Like

Take a sequential switch, set it to two steps, and pipe your LFO into input. Use your bernoulli gate /Chances to trigger the switch

4 Likes

Trying to figure out how to write my thoughts and make them not sound condescending… this is just my opinion and how I approach VCV (similar but different to how I approach hardware), there are no right and wrong ways to do things, so use anything I say as you see fit. It might help you out and it might not.

Your questions seem to be of a signal routing nature, rather than of a sound design or synthesis nature.

Because there are practically infinite ways to answer routing conundrums, it might be difficult to compile a guide as such. I could show you how I would split a signal using probability, but it would just be how I would do it using the modules I am familiar with, everyone (I hope) will have their own variations.

There are a few core ideas that form the basis of how I build patches:

Treat all signals the same, audio, CV, triggers, gates… it doesn’t matter what the signal is supposed to be, it is just a signal.

If you want to copy a signal, just create a new cable.

If you want to combine signals, use mixers or summers. (There are other types of modules that can combine signals in different ways too).

If you need to use polyphonic I/O use merge and split modules (the VCV ones or the MindMeld ones).

If you want to change the strength of a signal, use a VCA, or an attenuator (or attenuvertor).

Envelopes are just signals too, they can be used in more than just VCAs.

The majority of my patches have a main large mixer, all audio signals eventually end up in the main mixer, before going to final EQ and limiting, then out.

That doesn’t mean I only use one mixer, use as many mixers as you need to combine other signals in your patch.

The majority of my patches have a main clock, and a lot of “timing” based patch changes use the main clock or multiples or divisions of the main clock. (Do keep in mind the patch cable delay, on a rare occasion it might come into play Voltage Standards - VCV Rack Manual)

There are more niche techniques I sometimes use (like mid/side stuff, and I haven’t really talked about stereo) but these are my basics… hope it helps :sunglasses:

6 Likes

Bivio is your friend :

6 Likes

For me, figuring out how to accomplish these types of tricks using bread and butter modules is the fun part. I’m happy when I do eventually find something that does it automatically, but its always worth the effort.

8 Likes

My Venom Bernoulli Switch is expressly designed to route 1 (or 2) input signals to 1 (or 2) output ports based on chance. And it has very flexible polyphony support. The various inputs and parameters make it useful for a huge variety of additional use cases. Be sure to read the documentation

@auretvh and @dan.tilley both touch on the idea of there being countless ways of accomplishing a given task with a limited set of “utility” modules. I created a whole series of patch constructs using only VCV free (formerly fundamental) modules. It was created before many very useful VCV utility modules became available.

I absolutely agree with you - the thousands of available modules is both a blessing and a curse. Having so many choices can easily lead to paralysis.

That is why many experienced patchers recommend the use of a “fixed rack”, where you have a limited set of modules in a fixed layout, and you work with that over an extended period of time, creating many patches. By imposing restrictions, you learn that within those limits is a huge universe of possibilities, and you learn how to patch more creatively and efficiently.

Omri Cohen has a number of YouTube videos discussing this with various fixed racks that he provides.

Imposing limitations is a common strategy used to spark creativity in many of the arts. Song writers often have song prompt challenges. Visual artists might be given a subject and or color palette, etc. I took a poetry creative writing class in college, and the final exam/project was to write a poem using a fixed meter, incorporating a minimum of 5 words from each list of 8 nouns, verbs, and adjectives. Those restrictions led me to my best poem from that class. It is also great fun and instructional/inspirational to see what different people create when given the same restrictions.

9 Likes

Thank you for all your incredibly valuable responses!

Will look at each in detail and respond as soon as time permits.

This works nicely :smiley:. For 1-to-2 (e.g. using 1-4 by VCV) …

1-to-2_20230827

… as well as 2-to-1 (e.g. using 4-1).

2-to-1_20230827

2 Likes

IMO, your tips do not sound condescending at all; on the contrary, they contain exactly the guidance a beginner might need to improve, and so are helping a lot!

Yes, I think signal routing, switching, turning signals on and off etc. are quite fundamental but not always obvious. They are not sufficient, but can go a long way if you know how to handle them.

Compiling a comprehensive guide may indeed be tough, although hopefully we can at least collect a few, piece by piece.

If you want to change the strength of a signal, use a VCA, or an attenuator (or attenuvertor).

It seems that there are more ways to weaken a signal than to strengthen it. For this, I know there is VCAMP by Bogaudio with up to +12 dB (around 2 V?) gain. Are there better ways?

Also, if you are willing to expand, I would love to learn about your techniques of dealing with mid/side and stereo, too.

1 Like

I wasn’t aware of BIVIO, it’s great!

Documentation was somewhat hard to find, but after a bit of digging, I came across a(n) (older) manual and a thread on Github, which were helpful.

The manual is missing a reference to the CHAIN outputs, but they seem to be just a way to forward the trigger/gate input as a straight trigger signal, e.g. to the next BIVIO or OIVIB, for synchronization.

The context menu offers a couple of options regarding the probability mode and the voltage output.

1 Like

It really is simple with Bernoulli Switch

There are many ways to do this. For example, mix multiple copies with any mixer module to strengthen, and then attenuate to get the exact level needed.

The VCV VCA MIX module can magnify each input by a factor of 2, and also the final mix output by 2.

There are a number of similar modules.

All of my Venom mixer and VCA modules have various scale options ranging from 1, 2, to 10:

  • MIX 4
  • MIX 4 STEREO
  • VCA MIX 4
  • VCA MIX 4 STEREO
  • SHAPED VCA
1 Like

It’s definitely fun and worth it! And I suppose that being able to work it out with B&B modules only is a good indicator of having reached the next level.

1 Like

Just a picture.(it has random build in)

1 Like

Sorry for not responding earlier, was still working my way down the list.

Thank you, your module and explanations are exceptionally helpful! The 2-to-2 seems to be especially unique.

It’s as easy as that? Brilliant, thank you!

Thank you for pointing me to these skillfully designed modules! And for taking the time to write the documentation/manual – this is so helpful.

The MIX module has its own LEVEL attenuator, so you don’t even need the 8VERT with that patch

1 Like

I think ‘fixed rack’ and ‘restrictions’ are really good to spark creativity for mid-level and up, but IMO may actually make it more difficult for beginners, because it can be challenging to choose the set of fixed modules that work best for them in the first place.

I view it as part of the producer’s natural development: To first look at and explore different modules for a purpose, study the ins and outs, eventually settle on what fits, and then use these favorites often until you feel you could use a change.

1 Like

Probably doesn’t get much easier than that :smiley:.

Not sure whether the probability balance can be set within the sequential switch module. Suppose you can skew to some extent by sending a signal to multiple inputs at once, thereby giving it more ‘weight’ in the decision.

SS ML_20230827

1 Like

So true :laughing:! It’s fun to learn.

1 Like

My go-to attenuvertor is always VCV Library - Bogaudio OFFSET for any signal I want to increase, decrease, invert or offset.

Quite often I’ll have 1 signal sent to multiple instances of this module to produce many variations that are the same trend, but at different strengths and offsets.

It is very easy to find yourself working in a mono fashion, because the typical beginner setup of vco > filter > env > vca creates a mono synth, but there are many ways to take a mono signal and make it stereo or multi-channel.

For example, just using the offset module above, you could duplicate a signal and invert it for a 2nd channel.

Quite often, in my main mixer I will have a send effect, the effect can be very subtle, and then I will swap the return channels, very easy cheesy…

Or, you might send a mono signal to two channels in the mixer, then modulate the pan, but invert the modulation for the 2nd channel, again, pretty easy and a touch cheesy

When it comes to mid/side, most of the things I do are to create a nicer sounding width to the audio. But this will do nothing if you feed in a mono signal.

A very simple technique to fix this is to add a delay right before the mid/side module on one of the channels, set the feedback to 0, set the mix to fully wet and set the delay time very small. This is just introducing enough of a difference between the channels to allow you to get some side, which you can then process differently to the mid to get some width.

1 Like

Thank you again for all your advice!

I too like Bogaudio’s Offset and place it in almost every patch. Had not occurred to me before to use it on audio signals, but it only confirms what you emphasized in an earlier post “Treat all signals the same”; it’s a logical consequence. I now played around with it for a while and it works fine.

Using mid/side for creating stereo width is another splendid concept. I think that having good control over the widening is quite important, as it adds a whole new dimension to the sound. Would think that they already thought so in the 60s, when artificial stereo recordings and clear channel separations were popular.