# FlippR Driver This is a driver written to control Zaccaria pinball machines from the 2nd Generation. It controls the hardware that can be found in the [[flippr-circuit|https://gitlab.rhetenor.de/rhetenor/flippr-circuit]] repository. An example game implementation for the Zaccaria Pinball Champ '82 can be found at [[flippr-game|https://gitlab.rhetenor.de/rhetenor/flippr-game]]. ## Build Instructions By default a static library gets build together with a networking target which enables communication over a UNIX Socket, for possible games. ### Dependencies * wiringPi ### Build To build the flippr-driver library run the following commands: ```sh1 $ cd flippr-code/FlippR-Driver/build $ cmake .. $ make ``` This will create you the static-library file: _flippr-code/FlippR-Driver/bin/libFlippR-Driver.a_ The library uses wiringPi Pin numbering important for the config files We added a script /usr/bin/reset_flippr this can be found in the repo and must be chosen in /etc/rc.local. It prevents the solenois from burning! #### Build Options * `-DCROSS_COMPILE` Cross compile for raspberry pi. Default: Off * `-DBUILD_SHARED_LIB` Build a shared library. Default: Off * `-DENABLE_TESTING` Enables Tests after build. Default: On * `-DBUILD_NETWORKING` Builds the networking target binary. Default: On * `-DBUILD_CLI` Build a basic TUI to control the flipper by hand. Default: Off