Stuck with a SynthEdit project?

Month: April 2025

Using the DAM Filter Draw module

Many thanks go to Davidson for his very handy range of SE modules.
This particular module allows us to have a visual representation of a filter’s frequency response, and to be able to control the cutoff and resonance from either the graphic display, or an external control voltage. I have used an SV filter in this project.

The DAM Filter Draw module.

Hint: The usual the text supplied to this plug will give you a pop up hint when the mouse is over the display window.
Menu Items/Selection: Used for the right click menu items and the choice made.
Mouse Down X:
Mouse Down Y:
Pos X Cut: Input/Output for the filter X value, which is connected to the filter’s Pitch or Frequency plug. Values are between 0-1 Floating, so when connecting to a Patch Memory always use the Animation Position plug.
Pos Y Reso: Input/Output for the filter Y value, which is connected to the filter’s Resonance, Q or Gain plug. Values are between 0-1 Floating, so when connecting to a Patch Memory always use the Animation Position plug.
Grasp Off/On: When this plug has the Boolean value of 1 (On, or True) you can adjust the parameters only by dragging the shape curve. When it has a Boolean value of 0 (Off, or False) you can adjust the Cut and Reso values by clicking or dragging anywhere in the display window.
Filter: You can set the filter mode for the display using the appropriate integer values; Low Pass=0,High Pass=1,Band Pass=2, Band Reject=3,Peak=4,Low Shelf=5,High Shelf=6,ST=7,CN=8
Note: ST allows you to drag the filter between Band Pass and Band Reject, CN gives a variable frequency, variable width Band Pass (I’m going to assume here that these options relate to a future filter release from Davidson?)
Slope: -12db (Single pole SV)=0, -24db/Octave (2 Pole SV)=1.
BG ARGB: Sets the background colour of the display window in the usual ARGB format. Hex codes won’t work here.
Line size: Sets the colour of the curve line in the usual ARGB format. Hex codes won’t work here.
Gradient Flip: You can invert the positions of the gradient colours using 0 or 1.
Fill Below/Above Center: Places the fill colours above or below the filter curve (although this is an integer plug there are only the two options). Below the curve = 0,
above the curve = 1.
Fill Top ARGB: Specify the upper portion of the gradient fill colour as ARGB (Not Hex, that won’t work)
Fill Bottom ARGB: Specify the upper portion of the gradient fill colour as ARGB (Not Hex, that won’t work)
Grid Off/On: 1 switches the centre grid on, 0 turns it off.
Grid Box Off/On: 1 switches the outer grid on, 0 turns it off.
Grid Line Size: Sets the thickness of the grid Note: this is a Floating point value not integer so you have a fine control over the grid thickness.
Grid ARGB: Specify the grid colour as ARGB (Not Hex, that won’t work)

The DAM Filter Draw module and its various plugs.
The module and it’s associated plugs.

Filter type options.

The Filter Draw module has more filter type options than we need but as the ones we are using are in the same sequence as the SV filter options this doesn’t matter. The unwanted options are just not used ( the drop down list is automatically taken from the SV filters options list).

Controlling the filter from the Filter Draw module.

This is done via the the two PatchMemory Float3 modules:
Pos X Cut controls the filter’s cutoff frequency
Pos Y Cut controls the filter’s resonance level.
These modules convert from GUI values to DSP, which is then converted from Float values to Voltage values for the Cutoff and Resonance plugs on the filter module, and convert the 0-1 Float range to the normal 0-10 V range for DSP controls.

CV Inputs.

Next we have two QTN_Volt2GUIFloat modules to take the external control voltages, and perform two functions 1) convert the incoming DSP voltage to GUI float, 2) redirect the output Float value to the left hand side of the module so it can be connected to the PatchMemory Value plug.
When this input voltage changes it will shift the appropriate x or y position on the Filter Draw module, and the related control value on the SV filter.

Filter Options.

As I said earlier we don’t need to set up any specially formatted lists, we can just use to PatchMemory List3 modules, and ED List Entry modules (OK you can use the stock ones, but I like Elena’s as you can set the background and text colours to suit your colour scheme).

ED Soft Clip module.

There are other soft clip modules, but after a little experimenting I found with Elena’s module it’s easier to keep a constant output level as you change the amount of clipping. This module can go from soft and very subtle overdrive to full on distortion.


These are Elena’s “Read Me” instructions:

The Soft Clip module.

As you can see from the structure the module itself is a simple one with just three plugs:
Input: This is our audio input voltage. As usual we want the usual (normalized) range of +/- 5 V
K: The amount of soft clipping applied. 0 to 10 V is allowed, but I found it best to stick to a maximum of 9.7 V to avoid quite noticeable aliasing.
Output: This is the modified audio signal. This level does vary with the value sent to the k plug, but this can easily be adjusted.

Testing the Soft Clip.

The structure is my test bed.
Symmetry:
I added a DC voltage to the Input plug to see what the effect would be, and it does produce some useful asymmetry in the output waveform, +/- 5V is a useful range to use.
Clip range:
It’s best not to go over 9.7 V on the k plug as you’ll get some very noticeable and nasty sounding aliasing by products.
DC Removal:
As I’m using a DC offset to control the symmetry of the effect, it’s necessary to remove the DC component added at the output with a 1 pole HPF set to 20Hz, as this would cause problems for other modules further down the signal chain.
Keeping things level:
It’s always nice not to have unexpected changes in volume when increasing the amount of an effect like this. As with most soft clip modules the output changes quite noticeably as the “clip” or k voltage increases. With Elena’s module its quite easy. All we need do is take the voltage from the clip slider, feed it through a Divide module set to /2, and invert the resulting voltage. This is then fed to Input 2 of the Level Adj module, along with a fixed +10 V offset. The voltage from the inverter is then subtracted from the offset reducing the gain as the k voltage is increased.

As you can see the only variations in output level come about when asymmetry is applied which with the current setup is only to be expected.

A working distortion effect.

All that’s needed for a basic effect is to add an input, and a gain control stage. If course you could go further and add filtering, tone controls etc…