Hi, I'd like to record pinball lamp shows using an Arduino. The pinball machine uses an 8x8 matrix, and it switches 18V through the columns and switches ground on the rows. In theory, it's a little like a keyboard matrix, except that the pinball machine is doing the strobing of the columns rather than the Arduino. The pinball machine uses incandescent lamps, and because the matrix is being strobed, the lamps typically see about 6V when they're lit.
I was thinking of using 16 digital input lines, 8 for the columns and 8 for the rows. I'd connect the column inputs using a 2K ohm pullup resistor and a 470 ohm pulldown resistor to a digital input pin, and connect the rows using a 10K ohm pullup resistor.
The algorithm would be like a keyboard matrix loop, but instead of sending out a signal on the columns and then reading the rows, it would wait for one of the columns to go high, then read the inputs from the row pins. After reading a row, the program would save the results and go back to waiting for a change on the column pins. I searched the forum for something similar, but all of the matrix input projects had the Arduino powering the matrix.
Does this sound like a reasonable approach? I'm not sure if the circuit would protect the Arduino or if I would need to use different hardware for isolation. I can get 5V and GND from the pinball machine to power the Arduino, so the 18V signal would have a common ground.
Wow, you’re the second person that has attempted to bring this dead post back to life. It’s just not going to happen, the OP disappeared more than five years ago.
This is why you start your own thread rather than resurrecting long ago dead ones.
Nutty77:
Did anything become of your project, I have just built a circuit that reads the matrix to a Arduino
Post the schematic of the circuit that you've built.
Do you need help or was it just a statement?
WattsThat:
Wow, you’re the second person that has attempted to bring this dead post back to life. It’s just not going to happen, the OP disappeared more than five years ago.
This is why you start your own thread rather than resurrecting long ago dead ones.
At least they have done their research instead of straight away asking for a solution