10/20/2016 – Moving to newest MPF branch

So Jan has made some updates to MPF for the OPP platform, and I really need to move to using that version.  I had some old MPF code that ran an attract mode slideshow and a bunch of other stuff, but it was all really preliminary.  I could never get the slideshows to work after moving to newer branch of MPF, and I don’t really know if it is that important.  I’ve decided to just throw out all the stuff that I have so far (excluding my main configuration yaml file which has all the hardware definitions in it) and start from scratch.  Hopefully that will make things a little bit simpler since I don’t need to deal with all the stuff the converter added to the files.

To update to 0.32, I ran the following command (remember, I don’t have Python in my path so I need to add some extra stuff flags to get everything to work) :

c:\Python34\python.exe -m pip install mpf –upgrade –pre

To run the actual code:

c:\Python34\python.exe -m mpf both

The checked-in code in the repository svn\MPF\SS3 folder is using 0.32.  You can start a game, it plays a couple of sound, goes into skillshot mode, and that is about it.  Making the skillshot correctly adds the score, but it doesn’t play a clip from the sound pool because the mode ends before it can play the clip.

I’m just not getting into the MPF groove.  One issue I had was I couldn’t get the scores to show up.  After trying to find the information in the documentation (I’m sure it is there somewhere), I eventually found an example in Brian’s code that had the correct value to use in the yaml.  I just don’t feel very efficient working with it yet.  I’m considering shelving it until there are a couple of examples of fully running games, so I’m not just hunting and pecking to figure out how to make it work.  The hassle of figuring it out would be worth it if I was trying to do more interesting things than emulate an early 80s pinball machine.  The reality is I have a static picture displayed on the backbox with a couple of scores shown in front like the old numeric displays.

I guess that it means that I have to dust off the OPP framework and get that running for the Gen2 boards.  That means adding a couple of new commands and such, but it shouldn’t be that difficult.  The code is written in Python with a little engine in the background, but it is much simpler for me to get something up and working quickly with it.  I just got a PiZero and it would be a good little project to get that running the framework.

That’s all.  Just felt that I needed to get an update out since it has been over a month.  Looks like Expo was an interesting event this year.  Hopefully that will bleed over into other pinball events including Pintastic this year.



9/19/2016 – White wood mode with Gen2

Basically just going to mention a new video is on YouTube running white wood mode using Gen2 hardware.  Why it took me so long to do the rewire…I will never know.  I haven’t hooked up the switch bulb voltage yet because I haven’t received the DC to DC buck converter in the mail.  That is supposed to be in sometime next month.

Basically you can watch my poor pinball skills and laugh.  The drop target resets when the center target is hit.  Since it isn’t running any frameworks, there is no scoring, no ball counting, etc.  After this, it’s moving back onto MPF to start rewriting the rules in their framework.

I’ll try to take a quick video of the bottom of the playfield and give a quick summary of the changes.  I don’t have the energy for shooting a video and taking pictures and cropping tonight.  Sorry.  (Maybe you can tell that I’m writing this before I’ve actually shot the video.)

Hey, I did take a shot of the Cypress USB to serial port adapter and the back of the playfield.  Sorry but it is really blurry.  I hate taking videos without the camera on the tripod but I was trying to show different sections.

I also just noticed 14 people are watching the YouTube channel.  Hey, that has more followers than the OPP blog.  Weird.


9/10/2016 – “Quit your whining”

After months and months of complaining about having to rewire the SharpeShooter 3 playfield, and desperately trying to do anything but the actual rewire, it is finally done.  At this point I have the thank Nick for finally pushing me to do it.

I was emailing back and forth with Nick, just basically congratulating him on the work that he has already done on his multi-bingo.  At one point, he mentioned that he also disliked rewiring things, and he convinced me to just power through it.

The rewire really didn’t take that long, but I’m glad that it is over.  I think I spent a total of another 5 or 6 hours to complete it.  One thing that made it take a lot less time was that I gave up on trying not to cut any wires.  Since many of the cards moved positions, if the wire wasn’t the right length I just cut it.  Then I took all of the cut wires, and used the already crimped ends in other locations.  It ended up working out really well.

The other big change was that instead of using 4 wires (between solenoid and input cards) or 6 wires (between incandescent cards), all the connections between the cards is a ribbon cable.  That saved a whole bunch of wire under the playfield, and makes the wiring that much cleaner.  Most of the wires are now less than 6 inches in length, and it is really easy to follow since there is so little wire.

So when I bought the Sharp Shooter 2 playfield, it was a populated with its wiring harness.  I cut that harness off and reused it to rewire the playfield with the Gen1 boards.  Now I’ve cut about 1/2 of that wire off and used it to rewire the playfield a second time with the Gen2 boards.  It is nice to know that each generation of the cards require less wires and make the wiring that much simpler.

I’m going to spend a couple of hours to make sure all of the ground returns are hooked up properly before trying to power the playfield. Unfortunately this weekend, I lost power for about 5 hours, and that was the time that I was going to test the rewire.  Seems like that will have to wait until next week.

I’ve also decided to update the incandescent bulb voltage.  Previously I was using 5V from the first PC power supply to power the bulbs.  Even with LED bulbs, the inserts are a little weak.  I spent some time looking up information for the Pinball Makers website on how to get 6.3V which is the proper bulb voltage from a 12V source from the PC power supply.  For $4 shipped you can buy a 12V to 6.3V buck converter step down that supports up to 12A.  Search on Ebay for “buck converter step down 12A” if the link doesn’t work anymore.  That should be plenty of power for the bulbs.

8/14/2016: Cost Smackdown – OPP vs Fast vs P-ROC

I’ll try to make this as factual based as possible.  I originally did the above style article comparing the original boards with P-ROC.  (I’m not sure that Fast existed at that point.)  Here is a link to the old article that still gets a good number of hits.  P-ROC versus open pinball project solution.

Here is the current state of affairs.  I’m going to try and be as fair in my assessment as possible, but I’m sure I will tend towards the stuff that I designed because, well, I would have designed it differently if I thought there was a better way.  The OPP hardware is based on the fact that I wanted the absolutely lowest price.  I tend to buy machines that other people have cast off and decided were unsalvageable.  Because of this, I don’t want to spend a ton on a controller.  Pinball is a hobby for me, and I personally don’t want to spend a large amount of money on something that is a hobby.  I do it for fun, and not for any personal gain.  The only money that I’ve ever made back from pinball is by getting free entrance to Pintastic for the weekend, and when I give a talk, I tend to hand out more free stuff than the value of the multiple day pass.

OPP board prices can be found in Gen2Board.pdf.  For basis of this comparison, I’m using the following costs for each OPP board:

  • PSOC4200 – processor board – $4.25
  • Solenoid Wing – 4 solenoids/4 inputs – $4.22
  • Input Wing – 8 direct inputs, just a connector – $0.29
  • Interface board – includes 40 pin header for attaching boards – $3.06
  • Incandescent through-hole board – 8 incandescent/LED bulbs – $2.37
  • Incandescent SM Low side driver – 8 incandescent/LED bulbs – $1.78
  • Incandescent SM high side driver – combined with above to form light matrix – $2.20

Let’s first go though all the available cards from each of the manufacturers and see how they stack up.  I’ll go in alphabetical order to be fair, so Fast is the first one.


Fast pinball has the following controllers:  they have controllers called Fast I/O 0804, Fast I/O 1616, Fast I/O 3208.  The first two digits is the number of inputs, and the second two digits is the number solenoids.  For examples, Fast I/O 0804 has 8 inputs and 4 solenoids.

0804:  The closest board that OPP could simulate to this one is a 1204.  That would contain a PSOC 4200, interface board, 1 solenoid wing board, and 1 input connector.  The Fast board costs $59.  The OPP setup would cost $11.82 and has an extra 4 inputs.

1616:  That’s a full up OPP board with 4 solenoid wing boards and interface card.  100% match.  The Fast board costs $159.  The OPP board costs $24.19.

3208:  OPP can’t quite match this, but the closes would be is a 2408.  That would contain a PSOC 4200, interface board, 2 solenoid wing boards, and 2 input connectors.  The Fast board costs $159, the OPP board costs $16.33.

