What is the P-ROC?
The P-ROC (Pinball - Remote Operations Controller) is a circuit board typically used to interface a computer to a pinball machine, thereby enabling custom control of that machine. The P-ROC is compatible with WPC, WPC-95, Stern Whitestar, and Stern SAM driver boards. It can therefore be used to replace the CPU board in those machines for re-theme or new software development.
What is the P3-ROC?
The P3-ROC is another circuit board typically used to interface a computer to a pinball machine. The P3-ROC is typically used along with SW-16 and PDB Driver Boards to control custom pinball machines.
Why would somebody want to connect a PC to a pinball machine?
Pinball machines do nothing without something to control the devices. Traditional pinball machines have embedded control systems usually including a microcontroller. To use one of those systems, one needs intimate knowledge of the system and the ability to program in low level languages like C or even assembly.
Using a PC to control a pinball machine makes the designer's and programmer's jobs much easier, allowing them to make use of commonly available computer components and popular and powerful software libraries, as well as programming the machine in language they choose, such as Python, C#, C/C++, java, etc.
How does the P-ROC connect to a pinball machine?
The P-ROC is loaded with connectors that allow for direct connection to various types of machines. When using a P-ROC in a custom-built machine, it might make sense to connect the direct switch inputs and direct driver outputs directly to the machine's switches and driver circuits. Alternatively, the P-ROC can connect to the power driver boards (for lamp and coil driving), flipper boards, and switch matrixes on the following generations of machines:
- Stern Whitestar
- Stern S.A.M.
Any machine with interfaces compatible with those systems can be controlled by a P-ROC.
How does the P3-ROC connect to a pinball machine?
The P3-ROC connects to SW-16 boards through a 2-wire serial cable, and the SW-16 boards connect directly to the pinball machine's switches. It also connects to PDB Driver Boards through a separate 2-wire serial cable, and the PDB Driver Boards connect directly to machine features like coils, motors, magnets, lamps, LEDs, etc.
How does the P-ROC or P3-ROC connect to a PC?
Do I need a special driver on my PC to talk to the P-ROC or P3-ROC over USB?
This primarily depends on your operating systems:
Windows: you'll need to install the D2XX driver from FTDI. Certain open-source P-ROC software projects may include the D2XX. See the P-ROC software page and associated links for more information. There are many libraries and utilities that others have developed to make installed a P-ROC or P3-ROC a relatively painless process.
Linux/Mac: libFTDI/libUSB libraries can be linked directly into the application. If you're using an existing application, it probably includes USB support.
Is the P-ROC/P3-ROC simply a bus-translation devices allowing a PC to interface to the pinball machine circuits?
It's MUCH more than that. It's built around an FPGA that contains logic to control the features on a pinball machine. The FPGA is highly configurable and can automatically perform the real-time functions required to control a machine. Once a PC application tells the FPGA what to do, the board performs those functions automatically. Tasks include:
- Switch scanning at configurable intervals
- Output driving (for coils/lamps/leds/motors/etc)
- DMD control (P-ROC only)
- Accelerometer monitoring (P3-ROC only)
Can the P-ROC/P3-ROC play audio through pinball machine cabinet speakers?
The P-ROC doesn't process any audio. That' s the PC's job. Connecting the PC's line-out to a WPC / WPC-95 sound board is fairly straightforward but does require the use of a soldering iron. Instructions will be posted soon. Other solutions are also being considered.
Can I use the P-ROC/P3-ROC for applications other than pinball machine control?
Of course! The P-ROC/P3-ROC is really just a circuit board with an FPGA (configurable logic), a few supporting circuits, and a bunch of connectors. It could be used to control any number of devices.
How do I get one?
P3-ROC Purchase Page (coming soon)
Is the P-ROC/P3-ROC RoHS compliant?