Beat-synced LFO Doofer

I spent a bunch of time reading through the forum trying to find a good solution for having a classic kickstart/lfotool style doofer to get simple ducking/side chaining.

I found a few options but all of them are relatively awkward because you cannot easily reset the lfo via a doofer parameter and I didn’t want to go for a key trigger approach where I need to have a dummy track.

So instead I hacked together a slightly different option where rather than trying to carefully control resetting back to the start, I use a formula device to control the position in the LFO fully. This also has the advantage that it automatically synchronizes if you change your LBP.

Screenshot from 2022-12-31 12-40-11
Vel Ducking.xrdp (6.4 KB)

Hope this is useful to someone else.


Very nice concept! Looking forward to testing this out. Cheers :beers:

yes, very cool!

you might consider tying the lfo destination to a hydra, then using that to control gainer gain. the advantage being that you can set the range on the hydra to specific values (i.e. -INF min, 0.0 db max), obviating the need to dial in the lfo amount and offset to get the gainer to behave how you want

the only downside I see to this method (of using the formula to beatsync lfo) is that reset position is calculated via lines, so resolution is limited to lpb, which might not yield a smooth enough curve for some applications

It’s not lines per beat. LINEF includes ticks (and potentially tick fractions, the docs are unclear). Even at 20LPB that’s smooth enough that I can’t hear any discrete steps so that’s good enough for me™. I found LFO reset in doofer - #8 by Ledger which would allow you to only send a reset rather than the full position at the cost of slightly more convoluted formula setup and it doesn’t work if you start between beats until the next beat. Not actually sure if LFOs themselves are more fine grained than ticks.

1 Like

Oh, ok, sweet. Haven’t actually tested it with audio yet. Just looking at the visual representation, it seemed low resolution. Thanks for educating me :slight_smile:

At least based on Ticks Per Line - why is default 12? - #4 by OopsIFly it sounds like you can’t get automation faster than tick rate so if that is correct, I don’t think you gain anything by trying to be more clever here. You can always change the tick rate in your song options I suppose.

I usually use 16 tpl for better Rxx resolution, haven’t noticed a big hit on cpu. yeah, just didn’t know about LINEF. I’m woefully ignorant when it comes to code

for your device, if I wanted it to trigger more slowly, say… the entire lfo across 2 or 4 beats instead of one, would it just be a matter of adding a multiplier somewhere in the formula?

Replace the two uses of LPB by whatever you want, e.g., set it to 2 to go through the LFO in 2 beats instead.

1 Like

Awesome, thanks!

Lots of applications for this method

I tried multiplying LPB in the formula, but it was not behaving as expected. placing fractional multipliers (.25*, .5*, etc) in front of LINEF is working for me, however

Just had a quick look again at this, it seems to reset at start of every pattern but you can get it to reset at regular intervals within pattern by changing this in first formula device:

if LINEF == 0 then


if LINEF % 4 == 0 then

which resets every 4 lines within pattern.

Not sure if creates any unwanted artifacts/ glitches as only short tested here, but works in principle.

1 Like

Right but that still means if you start at line 1 it will be out of sync until line 4. Probably not really a problem in practice but it slightly bugs me :slight_smile:

yeah, not perfect but still a bit better.

future LFO still needs a sync button really :slight_smile:

1 Like