Thread (6 messages) 6 messages, 2 authors, 2020-10-28

Re: Proper support for Saitek X36F joystick

From: Jiri Kosina <jikos@kernel.org>
Date: 2020-10-27 19:11:04
Also in: lkml

On Tue, 27 Oct 2020, Pavel Machek wrote:
Hi!

This is from 4.19, but I doubt this changed recently.

Saitek X36F+X35T combination is detected like this... in short one
hat, no switches, and lot of buttons.

In reality, combination has 4 four-way switches (hats?), 2 slider
switches (three positions) and lot less buttons. Sliders and 3 of 4
hats are detected as groups of buttons. Last hat is strange, I can't
see anything that corresponds to it on evtest, and as long as it is
pushed in any direction, all the other events stop. (It is also one
I'd like to use).

What needs to be done to get more useful mapping for userspace?
It wouldn't be the first device produced by Saitek that has completely 
bogus report descriptor.

The most straightforward way would be to let hid-saitek module claim the 
device, and fix the report descriptor (saitek_report_fixup()) before it's 
passed to hid parser so that it actually describes the events produced.

You can either patch individual bytes (that's what saitek_report_fixup() 
is currently doing for another device), or replace the whole descriptor 
completely (see e.g. hid-kye for inspiration how this is done).

-- 
Jiri Kosina
SUSE Labs
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help