Analog delay 3-16 ms low voltage

Thread Starter

Differend

Joined Feb 24, 2018
8
Hi all,

I'm looking for the best way to create an analog delay of about 6ms on an impulse of about 1.8V.

More specifically I am trying to delay an input from a control stick in a video game controller. The exact delay time will be in the stated range but I will need to be able to adjust it in that range so I can do some empirical testing for the best value. The potentiometer on the control stick sits in the middle of a 3.3V line and can be slid up to 3.3 or down to 0. There is also a 5v power line that can be used.

It needs to be fully analog, I know digital is easier but people are flat earthers about anything programmable for cheating concerns.

My initial thoughts are an all pass filter or a bbd but almost all literature on either is around audio (ie not necessarily logic level) and I'm having a hard time determining what would work best for my specific scenario.
 

Hymie

Joined Mar 30, 2018
1,284
Hi all,

I'm looking for the best way to create an analog delay of about 6ms on an impulse of about 1.8V.

More specifically I am trying to delay an input from a control stick in a video game controller. The exact delay time will be in the stated range but I will need to be able to adjust it in that range so I can do some empirical testing for the best value. The potentiometer on the control stick sits in the middle of a 3.3V line and can be slid up to 3.3 or down to 0. There is also a 5v power line that can be used.

It needs to be fully analog, I know digital is easier but people are flat earthers about anything programmable for cheating concerns.

My initial thoughts are an all pass filter or a bbd but almost all literature on either is around audio (ie not necessarily logic level) and I'm having a hard time determining what would work best for my specific scenario.
You don’t say why you want the delay – but one way of slowing the rate of voltage change from the potentiometer output is to place a capacitor between the wiper and 0V.

You might have to experiment with the capacitor value to obtain the delayed response you want – but if you start with a capacitor value in combination with the potentiometer resistance giving a time-constant of 10ms, this might be close.
 

Thread Starter

Differend

Joined Feb 24, 2018
8
Wouldn't this mean I couldn't control the delay time? If I put a capacitor in as suggested the speed at which it is charged would be dependant on the voltage which is dependant on the speed at which someone moved the control stick and the distance they moved it hence looking at a bbd or an all pass filter.

I want the delay because I am comparing it to itself later on after the rise time to make sure the game polls the right value as sometimes it can poll quicker than humans can move the stick.
 

Thread Starter

Differend

Joined Feb 24, 2018
8
That's oversimplifying my overall goal/plan a little, but I need to be able to control the delay time and preserve the signals integrity.
 
That's oversimplifying my overall goal/plan a little, but I need to be able to control the delay time and preserve the signals integrity.
You cannot add more delay to a signal that changes faster than the delay period if you limit yourself to "analog" delay techniques.

Look into a PT2399 echo chip. It has a bunch of internal registers that store the incoming analog signal as a binary value for a selectable period. The length of the period x fixed number of registers is the overall delay.

The chip is not programmable (other than the delay period with an RC pair). It is obsolete but likely does what you want.
 

Hymie

Joined Mar 30, 2018
1,284
How about feeding the wiper output to a capacitor via back to back schottky diodes?

That way you would have the potentiometer setting voltage to compare against the capacitor voltage.
 

AnalogKid

Joined Aug 1, 2013
11,045
Three posts, no data. What is the nature of the signal you want to delay?
Analog
Digital
Voltage range
Frequency / bandwidth
DC component

???

ak
 

Thread Starter

Differend

Joined Feb 24, 2018
8
Three posts, no data. What is the nature of the signal you want to delay?
Analog
Digital
Voltage range
Frequency / bandwidth
DC component

???

ak

Sorry, kindof a noob here thought that the original post was the relevant info.

Voltage range is a 3.3v signal source that is set to the middle (1.65v) when stick is centered.

Analog signal.

Impulse signal so no set frequency unless I'm misunderstanding something/terminology (completely possible).

Whole thing is DC it's in a game controller?

I'm an electronics tech and have a physics degree but I'm kindof outside my experience/education here so if I'm misunderstanding something please tell me or point me to some other learning material I'll gladly read more I just kept getting caught up in audio articles that we're less technical or patents that implied deeper understanding than I have if analog
 

Thread Starter

Differend

Joined Feb 24, 2018
8
You cannot add more delay to a signal that changes faster than the delay period if you limit yourself to "analog" delay techniques.

Look into a PT2399 echo chip. It has a bunch of internal registers that store the incoming analog signal as a binary value for a selectable period. The length of the period x fixed number of registers is the overall delay.

The chip is not programmable (other than the delay period with an RC pair). It is obsolete but likely does what you want.
I need to understand this better and am out right now but I look into the chip and at the rest of your reply in the morning. I think it may run into issues if the stick was held one direction longer than the length of the register. (That may be an issue to any register/bbd solution now that I think about it). Need to sit and think about what's going on more. Thanks for the info about analog though I'm definitely new and learning.
 

ebeowulf17

Joined Aug 12, 2014
3,307
Sorry, kindof a noob here thought that the original post was the relevant info.

Voltage range is a 3.3v signal source that is set to the middle (1.65v) when stick is centered.

Analog signal.

