Skip to content

Understanding "Driver Modes" in the FAST Serial Protocol

FAST Serial Protocol: Overview & First Steps

This documentation section is about the FAST Serial Protocol (FSP) commands, which are the low-level commands a host computer sends to a FAST board. Most FAST Pinball makers do not need to know about these details, since the pinball game framework (such as the Mission Pinball Framework) handles this communication for you.

If you're writing your own game framework, we have a series of programming guides. Also, be sure to read the overview of how FSP works and how to connect first.

All drivers must be configured before they can be used. Configuring a driver is done with the DL: command (DN: command for Nanos). The DL: command is used to set the "mode" that the driver operates in. Mode options might be:

  • Disabled: Driver will not fire and will not respond to any commands to fire.
  • Pulse: Driver will pulse for a pre-set number of milliseconds when it receives a command to fire. This is used for things like ball ejects, drop target resets, etc.
  • Latched: Turn on, and stay on, until a command is received to turn the driver off. This is used for "long-hold" things, like diverters, gates, up/down posts, etc.
  • Autofire pulse: Pulses a driver whenever a switch is hit. Typically used for pop bumpers, slingshots, etc.
  • Etc.

This is not a full list of modes, rather it just shows a few examples of different modes to explain the concept. Each of these modes requires additional configuration parameters. For example, for the pulse mode, how long is the pulse? What power is used? For autofire drivers, which switch should trigger it? Is there a second switch that should cancel it? Etc.

Note that not all modes are valid on all controllers.

  • 00 Disabled
  • 10 Pulse
  • 12 Pulse + Kick
  • 18 Pulse + Hold
  • 20 Pulse + Hold w/ Cancel Switch
  • 25 System 11 A/C relay
  • 30 Delayed Pulse
  • 70 Long Pulse
  • 75 Pulse w/ Cancel Switch
  • 78 Pulse + Hold w/ Extension

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 the docs, please let me know!

You can email me at brian@fastpinball.com. I maintain this site in my spare time, so there might be a week or so delay if you email me.

If you have a more pressing need, reach out to us via Slack, or email Aaron Davis.

Thanks!

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