Venom Plugin now available in the Library!

I am excited to announce that my free and open source Venom plugin is now available in the Library. See this for info about the 2.1.4 update.

There are 8 modules, each with 4 different skins or themes available. Note - The plugin page shows a count of 9 due to a hidden VCO that is far from being ready for release, and may never get there.

Keep an eye on this topic - I hope to add some demo patches and videos soon. I would also love to hear about your experience with this collection.

EDIT - First couple demo vids and patches are available below

You probably can get some use out of the collection just by experimentation. But I strongly encourage you to read the extensive documentation if you want to take full advantage of all the features. Some of the modules are quite deep.

One of my design goals has been to keep the modules compact, yet readable, with a logical layout so they are easy to use.

Note that all of the modules are polyphonic! (Although Rhythm Explorer has only limited poly capabilities)

Special thanks to Andrew Hanson of PathSet modules for setting up my GitHub repository, providing advice and ideas for the Rhythm Explorer and plugins in general, and for writing the initial prototype code for the Rhythm Explorer.

Bernoulli Switch

Primary function - Randomly route 1 or 2 inputs to 1 or 2 outputs on demand. But don’t let its size fool you. There is a tremendous variety of use cases, making it a great candidate for use in a fixed rack.

  • dual attenuverter with offset
  • dual constant voltage source
  • “traditional” Bernoulli gate, with both toggle and latch capabilities
  • random or directed switch, 1 to 2, or 2 to 1, or 2 to 2.
  • manual momentary or toggled gate
  • manual mute, either toggled or momentary
  • flexible Schmitt Trigger
  • … lots more

One thing I have been enjoying is to feed two different audio inputs to the A and B inputs, and also use one of them as a trigger to potentially swap how the inputs are routed. It can add interesting timbres, as well as provide stereo depth. The timbre can be modulated by changing the probability of switching.

Recurse and Recurse Stereo

Recursively process inputs via polyphonic send and return. You can even recursively process polyphonic inputs, as long as the recursion count times the input channel count does not exceed 16 channels.

One of my earliest obsessions when I first discovered VCV Rack was to hone in on individual harmonics from an audio signal by recursively passing the input through a polyphonic resonant filter - A very cool idea from Jakub Ciupinsky, documented in his excellent video VCV Rack Hacks - Supercharge your VCF . But the technique is a bit of a pain to patch up. My Recurse modules make it trivial to explore the technique.

But there are many other uses for the modules

  • Quickly generate a series of constant voltages, for example integral values from 1 to 16, simply by setting the offset to an incremental amount, setting the modulation mode to nPre or nPost, and taking the polyphonic Send output.
  • Introduce up to 16 sample delays by patching Send directly to Return
  • Easily create a flexible wave folder by combining Recurse with WinComp and a mixer. I need to create a video about this!
  • Recursive (or iterative) ring modulation - there are some cool sounds to be had.
  • Easily perform very high gain amplification for very faint signals - each pass can amplify a signal by as much as a factor of 10, so just 3 passes can amplify by as much as 1000!

Clone Merge and Poly Merge

These modules are designed to augment the Recurse modules, making it simple to clone multiple inputs to match the polyphonic output coming from the Recurse Send. For example if you are recursively filtering a 2 channel input 8 times, and you want a different cutoff frequency for the two signals, then either module makes it trivial to generate the required polyphonic cutoff input with 8 channels of CV1 and 8 channels of CV2.

Harmonic Quantizer

A really simple concept - generate V/Oct values for harmonics or sub-harmonics of a root note. I initially wanted this to work with my recursive filtering experiments. But it also works great for generating V/Oct CV for musical FM and ring modulation - easily generating CV with integral ratios.


Think of the really nice VCV COMPARE module on steroids. I preserve all the capabilities of that module, but add the capability of setting a tolerance factor for every comparison. I also provide >= and <= to go along with > and <. And I add the option of taking the absolute value and/or inverting four of the outputs. Hopefully I also make the outputs more intuitive and easier to understand. I found some of the COMPARE outputs confusing.

Rhythm Explorer

This beast of a module randomly generates interesting rhythmic trigger patterns at the touch of a button. It is great fun to work with, but it is also extremely deep! I’ve only barely scratched the surface of what it is capable of.

Rhythm Explorer is greatly inspired by the Vermona randomRHYTHM Eurorack module. But it is most definitely not a clone.

Rhythm Explorer is missing a few features, but it also adds many new features not available in the randomRHYTHM, including the ability of capturing that amazing pattern you chanced upon so that you can use it later in another patch.

I recommend reading just the first two paragraphs of the documentation, and then diving in to have some fun. Then delve into the documentation at length and see what you can discover!


Thanks very much Dave! That’s a hell of a developer debut, well done. I especially appreciate the very clear and readable layout and UI of the modules, the wonderful manual (way ahead of VCV here), and it’s fantastic that you could be persuaded to provide the different color schemes. I look forward to grabbing some time to play with these, they sound very interesting.

Not anymore :slight_smile:


Thanks so much for the kind words Lars!

I wish. There are two nearly identical pages. The brand page has the correct count. But the plugin page where you can subscribe to the entire plugin still has the incorrect count. I opted to link the plugin page because I want people to be able to subscribe to the plugin, instead of adding individual modules.

Wonderful release thank you !

Rhythm Explorer is going to be tonnes of fun.

With that as a basis I hope Venom has a module inspired by this in its future: VERMONA - meloDICER

It will be fun to send Rhythm Explorer to notes as well as drums.

