This is the documentation the latest work-in-progress version of MPF!

This is the documentation for MPF 0.56, which is the “dev” (next) release of MPF that is a work-in-progress. This is probably ok, and means you’ll be on the latest, cutting-edge version of MPF.

However, if you want a more stable version, select the v:stable version from the lower-left corner of this page, which is the most recent version that is not getting new updates.

If you are new to MPF, we have recently rewritten the installation process which only applies to this “latest” 0.56, so you probably want to stay here because the prior installation process doesn’t work on the latest OS and Python versions.

Connecting FAST to your Computer

This page is about connecting the FAST system to your computer. It roughly covers connecting the bus between the nodes. For electronic details see the FAST section in the pinballmakers.com Wiki.


Connect your FAST NANO controller to your PC using USB.


Then connect the OUT port of your NANO to the IN port of your first node board. Consequently, connect the OUT port of the first node to the IN port of your second board. Connect the OUT port of the last board back to the IN port of your NANO.

The number: setting for each driver/switch is its board’s position number in the chain, then the dash, then the driver/switch number. Note that the position number starts with zero, so the first IO board in the chain is 0, the second is 1, etc.

Node boards

Fast offers three different types of node boards:

0804 - 8 Switches, 4 Drivers


1616 - 16 Switches, 16 Drivers


3208 - 32 Switches, 08 Drivers


Verify Connected Boards via mpf hardware scan

You can run mpf hardware scan to see all connected node boards:

$ mpf hardware scan

NET CPU: NET FP-CPU-002-1 01.03
RGB CPU: RGB FP-CPU-002-1 00.89
DMD CPU: DMD FP-CPU-002-1 00.88

Board 0 - Model: FP-I/O-3208-2    Firmware: 01.00 Switches: 32 Drivers: 8
Board 1 - Model: FP-I/O-0804-1    Firmware: 01.00 Switches: 8 Drivers: 4
Board 2 - Model: FP-I/O-1616-2    Firmware: 01.00 Switches: 16 Drivers: 16
Board 3 - Model: FP-I/O-1616-2    Firmware: 01.00 Switches: 16 Drivers: 16

If your boards do not show up checkout our FAST troubleshooting guide.

On Linux: Add udev rules to ensure persistent device names

If you have more than one ttyUSB device connected to your PC (e.g. the FAST Nano and a FAST DMD) you can assign a name to your ports based on the USB port they are connected to.

First identify the port of your FAST hardware. Usually it should be /dev/ttyUSB0 or /dev/ttyUSB5.

Then run udevadm info on your port:

udevadm info /dev/ttyUSB0

This will show you the DEVPATH. Now replace the last part ttyUSBX with an asterisk and add an udev rules like this in /etc/udev/rules.d/fast.rules:

SUBSYSTEM=="tty", ACTION=="add", DEVPATH=="/devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.1/*", SYMLINK+="ttyNET", GROUP="adm", MODE="0660"

After a reboot you should get a /dev/ttyNET device if you connect a FAST device to that specific USB port. You can use that port in your config.

What if it did not work?

Have a look at our FAST troubleshooting guide.