(Topic ID: 239045)

Arduino Pinball Controller


By AmokSolderer

59 days ago



Topic Stats

  • 27 posts
  • 7 Pinsiders participating
  • Latest reply 1 day ago by AmokSolderer
  • Topic is favorited by 15 Pinsiders

You

Linked Games

No games have been linked to this topic.

    Topic Gallery

    There have been 4 images uploaded to this topic. (View topic image gallery).

    P1020494 (resized).JPG
    IMG_0120 (resized).JPG
    Flash (resized).png
    APC_Pinbot (resized).JPG

    #1 59 days ago

    I have designed an Arduino based pinball controller for use in Williams games from System6 to System11c.

    This board will replace all CPU, Power driver and Music/Speech related boards - an interface for hardware extensions is also present.

    At the moment this board cannot be used as a pure replacement as it cannot use the original EPROM software, instead it is meant for people who want to program their own games or add some hardware toys. I have therefore programmed some kind of pinball operating system which takes care of the hardware related stuff and offers an API for the game programmer to work with.

    The board is quite cheap (well below 100€) and has no special components like FPGAs on it, so it is quite easy to build it by yourself.

    There's a catch of course: I don't want to earn money with this project, which means I'm not going to sell boards or anything else to you, so you don't have much choice except of building it by yourself. However I put all the necessary data to my project page at GitHub, together with a lot of information to make it as easy as possible.

    https://github.com/AmokSolderer/APC

    It's still a lot of work to do the code for a new game and I'm some how fed up with doing it all by myself. Therefore my hope is to establish a small community of people who have fun designing new game rules and who just needed a base to start from.

    So, if you are interested in this project, please give me some feedback.

    The photo below shows the APC in my Pinbot

    APC_Pinbot (resized).JPG
    #2 59 days ago

    Wow nice job. I haven't looked at any example game code, but the hardware looks great. If you get some pcbs (unpopulated) fabricated I would be interested.

    #3 59 days ago

    Cool idea. I was working on similar myself for a while...

    Why system 6 and not 3 and 4?

    #4 59 days ago

    I'm interested. I have an earthshaker in the shop I can try this on.

    #5 59 days ago
    Quoted from zacaj:

    Why system 6 and not 3 and 4?

    Hmm, mainly because I don't know any System3 or 4 games and just forgot them.

    However, after a first glance at the schematics I think you're right and they should work as well.
    I see a difference in connector 1J4. Apparently, the System3 and 4 games don't have a pin for the 'Memory Protection' switch and no GND pin. This would require some kind of simple cable adapter.

    But I'm a bit confused about the 12V supply of the CPU board. In the schematics of the Flash CPU (System6) pin 9 of 1J2 is labeled with '12V unreg', but in the connector overview (attached below) it is mentioned that this pin has only 'unregulated 5V' (I guess it's a five, the scan is not very good).
    In the 'Disco Fever' schematics it is consistent, schematics and connector overview state that there's only 5V unregulated present at this pin, but I wonder how they want to exceed the threshold voltage of the 6.8V zener diode they have there to release the Reset signal as soon as the voltages have risen sufficiently to ensure a stable operation of the 5V regulator.

    If you have a System3 and 4 game at hand, could you please measure the voltage at pin 9 of connector 1J2? The APC needs 12V there to supply it's audio amplifier, so it would be good to know whether they're there or not.

    Thanks in advance

    Flash (resized).png
    #6 59 days ago

    As far as I know it's the same voltage, just labelled differently. It's coming from the input to the 5V regulator on the PSU, which is just half wave rectified DC from the transformer. Don't have access to my system 3 at the moment

    If you only need it for the sound card though, it shouldn't matter. Sys3-7 all have a dedicated external card they can use

    #7 59 days ago

    I found the schematics of a System3 power supply board and it looks like they spared the bridge rectifier, but used only TWO diodes to rectify the 9.3VAC coming from the transformer. That would mean the voltage at pin 9 of 1J2 should be in the range of 6.3VDC (half of System7) which is not enough for the APC.
    The easiest way would probably be to just use a cheap 12V power supply and a cable adapter to feed this voltage to 1J2.

    Quoted from zacaj:

    If you only need it for the sound card though, it shouldn't matter. Sys3-7 all have a dedicated external card they can use

    That's true, but the goal is to replace the sound card also and to be able to spice up the sound of these old machines a bit.

    #8 59 days ago

    I found the schematics of a System3 power supply board and it looks like they spared the bridge rectifier, but used only TWO diodes to rectify the 9.3VAC coming from the transformer. That would mean the voltage at pin 9 of 1J2 should be in the range of 6.3VDC (half of System7) which is not enough for the APC.
    The easiest way would probably be to just use a cheap 12V power supply and a cable adapter to feed this voltage to 1J2.

    Quoted from zacaj:

    If you only need it for the sound card though, it shouldn't matter. Sys3-7 all have a dedicated external card they can use

    That's true, but the goal is to replace the sound card also and to be able to spice up the sound of these old machines a bit.

    #9 59 days ago

    Looks like a very nice board for retheams or custom pinballs! Are you interested in adding support for the Mission Pinball Framework? We already support similar platforms (such as LISY Gottlieb System 1/80 or Snux System 11): http://docs.missionpinball.org/en/dev/hardware/index.html. We can help with the python side. I guess we could interface the Arduino via serial. Let me know if you are interested.

    Jan

    #10 57 days ago

    Just for your information: there is a vivid discussion ongoing in the german pinball forum (also with Jan) about how to add support for PinMame and the Mission Pinball Framework to the APC, which would require a PC (or Raspi) to be connected to the APC via USB.
    With PinMame running on the PC it would be possible to use the original Williams EPROM software and MPF would ease the development of homebrew game rules.

    Albeit this is mainly a software topic, I'm thinking about adding an analog audio input to the APC. With the audio output of the PC being connected to this, the audio amplifier of the APC could be used to play sounds generated by the PC on the pinball's loudspeakers.

    I'll send an update when a decision is reached.

    Additionally I'm going to add System 3 and 4 games to the list of supported platforms (under certain preconditions). Thanks to zacaj for pointing this out.

    #11 55 days ago

    By the way:

    Quoted from AmokSolderer:

    That would mean the voltage at pin 9 of 1J2 should be in the range of 6.3VDC (half of System7) which is not enough for the APC.

    This was bullshit of course (never drink beer while replying to technical threads). With 9.3VAC you have an amplitude of more than 13V and if you subtract the threshold voltage of the rectifying diodes you end up slightly above 12V.

    That means, if I didn't miss anything the only adaption needed for System 3 and 4 boards to work with the APC is to add a small cable adapter to connector 1J4.

    #12 49 days ago

    Update:

    I have generated a Base Code which should run on all machines with minor modifications and is a good base for own game code.

    My next task is to implement an API to control the APC via USB which would enable PinMame and MPF support.

    Furthermore I'm not going to add an audio jack to the board. I've tried it out and the signal strength coming from the PC is too weak to get a decent audio quality. To improve it one would have to add more gain to the pre-amplifier which is just used as an active filter at the moment. But if you have to solder anyway you can also add the audio jack by yourself - or spend 5 bucks to buy a cheap amplifier board from china.

    That means the board stays like it is and I'm about to get a quote from a german board manufacturer. When we know the price you can still decide whether you want one. Or does anyone know a suitable manufacturer in the US?

    And as requested the Gerber files for the Mask and Silk Layers have been added to the Layout section.

    #13 48 days ago
    Quoted from AmokSolderer:

    That means the board stays like it is and I'm about to get a quote from a german board manufacturer. When we know the price you can still decide whether you want one. Or does anyone know a suitable manufacturer in the US?

    You could always fab them in China for almost nothing. Assembly might be a few bucks but the boards are usually cheaper than the shipping. Seeed or itead are proven MFGs for boards from China. They also ship to the US.

    #14 46 days ago

    The quotes from the PCB manufacturers have arrived. I have received quotes from the german manufacturer IBR/Ringler and from Seeed in China.
    One big difference is that IBR charges 75€ for preparation (exposition masks and so on). If the board doesn't change afterwards you can order more without having to pay the preparation fee again, but with the first order you have to pay it. I'd add 5€ to each board to compensate for this. This way I'd be even after 15 boards.

    For 5 boards the price at IBR would be for you:

    127€ (Boards) + 7€ (shipping) = 134€ : 5 = 27€ (per Board) +5€ (preparation cost contribution) + 10€ (shipment to the US) = 42€

    The same for 10 boards:

    158€ (Boards) + 7€ (shipping) = 165€ : 10 = 17€ (per Board) +5€ (preparation cost contribution) + 10€ (shipment to the US) = 32€

    Seeed doesn't charge any preparation fees, but shipment is more expensive.

    5 boards from Seeed:

    71€ (Boards) + 34€ (shipping) = 105€ : 5 = 21€ (per Board) + 10€ (shipment to the US) = 31€

    10 boards from Seeed:

    96€ (Boards) + 45€ (shipping) = 141€ : 10 = 14€ (per Board) + 7€ (shipment to the US) = 24€

    Of course, there is a certain risk of a shipment from China getting lost. Additionally every now and then shipments like this are stopped by the german customs, which will add a lot more to the price. Furthermore I did some businness with IBR some years ago and I know they're delivering good quality.
    I'd therefore prefer to order from IBR, which would mean a price per board of 42€ (roughly $38) for you if we just order 5 boards.

    So please drop a line if you want a board for this price. The more people are interested the cheaper it get's of course.

    #15 46 days ago

    I'm.down for a couple. Pm sent

    #16 45 days ago

    In the german Forum someone came up with https://jlcpcb.com/
    Apparently they charge only 32€ for 5 boards including shipping
    Shipping takes a while, but he has ordered from them several times and the boards were of good quality.

    For us this would mean that shipping the boards from Germany to the US would cost more than the boards itself, which makes no sense.
    Therefore I propose the following: I'm going to order 5 of them for Germany only. Then we check whether the boards are OK and if they are I'd be very grateful if one of you would order 5 for the US. This person would then save the shipping cost and it would probably still be cheaper for the rest of the US guys. Additionally this company probably knows how to ship stuff overseas while minimizing customs trouble.
    At the moment I have 3 ordered boards from the US (4 if Pinash confirms his interest), but I think there will be a lot more as soon as some of you have confirmed it to work.

    What do you think about this?

    #17 45 days ago

    I can handle the us orders for you

    #18 44 days ago
    Quoted from Cheddar:

    I can handle the us orders for you

    Thank you Cheddar, I appreciate that.

    I have just placed the order and for some reason they haven't charged the shipping costs, because I just paid $24.
    I'll send an update when the boards have arrived.

    By the way I'm just implementing the new USB API to control the APC via USB commands. So hopefully we will have PinMame and MPF support soon.

    1 week later
    #19 32 days ago

    Update:

    System11c displays and USB command mode are working.
    Next task is to add support for System7 displays as our first machine to try PinMame on will be a Jungle Lord.

    Still waiting for the boards.

    IMG_0120 (resized).JPG
    #20 27 days ago
    Quoted from Cheddar:

    I'm.down for a couple. Pm sent

    Hey Cheddar man
    I'd be interested in these also. It may be a turning point for my learning to code
    Hopefully we'll talk more at the show
    See you there

    #21 24 days ago

    The boards have arrived and they look great.
    Now it's up to you to decide whether you want to order now or wait for the german guys to clean the pipe.

    I already implemented an additional minor HW change which makes the use of pre Sys11 displays a bit easier. It's just an additional resistor and a transistor. I still have to change the documentation accordingly, but the design data is up to date.
    I got the idea from the discussion in the german forum and it is of course possible that more improvements come up when more people start using the boards.

    However, it seems to be much more difficult to get the DIL version of the 74FST3244 devices in the states, so I'm thinking about changing the layout to an SMD footprint.

    What do you prefer, should I change the layout or do you want to look for the DIL version? I think the german vendor also ships to the US, but of course it will be more expensive. I used this offer:

    ebay.com link » 5x Idt74fst3244p Octal Fet Bus Switch Idt
    P1020494 (resized).JPG

    #22 23 days ago
    Quoted from AmokSolderer:

    However, it seems to be much more difficult to get the DIL version of the 74FST3244 devices in the states, so I'm thinking about changing the layout to an SMD footprint.

    Could you put both the SMD and the DIL footprint onto the board? That would allow assembly based on availability of parts.

    #23 18 days ago
    Quoted from jabdoa:

    Could you put both the SMD and the DIL footprint onto the board? That would allow assembly based on availability of parts.

    I gave it a try, but the result always turned out to be quite messy. So I did some research about the replacement of the 74FST3244.
    There's one direct replacement 74cbt3244 which seems to be still in production, but not in a DIL package.

    The second alternative is the 74BCT760. This is not a direct replacement, since it's not a bus switch but an open collector buffer. Electrically this is IMO the better solution, as it provides a clear separation between the switch matrix and the special switches. This is the kind of device I had in mind when I designed this stage. The bus switch was just a second choice when I couldn't find an open collector buffer.
    And even better: the DIL version of this device is available at DigiKey.

    Hope this helps.

    2 weeks later
    #24 4 days ago

    How did I miss this thread? Really nice work!

    If the support for this does get to MPF and latency isn't a problem, then this should be a *much* cheaper solution than the current choice of P-ROC with my Sys11 driver board. You support a wider range of machines, and can also drive the segment displays which we can't currently do without another interface board.

    Watching this with interest. For Pinmame control, take a look at the P_ROC code in there at the moment. It basically looks for changes in the pinmame state of lamps and coils and just passes those through to the P-ROC, and for changes in switch states on the P-ROC which it updates the pinmame switch states with. I guess a similar approach would work with your APC.

    Mark

    #25 2 days ago

    Hi Mark,

    thanks for your Feedback.

    I hope we will have first results witch PinMame soon. Luckily there is an expert living nearby who has just built his own APC board and is now going to make PinMame work. Last time we met he was almost able to run my Jungle Lord. Lamps, Coils and Displays were already working - just some issue with the switch numbering prevented us from starting a game.

    Jan was also here and we tried to let MPF run the APC via the USB connection. The results were quite promising so I hope to be able to do my new Rollergames rules in MPF.

    The main technical discussion ist currently taking place in the german forum, but I'm trying to keep you posted from time to time.

    However if you want to join the discussion I could ask the others to move it to Pinside (at least partly).

    Frank

    #26 1 day ago

    Can you send me the link for the German forum? I could join there and follow...

    Ich kann Deutsch lesen und schreiben, obwohl ich Englaender bin. Meine Frau kommt aus Koblenz

    #27 1 day ago

    If you wrote the german sentence without any help from your wife then you're only lacking german Umlaute on your keyboard to be perfect.
    The link to the german forum is:

    https://www.flippertreff.de/start/forum/topic/11356-arduino-pinball-controller/

    You're welcome to join our discussion.

    Frank

    Promoted items from the Pinside Marketplace
    $ 189.99
    Lighting - Led
    PinballBulbs
    $ 39.00
    Playfield - Toys/Add-ons
    Lermods
    $ 28.95
    $ 214.99
    $ 11,500.00
    $ 19.95
    Playfield - Toys/Add-ons
    ULEKstore
    $ 20.00
    Playfield - Toys/Add-ons
    Bright Lights Pinball
    From: $ 5,799.00
    Pinball Machine
    Flip N Out Pinball
    $ 239.99
    Lighting - Led
    PinballBulbs
    From: $ 5,799.00
    Pinball Machine
    Great American Pinball
    From: $ 99.99
    Cabinet - Other
    Lighted Pinball Mods
    $ 4.00
    Electronics
    Z-connector (24 pin) Out of stock
    Professor Pinball
    $ 22.00
    Hardware
    The MOD Couple
    $ 69.99
    Playfield - Toys/Add-ons
    Lighted Pinball Mods
    $ 7,499.00
    Pinball Machine
    Little Shop Of Games
    $ 400.00
    Boards
    Great American Pinball
    $ 48.00
    Playfield - Other
    ModFather Pinball Mods
    $ 29.99
    Cabinet - Sound/Speakers
    Lighted Pinball Mods
    From: $ 9.99
    Eproms
    Matt's Basement Arcade
    $ 27.50
    $ 69.99
    Playfield - Toys/Add-ons
    Lighted Pinball Mods
    $ 20.00
    Playfield - Decals
    Bright Lights Pinball
    $ 90.00
    Lighting - Under Cabinet
    Rock Custom Pinball

    Hey there! Got a moment?

    Great to see you're enjoying Pinside! Did you know Pinside is able to run thanks to donations from our visitors? Please donate to Pinside, support the site and get anext to your username to show for it! Donate to Pinside