One thing I’ve been exploring a lot is patch-programming of comparators, usually with feedback around CV mixers or filters. These patches work either with the old-style (73-75) Triple Comparator or the modern NCOM (divide-by-N/comparator).
Basically, the lowly comparator can be turned into a one-bit memory element, a voltage divider, or an oscillator, among many other things.
The “voltage divider” itself leads to a variety of uses, such as a preamp or a buffer. The oscillator can interact with another, conventional oscillator to form a “complex oscillator” with unique timbral characteristics.
First — the “memory element” — this happens with positive feedback — patching the output into the “+” input.

Consider applying various voltages to the “-“ input. If the comparator is “off” (that is, outputting 0V), the feedback has no effect. Any voltage less than 0V will turn the comparator “on”, because the voltage at the “+” input is 0V.
Once the comparator is “on”, the voltage at the “+” input is 5V. So the voltage at the “-“ input has to be raised above 5V to turn the comparator off.
This patch is already a memory element. If the “-“ input voltage is between 0-5V, the comparator will remember its previous state. Below 0V, the comparator will turn on; above 5V it will turn off.
Here’s a more useful version of this “memory” patch.

This involves an external CV Processor (mixer) used for scaling, such as the Dual Processor. Feedback from the comparator output is scaled by half (0.5). The -3.75 voltage offset may be set either on the Processor or the comparator (as shown).
With this patch, an input voltage (IN) between 0 and 1.25 V turns the comparator off, between 3.75 and 5V turns it on, and between 1.25 and 3.75 V leaves it in its previous state.
I use this method to make the knob positions of one sequencer control the up-down status of another sequencer, which is useful for live sequencing through knob adjustments alone.
Second — the voltage divider. This involves negative feedback — patching the comparator output to its “-“ input, again through a CV processor. The scaling on the feedback input is variable – but should always be positive (α > 0).

What happens in this case is very surprising.
Negative feedback makes the comparator output values between 0 and 5V, which it shouldn’t be able to do. In fact, without the feedback, it is impossible for the comparator to output these values.
However, the behavior makes sense when thinking of the comparator another way — as an “infinite gain”. Consider the following diagram.

The function of the comparator is split among two blocks: the summer (+/-) and gain (K), where K becomes infinite. There’s another gain block in the feedback path (α), which represents the contribution of the CV processor.
We can express the output in terms of the input, as follows: y(t) = K(x(t) - αy(t)). Rearranging, y(t) = Kx(t)/(1+Kα). If K →∞ then y(t) = x(t)/α.
The multiplier in the feedback path has been converted into a divider. The only catch is that we still have the clipping between 0-5V.
Application — Lo-fi Preamp
While we can’t remove the clipping entirely, we can use a pair of CV mixers (Dual processors) to make the comparator symmetric, that is, to clip between -5V and 5V. This makes the divider patch suitable for audio inputs.
From this we can make a preamp, although it’s not very high quality due to noise and other non-ideal characteristics. In theory, when the feedback gain is very small (α = .001), amplification will be large (y(t)/x(t) = 1000). But in practice this works only for gains of about 10 (α = .1), beyond that the “preamp” becomes a distortion device, even though the output signal level is well within ±5V.
Still, this could be enough gain to amplify low-level external signals, and the distortion is interesting on its own, something like that of a battery-operated device where the batteries have run low.
In “distortion” mode, it’s interesting to adjust the comparator offset — this can often yield a better tone.

Application — two-quadrant divider
Division can be made dynamic (a “two-quadrant divider”) by substituting a linear VCA in place of the CV Processor. Here the input, x(t), can be an audio signal (bipolar). The control, y(t), must be unipolar (y(t) > 0). This patch computes the ratio: x(t)/y(t). The result clips between +/-5V.
However, it’s very important that the VCA accept control signals or “DC” at both inputs — if the VCA is audio only, or “AC”, the patch will not work, because essentially a highpass filter will have been inserted in the feedback path.
Either the 73-75 VCA or the modern Active Processor can be used here. With the 73-75 VCA the feedback signal must be patched to the “DC” input. With the Active Processor, the feedback signal is patched to “In 2” and the control to “VC Xfade”.
While many modular systems offer two-and four quadrant multiplication, through VCA’s and ring modulators, it’s rare to see division of two signals, outside of analog computers.
Application — voltage buffer (unipolar)
Finally, a “boring” application - a unity gain (clipped between 0-5V) with α = 1.

Here the CV attenuator is not needed: the comparator output is fed directly back into its negative input.
The use of this patch (abiding the 0-5V limitation) is to “buffer” voltages to prevent a voltage drop when connecting an output to more than one input.
Modern Serge systems already have buffered outputs, so this patch isn’t needed for those systems.
For the 73-75 systems, however, it is indeed one of the most critical and essential patches for tonal music, because none of the modules are buffered. When a sequencer bank output is connected to an oscillator and then to additional modules you have to retune the oscillator each time a new connection is added or removed. The buffer eliminates the need for this retuning.
Third — the oscillator. This is a variant of the negative feedback patch. Suppose, instead of directly feeding back the comparator output into the negative input, we patch it through a lowpass filter, and also introduce a positive offset (usually quite high, around 5V):

As long as a few requirements hold, this creates a system for which the “linear part” (considering the comparator again as an infinite gain) is oscillatory, but unstable. Fortunately, many of the Serge filters (e.g. 73-75 filter, VCFQ, etc.) satisfy these requirements:
- The filter must be suitable for control well as audio signals (no AC-coupling)
- The filter must not invert the phase of the signal.
- The filter must be at least second-order (two-pole) to produce oscillation. First-order systems, even nonlinear ones such as slew limiters, cannot produce any oscillation.
- No resonance is needed. The best-sounding effects are always with resonance at zero.
- The comparator offset must be adjusted somewhere in its positive range, usually +5V to get the best sounding result. For most values of this offset, the patch will not oscillate.
hen this combination of nonlinear clipping and unstable/oscillatory linear part produces a stable oscillator.
The frequency of the oscillator is controlled by the filter cutoff.
The result sounds much like a square wave, while not quite as “bright”. The oscillator is remarkably consistent in both amplitude and tone over the entire audio range.
The complex oscillator
More interesting behavior results when patching the output of another oscillator to the comparator’s “+” input. A unipolar sawtooth works best, and for best results it should be scaled by half (0-2.5V) using a CV processor. The CV processor offset can also be adjusted for some fine-tune timbral control. The result vaguely resembles hard sync, as if the oscillator controlled by the filter cutoff is now synchronized to the input. However, there’s also a “growl”, something like a combination of hard sync and FM. It’s difficult to describe.

An open challenge (something I’ve not tested), is to pre-amplify an external signal, for instance guitar, drum machine or radio — possibly using the comparator-based preamp patch previously discussed — and then feed the result into this “complex oscillator” system, in place of the sawtooth.
The result may yield a totally new type of distortion effect, where an oscillator tries to synchronize to an incoming signal. I don’t know of such effects other than the rare/expensive “PLL” pedals which I have not tried personally. But this implementation has nothing to do with PLL or even hard sync, so it will likely sound very different.
Anyway, I hope this set of “comparator studies” helps us get a lot more out of this module, and I’ll be happy to answer questions! Comparators are indeed useful for a lot more than PWM and trigger pulses. Happy patching!