Monthly Archives: April 2017

4/23/2017- Firing on all cylinders

The goal is to get the cabinet done by the end of next week, or beginning of the following.  To that point, I need to add one more coat to the cabinet.  A nice cherry red to emulate the theme.  This weekend on Saturday finished up the last coats of white, added more tape for the stripes, and on Sunday night laid down a coat of red.  Looks like it is going to need another three or four coats, but at that time, the cabinet painting should be done.  If everything goes well, I will finish the painting this week and reassemble next weekend.  Here’s the pictures so far:

Next up was some work on the playfield.  I gotta de-Dolly the machine and get ready for the retheme.  I decided to sand it down to bare wood.  I also reseated any inserts that were needed.  So I went from a Dolly-wood to a white wood.  (Yeah, it’s a bad joke but the best that I could come up with.)  Next step is to mask off all the inserts, plug all the holes, and lay down a coat of white primer to get ready for the vinyl banner for the art.

Look, it even shows that I used ear protection.  (Note:  Those are just stage props because I got tired of taking them on and off).  I ended up using an orbital sander and 120 grit sand paper to remove the paint, then 180 grit sand paper to sand it smoother, and ended with 600 grit sand paper.  I would have like to use 220 grit, but I didn’t have it available for the orbital sander.  I’m not that worried about it since I am going to spray paint a white coat of Kilz on it, and I will sand that flat using 600 grit sand paper.