One big hole I see in the Fast stuff is that I don’t see anything that you can easily drive incandescent/LED bulbs and flashers.  Yeah, you could use regular drivers, but that is really, really expensive.  Sure, Fast has RGB LEDs, but I would probably use a FadeCandy board to control such things.  Seems like a hole.

Their Fast RGB/LED insert product is interesting. It would make mounting really simple.  The downside is that you still need to solder three wires to each pixel.  That would get tiring really quickly.


Multimorphic or Pinball Controllers have the following boards:  PD-16 (16 solenoids/16 inputs), PD-8×8 (8×8 lamp matrix), and SW-16 (16 inputs board).

PD-16:  This is equivalent to the Fast 1616 board.  Multimorphic charges $100 for the board, and the OPP equivalent was $24.19.  The price on this board is not actually too bad.  The only problem is really that I don’t like the density of it.  I don’t have any spots in my machine where I have 16 solenoids in one group.  Maybe if I had a newer machine with more features, this board would make a lot of sense.

PD-8×8:  8×8 lamp matrix.  Gerry argues that switch matrices don’t make any sense, but then sells a lamp matrix.  (Yeah, a lamp matrix is easier to debug).  So doing a lamp matrix with OPP boards requires a PSOC 4200, interface board, high side incandescent driver, and low side incandescent driver board.  Multimorphic charges $100 for the board, and the OPP equivalent costs $11.29.

SW-16: Simple 16 input board.  This is equivalent to a PSOC 4200, interface board, and 2 input connectors.  Multimorphic charges $60 for the board, and the OPP equivalent costs $7.89.

OK.  None of this stuff is an apples to apples comparison.  The OPP boards, you have to solder them yourself.  Each board takes 5 to 8 minutes to solder, so that is a major pain in the butt.  I accept that.

Many of the OPP boards that I’ve quoted above have extra wing board positions.  (Each processor board supports up to 4 wing boards and the interface board does not count).  The processor and interface board are already built into the prices, so with the extra positions you can add even more functionality.  That’s another big difference.  The OPP boards are much more modular by design.  I tend to put the boards that I need where they need to be.  That means my wiring is really, really short.  My wiring is very easy to diagnose, because most of my wires are less than 8 inches in length.  Put a board where it makes sense, not where it is required because the boards force you to make inconvenient decisions.

Both the PROC system, and Fast system require a RS485 interface board which adds another $5.  This is the best case scenario assuming that you don’t need a USB to serial port converter because that adds yet another board.  If using something like a Raspberry Pi, you can simply use the output of the embedded serial port straight into the RS-485 interface board.  The PSOC4200 prototype board comes with a USB to serial connector, so that interface is already built the system.

Let’s move on to some real world examples.  These include SharpeShooter3 (early 80s solid state pinball machine), Jokerz (late 80s DMD alphanumeric displays), and The Addams Family (just because everybody knows this machine).

SharpeShooter3 Comparison

The SharpeShooter3 pinball machine requires 31 inputs, 10 solenoids (with 10 direct inputs), and 43 incandescent bulbs.

The Fast required hardware would be a 3208, and two 0804s just because I need the extra inputs.  So that ends up being $159 + (2 * $59) + $5 = $282.  At that price, it hasn’t given me the 43 incandescent bulbs that I need to drive, so I’m quite a ways from actually having a working pinball machine.  Frankly, I don’t necessary want to change all of my incandescent bulbs into RGB LEDs, so I’m not sure what I’m supposed to do.

OPP ended up being 4 processor boards with the following:  4 interface, 3 solenoid, 6 incandescent, 5 input connectors.  The 6 incandescent wing boards allow me to keep those boards close to the lamps that they are controlling.  If I had a lamp matrix, all of that wiring would need to go towards one single card, which would make the harness that much more difficult.  The total cost for the OPP boards is $59.42.

Multimorphic ends up requiring a PD-16, PD-8×8, 2 SW-16 and an RS-485 interface board.  The total for that ends up being $325.  To make it as cheap as possible, I ended up using a lamp matrix, which I’ve already mentioned my displeasure.

Jokerz Comparison

