Re: Proper support for Saitek X36F joystick

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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).
> 
> Thank you... replacing whole descriptors is rather easy.
> 
> Coming up with descriptors that works ... not so :-(. I can replace
> descriptor with equivalent one, but things get horribly confused as
> soon as I really try to change anything.

So no, I can't even replace it with equivalent one. Perhaps hrdc got
decompilation wrong, or I'm doing something else wrong.

Best regards,
								Pavel
-- 
http://www.livejournal.com/~pavelmachek

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux