Skip to content

AM: Set the Audio Mode

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.

The AM: command is used to set the audio mode of the FAST Audio Interface Board. It controls how the amplifiers are enabled and how the system handles switching between amps. Once configured, the audio system handles headphone insertion / removal behavior automatically. This greatly simplifies the how the pinball software needs to monitor the audio system. (However, this feature can be disabled so all audio functions can be controlled if needed.)

Command Syntax

AM:<DATA><CR>

The <DATA> field for this command is a bit mask. The bits are as follows:

AUDIO_MAIN_ENA_MASK           00000001
AUDIO_SUB_ENA_MASK            00000010
AUDIO_HEADPHONE_MASK          00001100
AUDIO_HEADPHONE_MODE_MUTE   00000000
AUDIO_HEADPHONE_MODE_NORM   00000100
AUDIO_HEADPHONE_MODE_DUCK   00001000
AUDIO_HEADPHONE_MODE_LINE   00001100

Bit 0 enables the main left/right amplifier Bit 1 enables the subwoofer amplifier Bits 2 and 3 control the headphone behavior Bits 4-7 are currently unused and should be set to 0 to allow for future updates

Combine the bits above to form a byte and send that as the <DATA> field for the command.

For example, the value 0x0b would be the binary value 00001011. In this example the Main and Sub Amplifiers are enabled, and the Headphone mode is set to AUDIO_HEADPHONE_MODE_DUCK.

The return value is the same as what was passed in. The command AM:0B<CR> will return AM:0B<CR>

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 ?