News:

Forum may be experiencing issues.

Main Menu

Analog tap tempo

Started by Abilene Effects, September 13, 2012, 02:49:58 PM

Previous topic - Next topic

Abilene Effects

Does anyone know why it wouldn't be possible to replace an analog delay effect's rate potentiometer with the "taptation" or similar digital potentiometer? I am wanting to build the DMM but with tap control. Please be advised that delay is a new thing for me...

midwayfair

Quote from: Abilene Effects on September 13, 2012, 02:49:58 PM
Does anyone know why it wouldn't be possible to replace an analog delay effect's rate potentiometer with the "taptation" or similar digital potentiometer? I am wanting to build the DMM but with tap control. Please be advised that delay is a new thing for me...

That's exactly what you're doing when you use the Taptation. It isn't an add-on to a digital pedal -- it's a digital controller that can be integrated into other circuits. Check out the MusicPCB Tap Tempo Tremolo for an analogous situation. That's a pretty standard analog optical tremolo with the digital controller for the LFO controls.

It's possible that you were a little misled because most of the time it's being added to a PT2399 delay. The reason for that is pretty simple: it's much, much easier to build a PT2399 delay than an analog, and there's a lot more room left in the case to add the tap tempo circuitry.

jkokura

In particular, there would need to be some careful planning for using the the Taptation for use that way. But the guy who designed it (TTG) has said it can pretty much be used for anything you'd like to use tap tempo control for.

Check out the Datasheets, and start to breadboard circuits.

Jacob
JMK Pedals - Custom Pedal Creations
JMK PCBs *New Website*
pedal company - youtube - facebook - Used Pedals

Abilene Effects

#3
Thats what I thought. But I came across a page associated with TTG and it said it couldn't be done, and I believed it because pretty much nobody does it on analogs. That could be do to the complexity. Am I right in that it would take nothing more than replacing rate control with Digipot? What do you mean by careful planning?

jkokura

One does not simply replace a pot with a Digipot...

But yes, that's where I'd start looking.

Careful planning is doing a lot of research and understanding all the factors involved. BBD chips are not super easy to work with, and you'd be dealin with a separate time clock, multiple chips... The PT2399 does it all in one package, which makes integration with the Taptation pretty easy.

Jacob
JMK Pedals - Custom Pedal Creations
JMK PCBs *New Website*
pedal company - youtube - facebook - Used Pedals

madbean

I would go straight to Tone God, who designed the Taptation and ask him :)

Abilene Effects

I did...Im waiting on response...

JakeFuzz

You could do it with a microcontroller  ;D

You could use a digital pot to replace the existing pot. You would have to have feedback from the oscillator output to measure the actual LFO frequency. Then you hook up a switch to the uController to count the tapping frequency (with as many averaging runs as you would like). You could program a simple PID algorithm which you feed in the "error" signal (input - actual). Then you just tune the three gains until you get the correction speed/overshoot/error right and you're done.

The problem with an open loop system like you are talking about (no feedback) is that you probably wont end up near the frequency that you are putting in since the actual LFO circuit is separate from the controller.

Abilene Effects

Thank you so much for your responses! Could I get that dumbed down a bit?

JakeFuzz

Sure!

The microcontroller will control the delay speed using the LFO already built into the circuit. It will do this using a digital pot to emulate the speed knob on the effect. The microcontroller will control the resistance of this digipot directly, this is our output. We don't know which resistances correspond to which delay times (well it would be a lot of work to find out) so we need to continually count the delay time as it is being put out from the LFO (and into the delay chip). Depending on the type of circuit this will be a certain higher speed fraction of the delay time (which thinking about it now will need some type of calibration as well) which you can count with the microcontroller accurately up to probably the 50Khz or so range. There should be an inverse relationship between the frequency and the delay time which will take some calibration to find a proportionality constant to multiply by. We want to know this relationship because when we tap the tempo we need to know which clock frequency to set the delay chip to to get our desired delay time.

We then connect a switch to switch +5 volts across a resistor connected between one input pin of the controller and ground. This will allow us to count the delay time we want by tapping the switch (with our foot). We can average this value by taking a prescribed number of taps and averaging the times to get a more accurate time.

We then take the delay time we just tapped and convert it into the right frequency for the delay chip using our calibrated inverse function. We subtract the current measured clock frequency from this tapped input frequency and call it our error signal. We can then (using our controllers sampling rate because we are in discrete time) integrate and differentiate our error function and multiply them by constants we call gains. We then take these three signals (proportional, derivative and integral hence PID) and send that signal to the digipot. The gain value on each signal type will change the way the delay time goes from one value to the next.

Abilene Effects

Wow!!! Thank you so much for your knowledge! Could you recommend a micro controller?

Abilene Effects

Ive considered using a basic arduino but don't have the brains to figure out how to code it, or interface it with the analog circuit. I wish I had someone locally that could hold my hand through that part until I get it down:)

JakeFuzz

You can pick up an Arduino pretty easily. It should be able to do all the stuff you need it to. Counting higher (for the longer delay times) might require some additional coding or hardware. The other option is the PIC line which you can get in smaller packages if you need to save space but doesn't have quite the intuitive function set as the Arduino. Run some of the sample programs on the Arduino website and you'll get the hang of things.