The stub libusb library used for testing writes the control request to a dump file. By default, this file is block-buffered, and on a typical Linux system, it waits until it receives about a page worth of data before flushing it to disk. This results in a delay in monitoring packets when running a debug program. This change makes the file line-buffered instead, which results in the debug output for every single packet getting flushed to disk without having to wait for a full page of data. |
||
---|---|---|
docs | ||
kernel_module | ||
lib | ||
man | ||
tests | ||
tools | ||
udev | ||
utils | ||
.gitignore | ||
.travis.yml | ||
.travis_build.sh | ||
AUTHORS | ||
ChangeLog.md | ||
LICENSE | ||
Makefile.am | ||
README.md | ||
autogen.sh | ||
configure.ac |
README.md
Saitek X52Pro joystick driver for Linux
This project adds a new driver for the Saitek/MadCatz X52 Pro flight control system. The X52 pro is a HOTAS (hand on throttle and stick) with 7 axes, 39 buttons, 1 hat and 1 thumbstick and a multi-function display which is programmable.
Currently, only Windows drivers are available from Saitek PLC, which led me to develop a new Linux driver which can program the MFD and the individual LEDs on the joystick. The standard usbhid driver is capable of reading the joystick, but it cannot control the MFD or LEDs.
Most of the extra functionality can be handled from userspace. See the individual folders for README information.
Building
Build has been tested on the following platforms:
- Ubuntu 12.04 LTS on amd64
- Ubuntu 14.04 LTS on amd64
- Ubuntu 16.04 LTS on amd64
- OS X 10.11.6 El Capitan
Prerequisites
You will need the following packages:
- automake
- autoconf
- libtool
- libusb-1.0-0-dev (Package name may vary across distributions)
- pkg-config
- python (2.6 or greater)
If you are on OSX, you can install the above packages using Homebrew
Installation
- Clone the repository
- Run autogen.sh
- Run configure; make and sudo make install.