mortendynamite / g19daemon

Linux daemon for Logitech G19 Keyboard
GNU General Public License v3.0
19 stars 9 forks source link

Added support for 3D SpacePilot Pro #24

Closed jimduchek closed 1 year ago

jimduchek commented 1 year ago

This adds support for the 3Dconnexion SpacePilot Pro. It's essentially a 3D CAD controller with a G19 display attached. Please test with an actual G19 keyboard, as I may have broken something by switching from libusb_set_auto_detach_kernel_driver() to explicitly detaching and attaching only on the proper interface (in the case of the SpacePilot Pro, that's interface 0 -- it appears to be interface 1 on the G19?). This was necessary because it was detaching from both interfaces and breaking the 3D mouse interface.

In addition I notice the sample udev rules file was looking for both 046d:c228 and 046d:c229, but the code was explicitly only attaching to c229. I assume there is some other keyboard that's 046d:c228 -- if that is the case, the new G19DeviceType array ought to be updated with that too.

The structure here kind of precludes multiple G19-style devices, or multiple instances of g19daemon, but this was the quickest way to add 'out-of-the-box' support for a new single device.

jimmyd-be commented 1 year ago

I tested the chane and it looks like that the G-keys not working anymore. The display itself was still working

jimduchek commented 1 year ago

Ah. Let me see if I did anything obviously wrong (this thing doesn't have G Keys, only L Keys). Busy today but I'll try to push something new out tonight or tomorrow.

jimmyd-be commented 11 months ago

@jimduchek can you please take a look why this change broke it on Logitech G19?