Page 2 of 2

Posted: Mon Jul 11, 2016 2:39 am
by MacroMachines
You are correct, I was using a ramp from my micro controller dac and realized the derp that of course my upward movement is going to not show as much since the ramp is going up :/

Sometimes I wonder how I am even able to do this stuff at all haha

Posted: Tue Jul 12, 2016 3:10 am
by MacroMachines
donstavely wrote:

Code: Select all

equ   potfilt   reg0
equ   fastpot reg1   

rdax	pot0, 1
rdfx	potfilt, 0.001    ; this is the shelving highpass filter
wrhx	potfilt, -0.75    ; it cuts lower freqs by factor of 4
rdax	fastpot, 0.75     ; this gives 4X recursive gain
wrax	fastpot, 1        ; to recover full range
If you want to make the control faster than 4X better, you just need to adjust the filter and gain coefficients.

I tested the algorithm by injecting a 1Hz square wave into the pot input to simulate instantaneous changes to the control. The normal pot output has a long (100ms) time constant. The fast control output is indeed 4X faster, and is still clean and filtered. I have a scope picture, but I can't directly attach it.

I am wondering the nature of the 100ms time constant, is this happening in the hardware? like an analog RC lowpass filter? I just wanted to try and figure it out to see if I can hone in on an optimal coefficient for the highness and also to use in my little modular simulator patch Im making in Audulus3

Posted: Tue Jul 12, 2016 11:28 am
by frank
Yeah, it is a filter in the POT ADC. It was done so the POTs would have stable values even in an environment with vibration (i.e. a stage).