Skip to content

Interacting with switches via 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, read the overview of how FSP works and how to connect first.

Switches on the FAST Platform are individually debounced and can be set up to report in multiple ways. Since each switch has its own set of debounce parameters issues such as shotgunning on sling shots can be fully addressed by changing a few parameters. The parameters that can be adjusted on a per switch basis are debounce time switch open, debounce time switch closed, and how the switch gets reported. FAST platforms that have a switch matrix also run the matrix through the debounce engine, so all switches act in the same way no matter where they are in the machine.

Switches can also be set up to report automatically when they change states. This is set up by using the CH: command and enabling verbose switch outputs. If this is enabled, whenever a switch changes state one of the following messages will be displayed:

  • /N:<Switch ID in ASCII HEX><CR> message for switch open

  • -N:<Switch ID in ASCII HEX><CR> message for switch closed

Examples:

-N:02<CR> = Switch 0x02 closed

/N:14<CR> = Switch 0x14 open

The commands to control and report the switches are:

  • SA: Report the switches is ASCII hex data format

  • SD: Report the switches in binary format

  • SL: Configure a switch

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 ?