🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #10219

Re: Analog Joysticks

#10219
From: Dennis M. O'Connor
Date: Mon, 07 Nov 1988 15:50
75 lines
4516 bytes
An article by dbk@fbog.UUCP (Dave B. Kinzer @ Price Rd. GEG) says:
]    Some people on the net have been proposing that a capacitor paralleling
] the internal Amiga joyport capacitors will fix the joysticks.  This is
] essentially true and a very low cost way of adapting the controller, but
] unless you know what is going on inside the Janus chip (I know I don't have
] the max power specs), it seems a little dangerous (as explained in the
] article).  Of course, since apparently you can connect +5 directly to the
] pin (joystick in zero ohm position), it should work.

No, it doesn't. I've tried it. The Paula chip is probably
current-limited, since when I connected a larger ( 0.1 uf )
cap in parrallel, it didn't discharge fully. This may be the
fault of the software ( I was using Flight-Sim II from Sublogic ).
The obvious way to fix it is to hold the discharge switch on
for a bit longer : it's not clear to me whether software can
adjust the timing or not.

With the pots near zero, the same lack-of-discharge occurs,
but since the result is a lower reading, it's not a problem :
zero is what you wanted to read anyway.

The big problem isn't the 100K pots of the IBM joysticks :
if you auto-center in software ( which FS-II does ) it just means
you get 6 bits of resolution instead of 8. Just have an init
step that assumes the joystick is centered and scales all subsequent
readings appropriately. ( I use this to "bias" the controls
on FS-II so "hands-off" becaomes a slight climb. )

The problem I've found in analog joysticks is NOISE. That 5V coming
out of the joystick port seems to have a lot of 10KHz+ noise on it.
This noise on the 5V has to be silenced before you'll get more than
four bits of reliable input from your 'stick.  You've got long wires,
and with a 60Hz-fundamental sawtooth on two of them. Those 100k or
500K pots aren't exactly a low-impedance source. And you're right next
to a little audio-through-radio range frequency generator (i.e. computer).
People who can deal with this type of grief get paid big bucks.

The best solution I've thought of involves active components in
the joystick, close to the pots. But it's not simple : essentially,
sense when Paula has pulled down the input to trigger a one-shot.
The period of this one-shot is determined by the joystick position.
This one-shot goes negative, then returns to positive. It's output
is tied to Paula through a ~100K resistor, and will later be used
as a pull-up. Before it goes through the resistor, however, it
triggers another one shot, this one with fixed timing ( 50 microsec
or so ). The second one-shot, either through a diode or a tri-state
buffer, provides a high-current V+ source to rapidly charge Paula's
input capacitors, then goes low (i.e. high-impedance or
reverse-biasing the diode, whichever ). Then both one-shots wait
for the next time Paula discharges the capacitor.

		_____           ______         _________
Paula Input :	     |_________/      |_______/
		_____          _______        __________
1st One-Shot:	     |_________|      |_______|
		               __             __
2nd One-Shot:	_______________||_____________||________

555-derived dual (and quad) timers would do this job well, using
a diode on the 2nd ones output. 74C-family devices can probably
do the job as well, and maybe there's a tri-state version ??

This system provides a high-impedance when Paula's grounding-out
the cap, and a low inpedance when charging the cap. This produces
a fast rise on the Paula inputs, vastly reducing the noise problem.
Unfortuneatly, I haven't had a chance to try this yet, because :

I've wrecked one Paula chip's analog inputs ( capacitively-coupled
line noise, I think ) so BE CAREFUL. ( Only the analog inputs died,
thank goodness. Everything else still works. )

Good luck. If you solve the noise problem, let's hear about it !
--
 Dennis O'Connor   oconnor%sungod@steinmetz.UUCP  ARPA: OCONNORDM@ge-crd.arpa
   "Never confuse the USENET with something that matters, like CAFFEINE."
Technical Details
Message-ID: <12539@steinmetz.ge.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!attcan!uunet!steinmetz!sungod!oconnor

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!attcan!uunet!steinmetz!sungod!oconnor
From: oconnor@sungod.steinmetz (Dennis M. O'Connor)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Analog Joysticks
Keywords: Analog, Joystick, Full-range
Message-ID: <12539@steinmetz.ge.com>
Date: 7 Nov 88 15:50:57 GMT
Sender: news@steinmetz.ge.com
Reply-To: oconnor%sungod@steinmetz.UUCP
Distribution: na
Organization: GE Corporate R&D Center
Lines: 75