So I know a couple of guys doing Jokerz rethemes.  For one of them, I went through the manual trying to figure out everything that was needed to drive the playfield including all the flashers.  So the Jokerz playfield has 19 solenoids (includes direct inputs), 39 inputs, 63 incandescent bulbs (which includes 9 flashers).  The ramp that raises/lowers is a simple direct motor drive with a limiting switch on each end.  At first I thought it was going to need to be an H-bridge to move the motor in both directions, but seems pinball machines tend away from such things and use cams.  Using cams makes the electronics easier because you don’t drive the motor in two different directions, and way back in the 80s/90s they didn’t have an H-bridge available to drive the motor in two different directions.  Other examples of this that I know off the top of my head include the ship motion in Pirates of the Caribbean, Thing in The Addams Family, and the bookcase in The Addams Family.  With a cam, all you do is run the motor until you see a limit switch close, then you know that you are in the final position.  To go to the other position, run the motor again until the next limit switch is detected.  You use what you have available in the machine without adding more electronics.

The Fast required hardware would be two 3208s, and a 0804.  So that ends up being (2 * $159) + $59 + $5 = $382.  At that price, it hasn’t given me the 54 incandescent bulbs and the 9 flashers that I need to drive, so again, I’m a long way from home free.  I once again don’t know where I’m supposed to go from here.

OPP ended up being 5 processor boards with the following:  5 interface, 4 solenoid, 8 incandescent, 5 input connectors.  The 8 incandescent wing boards also have enough power to be used as flashers, so I don’t have to waste expensive high current drivers on those things.  The total cost for the OPP boards is $80.73.
Multimorphic ends up requiring a 2 PD-16, PD-8×8, 2 SW-16 and an RS-485 interface board.  The total for that ends up being $425.  There are enough extra drivers to be used for the flashers, so that works out well.  The lamp matrix is used fro all the normal incandescent bulbs.

The Addams Family

It seems like it consists of the following hardware:
26 solenoids (includes flashers for motors)
4 illumination circuits

6 flashers

63 incandescent bulbs
40 inputs (tried to remove all inputs that directly control solenoids).  Note:  This number

may not be exactly right because I haven’t really spent more than 15 minutes to look at the manual.

The Fast required hardware would be a 3208, two 1616s, and a 0804.  So that ends up being $159 + (2 * $159) + $59 + $5 = $541.  Again, no solution for incandescent bulbs.  I ended up simulating all the necessary drivers for solenoids/illumination circuits and flashers as driver circuits.
OPP ended up being 6 processor boards with the following:  6 interface, 8 solenoid, 9 incandescent, 5 input connectors.  The incandescent wing boards also have enough power to be used as flashers, so the can be placed at the appropriate locations under the playfield to keep wiring simple.  The total cost for the OPP boards is $100.40.
Multimorphic ends up requiring a 3 PD-16, PD-8×8, 2 SW-16 and an RS-485 interface board.  The total for that ends up being $525.  I stole some of the direct inputs to be used as normal inputs to save cost.  Since 36 circuits need high power drivers, it really hurts that I need to buy one more card to get those last 4 drivers I need.  There are enough extra drivers to be used for the flashers, so that works out well.  The lamp matrix is used fro all the normal incandescent bulbs.
That’s the best comparison that I can come up with at this point.  Looks like Fast/Multimorphic ends up being approximately 3-5 times more expensive than the OPP stuff.  That makes a lot of sense because most people use Bill of Materials (BOM) * 4 to figure out what their price should be.  I’m flummoxed with how I’m supposed to drive incandescent bulbs with Fast hardware.  I literally have no idea how I am supposed to drive those elements using their stuff.  If I use how power drivers, their stuff would be hugely more expensive.
I’ve also noticed that the Fast and Multimorphic stuff are approximately the same price.  Why build a new pinball control system where there isn’t a huge cost or feature improvement.  I was expecting Fast to be $100 or $200 cheaper on a full up system, but I just don’t see it.  Truth be told (and for complete disclosure, I have talked with Gerry multiple times and have never talked to the Fast guys), I would probably choose the PROC system to drive a machine if I wasn’t such a tinkerer.  Notice, also, in the above prices there are no main driver cards.  (PROC or P3ROC, or Fast Nano or Core).  Adding one of those controllers really jumps up the price, but I guess is a necessary evil if trying to add a DMD.
Things I don’t like about Fast include not having a way to drive incandescent bulbs, or really any low voltage features.  If I’m retheming a machine, I don’t want to remove all the bulbs and replace them with RGB LED strips.  RGB Neopixels have a really bright “hot spot” which is very difficult to diffuse properly and light a whole insert.  I don’t really like the prices either, it just seems a little too expensive to me.
Things I don’t like about Multimorphic include using a lamp matrix to drive incandescent bulbs.  This complicates wiring immensely.  Besides that, and price, I think that they have a great product.


