Dexter Manual
Dexter Manual
User Manual
Valley
License information
Copyright 2018 Dale Johnson. Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and
the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions
and the following disclaimer in the documentation and/or other materials provided with the
distribution.
3. Neither the name of the copyright holder nor the names of its contributors may be used to
endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Contents
0. Background..............................................................................1
1. Overview..................................................................................2
1.1 Master controls………………………………………………………………………………3
1.2 Operator controls…………………………………………………………………………..5
1.3 Operator settings menu…………………………………………………………………6
2. Basic Usage…………………………………………………………………..7
3. How it works………………………………………………………………….8
3.1 Operators………………………………………………………………………………….….8
3.2 Wavetables………………………………………………………………………………….10
4. Connectivity…………………………………………………………………..11
0. Background
FM synthesis is a technique that is often shied away from due to its apparent
complex nature and unfamiliar parameters. This perception is usually caused
by the bad interface design in the synthesiser that popularised the technique
in the 1980s, the Yamaha DX7. With a huge number of parameters buried
behind a small LCD screen, a single slider, and an array of buttons that served
multiple functions, many people who sit down to program it quickly become
lost. It was like trying to solve a Rubik’s cube through a letter box. Whilst
computers at the time aided programming, this still hampered down the
potential of FM. However, some musicians and artists did unlock this potential,
and produced sounds that were far beyond what FM synthesis was thought to
be capable of.
To use Dexter, download the Valley module set from the plugin manager at
https://vcvrack.com/plugins.html
1
1. Overview
Dexter can be thought of as either an oscillator, a complex waveform generator, or even a “synth
with no envelopes”. It is based off a combination of oscillator designs to create a highly usable and
fun approach to FM synthesis. There is a lot of control available to the user, and I am sure that many
of you will enjoy the results you will get from this module.
Voice A pitch and chord Algorithm, LFO and Reset Operator controls and
controls, and Voice B Phase controls, and pitch CV inputs
pitch controls CV for voices A and B.
In the right click menu you may change the panel style, operator sync sources and individual
output source.
2
1.1 Master controls
The master controls are, as the name implies, are the main go-to controls in Dexter for
basic things such as tuning, chords, algorithm selection and overall shape and brightness.
Chord selection,
inversion and detune
controls for Voice A
Algorithm routing
Sets complex chords diagram
(more than 4 notes) to be
inverted above the last
note or by 1 octave
Sets all operators in
Oct, Coarse and Fine set Voice A to be LFOS
the overall tuning of
Voice B
Resets the phase of
all operators in both
Shape affects the shape voices
of all operators.
V/Oct pitch inputs for
Brightness controls the each voice
overall FM depth i.e. the
modulator levels Master modulation CV
inputs
FB, or Feedback, sets
how much the orange
operator in the algorithm
diagram modulates itself
1.1.1 Algorithms
An algorithm describes how each operator modulates and synchronises another, and to which
output they are directed to, via a routing matrix. It can be thought of as a recipe for a particular type
of sound, as algorithms are often optimised for particular timbres e.g. metallic, brassy, smooth,
vocal etc. Dexter offers 23 algorithms where 12 of these share operators for both voices A and B,
and the remaining 11 dedicate operators to either A or B allowing for independent timbres from each
voice. By default, the algorithms also determine the synchronisation source for each operator,
where operators synchronise to their parent operator. This can be changed in the context menu to
“neighbour” where an operator is syncs to the operator to its right on the panel i.e. 1 -> 2 , 2 -> 3 and
3 -> 4.
3
1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16 17 18 19 20 21 22 23
1.1.2 Chords
Voice A has the ability to play chords of 6 notes, plus two unison modes that use either 5 or
7 notes. Chords are selected using the ‘Chord’ knob in the Voice A section of Master
Controls. The chord notes can be inverted several times using the ‘Invert’ knob. If the chords
are more than 4 notes big, notes can be either inverted by one octave by default, or fully
inverted so that they are placed after the last note of the chord. The notes in the chord can
be detuned where some are tuned up (sharper) and others are tuned down (flatter). The
detune is quite deep meaning some chords are totally transformed. If the Voice A output is
patched in stereo i.e. both A L and A R, the notes are distributed between the two. The output
level is adjusted as to prevent clipping i.e. the more notes, the quieter the output is made.
The following table lists all available chords, their density, and note intervals:
4
Half-diminished 7th 4 0, 3, 6, 10
Diminished 7th 4 0, 3, 6, 9
Sus 7th 4 0, 5, 7, 10
Dominant 9th 5 0, 4, 7, 10, 14
Dominant minor 9th 5 0, 4, 7, 10, 13
Major 9th 5 0, 4, 7, 11, 14
Minor 9th 5 0, 3, 7, 10, 14
Major 6/9 5 0, 4, 7, 9, 14
Minor 6/9 5 0, 3, 7, 9, 14
9th Flat 5th 5 0, 4, 6, 10, 14
9th Sharp 5th 5 0, 4, 8, 10, 14
Dominant 11th 5 0, 7, 10, 14, 18
Minor 11th 6 0, 3, 7, 10, 14, 17
Unison 5 5 0, 0, 0, 0, 0
Unison 7 7 0, 0, 0, 0, 0, 0, 0
Tuning controls
Opens the operator
settings menu
Dedicated CV inputs
and attenuverters
Notes:
• All CV inputs operate between 0-10V and are scaled by the input attenuverters.
• All knobs act as an offset when combined with CV e.g. Operator Level = “Level Knob” +
“Level CV1” + “Level CV2”.
5
1.3 Operator settings menu
An operator’s settings menu is accessed by clicking on the button next to the gear icon at the top left of the
operator column. The menu is spread across 3 pages: Wavetable, Mod 1 & 2, and Mod 3 & 4.
This menu allows you change the operator’s wavetable (or bank), and the sync and phasor shaping modes /
methods (see sections 3.3 and 3.4 for more details).
Drop-down menu
selects the sync
mode
Selects the wavetable
Drop-down menu
selects the phasor
shaping mode
Dexter features 4 assignable modulation inputs. These two menus allow you to route each modulation
input to 13 different operator parameters.
Drop-down menu
selects modulation
destination
Destination Description
Pitch V/Oct modulation of the operator’s pitch
Multiple Operator’s frequency multiplier
Wave Position The position of the wave table the operator reads from
Wave Bank Selects which wave bank the operator reads from
Shape Operator’s shape
Level Operator’s level
Ext FM External FM input that is mixed with the operator’s modulator’s signal
Ext Sync External synchronisation input. Syncs when a zero to positive transition is detected
Shape Mode Selects the phasor shaping mode
Post Shape Selects if the FM is performed before or after the phasor shaping
Sync Mode Selects the operator’s sync mode
Sync Enable Activates the operator’s synchronisation mode
Weak Sync Enables weak synchronisation
6
2. Basic usage
Insert a copy of Dexter and connect the A L output to an Audio Interface output.
When the module is first inserted or re-initialised, the level of operator 1 is already at maximum and
has a pitch multiplier of 1. You should be able to hear a pure tone. Changing the Mult, Coarse and
Fine controls changes the pitch. It is best to leave Coarse and Fine in their default settings for now.
Changing the wave and shape controls will change the timbre of the tone.
Looking at the algorithm diagram above, in its initial state you can see 1 goes to the AB output. The
algorithm not only say what it sent to the output, but what operator is modulating another. In this
algorithm 4 modulates 3, which modulates 2, which modulates 1. This is the key to FM synthesis:
• Complex sounds are generated by modulating operators with other operators, or carriers.
Also notice that operator 4 is highlighted orange. This means that it can self-modulate, and the depth
for that is controlled by the orange FB knob in the Master Control section.
Now, turning up the level of operator 2 you’ll hear the tone become richer as 2 increasingly
modulates 1. This is much like controlling the cutoff frequency of a filter. Changing the multiplier of
either operator will again result in different yet harmonious / pleasing timbres. The results are
harmonious because the multiplier values between operators are related. These are also important
aspects of FM synthesis:
If the multiplier values between operators are unrelated i.e. the Coarse and Fine controls are
tweaked, the results become dissonant / clangourous / bell-like / metallic etc.
Inserting a jack into the A VOct input allows you to control the pitch of Voice A of Dexter, and the
same goes for Voice B by inserting a jack into the B VOct input. Inserting jacks into the operator CV
inputs allows you to modulate almost anything in the operator. The most common thing to do is to
connect LFOs and envelopes into the level CV inputs as to modulate the level of each operator,
controlling either the output volume if the operator is at the end of an algorithm and is connected to
an output, or the depth of modulation if an operator is modulating another.
7
3. How it works
Dexter features 4 operators shared between two “Voices”, A and B. Voice A is able to output chords
of up to 7 notes spread across stereo outputs (A L and A R), whilst Voice B outputs a mono signal
from “B Out”. Both voices can be independently tuned allowing for multi-timbral patches. The
individual operators outputs, OP 1 to 4, output a signal directly from an operator of either Voice A or
B regardless of the chosen algorithm.
Algo Chord
Control FB Controls
CV Inputs
Stereo A Left
Chord Controls
Pitch Controls
Routing Mapper A Right
Voice A Voice B
Individual out
voice select
Individual
Outputs
3.2 Operators
The operators generate a tone using lookup wavetable synthesis using a rising ramp, known as a
read phasor, to read the contents of a table. Waves can be scanned through by cross fading between
adjacent tables within the same bank of tables. FM synthesis is achieved by offsetting the read
phasor’s value with another signal, effectively speeding up / slowing down the read speed. Whilst
this is technically known as phase-modulation (PM) and is not true FM, this still modulates the
frequency and gives the same effect. If anything, PM is easier to implement, and it is the standard
method in commercial hardware FM synthesizers such as the DX series. To expand the versatility
of FM synthesis, the read phasor can be shaped in several ways that can distort and mangle the
output waveform. Dexter offers 12 shaping modes. By default, the modulator signal is added to the
read phasor before shaping, however it can be added post shaping by engaging the “Post Shpe”
button. This allows for an alternative timbre and at times can make the shaping sound more
pleasant.
8
Shape Mode Description
Bend The phasor is dragged to one side from the middle so that the 1st half of the table
is read faster than the last half.
Tilt The phasor reads the table faster and then waits at the end until a new cycle
begins
Lean The phasor follows a curve, so the table is initial read faster then gradually slower
towards the end of the cycle.
Twist Twists the middle third of the phasor around the centre, making it read the table
forwards, backwards, then forwards again.
Wrap The end of the phasor is wrapped back to the beginning several times between 0
and 1, creating a hard sync like effect
Mirror Both the beginning and end of the phasor are mirrored when either reaches 0 or
1
Reflect At a given point, the phasor is switched from an upward ramp to a downward
ramp.
Pulse The phasor is switched off and on at several positions, giving a type of PWM effect.
Step 4 Blends the phasor into a 4-step staircase, creating a very lo-fi sound
Step 8 Same as above but with an 8-step staircase
Step 16 Same as above but with a 16-step staircase
Var Step Gradually makes the phasor increasingly stepped until it stops completely.
Finally, each operator can be synchronised in up to 15 different modes. The last two sync modes,
are one-shot modes meaning an operator will only oscillate for one cycle when it detects a sync
event. Sync events are triggered when a sync signal rises above 0V. Operators sync using a
“beginning of cycle” pulse, however external sync relies on the zero-crossing of a raw waveform.
By engaging the “Weak” button on the front panel, the synchronisation will only occur when the
destination operator’s phasor is in the first quarter of its cycle regardless of modulation or shaping.
9
Modulator
Pre-fade
Output
Read Phasor Shaper Scanning
Pitch Lookup Output
Function
3.3 Wavetables
Dexter features 35 different wavetables, providing a vast pallet of timbres and textures to work with.
By default the “Opal” table is loaded, but this can be changed by going to the “Wavetable” page in the
settings menu, and turning the blue wavetable knob to select another table. The following list gives
a description about each table.
10
Voice5 Nasal vocal tones
PWM Pulse width modulated square wave
BiPls Square wave that is gradually “pinched” to middle of the wave cycle
SawGap1 Saw wave with a gradually increasing gap in the middle of the wave cycle
SawGap2 Saw wave that is gradually “pinched” to middle of the wave cycle
VGame Collection of lo-fi video game type waveforms.
4. Connectivity
Half of Dexter’s front panel is covered in jacks, where most of these are in fact CV inputs. However,
there is a lot a of repetition so try not to be intimidated. The following table describes the functionality
of each jack:
Outputs
A L and A R Stereo outputs of voice A. Chord notes are spread between the L and R outputs,
or summed to the L output if only L is connected.
OP 1 to 4 These are the individual output taps from a voice’s operators. Can be either
post or pre-fade level.
B Out Mono output of voice B.
Master Inputs
A and B VOct Volts per octave pitch control of voices A and B
Chord Chord CV
Inv Chord inversion CV
Detune Chord detune CV
Algo Algorithm CV
FB (Feedback) Feedback CV
Bright Brightness CV
Shape Shape CV
Operator Inputs
Pitch Volts per octave pitch control. Note: Multiple can be controlled via an
assignable mod input.
Wave Wave CV
Shape Shape CV
Level Level CV
Mod 1 to 4 Assignable CV modulation inputs
11