View Full Version : Adjustable Delay for Control Inputs?
Twizzstyle
01-21-2008, 05:12 PM
Kind of an odd idea here. What I want to do is create an adjustable delay on my control inputs (column and wheel). Something that I could put in a delay anywhere from say 0 (no delay) to 1 second delay (i.e. you turn the wheel, and it takes 1 second for the computer to see the signal).
My yoke is USB, but uses just two regular potentiometers. (It's a CH Products yoke).
The idea here is to put in small amounts of delay to mimic delays due to control software, or control cable lags, etc in real life to experiment with PIO.
I keep thinking there might be an easy way to wire up an analog circuit with the potentiometers to accomplish this, but I'm not big on electronics, and forgot most of what I learned in school. Maybe with the USB there is an easy way to just do a software delay on the computer?
I would think the software route would be easier. Pots deal in resistance changes. If you were doing dealing with sending, say 5 vdc somewhere, you could use a simple timing circuit.
Have you tried using the CH software slopes or maybe FSUIPC's slopes? make a very flat slope. That might do the trick.
If you don't get an answer here, you might trying asking Mike Powell, www.mikesflightdeck.com (http://www.mikesflightdeck.com) He is a EE and a wiz at circuits.
hi there,
an idea to do this would be to write your own program which reads the joystick states every 40ms (25 times per second) and updates via FSUIPC the elevator and ailerons also every 40 ms
In order to get the delay as wanted you create a software queue and the depth of the queue will give you a delay in steps of 40ms. the joystick readouts are put at the beginning of the queue and ripple every 40 ms towards the end and the updates towards FSUIPC are done with the last element in the queue
Greetz Peter
Twizzstyle
01-23-2008, 11:53 AM
Turns out this was MUCH easier than I thought...
I've been using unregistered FSUIPC to run my displays (GFD) but never realized the full registered version had so much use. So I paid for it last night, and holy crap! You can do a LOT with it! :)
All I had to do was use FSUIPC to take in the input from the yoke instead of the CH software, then open up the FSUIPC INI file, and you can just add a delay in there to each axis. Piece of cake, works EXACTLY how I wanted! You can put in a delay anywhere from 0 to 2 seconds (in units of milliseconds) and it just shifts all inputs by that time interval. Very cool! 1/2 second delay can make for some very hairy approaches in poor conditions :shock:
Tomlin
01-23-2008, 12:35 PM
I can see that this would be helpful to our throttle inputs. In real life it takes about 8 seconds for the Learjet 45 to go from idle to full thrust, per the Aircraft Manual. Im thinking that putting a bit of delay in per FSUIPC on this one item might really increase the real factor on this, as in, push the levers forward, and then you hear the increase, instead of the near instantaneous response. Of course, it's very important not to over-do this effect.
Twizzstyle
01-23-2008, 12:59 PM
Yep, very good idea! The only problem is when doing a throttle chop, you're still going to have the same delay for the throttles to come back.
When trying to figure it out, I first put in a 2 second delay (on wheel only) and it was essentially unflyable. 1/2 second is flyable, but tricky when you start making over corrections (I managed to actually get myself into a few PIO's doing this, just like I wanted!). I think 1/4 second or so will be perfect, because it won't be too noticable, but still leave it open for PIO if you get over zealous with the wheel :)