A Logic Cookbook for Synthesis
Block one thing from happening when another is happening
You can mult the triggers and gates for one voice into a NOR or NOT circuit, and the circuit will be high only in the spaces between those triggers an ...
CV binary/“digital” logic filtering events rhythm creation conditions NOT AND NOR
You can mult the triggers and gates for one voice into a NOR or NOT circuit, and the circuit will be high only in the spaces between those triggers an ...
CV binary/“digital” logic filtering events rhythm creation conditions NOT AND NOR
Block one thing from happening when two other things are happening
You can mult gates for two or more event streams into a NAND circuit, and circuit will output a high signal except when two input gates happen to over ...
CV binary/“digital” logic filtering events rhythm creation conditions NAND
You can mult gates for two or more event streams into a NAND circuit, and circuit will output a high signal except when two input gates happen to over ...
CV binary/“digital” logic filtering events rhythm creation conditions NAND
Chop up a rhythm with a gate stream
If you combine a rhythm and a slowish 50% duty cycle clock (sync’d or unsync’d) or other stream of long-ish gates in an OR circuit, the second stream ...
CV binary/“digital” logic rhythm creation OR
If you combine a rhythm and a slowish 50% duty cycle clock (sync’d or unsync’d) or other stream of long-ish gates in an OR circuit, the second stream ...
CV binary/“digital” logic rhythm creation OR
Combine gate streams for expressive ADSR variation
You can combine gate (and trigger) signals of varying length in an OR circuit, and where they partially overlap, you will get new gate lengths. The o ...
CV binary/“digital” logic rhythm creation gating envelopes (ADSR) OR
You can combine gate (and trigger) signals of varying length in an OR circuit, and where they partially overlap, you will get new gate lengths. The o ...
CV binary/“digital” logic rhythm creation gating envelopes (ADSR) OR
Combine two waveshapes
You can combine two different wave shapes—audio or CV—using analog OR logic. Note: You’ll only get the positive (above 0V) portion of the results. ...
audio CV variable/“analog” logic distortion MAX (OR/PEAK)
You can combine two different wave shapes—audio or CV—using analog OR logic. Note: You’ll only get the positive (above 0V) portion of the results. ...
audio CV variable/“analog” logic distortion MAX (OR/PEAK)
Convert gate to trigger
Gate-to-trigger conversion is not a logic operation, per se, but it can be a necessary logic-adjacent step. A few multi-utility modules include a gat ...
CV audio binary/“digital” logic edge detector
Gate-to-trigger conversion is not a logic operation, per se, but it can be a necessary logic-adjacent step. A few multi-utility modules include a gat ...
CV audio binary/“digital” logic edge detector
Convert trigger to gate
Trigger-to-gate conversion is not a logic operation, per se, but it can be a necessary prior step. A few multi-utility modules include a trigger-to-g ...
CV audio binary/“digital” logic edge detector
Trigger-to-gate conversion is not a logic operation, per se, but it can be a necessary prior step. A few multi-utility modules include a trigger-to-g ...
CV audio binary/“digital” logic edge detector
Derive accent pattern from two Euclidean patterns
If you combine two rhythmic patterns in an AND circuit, you can derive a third accent rhythm from where the two rhythms overlap. This technique works ...
CV binary/“digital” logic rhythm creation AND
If you combine two rhythmic patterns in an AND circuit, you can derive a third accent rhythm from where the two rhythms overlap. This technique works ...
CV binary/“digital” logic rhythm creation AND
Derive third rhythmic pattern from two existing patterns
If you combine two rhythmic patterns in an AND circuit, you can derive a third accent rhythm from where the two rhythms overlap. This technique works ...
CV binary/“digital” logic rhythm creation AND
If you combine two rhythmic patterns in an AND circuit, you can derive a third accent rhythm from where the two rhythms overlap. This technique works ...
CV binary/“digital” logic rhythm creation AND
Event at start and/or end of note
If you patch the note gate from a keyboard or sequencer to a rise/fall detector, you can use the resulting trigger or gate to make something else happ ...
CV binary/“digital” logic gating envelopes (ADSR) edge detector
If you patch the note gate from a keyboard or sequencer to a rise/fall detector, you can use the resulting trigger or gate to make something else happ ...
CV binary/“digital” logic gating envelopes (ADSR) edge detector
Get the difference of two signals at a point in time
You can patch two signals to a DIFF circuit and get a voltage at the output that reflects the magnitude of the difference between the two input voltag ...
CV variable/“analog” logic DIFF (magnitude)
You can patch two signals to a DIFF circuit and get a voltage at the output that reflects the magnitude of the difference between the two input voltag ...
CV variable/“analog” logic DIFF (magnitude)
Get the higher of two signals at a point in time
You can get the higher/larger of two continuous voltage values by passing them through a MAX (analog OR) circuit. Optionally, you can employ a sample ...
CV variable/“analog” logic MAX (OR/PEAK)
You can get the higher/larger of two continuous voltage values by passing them through a MAX (analog OR) circuit. Optionally, you can employ a sample ...
CV variable/“analog” logic MAX (OR/PEAK)
Get the lower of two signals at a point in time
You can get the lower of two continuous voltage values by passing them through a MIN (analog AND) circuit. Optionally, you can employ a sample and hol ...
CV variable/“analog” logic MIN (AND/TROUGH)
You can get the lower of two continuous voltage values by passing them through a MIN (analog AND) circuit. Optionally, you can employ a sample and hol ...
CV variable/“analog” logic MIN (AND/TROUGH)
Half-wave rectification
You can half-rectify (discard the portion of the signal that is below 0V) any audio or CV signal through an MAX circuit. Example: - patch a sawtooth ...
audio CV variable/“analog” logic distortion MAX (OR/PEAK)
You can half-rectify (discard the portion of the signal that is below 0V) any audio or CV signal through an MAX circuit. Example: - patch a sawtooth ...
audio CV variable/“analog” logic distortion MAX (OR/PEAK)
Limit events to period of inactivity
You can use a comparator to allow or disallow other events (such as advancing a sequencer) based on activity elsewhere in your patch. The requirement ...
CV binary/“digital” logic variable/“analog” logic conditions comparator
You can use a comparator to allow or disallow other events (such as advancing a sequencer) based on activity elsewhere in your patch. The requirement ...
CV binary/“digital” logic variable/“analog” logic conditions comparator
Merge triggers and gates
You can combine two or more trigger and/or gate signals using OR logic. The result is similar to using a mixer, except that a mixer adds the signals t ...
CV binary/“digital” logic rhythm creation OR
You can combine two or more trigger and/or gate signals using OR logic. The result is similar to using a mixer, except that a mixer adds the signals t ...
CV binary/“digital” logic rhythm creation OR
Merge triggers and gates with retriggering
While you can use OR logic to merge two trigger and/or gate streams, when the gates overlap, they merge together, so the fact that two events are happ ...
CV binary/“digital” logic rhythm creation “gater”
While you can use OR logic to merge two trigger and/or gate streams, when the gates overlap, they merge together, so the fact that two events are happ ...
CV binary/“digital” logic rhythm creation “gater”
Mix logic outputs to create melodies
If you combine clocks and/or logic outputs derived from those clocks in a CV mixer, and then quantize the result to a scale, you have created a melodi ...
CV binary/“digital” logic variable/“analog” logic AND OR XOR NAND NOR XNOR NOT
If you combine clocks and/or logic outputs derived from those clocks in a CV mixer, and then quantize the result to a scale, you have created a melodi ...
CV binary/“digital” logic variable/“analog” logic AND OR XOR NAND NOR XNOR NOT
Modulate during the release phase of envelope
If you patch a copy of the gate you send an ADSR (or ASR) envelope to the input on a NOR circuit, the NOR output will be low when your gate is high an ...
CV binary/“digital” logic gating envelopes (ADSR) NOR
If you patch a copy of the gate you send an ADSR (or ASR) envelope to the input on a NOR circuit, the NOR output will be low when your gate is high an ...
CV binary/“digital” logic gating envelopes (ADSR) NOR
Multiply note events or percussion hits
If you mult the trigger or gate driving an envelope or triggering percussion to the input on a gate delay, you can derive a second, identical trigger ...
CV binary/“digital” logic rhythm creation gate/trigger delay
If you mult the trigger or gate driving an envelope or triggering percussion to the input on a gate delay, you can derive a second, identical trigger ...
CV binary/“digital” logic rhythm creation gate/trigger delay
Off-beat from NOR/NOT
If you feed a 50% duty cycle clock into the OR of a logic module, the NOR (or inverse of OR) will go high halfway through the clock cycle (when the cl ...
CV binary/“digital” logic rhythm creation NOR NOT
If you feed a 50% duty cycle clock into the OR of a logic module, the NOR (or inverse of OR) will go high halfway through the clock cycle (when the cl ...
CV binary/“digital” logic rhythm creation NOR NOT
One thing cannot happen unless two other things happen in sequence beforehand
You can use a three-step validation function, such as the 1,2,3 features of Klavis Logica XT, to insure that something only happens when a particular ...
CV binary/“digital” logic filtering events rhythm creation
You can use a three-step validation function, such as the 1,2,3 features of Klavis Logica XT, to insure that something only happens when a particular ...
CV binary/“digital” logic filtering events rhythm creation
One thing cannot happen until after another has happened
You can use a flipflop to track whether something has happened or not, and employ the output downstream (in another logic module or VCA) to prevent so ...
CV binary/“digital” logic filtering events rhythm creation flipflop
You can use a flipflop to track whether something has happened or not, and employ the output downstream (in another logic module or VCA) to prevent so ...
CV binary/“digital” logic filtering events rhythm creation flipflop
Per-note modulation based on probability
You can patch a copy of the gate from your sequence or keyboard through a gate skipper, and patch the output of the skipper to another envelope (or VC ...
CV binary/“digital” logic gating envelopes (ADSR) filtering events probability-based skip
You can patch a copy of the gate from your sequence or keyboard through a gate skipper, and patch the output of the skipper to another envelope (or VC ...
CV binary/“digital” logic gating envelopes (ADSR) filtering events probability-based skip
Quantize triggers and short pulses to a rhythm
If you combine any regular stream of triggers or short gates (such as a clock with a short duty cycle) with an irregular gate stream (such as gates fr ...
CV binary/“digital” logic rhythm creation gating envelopes (ADSR) quantizing events AND
If you combine any regular stream of triggers or short gates (such as a clock with a short duty cycle) with an irregular gate stream (such as gates fr ...
CV binary/“digital” logic rhythm creation gating envelopes (ADSR) quantizing events AND
Shifting rhythms from unsynced LFOs
If you feed two unsynced LFOs (works best with bipolar LFOs) into logic circuits, you will derive diverse, inconsistent clocks and “rhythms” from diff ...
CV binary/“digital” logic rhythm creation AND OR XOR NAND NOR XNOR NOT
If you feed two unsynced LFOs (works best with bipolar LFOs) into logic circuits, you will derive diverse, inconsistent clocks and “rhythms” from diff ...
CV binary/“digital” logic rhythm creation AND OR XOR NAND NOR XNOR NOT
Square wave ring modulation
If you feed the square waves from two oscillators through a binary XOR logic cicuit, you receive a “CMOS-style ring modulated” pulse wave at the outpu ...
audio binary/“digital” logic distortion XOR
If you feed the square waves from two oscillators through a binary XOR logic cicuit, you receive a “CMOS-style ring modulated” pulse wave at the outpu ...
audio binary/“digital” logic distortion XOR
Sub-octave generator
If you patch a square wave (at either audio or sub-audio frequency) into a flipflop, you get divide by two from the output (an octave lower in pitch). ...
CV audio binary/“digital” logic rhythm creation flipflop
If you patch a square wave (at either audio or sub-audio frequency) into a flipflop, you get divide by two from the output (an octave lower in pitch). ...
CV audio binary/“digital” logic rhythm creation flipflop
Threshold events based on pitch or velocity
If you patch a variable voltage signal such as pitch or velocity to a comparator, you can use the resulting gate to trigger an event, open a VCA, or g ...
CV binary/“digital” logic variable/“analog” logic conditions comparator
If you patch a variable voltage signal such as pitch or velocity to a comparator, you can use the resulting gate to trigger an event, open a VCA, or g ...
CV binary/“digital” logic variable/“analog” logic conditions comparator
Toggle something on/off
A simple flipflop will hold its state (high or low) until it receives a rising edge (trigger or gate) at its input, at which point it will switch to t ...
CV binary/“digital” logic filtering events flipflop
A simple flipflop will hold its state (high or low) until it receives a rising edge (trigger or gate) at its input, at which point it will switch to t ...
CV binary/“digital” logic filtering events flipflop
Turn anything into a gate stream
Logic circuits interpret any input signals as “on” or “off”, kind of like a crude comparator. Logic modules may vary in exactly how they respond based ...
audio CV binary/“digital” logic distortion OR XOR comparator
Logic circuits interpret any input signals as “on” or “off”, kind of like a crude comparator. Logic modules may vary in exactly how they respond based ...
audio CV binary/“digital” logic distortion OR XOR comparator
Turn drum fills on and off
You can use AND logic like a simple VCA to filter (pass or mute) any trigger or gate stream. One application is create a drum fill trigger pattern and ...
CV binary/“digital” logic filtering events rhythm creation AND
You can use AND logic like a simple VCA to filter (pass or mute) any trigger or gate stream. One application is create a drum fill trigger pattern and ...
CV binary/“digital” logic filtering events rhythm creation AND
Variable PWM from a comparator
A comparator outputs a binary (high or low) signal, indistinguishable from a pulse or gate stream. If you feed the comparator with a regular triangle, ...
audio CV binary/“digital” logic distortion comparator
A comparator outputs a binary (high or low) signal, indistinguishable from a pulse or gate stream. If you feed the comparator with a regular triangle, ...
audio CV binary/“digital” logic distortion comparator
This cookbook is by no means exhaustive, but will hopefully be helpful to a few folks. If you think you find an error or wish to submit a recipe for inclusion, get in touch!
Martin Doudoroff
Related discussion thread: A Logic Cookbook for Synthesis (ModWiggler forum)
Latest
2024-04-10 updated the PWM recipe
2023-03-16 added recipes for PWM and sub-octave generation
2023-03-12 added recipes for toggle, gate-to-trigger, and trigger-to-gate
2023-03-11 first draft
Show full revision history
• • •