libx52/libx52
nirenjan 627c1fb004 Use libusb hotplug API to automatically detect disconnection
Prior to this commit, the libx52_is_connected API was simply checking if
the device handle was non-NULL. However, this was insufficient, since
the device disconnection would not reset the handle, and was relying on
the daemon to manually disconnect.

The libusb hotplug API provides functionality to register a callback on
device insertion/removal. libx52 only registers for removal, and will
automatically disconnect the device on receiving the callback. This also
modifies libx52_is_connected to fallback to checking if the kernel
driver is active if the linked libusb does not support hotplug (unlikely).

Finally, this commit adds support for the new hotplug related functions
to the libusbx52 preload library. While the preload library doesn't
actually support hotplug, it is sufficient to pretend that it does.
2021-09-14 09:03:23 -07:00
..
Makefile.am Use libusb hotplug API to automatically detect disconnection 2021-09-14 09:03:23 -07:00
README.md Move libx52 to top level 2021-07-29 21:41:07 -07:00
libx52.h Move libx52 to top level 2021-07-29 21:41:07 -07:00
libx52.pc.in Fix Cflags and add libx52util.pc 2021-08-03 12:53:26 -07:00
x52_commands.h Move libx52 to top level 2021-07-29 21:41:07 -07:00
x52_common.h Use libusb hotplug API to automatically detect disconnection 2021-09-14 09:03:23 -07:00
x52_control.c Move libx52 to top level 2021-07-29 21:41:07 -07:00
x52_core.c Use libusb hotplug API to automatically detect disconnection 2021-09-14 09:03:23 -07:00
x52_date_time.c Move libx52 to top level 2021-07-29 21:41:07 -07:00
x52_mfd_led.c Move libx52 to top level 2021-07-29 21:41:07 -07:00
x52_strerror.c Move libx52 to top level 2021-07-29 21:41:07 -07:00
x52_stringify.c Fix stringification of libx52_led_state 2021-08-25 14:09:28 -07:00
x52_test_gen.py Move libx52 to top level 2021-07-29 21:41:07 -07:00
x52_tests.json Move libx52 to top level 2021-07-29 21:41:07 -07:00

README.md

X52 Pro MFD library

This is a library which communicates using libusb-1.0 with the Saitek X52 Pro HOTAS. The library provides several functions to control the LEDs and MFD of the above HOTAS.

Supported functions

  • Set the LED state of all LEDs
  • Write text to each of the MFD lines
  • Set the date/time on the MFD
  • Make the clutch and hat LEDs blink
  • Display the "SHIFT" indicator in the MFD

Note that when writing text to the MFD, the line length is limited to 16 characters. While you can pass a longer string, the library will only consider the first 16 characters for writing to the display.