Impulse signal so no set frequency unless I'm misunderstanding something/terminology (completely possible).

Whole thing is DC it's in a game controller?

I'm an electronics tech and have a physics degree but I'm kindof outside my experience/education here so if I'm misunderstanding something please tell me or point me to some other learning material I'll gladly read more I just kept getting caught up in audio articles that we're less technical or patents that implied deeper understanding than I have if analog
I *think* I understand what you're going for, but I'm not totally sure. Tell me if this sounds right:

The signal is analog, continuously variable between 0 and 3.3VDC, and there isn't necessarily any expected pattern or threshold to look for. Further, there's no threshold or start/stop times. You want the output of your new circuit to be an exact replica of the stick voltage, but on a delay.

If I'm understanding you correctly, this is what audio delay effects do, the cheapest and most common varieties being in guitar effects pedals (stomp boxes.) Unfortunately, I don't know what they use in the guts of those - I'd bet almost anything the critical parts are digital, but I don't know if they use microcontrollers of some sort or other means. Maybe they use something like the chip that was mentioned already above.

Anyway, if I've understood you correctly, it might be worth looking at how those delay circuits are built. You wouldn't be able to use one directly, because they're made for audio and undoubtedly block DC current, but you might be able to replicate the useful parts... or maybe even hack one if you got a good deal on a used pedal. It might be as simple as bypassing the input/output DC-blocking capacitors and tweaking some biasing arrangements, but I wouldn't hold my breath on that last idea.
 

Thread Starter

Differend

Joined Feb 24, 2018
8
I *think* I understand what you're going for, but I'm not totally sure. Tell me if this sounds right:

The signal is analog, continuously variable between 0 and 3.3VDC, and there isn't necessarily any expected pattern or threshold to look for. Further, there's no threshold or start/stop times. You want the output of your new circuit to be an exact replica of the stick voltage, but on a delay.

If I'm understanding you correctly, this is what audio delay effects do, the cheapest and most common varieties being in guitar effects pedals (stomp boxes.) Unfortunately, I don't know what they use in the guts of those - I'd bet almost anything the critical parts are digital, but I don't know if they use microcontrollers of some sort or other means. Maybe they use something like the chip that was mentioned already above.

Anyway, if I've understood you correctly, it might be worth looking at how those delay circuits are built. You wouldn't be able to use one directly, because they're made for audio and undoubtedly block DC current, but you might be able to replicate the useful parts... or maybe even hack one if you got a good deal on a used pedal. It might be as simple as bypassing the input/output DC-blocking capacitors and tweaking some biasing arrangements, but I wouldn't hold my breath on that last idea.

Sorry this is so much later, been doing more pressing things.

You have described the goal/aim perfectly. I am not actually sure this is what audio delay circuits do but that is my impression, I was hoping to get more feedback on if I was correct here. If so I believe I know how to create the delay I want.

Was hoping to get more advice here or ideas but haven't had a ton of time to did down and go through the replies. I will say it sounds like people didn't quite understand what I was looking for, so you being able to understand my wording is a relief
 

Thread Starter

Differend

Joined Feb 24, 2018
8
So I looked into the pt2339. In terms of application it looks like the chip would do what I want (assuming people get off their analog high horse for a digital click that's not programmable). However this particular chip won't do small enough delays.

Will look into other models, thanks!!
 

mtripoli3

Joined Mar 1, 2016
35
The PT2399 isn't appropriate for this application; in it's "normal" use it is capacitivley coupled; this precludes using it with "DC".

This can be done easily on just about any microcontroller system out there; Arduino, PIC, Atmel...

Use the A/D to read the voltage and store it's value. Use a device that also includes a D/A converter (lot's of them). Then "playback" the acquired analog voltage at whatever "delay" you'd like. The whole thing can be done with minimum two resistors, two caps (simple aliasing filters on input/output) and a µC.

Good luck!
 

ebeowulf17

Joined Aug 12, 2014
3,307
I'm dumb. This should work (hell a cap alone might work). I was misunderstanding how caps work when I saw it the first time, which is sad since I use them everyday. My bad
I don't think so. RC circuits will create averaging, smoothing, ramping effects. There is a delay of sorts created, but the output waveform will look nothing like the input waveform. If I understood your earlier posts, this isn't what you want.

Out of curiosity, what's the purpose of a delayed repeat of your controller signals? Maybe if we better understood your end goal there would be other solutions.
 

ebeowulf17

Joined Aug 12, 2014
3,307
I'm dumb. This should work (hell a cap alone might work). I was misunderstanding how caps work when I saw it the first time, which is sad since I use them everyday. My bad
Here's a quick simulation showing some controller movements (one sharp movement, then a ramp followed by a curve.) I've shown the effect of two different levels of RC filtering, as well as generating a delayed signal like I think you want. RC filters will delay things, but they'll also change the shape of the waveform. Changing the amount of RC delay changes the amount of distortion. I'm not sure how much distortion is acceptable, but it doesn't seem like this is what you'd want.

Note that in this case I've just used more signal generators to display the desired effect, not simulated a circuit capable of such a delay. I'm just posting this to clarify what it is you want out of the output.

game-controller_delay.png
 

Attachments

Top