ADSR
- Attack Knob Sets the attack time.
- End of Attack Output Triggered when the end of the attack segment is reached.
- Decay Knob Sets the decay time.
- End of Decay Output Triggered when the end of the decay segment is reached.
- Sustain Knob Sets the sustain level.
- Release Knob Sets the release time.
- End of Release Output Triggered when the end of the release segment is reached.
- Vel Input Exponential amplitude modulation, designed to be connected to the Keyboard Vel output. Modulation depth can be adjusted with attenuverter knob.
- Reset Input When triggered, immediately stops the envelope generator and sets its main output to 0V.
- Trig Input When triggered, restarts the envelope generator from the attack segment. If the Gate input is unconnected, starts the envelope in free running mode.
- Gate Input Main input. On rising edge, starts the ADSR from the attack segment. Goes through attack, decay and sustain segments while the gate is high. On falling edge, jumps to the release segment.
- Lin/Exp Knob Controls the mix of linear and exponential envelope in the output signal. From fully linear to fully exponential.
- Inverted ADSR Output Inverted envelope signal, going from 10V to 0V, and back to 10V (assuming the Vel input is not connected)
- ADSR Output Main envelope signal output. Starts at 0V, goes up to 10V at the end of the attack segment, and falls down to 0V at the end of the release segment.
Overview ⚓︎
An ADSR is an envelope generator that goes sequentially through four segments:
- Attack: the output starts at 0V and goes up to 10V in the time specified by the Attack knob.
- Decay: when the attack is over, the output goes from 10V down to the value specified by the Sustain knob. The decay time is specified with the Decay knob.
- Sustain: while the input gate is high, the envelope remains at the sustain value.
- Release: when the input gate goes low, the envelope output goes back to 0V in the time specified by the Release knob.
It can be used as a CV source for a VCA to shape the volume of a sound, or to modulate any knob in another module.
When a modulation is applied to Vel, the maximum voltage may be higher or lower than 10V.
Despite its undeniable east-coast influence, this envelope generator can be set up in countless ways including looping and free-running configurations.
In addition, all settings can be modulated, even while the envelope is running.
If the sustain level is changed while the ADSR is sustaining—whether by moving the knob or from the modulation input—the change will not happen instantly. Instead, it will change at the rate specified by the Decay knob, as would happen on most analog ADSR modules. This effect can be used creatively.
This module works at CV rate.
In Depth ⚓︎
Basic Use ⚓︎
For the classic east-coast ADSR patch, connect the Gate output of a Keyboard or Gate Sequencer module into the Gate input of the ADSR, set Lin/Exp fully clockwise and connect the main ADSR output to a VCA or a filter cutoff modulation input.
The envelope starts running when the gate goes high. While the gate is high, the envelope will run through the attack and decay segment and will remain at the level set by the sustain knob. The moment the gate goes low, the envelope initiates the release segment.
For a linear envelope, similar to a west-coast function generator, set Lin/Exp fully counterclockwise.
The main ADSR output is at the bottom right of the module. The output right above it is the inverted ADSR output. Instead of starting at 0V and going up to 10V, it starts at 10V and goes down to 0V.
Velocity Sensitivity ⚓︎
In an analog patch controlled by a keyboard, the ADSR is the best place to add velocity sensitivity. Connect the Keyboard Vel output to the ADSR Vel input, and adjust the velocity amount with the Vel knob.
Trig and Reset ⚓︎
When a trigger signal occurs on the Trig input while the gate is high, this will take the envelope back to the start of the attack segment. The attack will not start from 0V, but rather from the current output value.
This is useful to retrigger the envelope attack when a new note is played before the previous note is released. When the ADSR is triggered by the Keyboard module, this is done by connecting the keyboard’s Gate and Trig outputs to the ADSR’s Gate and Trig inputs.
When the envelope is retriggered before it reaches 0V, the attack time may be shorter.
When the Gate input is not connected, triggering the Trig input will start the ADSR in so-called free-running mode. This is described in detail in the Free-Running Envelope section below.
The Reset input is similar to the Trig input, but it will always restart the attack from 0V and will not start the envelope if no gate signal is present.
Trigger Outputs ⚓︎
This ADSR has three trigger outputs: end of attack, end of decay and end of release. They produce a short trigger signal when their respective segment ends.
They can be used to trigger external events, or connected back into the Reset or Trig inputs of the envelope to make it loop. See the Looping Envelope section below for more information.
Free-Running Envelope ⚓︎
A free-running envelope is an envelope that always runs through all of its segments instead of being bound to a gate signal. One of the most popular free-running envelope type is the AD mode (attack-decay) on west-coast function generators.
The ADSR module will start in free-running mode when it receives a trigger on its Trig input while the Gate input is low or unconnected.
The envelope is said to be free-running until it reaches the end of the release segment, or until the Gate goes high, at which point the gate signal takes over control of the envelope.
If the Gate input goes high while the envelope is free-running, it will not restart the envelope from the beginning.
While it is free-running, the envelope will go through the attack segment up to 10V, the decay segment down to the voltage specified by the Sustain knob, and immediately through the release segment down to 0V. It will not stop at the sustain segment.
Since we have three segments to play with, this is more flexible than a plain AD envelope.
To simulate an AD envelope, set the sustain to 0V, and adjust the attack and decay knobs to your likings.
For a more complex envelope, you can split the decay segment in two parts by setting the sustain value somewhere above 0V but below 10V, and adjust the decay and release times to different values, as in the picture below.
If an envelope is in free-running mode and receives a Reset signal before it reaches the end of the release segment, it will remain in free-running mode and start over from the attack. This can be used to loop the envelope.
Looping Envelope ⚓︎
Looping is achieved by connecting one of the End outputs back into the Reset or Trig signals.
Looping can be done on a gated or free-running envelope.
To stop a looping free-running envelope, simply send a trigger signal into the Gate input. As described above in the Free-Running Envelope section, a gate signal will take over the free-running envelope, so a short trigger will take over the envelope and then immediately stop it.
Here are three ways the ADSR can be looped:
- Looping Ramp Connect End of Attack into Reset and send a high gate to the Gate input. As soon as the attack ends, it will reset the envelope to 0V and take it back to the start of the attack.
- Looping AD Same setup as Looping Ramp, but use the End of Decay output instead of End of Attack. The envelope will go from 0V to 10V, down to the voltage set by Sustain, and will then be reset to 0V and loop back from the start of the attack.
- Oscillating Sustain Set the sustain to a value below 10V, connect the End of Decay into Trig, and connect a Keyboard Gate output into the ADSR Gate input. Play a note. After the attack, the envelope will oscillate between 10V and the voltage set by Sustain, at the rate set by the Decay knob. Releasing the note will jump to the release segment. This is like a free LFO!
Technical Notes ⚓︎
Vel Input ⚓︎
The velocity signal is only taken into account when the envelope is triggered or retriggered (from a Gate, Trig or Reset input). As explained in the Trig input documentation, if an envelope is retriggered without being reset, it will start from its current output voltage. This means that if the velocity changes between notes played in quick succession, there will be no sharp jump in volume. It also means that if notes are being played legato and the envelope is not being retriggered, then only the velocity of the first note in the run will be taken into account.
This is in contrast with the Vel input on a VCA that instantly reacts to any change on its input.
The Vel attenuator is used to adjust the total dynamic range. At its default position (obtained by double-clicking on it), the dynamic range for a -5V to +5V input will be approximately 12dB (+6dB at +5V, -6dB at -5V). As a result, when +5V of velocity modulation is applied, the maximum envelope output will be at +20V instead of the standard +10V.
When the Vel attenuator is fully clockwise, the dynamic range of a -5V to +5V input will an extremely wide 60dB (±30dB). This will make the maximum output of the envelope a whopping +320V. While Multiphonics is able to handle it—being a digital synth—such an extreme output is likely to be clipped or to cause problems elsewhere. Use with care.
Segment Times ⚓︎
When the Attack, Decay or Release knobs are turned, their length are displayed in seconds. This is an approximations, and doesn’t have the same meaning depending on the position of the Lin/Exp knob.
The technical reason behind this is that we emulate the way linear and exponential envelope circuits behave in analog synthesizers, where the potentiometers control the slope of an integrator or the time constant of an RC filter, neither of which exactly corresponds to a precise duration in all situations.
Exponential Segment Times
- The attack time is the time it takes to reach the maximum envelope value (10V when Vel is not connected) from 0V. The actual time will be shorter if the envelope is retriggered from a voltage above 0V.
- The decay and release times represent the time it takes to go down 99% of the way between the segment’s initial and target voltages. In theory, since the decay and release times are exponential, the envelope never actually reaches the target value.
Linear Segment Times
For a linear envelope, the displayed times always represent the total time for a 10V variation.
This means that the actual segment time can be shorter than what is displayed if the total variation for that segment is below 10V, or it can be longer if the total variation is over 10V—although this can only happen with a Vel modulation input.