8/5/2016 – Rev of OPP Firmware Released

Firmware guys never like to say anything is done.  I had a bootloader I wrote which was used in medical products that was still at version 0.1 when used in the final products.  The problem is you can always add more features, make things better, etc.  Previous released versions included which was the first version that I accidentally left a debug statement that overwrote the configuration each time it booted. came out as soon as I realized the bug which was wayyy before kickstarters and such. was fully functional, but had the issue that you had to program onto the board and then program  to do it.  (Easy to work around, but still annoying).  Here is which boasts a full set of regression tests to verify the functionality.

Here is a quick list of things that have been added/fixed:

  • Fixed bug where had to be programmed before updating the firmware.  This means that you can simply program onto a board and you are good to go.  I will update the programming instructions in the next week or so.
  • Feature to add ability for on/off solenoid functionality.  Previously solenoids could not just be turned on at 100%, then turned off at 100% depending on a switch or a command sent by the main controller.  That has now been implemented using a new configuration bit for the solenoid.  This feature was targeted at dual wound flippers low power coil and driving DC motors for all you Jokerz fans out there.
  • Feature to kick a solenoid after a certain delay of a switch.  This feature is for those people out there (all 1 of them) who wants to do a kickback in the outlane, and his switch is pretty high up in the outlane.
  • Fixed bug where serial number was not working properly.  This is for those guys doing head to head machines and requiring a way to tell which group of OPP boards are player 1, player 2, etc.  There is a small remaining bit of work on this that whenever the software is updated, the serial number gets cleared again.  I’m going to add code in the firmware updater to read the serial number, and then replace that information after the upgrade.  Then the user doesn’t need to worry about it.
  • Feature to allow different inputs to kick a solenoid.  This allows things like wacky flippers (left button kicks right flipper) and other really exciting things.  You can now use any input on the board to trigger a solenoid.  Note:  For bat-a-ball mode and white wood mode you still have to use the designated input for the solenoid.  This change is only for people using MPF, OPP framework, or writing their own serial interface.
  • Feature to allow one input to kick multiple solenoids.  Let the dual wound flipper configurations commence.  This is now supported.  If you want to do this in bat-a-ball mode or white wood mode, you still need to pass the flipper button input to all the designated inputs for the two solenoids.  If configuring through serial commands (i.e. MPF), this can now be controlled by the framework.

This firmware contains a completely rewritten digital processing section.  That has allowed the code to become smaller and even more efficient.  There were also some processing that was spread across two different parts of a function that have all been combined.  Essentially, the code just looks cleaner at this point.  At this point the firmware is using less than 65% of the flash and less than 65% of the RAM.  Plenty of space to grow and add more features.

The bootloader which is provided by Cypress toggles all the output lines as it is updating the firmware.  This means that you can’t update the firmware with high voltages going to solenoids.  This would make all the solenoids toggle at once, and would probably trigger the short circuit detection in the power supply.  I could rewrite their bootloader, but that would involve getting people to update the bootloader, which if power is lost during that process, the device will be bricked.  Leaving the default bootloader Cypress provides means that the device can’t be bricked.  At this point, that is much more important.

The documentation still needs to be updated for the added serial command and extra options.  I might be able to get to that this week.  Jan is probably the only person who really cares about that info.  (Jan was the source of half of the feature requests.)  I also need to update the populate boards document with the simplified instructions for updating the firmware.  At this point (because of the work I did on the regression tests), I can probably write a simple one line command that upgrades a blank from the factory card and puts a configuration on the card.  That should make it a lot easier for people.

Next up, I really need to finish the rewire on SS3.  Gah…  I just need to suck it up and finish it.  At that point, I will start hitting the MPF hard.  0.30 has been officially released, so I need to grab that from the repository.  That’s all for today.

