Skip to content

MPF config file reference: FAST Pinball hardware

This guide details Mission Pinball Framework (MPF) config file settings needed when working with FAST Pinball hardware. It only covers the FAST hardware-specific stuff and should be used alongside the MPF tutorial and MPF config reference from the Mission Pinball documentation.

If you are just getting started with FAST Pinball, there are other guides that will help you get up and running first, including:

MPF Config File Sections for FAST Pinball Hardware

Sample config file (Neuron Controller / MPF 0.56.1)

Here's a high-level sample config file which shows the new & updated FAST Pinball hardware related settings. (This config is a full MPF config and just shows the FAST-specific stuff.)

Click the (+) plus circle for notes and comments on that line.

fast_neuron_config.py
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#config_version=5
# This config is only valid for MPF 0.56.1

hardware:
    platform: fast #(1)!

fast:
  net:
    port: com3
    controller: neuron
    io_loop: # (2)!
            cab:
                model: FP-CAB-0001
                order: 1
            3208:
                model: FP-I/O-3208
                order: 2
            0804:
                model: FP-I/O-0804
                order: 3
            1616:
                model: FP-I/O-1616
                order: 4
    watchdog: 1s

  exp:
    port: com4
    boards: # (3)!
      playfield:
        model: FP-EXP-0071
        led_hz: 30
        led_fade_time: 100ms
      topper:
        model: FP-EXP-0081
        led_fade_time: 0
      neuron:
        model: FP-EXP-2000
        breakouts:
          - port: 1
            model: FP-PWR-0007

lights:
    shoot_again:
      number: playfield-1-1 #(4)!
    left_eye:
      number: topper-2-1 # (5)!
    right_eye:
      number: topper-2-2 # (6)!

servos:
    servo1:
        number: playfield-1 # (7)!
        platform_settings:
            min_us: 500
            home_us: 1500
            max_us: 2500
            max_runtime: 2s
    servo2:
        number: playfield-3 # (8)!

switches:
  left_flipper:
    number: cab-8 # (9)!
  right_flipper:
    number: cab-16 # (10)!
  plunger_lane:
    number: 3208-0 # (11)!

coils:
  trough_eject:
    number: 3208-0 # (12)!
  knocker:
    number: cab-7 # (13)!
  1. Required for all configs using FAST
  2. List of I/O boards. You can pick whatever name you want (for example, "cab" and "3208" below), and this name is how you refer to switches and drivers plugged into it. See the config file reference for details.
  3. Each entry here is a name (whatever name you want, "playfield", etc.) you give to each Expansion board. This name is how you refer to devices connected to it later in your configs.
  4. This LED is attached to the Expansion board you called "playfield" in the exp: section above, and this is Port 1, LED #1 in the chain.
  5. Expansion board you named "topper", LED Port 2, LED #1 in the chain.
  6. This is the next LED in the chain after the previous on, Expansion Board "topper", LED Port 2.
  7. "playfield" exp board, servo 1
  8. "playfield" exp board, servo 3
  9. I/O board called "cab" from above, switch 8
  10. I/O board called "cab" from above, switch 16
  11. I/O board called "3208" from above, switch 0
  12. I/O board called "3208", driver 0
  13. I/O board called "cab", driver 7

Documentation Feedback? Requests? Confused?

Hi! I'm Brian, and I'm responsible for the documentation at FAST Pinball. If you have any feedback, requests, corrections, ideas, or any other thoughts about this documentation, please let me know! You can email me at brian@fastpinball.com. Thanks!

N or > jump the next page, P or < for previous, search with S or ?