The AHR Generator

A West Coast style function generator module that’s not quite sure if it’s an envelope generator, LFO, delay timer, trigger to gate convertor, VCA, logic gate, sequencer element or what.

In isolation this appears to be a straight forward module that converts a trigger into an attack/decay envelope or a gate into an attack/hold/release envelope but if you patch several of these things together it’s way more fun than that.

Each time stage (attack, hold, release and end) has a gate/trigger output that, amongst many other things, can trigger other AHR Generators wired in time delayed chains, in parallel or even in arbitary networks with feedback loops.

The idea is to escape the straight jacket of relying on a single ADSR generator all the time in order to explore the creative potential of multiple , albeit simpler, generators interacting in complex ways.

The rate and shape (ratio between attack and release times) are both voltage controlled. A pair of attenuverter knobs allow you to tweek the effects of these CVs.

It has a built-in VCA that can be used to control the volume of audio signals but also for modulating the strength of control voltages and, at a push, can even serve as an AND gate to enable or disable trigger and gate signals.

In its simplest application the module works as either an AD or AHR envelope generator (depending on whether the HOLDS button is engaged). So feeding a trigger/gate voltage to the GATE IN socket or manually pressing the button above the socket makes the module cycle through an envelope with the 0V to 5V output being sent to the CV OUT socket.

The CV OUT signal also controls the gain of the built-in VCA so if you want to apply the envelope to an audio signal just feed the audio into the VCA IN socket and take the output from VCA OUT.

Illuminated rings indicate stages in the cycle – ATTACK, HOLD, RELEASE and END and the sockets inside output 5V trigger/gate signals at each stage. These signals can be used to trigger other AHR Generators in order to create complex parallel, overlapping or sequential envelope signals. These multiple envelopes can then either be mixed together to form a compound envelope voltage or used independently.

Output voltages during an AHR cycle with SHAPE at 50% and SOFT disengaged

For instance by feeding the RELEASE signal to another AHR Generator’s GATE IN the second generator will begin its attack phase as the current one enters its release phase. Long evolving chains of indefinite length can be built.

Four AHR Generators chained together via their RELEASE outputs

This is especially powerful when each generator uses its VCA to cross fade between a different audio source. When using this technique you can also play with the VCA outputs – rather than just simply combining them by patching them all to a single input you could try using a stereo mixer to pan each output to a different stereo position or use different effects on the individual outputs.

You can use the same cross fading technique with different control voltage sources too – to build a CV signal that morphs in complex ways over time.

The HOLD gate output only goes high when the HOLDS button is engaged and GATE IN is still high at the end of the attack phase. Use this output to create secondary envelopes that only trigger during sustained notes – useful for adding extra layers that only sound during slower phrases.

Feeding the END trigger output back to the GATE IN socket will make the AHR Generator behave like a LFO after it has fired once. The LOOP button is provided as a convenience that saves you having to patch the cable and it also automatically starts the generator running. Press the LOOP button again to stop the oscillation.

A chain of AHR Generators can be made to trigger one after another by connecting the END output of one module to the GATE IN of the next module. To make the whole thing loop connect the final END output back to the first GATE IN.

For an overlapping sequence use the HOLD or RELEASE outputs instead of the END ones.

If the SOFT button is engaged then smoothing is applied to the output voltage. This replaces the sharp-edged linear slopes with a nice soft curve.

How the SOFT button changes the output

If the RETRIG button is engaged then a trigger signal applied to GATE IN will force a reset and a new cycle will begin no matter which stage the module is in, otherwise the module will complete a full cycle before recognising a new trigger.

Using the V/BAR OUT signal

The V/BAR OUT socket provides a signal that can drive CV Sequencer and other Adroit modules that use the V/Bar standard. The output maps a cycle of the generator to a one bar voltage change (i.e. 1 V to 2 V, dropping to 0 V when the AHR Generator is inactive, (although this can be scaled up or down using Time Flow Changer for more experimental uses).

One important application is to combine an AHR Generator and a CV Sequencer in order to create user programmable LFO waveforms.

A dual channel LFO setup with customizable waveforms

The image below shows more detail about what is going on here. The CV Watcher red trace shows the AHR Generator’s CV OUT signal and the cyan trace shows its V/BAR OUT signal.

Red and Cyan traces added to show AHR Generator signals

Note that this is with the AHR Generator SHAPE set to 50% but it is possible to use other settings (such as 25%) to warp the signals…

AHR Generator with 25% SHAPE setting

Notice how the rising cyan trace showing the V/BAR OUT signal now has two different slopes – a steep one for the initial 25% and a shallower one for the remaining 75%. This results in the first half of CV Sequencer’s steps changing at a different rate to the second half of the steps.

While this change can be used to warp LFO signals its main application is for when an AHR Generator and CV Sequencer pair are used to create customizable envelope signals. Here steps 1 through 7 of the CV Sequencer serve as the attack phase, step 8 is the hold stage and steps 9 through 16 are used as the release phase. And the SHAPE setting controls the ratio of the attack phase length to the release phase length.

SHAPE at 15% for a fast attack and slow release
SHAPE at 85% for slow attack and fast release

If you want to create really fancy LFO or envelope shapes then you can use Time Flow Changer to amplify the V/Bar signal so that it covers more than a single bar, then time splitting and CV Sequencer chaining to create sequences longer than 16 steps.

Using a Time Flow Changer set to 32/1 along with a Time Split Binary module and two Time Split 16 modules you could stretch things to an upper limit of 32 CV Sequencers in a chain giving you 512 step control. This might be a little over the top for defining an LFO or envelope shape but illustrates that high resolution control is available!

If you want to create a very long sequence of changing CVs for something like an ambient piece that lasts for hours but is under your full control (rather than using random or generative techniques) then you can use a Song Control Sequencer to build sequences of unlimited length.


The AHR Generator module is part of LSSP XL and the Adroit Toolkit. It is also available as an individual module.