8/02/2016 – A couple notes on power supplies

The power supplies in pinball machines are magical things that convert AC voltage into a DC voltage.  Without them, the wonderful toys that we enjoy tinkering with, would not work, and we would be forced to play bagatelle machines.  Not nearly as much fun.

Power supplies come in many different varieties, but the two that you see most frequently in a pinball machine is a toroidal transformer (linear unregulated power supplies), and switched mode power supplies (SMPS).  Toroidal transformers have been used in pinball machines since the beginning of time and just slightly before electricity was added for lighting.  (OK, I just made that last part up).  If you look in your pinball machine and you see a big hunk of metal in the bottom that looks like it weighs 20 pounds, you have a toroidal transformer.

A simple toroidal power supply works like this.  (Note:  This is going to be overly simplified)  It takes the AC voltage from the wall and runs it through a transformer.  That transformer converts from a high AC voltage to a lower AC voltage.  That lower AC voltage is converted to DC using a full bridge rectifier (makes positive and negative voltages all positive), and then a large cap to filter out the 60 Hz noise so a constant DC voltage is output.  The power that it can deliver is based on the number of windings, type of material of the toroid, etc.  The AC voltage is converted using magnetic waves or flux in the transformer.  If too much current is being drawn from the transformer, the output voltage droops.  (In power supply terminology, this would be a linear unregulated power supply).

Switched mode power supplies are being used in newer pinball machines.  They convert the AC voltage to high voltage DC using an itty bitty transformer, and then use buck/boost converters to convert the high voltage to the desired lower output voltage.  Because things are done at a high frequency, energy storage components can be much smaller which means a lot less weight.  They are also more efficient.  They also cost a lot less. A 48V 8.3A SMPS is going for about  $22 shipped on Ebay right now.  A 48V 10A supply goes for about $35 if you prefer.  The equivalent toroidal power supply such as a PS-5N48 goes for $107 and weighs 12 lbs.

You may ask why this matters to you.  One point is that the SMPS seem to always have active circuits to make sure that they aren’t shorted.  (Probably for safety reasons.)  If too much current is drawn they shut down.  If it goes from a relatively quiescent state to full on, they can detect that as a short.  When a solenoid fires, it goes from requiring no current to requiring max current in a very short time.  That can trick the power supply into thinking that it has a short and shut down.  To get around this problem, you need to add some bulk capacitors to reduce the instantaneous current draw of the power supply.  Either 8.2 mF (listed normally as 8200 uF), or 10 mF (listed normally as 0.010 F).  Here are the links for the Mouser capacitors.  (8200 uF, .010 F).  The capacitors run about $4 each in low quantities for the 63VDC ones.  These capacitors act as storage, so when there is an immediate draw of current, the capacitor can help provide that current, so that there is a lower current draw from the power supply itself.

Ahh, but these capacitors come with a terrible curse.  At startup, when they are charging, they look like a very low resistance across the power supply, and because of this, they draw a ton of current.  There are many ways to fix that problem.  One is simple but wasteful and cheap, while the others are more elegant.  The last one requires a lot more components and if you want that you should buy somebody elses power filter board.  (The right way would be to add the appropriate sized inductor to limit the current, but inductors are expensive, so we will ignore that option at the moment).

  1. Easiest way is to add a current limiting resistor before the capacitor.  The main issue with doing this is that you just converted your precious power supply current to heat using the resistor, and now the power supply can’t supply as much current to anything in the system because this resistor is in series with all the solenoids.  It is a solution, and I have used it when I needed to get something working quickly, but it isn’t ideal.
  2. Add a NTC (negative temperature coefficient) thermistor.  If you look at any SMPS you will see these guys.  They look like a big old circular caps that you used to see back in the 80s.  These start at a high resistance when cold, and then after current goes through them to heat them up, they drop to a much lower resistance.  The  Mouser part number is 995-SG26, but there are many others out there.   This one starts out at 5 Ohm when cold, and drops to .022 Ohms as it heats up.  That seems to be the sweet spot because using a 48V power supply, you get 48V/5Ohms = 9.6A and the NTC and handle 12A.
  3. Last option would be to add a resistor that is switched out after startup time.  This would involve a good number of components (a couple caps and a couple of resistors to turn on/off the switch or MOSFET).  The MOSFET that I’m current using (FQP13N06L) has an RDS(on) of .110 Ohms (typical).  Since the NTC thermistor has a lower resistance at steady state, it seems to make a lot more sense.
  4. Inductor, to limit the initial current, but as mentioned before, to get an appropriately sized inductor it is too expensive.

