Pinball machine - switch closure timing problem

I note the comments of others more familiar with pinballs in particular, and your comment that it appears to be a design fault in the machine.

Given all that, it would seem to me that it's relatively easy to make up a small circuit which will run a MOSFET or relay using the existing switch as the trigger, and vary the amount of time you keep the output closed. This way you can do some controlled experiments in whether the technique of stretching the closure time is even valid in the first place. Once you know it works you can then decide how to do it on a more permanent basis.

Cheers.

Ken

Reply to
Ken Taylor
Loading thread data ...

Well,

It sounds like it is a matrix. There is only one ball: thus only one switch is engaged.

The capacitors extend the time that a single switch seems engaged. A rapid succession of two switches could make it appear that two other switches are also engaged...

Thomas

Reply to
Zak

I know what you are trying to say, but with respect, you are not correct in everything you say.

Tyhe fact that the switch is new and contacts are gold plated makes not one jot of difference to the fact that when they are operated in the manner you say is common, ie. 'hard hit', the contacts bounce like crazy such that the matrix logic cannot detect a legitimate closure. One of the main factors affecting the degree of bounce during hard hits is spring tension on the switch contacts. This is exactly the same phenomena which a poorly adjusted relay exhibits as I inferred. Using the relay example, when a relay has only one or two springsets the load on the armature is very light when it is energised. If the contacts have insufficient tension the armature slams in hard and very quickly in much the same manner as your swith when hit hard. The springsets create a large amount of bounce such that they often fail to activate the circuitry they control. The solution is to increase the spring tension so that the tendency to bounce is minimised.

Now I would say that if the matrix logic in this pinball machine fails to detect a legitimate closure due to excessive bounce on this particular switch - assuming it is correctly adjusted - then the design of the bounce suppression logic is very poor. If the switch contacts are properly tensioned then even assuming a short hard hit they should stay closed for at least 70 - 100mS - even if they bounce like crazy afterwards - and this would signify a legitimate closure. I don't know the time slot length in which the matrix must validate a legitimate closure but it should be somewhere around 100 - 200mS I would suggest, but you could perhaps verify just what this time period is.

When it is all boiled down, a pinball machine with mechanical switches is no marvel of technology, and since the switches are operated by human beings who have quite long hand/eye co-ordination times in comparison to what even fairly simple electronics logic can detect, the task of detecting a valid switch closure is easy to do. Of course this depends on the type of logic employed and from the problem you describe it must be totally inadequate if just this one switch causes such problems.

I would suggest that you try one of the contact bounce suppression circuits in the links I provided just for this particular switch. If it doesn't cure the problem I would be very surprised.

Reply to
Ross Herbert

Perhaps I was overly generous in my identification time period and they should be ammended downward by a factor of 10. ie. 70 - 100mS becomes 7 - 10mS and 100 - 200mS becomes 10 - 20mS.

Reply to
Ross Herbert

Thanks. Right now I have experimented a bit based on the .05 uf and

22uf/150 ohm setups used by the companies, and settled on using a 4.7 uf electrolytic cap in series with a 150 ohm resistor across the switch. It is registering 100% now and I have been purposely hammering at that target every chance I get for two days. I think I'm calling it done! Thanks everybody for the input...Frenchy
Reply to
frenchy

This is how one guy did the opto thing.

formatting link

Perhaps you could contact him for more info.

Reply to
Ross Herbert

Hi Frenchy,

I think you are on the right track. Its been 15 years since I had to repair a pinball.....

The switch matrix gets scanned frequently - guess every 64ms (numbers to make maths easy). If there are 64 switches, then each switch gets scanned every 1ms. Just like ADC sampling, the worst-case is a switch gets hit the instant after the micro looks at it. If such a switch closure lasts less than the entire scan duration (ie how long it takes to have another look) it will be missed.

Conversely if a switch closure lasts longer than the scan duration it will be read twice - if it is an intermittent contact, this may register as two hits, perhaps this is what is meant by "ghosted" - hard to say really, without knowing exactly what the software does.

If you place a cap across the switch, then switch closure will discharge it with a time constant (Rswitch + Rseries + ESR)*Ccap. The peak current flowing through the switch is Vopen/(Rswitch + Rseries + ESR). Rswitch ought to be extremely low, but increases as the switch craps out. ESR may be low, depending on cap type, but it may also be many tens of Ohms.

The switch then opens, and the cap starts to charge up through the matrix pullup transistors/resistors. These are usually current limited in some way, giving a not-too-high charging current to the cap.

You want a nice, fast discharge and a slow charge. For fastest discharge, set Rseries = 0. Beware the peak current through the switch though, especially for large C. Many electrolytics have high enough ESR that this alone will protect the switch. Note that smps electrolytics are (or bloody well ought to be :) selected for extremely low ESR....

To ensure a slow charge, put a series R between the switch/cap assembly and the matrix, thusly:

Original: |

----------|-----+-- [switch to V+] | | | | | | | o | / +---o | | [switch to 0V]

Modified: |

----------|-----+-- [switch to V+] | | | [Rcharge] | | | o--[+Cap]--+ | / | +---o----[Rdis]--+ | | [switch to 0V]

Choose Rdis to protect the switch, and Rcharge > Rdis to stretch the pulse

Cheers Terry

Reply to
Terry Given

If you use a polarised cap in backwards, it will quite possibly break (you can think of an electrolytic cap as a really shitty diode with a lot of capacitance) if you jam enough current up its bum.

If thats what ghosting is, then I doubt it can happen at all with a cap (unless it craps out).

Cheers Terry

Reply to
Terry Given

The only thing you guys are forgetting is that with a matrixed switch the strobe or ground isn't always there. If the switch gets closed when the strobe is providing ground for another column of switches the capacitor is going to do squat. The cap MAY stretch a closure because of the speed of the strobing, but it is not going to act like a switch on a "normal" switch.

Jim

Reply to
James Beck

This is NOT what he needs, and you have to keep in mind, most debounce techniques are NOT directly attachable to a switch matrix.

Jim

Reply to
James Beck

Don't use a file, sandpaper, emery cloth, matchbook cover, or any other abrasive to clean switch contacts. There's a tool, called a "contact burnisher" that has a metal strip, like a piece of shim, with a rough surface that's rough enough to clean off dirt and oxide, but not to grind off the contacts themselves.

formatting link

Cheers! Rich

Reply to
Rich Grise

yes this is a new machine out of the box and a swtich that most owners have a particular problem with even after it is cleaned and doublechecked. These gold ones you just clean with a piece of clean paper or business card, the old silver ones are filed or burnished...Frenchy

Reply to
frenchy

So can you explain in more detail why it MAY be stretching the closure then? Not sure I understand. Say a switch is closed for an instant right AFTER being scanned, and opened again before it's row is scanned again. I.e. switch is closed and opened during a period it was not being scanned. Why is the cap going to help at all? I know caps DO help somewhat on matrixed switches, just not really sure why now. thanks

Reply to
frenchy

Uhm... Have you cleaned the contacts? Pinball contacts need to be periodically cleaned with a small file intended for the purpose. Its been a decade or two since I repaired pinball machines for a living, but surface wax cleaner and a point cleaning file and tension adjuster were my stock in trade.

Dana

Reply to
Dana Raymond

Is it possible that the series diode on this switch could be going intermittently open cct? Remove it and connect to your DMM diode test while placing stress on the leads.

Are you aware of this website

formatting link

Reply to
Ross Herbert

I read in sci.electronics.design that Ross Herbert wrote (in ) about 'Pinball machine - switch closure timing problem', on Fri, 25 Mar 2005:

Spit! I thought it might give a cure for pains in the diodes down your left-hand side. (;-)

--
Regards, John Woodgate, OOO - Own Opinions Only.
There are two sides to every question, except
'What is a Moebius strip?'
http://www.jmwa.demon.co.uk Also see http://www.isce.org.uk
Reply to
John Woodgate

Do you suffer from this painful affliction? :-)

Personally, only my knee diodes give me problems.

Reply to
Ross Herbert

diode tested good. As I said, looks like the 4.7 cap and 150 ohm resistor have made the switch register every hit now. But don't ask me how I came up with the values - I guessed ? : / ? ..Frenchy

Reply to
frenchy

I think he slapped it in and played the game, and tested different values until the game worked. To me, 4.7 sounds a little high, but hey, whatever works!

Cheers! Rich

Reply to
Rich Grise

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.