Saitek X52/X52pro userspace driver for Unix/Linux
 
 
 
 
 
Go to file
nirenjan be1f7e0d5a Fix error handling in x52test
x52test used to assume that a positive return code indicated a signal
was received and a negative return code indicated an error in libx52.
However, libx52 was changed a while back to return only a positive error
code of type `libx52_error_code`.

This commit changes that assumption, so that:

* The first check is always against `LIBX52_SUCCESS`, to ensure that any
  change in the enumeration won't break the rest of the code.
* Tests terminated by a signal return the negated value of the signal,
  i.e. -15 is SIGTERM and -2 is SIGINT.
* Tests that fail within libx52 return a standard `libx52_error_code`.
* Error printing uses `libx52_strerror`.

Addresses #19.
2020-05-18 14:58:31 -07:00
docs Add hotplug support to libx52 2020-04-14 18:36:44 -07:00
kernel_module Add SPDX license identifiers in all files 2018-04-18 12:19:29 -07:00
lib Update Doxygen comments 2020-04-18 02:21:12 -07:00
m4 Generate pkg-config file for libx52 2020-04-16 22:10:48 -07:00
man Add Man pages in RONN format 2015-12-14 18:04:26 -08:00
tests Remove debugs from MFD test script 2020-03-31 23:22:04 -07:00
tools Retrieve hidraw file from command line 2015-11-28 10:06:38 -08:00
udev Add udev rules for making hidraw permissions 0644 2012-10-08 19:37:49 -07:00
utils Fix error handling in x52test 2020-05-18 14:58:31 -07:00
.gitignore Add build directory to gitignore 2020-05-18 14:23:08 -07:00
.travis.yml Disable trusty builds on Travis 2020-04-17 00:11:19 -07:00
.travis_build.sh Remove redundant make check from Travis build 2017-08-11 18:19:29 -07:00
AUTHORS Add license clarification and authors file 2016-12-27 13:13:37 -08:00
ChangeLog.md Update version and changelog for hotplug support 2020-04-14 18:38:12 -07:00
Doxyfile.in Update Doxygen comments 2020-04-18 02:21:12 -07:00
LICENSE Move license text to LICENSE file 2018-04-18 12:16:48 -07:00
Makefile.am Update Doxygen comments 2020-04-18 02:21:12 -07:00
README.md Disable trusty builds on Travis 2020-04-17 00:11:19 -07:00
autogen.sh Move pthread build logic to configure.ac 2020-04-15 17:31:46 -07:00
configure.ac Add Doxygen support 2020-04-18 01:35:57 -07:00

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 Status

Build has been tested on the following operating systems (x86-64 only):

  • Ubuntu 14.04 LTS
  • Ubuntu 16.04 LTS
  • Ubuntu 18.04 LTS
  • OS X 10.13.6

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

  1. Clone the repository
  2. Run autogen.sh
  3. Run configure; make and sudo make install.