Total Newbie - Presentation - Pinball Dream

Hi, I'm Tore from Sweden. I'm so new I haven't even yet recieved the two Arduinos I just ordered.
I have done some C programming, played around with some 74LSxx IC:s, and repaired some old EM pinball games.
I'm totally self-made, so my knowledge is very patchy; I've picked up some here and some there but there are lots of huge gaps.
First of all, of course I have to recieve the two boards, an Uno and a Mega, and then learn the basics.

But my real goal is to restore as much functionality as possible in an old early solid state pinball machine. It's odd and interesting because it's made in Spain. Also, it's quite uncomplicated, with only 21 switches at the playfield:

Unfortunately, it means there are hardly any spare parts available, and the CPU board is damaged beyond repair, of course by a previous owner, not me. :slight_smile: I lack the knowledge to build a new CPU board, with data bus and strobe and such terms I have a very diffuse, schematic idea of how it should be made. So I go for the second best, what I believe could be feasable. Using one, two, or three Arduinos together with some TTL curcuits to restore as much functionality as possible, one feature at the time. I guess the most difficult part will be to somehow count the score. But that will probably be the last feature I add - but at the same time always try to keep scoring points in mind while working with the other stuff. I'm anything but a Purist; I can even think of a PC standing next to the pinball machine, and maybe through a serial connention keeping the score. The game is a 4 player machine, but I may settle for only 1 player capability.

Another issue I'm expecting trouble from, is false triggering from the powerful solenoids. But I think I'll be able to handle that issue, don't know how yet though.

So far, I've repaired the power supply unit, which had been badly abused, fixed the driver board and studied the Bonus system. It has 16 steps, 0-15k, and the output works just fine with a 4-bit binary TTL level input. I've connected the bumpers, pits, and slingshots temporarily direct to their switches repectively via a Darlington power transistor each just to get the gameplay.

My preliminary plan is to begin with the triple drop target assembly. When all three targets have dropped or at new ball, there should be a delay and then the restore targets solenoid be activated for maybe half a second. I think an Uno is just taylor made for that purpose. Of course, the same unit must be able to at the very least take care of the New Ball sequence.

That makes the New Ball sequence the natural next step. My temporary fix sort of works; it instantly spits out a new ball to the plunger as soon as a ball is lost in the drain pit. But of course, there are more things that should be reset, bunus count, and more.

Or maybe I should take on the Bonus before New Ball? I'm not sure.

Eventually, I will take on the greatest challange: score count. Or maybe that's not so hard to handle for Arduino either?

What is discouraging is that so far I haven't found anyone making a similar project on Google. That means maybe this isn't a project possible to succeed?

Nice starter projekt - When you write

It has 16 steps, 0-15k, and the output works just fine with a 4-bit binary TTL level input

that you are able to talk til 5V TTL logic. Well, connecting it to the Arduino is no different (whether to worry about high voltage spikes and use optoisolators or zeners is optional).

I see no problem in the software side - you have a few input pulses, you steer a few output solenoids. Timings are not crucial, and the Arduino should be fast enough to poll/scan the inputs (you can extend the number of pins with shiftregisters or use the Mega, input or output)

The logic of handling the game (twenty times hitting bumber Z releases solenoid 3) is easy, or rather, well within the Arduinos CPU capabilities. A single Arduino is enough for en entire pinball machine, unless you want to drive a screen pixel-by-pixel (there is not enough RAM - but if it can be fed serially and "pictures" are stored in an SD card or such like ...). From your description it seems there is some logic in the driving board.

BTW: The point of the Scandivaian forum is either that we write in DK/SE/NO (and the SF group is doing their own thing :wink: ) or some aspect that is highly localized (where to buy, events in a city). But that is just a guideline, not a rule.

I see no problem in the software side - you have a few input pulses, you steer a few output solenoids. Timings are not crucial, and the Arduino should be fast enough to poll/scan the inputs (you can extend the number of pins with shiftregisters or use the Mega, input or output)

Thanks for your valuable response. That's really good news. And, in fact, I see no reason to involve the Arduino in controlling the solenoids for the two bumpers and the three slingshots. I will just copy the early Gottlieb's Bumper Driver Board (uses a 74121 to get triggered) for the solenoids and feed the Arduino through a TTL AND gate for the scoring. (Bumpers and slingshots have no other function for the gameplay other than adding action to the ball movement and adding 10 or 100 points to the score every time they're hit.)

A single Arduino is enough for en entire pinball machine, unless you want to drive a screen pixel-by-pixel (there is not enough RAM - but if it can be fed serially and "pictures" are stored in an SD card or such like ...). From your description it seems there is some logic in the driving board.

Fortunately, there's no matrix screen on a pinball game this old, just four (players) * 6 digits * 7 segment LED displays. At least, I do hope they're LEDs! And the last digit of each score is always a zero, so it's actually 5 digits a player to control. But so far, I haven't examined the top box where the scores are displayed, other than stating the fact that the CPU is dead but the lamp bulbs in the topbox was the easiest thing to get back to work.

BTW: The point of the Scandivaian forum is either that we write in DK/SE/NO/SF or some aspect that is highly localized (where to buy, events in a city). But that is just a guideline, not a rule.

Yes, I did understand that. But my experience from other forums is one can almost be lynched for posting in the wrong sub-forum, so I thought I'd start out with a presentation of me here, but it happened to become mainly a presentation of my project plans. As this Pinball project involves questions on many various subjects, do you think it would be appropriate to continue in Using Arduino\Project Guidance?

Pinball Project discussion continues in this thread:
http://arduino.cc/forum/index.php/topic,149875.0.html