Skip to content

The Mission Pinball Framework (MPF)

Open source software for powering real pinball machines!

The Mission Pinball Framework (MPF) is a free Python-based pinball software framework that's used to run real pinball machines. It's compatible with virtually all modern pinball controllers and machines, and it's the most feature complete pinball software environment you'll find.

MPF is a complete pinball software package which runs on a computer inside your pinball machine. (It can run on Windows, Mac, Linux, or Raspberry Pi.) MPF controls all the electronics in the machine, including the lights, the solenoids (the things that make the balls move), the DMD if your machine has one, the LCD if your machine has one, the switches, and the motors. MPF uses simple configuration files to control the game logic, sounds, videos, effects, and everything else you need to create the rules for your game, including modes, multiballs, ball saves, scoring, and more.

MPF has been around since 2014, and it's been used to power hundreds of homebrew pinball machines and a few commercially-released ones. It's created by volunteers in their spare time.

Join in!


  • Works with many modern pinball control systems, including FAST Pinball, CobraPin, P3-ROC, and many more.
  • Runs on Windows, Mac, Linux, and Raspberry Pi.
  • Supports many types of pinball machines, including solid state, EM, and custom homebrew machines.
  • Built-in support for many types of pinball mechs, including flippers, pop bumpers, slingshots, drop targets, spinners, and more. (See the complete list.)
  • Supports many types of pinball displays, including DMDs, LCDs, segments, and mechanical score reels.
  • Pinball logic built in for player management, game modes, multiballs, ball saves, tilt, shots, and more. (See the complete list.)
  • Build your game with simple configuration files. (But you can also mix in your own custom code too, use as much or little of the config files as you want.)
  • 100% open source and completely free to use.

See the Features page for a complete list of features.

Installation Instructions Read the Tutorial

Getting Started

What MPF is, how it works, how to install it, how to use it.


Pinball machines, control systems, and pinball mechs.

Game Programming

Media Controller(s)


See the Tools page for links to several tools that help you work with MPF, including the MPF Monitor, a visual utility that connects to a live running instance of MPF and shows you the stream of events, device state, player variables, etc.


Projects built on MPF


About MPF

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