[sdiy] Tap Tempo LFO

Tom Wiltshire tom at electricdruid.net
Tue Dec 8 19:13:23 CET 2009


It isn't impossible, but it's not straightforward.

The multiplier works by taking a raw frequency increment value and  
multiplying it up to generate the final frequency increment that is  
used for the oscillator. The table of raw increments on the chip is  
based on values that are half what they should be, so a multiplier of  
two gives you 'normal speed', and a multiplier of one gives you the  
slowest speed of x0.5.

I had an earlier version that provided all sorts of odd dotted and  
triplet times. This was based on a raw increment that was only 1/24th  
of the normal value. However, this required a byte shift to maintain  
accuracy, which isn't necessary with the current version.

If you were to change the multipliers in the table at the bottom of  
the code to 1, 2, 4, 8, 16, and 32 and then add a bitshifting routine  
at the end of the TempoMultiplication code, you'd get the effect  
you're after. Alternatively, use a whole byte shift  to give /256  
(quicker code) and adjust the multipliers to compensate.


On 8 Dec 2009, at 16:55, Florian Anwander wrote:

> Hi Tom
> this is a very fine project! Thanks for that.
> One question: would it be difficult to set the available  
> multipliers also to smaller values than 0.5 (means lower  
> frequency)? Usually I am tapping quarter beats, but I want to have  
> sweeps with a lenght of 2, 4, or 8 bars.
> Florian

More information about the Synth-diy mailing list