Skip to content

hardware:

This is a config file reference. Click for instructions.

This page is reference material which explains every setting and option for this section of an MPF yaml config file. See the instructions for config files for formatting and other details. See our guide to config file examples for more examples of real configs in action.

Valid in
machine config files YES ✅
mode config files NO 🚫

The hardware: section of your machine config file is where you configure the options for the physical hardware controller boards that MPF will use.

If you intend to use MPF with physical hardware, at a minimum you'll have a platform: and driverboards: section in your machine config, like this:

hardware:
  platform: fast
  driverboards: fast

Device-specific defaults

The following optional settings can be used to set default platforms for a specific class of devices. Note that virtual and smart_virtual are valid options for all of these, though they are not included in the lists below. Also note that those lists are not exhaustive.

Note

The list of platforms is incomplete here. See the MPF compatible control systems / hardware for details which platforms are supported by MPF.

Optional settings

The following sections are optional in the hardware: section of your config. (If you don't include them, the default will be used).

accelerometers:

List of one (or more) values, each is a type: string. Default: default

See DMD Platforms in MPF for supported platforms.

coils:

List of one (or more) values, each is a type: string. Default: default

For instance:

  • p_roc
  • p3_roc
  • fast
  • opp
  • apc
  • snux

Almost all platforms in MPF compatible control systems / hardware are supported here.

dmd:

List of one (or more) values, each is a type: string. Default: default

See DMD Platforms in MPF for supported platforms.

driverboards:

Single value, type: string. Defaults to empty.

Specifies the default type of driver boards you're using. If you have a homebrew machine, this will probably match your platform. If you're using an existing machine, then this will be whatever type of driverboard is installed in the machine.

  • pdb P-ROC Driver Boards, PD-16, PD-8x8, etc.)
  • fast FAST IO boards (0804, 1616, 3208, etc.)
  • opp OPP wing boards
  • wpc95 Williams WPC-95
  • wpc Williams WPC
  • wpcAlphaNumeric Williams WPC with alphanumeric 14-pin connected segmented display
  • sternSAM Stern SAM
  • sternWhitestar Stern Whitestar

hardware_sound_system:

List of one (or more) values, each is a type: string. Default: default

See MPF compatible control systems / hardware for supported platforms.

i2c:

List of one (or more) values, each is a type: string. Default: default

See I2C Platforms in MPF for supported platforms.

lights:

List of one (or more) values, each is a type: string. Default: default

Almost all platforms in MPF compatible control systems / hardware are supported here.

platform:

List of one (or more) values, each is a type: string. Default: virtual

Specifies the default platform that will be used by all devices in the config. We say this is the "default" platform, because it's possible to use more than one platform at time. (Maybe you use a P-ROC for coils and switches and a FadeCandy for RGB LEDs, etc.) See the Mixing-and-Matching hardware platforms for more details on this.

See MPF compatible control systems / hardware for a complete list.

rgb_dmd:

List of one (or more) values, each is a type: string. Default: default

See DMD Platforms in MPF for supported platforms.

segment_displays:

List of one (or more) values, each is a type: string. Default: default

See Segment Display Platforms in MPF for supported platforms.

servo_controllers:

List of one (or more) values, each is a type: string. Default: default

See Servo Platforms in MPF for supported platforms.

stepper_controllers:

List of one (or more) values, each is a type: string. Default: default

See Stepper Platforms in MPF for supported platforms.

switches:

List of one (or more) values, each is a type: string. Default: default

Almost all platforms in MPF compatible control systems / hardware are supported here.


Something missing or wrong? You can fix it!

This website is edited by people like you! Is something wrong or missing? Is something out of date, or can you explain it better?

Please help us! You can fix it yourself and be an official "open source" contributor!

It's easy! See our Beginner's guide to editing the docs.

Page navigation via the keyboard: < >

You can navigate this site via the keyboard. There are two modes:

General navigation, when search is not focused:

  • F , S , / : open search dialog
  • P , , : go to previous page
  • N , . : go to next page

While using the search function:

  • Down , Up : select next / previous result
  • Esc , Tab : close search
  • Enter : go to highlighted page in the results