libx52/libx52
nirenjan 1a02ad22d9 Handle libusb events when checking if device is connected
libusb requires the application to call one of the
`libusb_handle_events` functions in order for hotplug events to actually
get dispatched. We don't need to wait for any timeout, so we use a
default timeout of 0, which should process any pending events, and then
return immediately.

A test of repeatedly disconnecting and reconnecting a virtual device
using USBIP was done, and no crashes of the daemon were observed.

Github-Issue: https://github.com/nirenjan/libx52/issues/43
2022-08-06 16:49:28 -07:00
..
Makefile.am Fix Makefile to build on alternative make implementations 2021-10-12 12:10:36 -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 Handle libusb events when checking if device is connected 2022-08-06 16:49:28 -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.