Last but not least this weekend, I started moving the stuff over to the Raspberry Pi.  This involved setting up a small spot I could work upstairs in the house with the monitor.  I used the standard installation of Jessie.  That already has python 2.7.x, pygame, and pyserial installed by default.  Nice!  Next I needed the USB to serial port to be recognized correctly (the default distribution thinks it is a Cypress Thermometer.  I modified /etc/modprobe.d/raspi-blacklist.conf to include the line “blacklist cytherm”.  By adding that line, the driver was correction recognized as a USB-serial driver, and /dev/ttyACM0 showed up.  Here is a picture and if you zoom in, you might be able to see that the Gen2Test program correctly prints out the configuration of the wing cards.

Pi Development Setup

Pi sitting upstairs

That’s all for the weekend.  Somebody mentioned on the Pintastic thread that it is 75 days until Pintastic.  This is definitely going to be a race to the finish, but things are going well right now.




4/19/2017 – More cabinet work

So the first layer of black paint was down and looked as good as it was going to get.  Next layer is going to be white.  Took a good amount of time to mask of the pattern that I needed, and snap a few pictures.  Doesn’t look like much yet, but I think it is going to look really nice after another two coats of white.  I was amazed at how shiny and reflective the black looked without spraying.  You can definitely see the bumpiness from the roller, but with adding some mineral spirits into the white, I think that it is going to lay even flatter.  (I think that I’m going to need about four coats of the white enamel to get the look that I need.)

This might be the first time that people can really guess what the retheme is going to be.  (Maybe because of the masking tape used to block off the black.)  Here are the pictures:

Please ignore the messy garage.  I really like that I’m keeping all of the fumes out of the house.

In other updates, Jeremy updated the Pinball Makers website with more information on the Power Interface board.   (That is the board that can be connected to an inexpensive 48V power supply from Ebay, and provides more bulk capacitance to fire pinball coils).  He did another great job writing up how to populate the board.  Thanks, as always, Jeremy!  Here is a Pinball Makers link to the write up.

04/11/2017 – Houston, we can read a switch matrix

There are a lot of different things that need to come together to get this retheme done by Pintastic.  Many of them are on my shoulders, but some of them are on Joe’s shoulders.  Joe, I apologize for badgering you, but the schedule is so tight for this project, that everything has to happen perfectly to get this thing in some semblance of finished.  Today, I literally bothered Joe during his lunch hour.  It is his theme, his art, basically his baby, and today, all I did was nag him about things that I need because we are less than 3 months from showing this machine off at Pintastic.  Joe, I’m sorry.

Yes, there are plenty of pinball companies out there that get a new product out in 3 or 4 months.  (Well, actually there is really only Stern, and all the other companies seem to fall late by quite a bit.)  Joe and I are out to prove that a bunch of fools (well, at least I’m a fool) will try to go from a Dolly machine to a completely new machine with new rules in about four or five months.  (We literally didn’t start this project until the beginning of February if I remember properly).  It’s not like we have a whole company behind us, it’s not like we work on pinball during the day, this is simply after hours, during weekends, etc.  A truly audacious goal.  At this point, I literally have no idea if the machine is going to be completed…but we will try our best.

This also proves that anybody can really do this stuff and at a reasonable price.  My budget is about as low as it can go to make a machine, because to me, pinball is simply a hobby.  It is a heck of a fun hobby.  I would say in many ways building pinball is more interesting to me than playing the machine itself.  (I guess I have to say that because I dropped out of league to try and get this machine finished.)  I can guarantee this won’t be an $8K machine.  I can also guarantee that doing these updates to the machine will breathe life back into a trashed machine.

Enough of that crap.  Last Friday, I finished the code for reading a switch matrix.  I checked it into the repository yesterday, but since it wasn’t tested, I didn’t bother putting a new version that can easily be used by upgrade.  Today, I got around to dragging the laptop, the piece of plywood with the OPP boards, and the Bally interface board, and plugged it into the cabinet.  (Bally’s have a switch matrix in the cabinet, and on the playfield.  The playfield is torn down, so I had to go with the cabinet).  Ran Gen2Test which now continuously reads the inputs from both direct switches and a switch matrix if it is configured, and it worked immediately.  Bits were showing up as I tripped them, and there was no bleed from one column to another column in the matrix.  Super sweet!

What does this leave on the firmware?  Well, the only thing left is using a switch matrix input to trigger a solenoid, and being able to change the solenoid configuration.  I’ve already figured out the best data structure to trigger the solenoid automatically, so all the design is really done.  That means I’m just down to the coding which should be pretty easy.  Reading a switch matrix is one big worry out of the way.

If interested in the details, it works like this.  During the main loop, it reads a single input byte.  It then switches to the next column, so if a capacitor needs to be charged it has the time to do it.  It then walks through the data byte looking for changes from the last time it read that column.  If it changes, it clears a counter for each input byte to zero.  If it hasn’t changed, it increments the counter and checks to see if the count has crossed the threshold.  If so, it declares the bit as active, and holds the bit active until the data goes low and crosses the threshold count again.  This makes sure that glitches aren’t caught and automatically debounces the signal.  Next time it moves to the next column, and repeats the process.  This happens thousands of times a second, so for a human it will be instantaneous.  It should detect changes in less than a ms.  Nice!

I wish I had a snazzy video that I could show, but let’s be serious.  It would simply be a picture of the computer screen with one of the 64 ‘0’s changing to a ‘1’ when toggle the coin or tilt switch.  Certainly not worthy of a video.  Maybe this weekend I can make a video, but more than likely, that would be on SS3.


04/08/2017 – Pictures of the Teardown

After taking a whole bunch of pictures during the tear down, I suddenly realized I should probably show the pictures.  Dolly is a street level game, so it is simpler than many of the newer games that have multiple levels.

Here are all 31 pictures that I took.  I tend to take a single picture that shows the whole setup so I can refer back to it.  At that point, I remove plastics, then take a picture of each of the different areas of the playfield.  Finally, I take detail photos of anywhere that I think that I might get confused when reassembling.

As I take things apart, I put each section in a separate bag or bin so that I don’t have a huge bucket of parts that I need to know where they go.  Each bin or bag is marked with a location, so I can remember where everything goes.  It’s just that simple.

Here’s the photos:

This slideshow requires JavaScript.

Got the initial implementation of the switch matrix reader completed, but must be tested.  More on that tomorrow if I get some time.  Also, I’ll add some info on the cabinet work that I’ve been doing.  (The last photo in the slideshow shows the cabinet).

4/2/2017 – “Pull it down, tear it down”

I continue to enjoy listening to New Model Army, and as I was tearing down the playfield today, the song just kept running through my head.  Anyhow, back to pinball.

Hey, if I want to get this thing done by Pintastic, I better get my butt in gear.  Joe has been doing his part.  He has been working on rules, art, and even some toys for the playfield.  His pop bumper caps are spectacular.  (Ahhh, but I can’t show them to you because that would tell you what the retheme is, and if you search, you can figure it out, I’m not going to let the cat out of the box.)

This week, I started pondering the long lead items since it is about 3 months until Pintastic.  The longest lead item that I can think about is getting the vinyl artwork for the playfield printed out.  As of Friday, nothing was done on the playfield at all towards getting this retheme moving.  I decided this weekend was the time to tear down the playfield so I could get a good scan to Joe.  I’m going to be using the same process that I used on SharpeShooter 3 which is sand down to wood, apply white primer to the wood where I don’t want the wood to show through, vinyl overlay on the playfield, then finally three coats of auto clear.  I was happy with the results, and should be able to do a much better job this time since it is the second iteration.

On Saturday, I got a few hours to myself, so the tear down began.  Everything has to come off the top of the playfield so that I can get a good scan.  I’m using the HP4600 scanner that Joe actually bought for me a couple years back.  (It has gotten a ton of pinball use, and is a spectacular scanner for getting the job done.)  I just read that it is the same scanner that the Nightmare Before Christmas guy used to scan his playfield.  You really can’t beat the price at about $40.  (I did write up a blog post a while back of how to use it through virtual box and Windows XP if it needs to be supported on newer operating systems).

So basically the process is tear everything off the top of the playfield while taking a ton of pictures.  Every picture you take of the playfield will help you put it all back together so have your digital camera ready.

I tend to take a picture of the whole playfield, then remove the plastics, take another picture of the whole playfield, then zoom into sections of the playfield itself.  If you take enough pictures you can figure things out such as which posts are just screws, and which posts need to have the little nubbin on the top to hold a plastic.  It also helps to show you where all the rubbers should go (or maybe I should say where they were at before you started mucking with the game).

I break the playfield down into different sections, and put the hardware for each section in a plastic bag or a bin with a piece of paper marking where it is from.  If there are any difficult sections such as a gate piece of metal is above another piece of metal, I take individual pictures to highlight how it should go back together.  (When putting everything back together, I tend to print out the pictures so that I can quickly flip back and forth between them, or even have multiple pictures visible at once.  I just find that easier).

After removing everything from the top of the playfield, I go to the backside of the playfield and remove switches, targets, etc.  The screws that hold these in are also labeled individually in a bag.  The less things that are left as guess work, the better.

Last thing I did was remove the pop bumpers.  The pop bumpers where the only things that had to be desoldered.  When I get around to sanding the playfield, I will also have to remove the inline drop targets, but I can put that off for another day.

Since the playfield is now flat, scan row by row.  For this project, each row of the playfield was four individual scans (trying to overlap each of the scans about 30%).  In the end, I had five rows for the whole playfield.  Everything was scanned at 600 dpi.

Here is an example of an individual scan:

Full Size Scan

Dolly in all her glory

To stitch the scans together, I first stitch each of the rows individually.  I use the Microsoft Image Composite Editor (ICE) which is free and does a fantastic job.  Stitching the rows one at a time instead of stitching the whole image reduces the chance that it will warp and rotate the images.  I actually lay down a yardstick to try and get the rows to be coherent.  At that point I had five rows, which I finally stitched into a single scan of the playfield.  That last step takes a good amount of time.

Here are the rows after initial stitching (reduced size):


Here is the whole playfield (reduced size):


Not forgetting the plastics, I also scanned all of those in so that I could send those to Joe.  Three of those plastics were a little bit large so that I needed to stitch two pictures together to form a single plastic.

Here are the plastics (reduced size):

At 600 dpi, Joe should easily be able to figure out where the inserts are and such.  OK, I’m tired of typing, so gotta end this thing now.