1 Like

It’s only the top count that is wrong on the plugin page, the hidden module is actually not shown. So the count says 9 but only 8 modules are shown. You should probably just write to Andrew and inform him, ref. his announcement today about “hidden”.

Congratulations, @DaveVenom! I’m looking forward to trying out your modules, especially Recurse and Rhythm Explorer. I can’t believe you released all this goodness right out of the gate. It takes me a couple months to release one module at a time, LOL!

1 Like

Intriguing idea. I already have a pretty full plate of modules I would like to build. But something like that might be interesting in the future. I need to listen to some demos to see what the results might be like.

Update - I listened/watched some demos - and I like it!


Great tool! I’m currently exploring it.

Your Harmonic Quantizer is a very convenient way to generate single harmonics.

For some reason in the synthesis domain there is relatively little said and done specifically focusing on “harmonics” / “harmonics series” / “spectral synthesis” / “additive synthesis”. Even though it offers many unique (and interesting/usefull) options.

E.g. it’s great fun to send random (ranges of) harmonics at random amplitudes at random times with random amp envelopes into delays, reverbs and/or resonators to create evolving spectral patterns. Either using single sines or switching/rotating multiple sines (e.g. using polyphony).

As said it also combines great with PM, FM, AM/RM (Phase, Frequency and Amplitude/Ring Modulation). Since these techniques very much depend on integer multiples/ratios to stay within the realm of harmonics.

1 Like

I am glad you like it :smiley: I was a bit surprised there wasn’t already a module to assist with generating harmonic (integral multiple) V/Oct CV values. This was a module that I had conceptualized over 1 year ago.

Don’t forget about polyphonic inputs and outputs! One HQ can generate up to 16 harmonics, perhaps all for the same root note, or maybe for different root notes.

Hi Dave, I’m finally getting around to try out your modules and . . . loving them!!

I’m just scratching the surface because they seem crazy deep, and the detailed manual helps a ton.

Thanks so much for all the hard work you’ve put in. Alot of these concepts are exactly what I’ve been looking for. :pray: :bowing_man:

1 Like

Oh and I forgot to mention, extremely CPU efficient.

1 Like

Wow! Thanks Auret - that is great to hear!

Yeah - I was very pleasantly surprised by the performance, yet I don’t feel like I did any special programming to optimize performance.

One time that I did attempt some optimization ended up being counter-productive, so I stripped it out. There really is no need to update computations based on parameter knobs every sample cycle, so I tried processing the knob values every n cycles (32 for example). In the process, I ended up adding a few function calls. If anything, it only hurt performance. Rather than investigate, I just backed the “optimizations” out. But it seems to me that the code was already efficient enough that adding function call overhead negated any benefit of fewer computations.


I just realized the Bernoulli Switch introduces clicks when switching between audio inputs. I am adding a fix for the next release - adding a context menu option to enable a cross fade slew with each switch.


One week ago (1 day after Venom plugin was released to the library) I performed live with my Native American style flutes backed by two VCV Rack patches that feature the Venom Plugin.

I finally prepared a couple demo videos that briefly walk through the techniques used with the Venom modules in those two patches.

The first patch uses Bernoulli Switch to swap left and right channels at audio rates for two drones in A and E. The Recurse module is used to recursively filter the two channels with a resonant low pass filter. Two filter sweeps provide an eerie sound as the filter glides through the harmonic series.

The second patch features the Rhythm Explorer. One instance is used in a “traditional” way to create stochastic random rhythm patterns for drums. But another instance is clocked at audio rates to function as a VCO.


I’m new to the vcv rack world (especially patching in general) and was having a hard time understand how to patch up rhythm explorer. So glad to be seeing this video. Thank you for it!

When I’ve run into that issue I’ve added independent A and R controls so you can control the slew rate. Since it doesn’t really add any complexity and it’s a little more flexible (and you don’t have to decide). Don’t know if you have the panel space.

Actually, looking at the two where I did that (for very different reasons), I see they both have knobs and a CV for that. (In cheby it’s called “Rise” and “Fall”.


I thought about providing slew rate options in the context menu, but I think I will keep it constant on and off for now. The intent is just to eliminate audio pops, not to add a noticeable slew. The option is actually called “Anti-pop switching”

The panel is pretty crowded, and there are already rise and fall knobs. But they are for something entirely different - to specify the Sdhmitt trigger rise and fall thresholds. I may live to regret my label choice.


As a module creator, I find I’m always debating with myself whether I should include yet another feature or not. I tend to answer no when

  • something can be done by the user by adding an external module
  • that thing is probably needed in a minority of cases

I tend to answer yes when

  • the feature affects internal functioning that is not accessible from outside the module
  • the feature is likely to be needed a good percentage of the time

I struggle most with these decisions when something is probably useful but could be done from the outside, yet I can’t figure out a priori how often people will want to use it. I suspect user feedback can bias the decision because those in favor of the feature will speak up, but those who don’t need it will tend to remain silent. Yet adding more complexity when not needed can cause harm to the usability of the module.

1 Like

My Rhythm Explorer demo patch used the Low Fat Milk (LFM) plugin to create some nice visuals - fun, but totally unnecessary. Unfortunately the LFM appears to have a bug that can lead to VCV crashes. So I updated the PatchStorage post to a new version without the LFM.


:astonished: With the recent update, where there is oversampling added in the context menu on wincomp and bernouilli gate , this collection is downright spectacular!!

Thanks so much Dave! :raised_hands: