What's new

Anti-ghosting LED idea

Carl Spiby

Registered
Joined
Feb 24, 2013
Messages
2,707
Location
Kendal, Cumbria
There's bound to be reason the following hasn't been made yet seeing as even I've thought of it...

Presumably anti-ghosting LEDs use a small resistor to overcome the ghosting caused by the polling of the lamp matrix, but rather than buying expensive bulbs why isn't there a board that plugs in between the output and the molex for the lamps which does the job for entire rows/columns at a time?
 
I do, however that's restricted to Bally/Williams... I'm SURE I saw something the other day - some hardware board that plugged in that did the same thing.... I think I did anyway....
 
Or where you just dreaming ?
Who know ?
The Shadow knows. But that's something entirely different.
 
I know there is no ROM solution for DE machines, am I right in saying the premium LEDs just use some kind of resistor?
 
I only have experience with B/W and Stern machines. B/W rom fix obviously. Sterns? nightmare. Premium 2's from a well known supplier on here still ghosted, to be fair he warned me that they might as sterns are a nightmare. Ghost busters from another supplier on here didn't ghost at all but aren't the brightest so may be fine for most people but I like to be blinded :D. 4 SMD non ghosting from comet pinball, very bright and no ghosting, nice and cheap even taking postage into account. Superflux flex also from comet don't ghost but must have a large capacitor in them as they take an age to decay once switched off which made me think they were ghosting when I first installed them but they aren't, they are just slow to fade out completely.

Sunglasses required, looks much nicer IRL.

i1286.photobucket.com_albums_a610_kevlarx65_20140313_223610_LLS_zps5ffa56ae.jpg
 
I would assume they all work with a capacitor inline with the LED, post current limiting resistor.

Ie a soft start hack that smooths any ripple from ghosting and also gives a more incandescent feel.
 
$149!
:eek:

I was meaning a much more simple, non configurable solution.

And no availability outside of the USA or Canada just yet, at least not for the B/W versions.

Pinballcenter.eu's NOFLIX are the best premium I have tried and do indeed cure the ghosting on Bally/Williams

Put these in my Addam's, along with a non-ghosting rom from Paul. No noticeable ghosting whatsoever.
 
I would have thought that the only place a capacitor would work is at the LED

The lamp matrix switches between columns and rows, so any attempt at smoothing back at the PCB end would no longer be in circuit with the LED that needs the power.

you could possibly switch at a much higher frequency which would probably help, but would need some serious hardware - some form of digital processor to decode the input matrix back to the 8 x 8 grid, and then power switchers that would run at the higher frequency

just leave the bulbs in, they look better (in most cases) than LED's anyway ;)
 
The anti-ghosting LED's are just a workaround to the root problem. They effectively delay the time it takes for the LED to turn on, so that the small spikes which incorrectly turn the LED's on at the wrong time are filtered out.


The problem (on games using a lamp matrix) is mostly a software timing one (excluding the WPC ASIC bug) then the game code needs to be changed to allow time for one column transistor to actually fully turn off, before turning on the next one. So having a short think about that, I can't imagine a simple hardware solution to this software bug (or at least certainly not one that can be plugged into the outputs of the column/row drives of a driver board)



The WPC bug makes things worse, as a simplified version of what is happening is :- When the CPU is attempting to read lamp rows (i.e. see what the current values are) the ASIC incorrectly assumes that the CPU is trying to write values and ends up turning on all of the lamp rows for a very brief period.

As a bulb is quite slow to turn on, the pulse of current has already gone away before the bulb filament has warmed up enough to emit light.

As an LED turns on almost instantly, you see every single one of these little tiny spikes as the ASIC is turning on all the rows every few microseconds.


A simplified version of what the patched ROM's (for WPC games) does is :- A value is written to the lamp rows to turn them all off, before the read occurs, thus when the ASIC incorrectly picks up the read, the values are already set to off, so the asic doesnt incorrectly turn them on. The patch also has a side effect in that in adds a delay between one column turning off and the next one turning so in theory giving the previous transistor enough time to fully turn off before the next one comes on.



@Carl Spiby - Your original question about using resistors is a red herring, as the resistor fix is for old Bally games (amongst others) that use SCRs to controll the bulbs. An SCR needs a minimum amount of current draw for it to "latch" on. When you use an LED in an old Bally game, the LED comes on, but the SCR does not latch, so it goes back out again until the game tries to turn it on again, hence you get a constant flashing on the LED's that are suposed to be lit up steady. The resistor in parallel to the LED simply increases the current draw (by burning off some power as heat) and thus allows the SCR to properly latch on.
 
So how do the OCD LED boards solve the problem?

They read in all the lamp row and colum outputs, decide whether the lamp should be on or off and then set that value in the lamp matrix that is running on the OCD board.

As they are controlling their own matrix, they can set the delays between transistors turning on and off to whatever they want, and I believe they also do some PWM fading in and out
 
The anti-ghosting LED's are just a workaround to the root problem. They effectively delay the time it takes for the LED to turn on, so that the small spikes which incorrectly turn the LED's on at the wrong time are filtered out.


The problem (on games using a lamp matrix) is mostly a software timing one (excluding the WPC ASIC bug) then the game code needs to be changed to allow time for one column transistor to actually fully turn off, before turning on the next one. So having a short think about that, I can't imagine a simple hardware solution to this software bug (or at least certainly not one that can be plugged into the outputs of the column/row drives of a driver board)



The WPC bug makes things worse, as a simplified version of what is happening is :- When the CPU is attempting to read lamp rows (i.e. see what the current values are) the ASIC incorrectly assumes that the CPU is trying to write values and ends up turning on all of the lamp rows for a very brief period.

As a bulb is quite slow to turn on, the pulse of current has already gone away before the bulb filament has warmed up enough to emit light.

As an LED turns on almost instantly, you see every single one of these little tiny spikes as the ASIC is turning on all the rows every few microseconds.


A simplified version of what the patched ROM's (for WPC games) does is :- A value is written to the lamp rows to turn them all off, before the read occurs, thus when the ASIC incorrectly picks up the read, the values are already set to off, so the asic doesnt incorrectly turn them on. The patch also has a side effect in that in adds a delay between one column turning off and the next one turning so in theory giving the previous transistor enough time to fully turn off before the next one comes on.



@Carl Spiby - Your original question about using resistors is a red herring, as the resistor fix is for old Bally games (amongst others) that use SCRs to controll the bulbs. An SCR needs a minimum amount of current draw for it to "latch" on. When you use an LED in an old Bally game, the LED comes on, but the SCR does not latch, so it goes back out again until the game tries to turn it on again, hence you get a constant flashing on the LED's that are suposed to be lit up steady. The resistor in parallel to the LED simply increases the current draw (by burning off some power as heat) and thus allows the SCR to properly latch on.

Luke - how do you know all this stuff? :confused: Really impressive.
 
Back
Top Bottom