Well that’s about it.  Joe, if you still read this blog and still work on Blue October, my suggestion is to switch out the current limiting resistor for an NTC thermistor.  That should give your flippers a little more snap.


7/14/2016 – Pintastic…Done!

So Pintastic came and went and now it is over.  Here is a little secret about all these pinball shows that no one ever mentions.  They have a ton of EMs that are just a blast to play.  Yeah, I played the Game of Thrones, Big Lebowskis and the Lexi Lightspeeds of the world.  I might have played a good amount of Metallica.  But what was I playing on Saturday?  EM after EM after EM.  I spent about 1/2 hour playing a Chinatown which was kind of like a bingo machine/pinball machine hybrid and discussing the rules of the game with a random person also fascinated by the machine.  Yes…EMs have rules, and some are quite complex.  It was probably one of the simplest looking games, but the depth in it, and how scoring occurred were wonderful.  Where do you see EMs on location anymore?  Never.  Pintastic, Allentown, The York show, all of them tend to have a whole bunch of EMs that most of the people are overlooking.  I think I fell in love with the little flippers this time.  (Before I was shying away from those, but I decided to give them another chance this time).  Maybe it is because I’ve been playing more pinball, or maybe it is because I can predict the ball motion a bit better now, and maybe (unlikely), but maybe, I’m starting to actually learn how to nudge the machine and have it do something.  (Probably not on the last point, but I can always dream).

So Friday night, I tried to start a new trend.  If you happen to see Jaap (guy from Dutch Pinball who does The Big Lebowski) at a bar, send him a White Russian anonymously.  He was out with the Mezels and a bunch of other pinball people (maybe a couple of the LED people).  Just buy a White Russian and have the bartender give it to him.  Why not.  Not everybody puts a drink prominently on their pinball machine.  It’s got to taste better than Genievre…really.

So the homebrew pinball panel happened, and the person who won the free boards was…somebody who wanted to do a 60s style Batman.  OK.  The contest was really short.  Basically there were three people who said they had ideas.  The first guy  stumbled around his idea and I can’t even remember what he said.  The second guy said 60s style Batman.  Last guy I knew, so, well, I disqualified him from the contest.  (He sees me every week at pinball league, so if he really wants boards, I’ll probably just give them to him).  Michael Ocean chose the 60s style Batman and the rest is history.

I guess I should say something useful about the OPP project.  I’m done with the new version of firmware, and I’m writing regression test scripts to make testing the firmware easier.  Yes, they take a long time.  (Mostly because I’ve been busy).  There are already tests created that verify the code download, board serial numbering, reset, and jump to bootloader, and reading state input functionality.  I’ve visually tested the solenoid driving stuff, but I have to write those regression tests so, well, they are reproducible.  Hopefully in the next couple of weeks (maybe the beginning of August?) I will be done.  None of the stuff that I’m adding is really necessary, but there are a couple nice to haves in there.  The newest version of firmware doesn’t require the firmware to be loaded twice.  Woohoo.  I found that bug and kicked it really early.  (Turns out that if you don’t have any Neopixels, the interrupt for the Neopixel driver keeps hitting since the FIFO is always empty.  I forgot to disable that interrupt if there weren’t any Neopixels.  By burning twice (the first image had a number of Neopixels configured), it gave it a number which made sure that it was happy.  That is now fixed, so with the new version, you only need to burn the code once.)

Well, that’s all I have time for tonight.  Go out, find a couple of EMs and play the heck out of them.  They are an absolute blast.  Side story which is somewhat related:  There was a Haunted House machine in the Pintastic auction and Mike T asked me if I would want it.  (Yeah, I know it isn’t an EM)  I told him no, I don’t want it, but it is definitely a machine that I would like one of my friends to have.  Used to be one at the Pinball Wizard arcade, but Sarah absconded with it to her house.