This documentation is for an unreleased version of MPF!
This is the developer documentation for MPF 0.54, which is the “dev” (next) release of MPF that is a work-in-progress. Use the “Read the Docs” link in the lower left corner to view the developer docs for the version of MPF you’re using.
Implements a multi-axis accelerometer.
In modern machines, accelerometers can be used for tilt detection and to detect whether a machine is properly leveled.
The accelerometer device produces a data stream of readings which MPF converts to g-forces, and then events can be posted when the “hit” (or g-force) of an accelerometer exceeds a predefined threshold.
Accessing accelerometers in code
The device collection which contains the accelerometers in your machine is available via
self.machine.accelerometers. For example, to access one called “foo”, you would use
self.machine.accelerometers.foo. You can also access accelerometers in dictionary form, e.g.
You can also get devices by tag or hardware number. See the DeviceCollection documentation for details.
Methods & Attributes
Accelerometers have the following methods & attributes available. Note that methods & attributes inherited from base classes are not included here.
format_log_line(msg, context, error_no) → str¶
Return a formatted log line with log link and context.
get_level_xyz() → float¶
Return current 3D level.
get_level_xz() → float¶
Return current 2D x/z level.
get_level_yz() → float¶
Return current 2D y/z level.
Get the value of a placeholder.
raise_config_error(msg, error_no, *, context=None) → NoReturn¶
Raise a ConfigFileError exception.
Subscribe to an attribute.
update_acceleration(x: float, y: float, z: float) → None¶
Calculate acceleration based on readings from hardware.