The P-ROC is a drop-in board that replaces the CPU board for pinballs. It connects to your computer and allows you to control the features (solenoids, lamps, DMD, etc) of the machine yourself. Williams WPC is supported (amongst others), which is what Doctor Who is. It turns out it is pretty trivial to install, which is great!
First, let’s look at Doctor Who before making any modifications. The main things to see here are the CPU board on the lower left (the one with the three Duracell AA batteries), and the power driver board on the lower right. Note as well that the DMD (not visible, below the power driver board) is connected to the PCB at the top right via a thin ribbon cable.
I took note of all connectors that were connected on the CPU board. These connectors will need to be transferred to the appropriate location on the P-ROC board. I then disconnected everything from the WPC CPU board, and pulled it from the machine. Here is the stock WPC CPU board (left) next to the P-ROC (right).
My P-ROC came on a mounting plate with holes in the exact same spot as the holes on the WPC CPU board, which makes it trivial to mount back into the backbox. As you can see by comparing the two boards above, the P-ROC has many more plugs for connectors than the WPC CPU board. This is because the P-ROC supports more than just WPC machines. Many plugs end up un-used on the P-ROC depending on which configuration you are using.
I then used the P-ROC connector mapping document to re-connect all the connectors that were originally going to the WPC CPU board to the appropriate P-ROC connector. One thing to take note here is that there are a couple connectors that originally did not connect to the WPC CPU board that need to be transferred to the P-ROC. These are the fliptronics connectors (originally going to the fliptronics board) and the DMD signal ribbon cable (originally going to the DMD driver board). Here is the backbox again with everything connected back up to the P-ROC:
Note now how the thin DMD ribbon cable is going up to the P-ROC board in the lower left. I double-checked that all the connectors were in the proper place, then powered on the machine to see what would happen. Success! The letters “P-ROC” appeared on the DMD display. Finally, I connected the P-ROC board to my computer via USB. At this point I was able to run the P-ROC test program and start playing with the C API. With this, I can write software to control all the solenoids and lamps, and read switch states! Very cool. It didn’t take long that I had a very simple program running that would feed me a new ball when pressing the “Start” button, shoot the ball when pressing the ball launcher, activate the Tardis popper when the ball triggered its opto. The pop bumpers all worked and the flippers too! 🙂 Note: Just make sure when using the P-ROC test program that your sample YAML file is set to the proper type of machine (in my case, WPC).