Closed mayanksuman closed 3 years ago
Hi Mayank, well the device does send key events. Like I mentioned before, if you use the USB Receiver on a Linux device level it is actually detected as 2 devices. One Mouse, one keyboard. And currently Projecteur just ignores devices without Relative Mouse events...
Refactoring device handling, will be part of 0.8 development, so proper key mapping can be done.
Hi Jahn,
Just a clarification. Are you talking about 'hold' events? There are two events from each of Next and Back button. One for tap and other for hold.
I tried hidapi-testgui, but did not get any input from device for hold events.
Ah yeah, sorry for that, misread your text. So I guess even on Windows there is no special "hold" event - but rather the software just detects if a button was pressed for a long enough time. So also Projecteur will need to implement it by itself. But as long as we can get a Button Press and Button Release it is possible.
But as long as we can get a Button Press and Button Release it is possible.
We are not getting the same on Linux. That's why, I guess that official software sends some usb packets to device so that device starts to communicate those events.
Ah alright, how did you check these events on Windows? Wireshark?
Yes. By two different methods:
I see a lot of repeated messages after 136 usb package (number of package sent before me making any selection). Most of these messages are 20 byte long. USBLog20.zip
I guess the Logitech Software does a lot settings (like the vibration triggering and more) via USB, and also a lot of checking the device status regularly and whatnot... With that in mind, of course you will not get the same (USB traffic) on Linux since there it is only registered as a HID device, that uses the kernel hid drivers. I might be wrong but I don't think that the device will actually send a long press event on Windows either, but that is just realized with the Logitech Software/Driver on Windows. Or did you record a special long press event with Wireshark after executing a long press on the device?
Or did you record a special long press event with Wireshark after executing a long press on the device?
It is not only a pair of Button Press and Button Release event. I have seen a lot of traffic emanating from device when keys (Next or Back) are long pressed, provided the device is already configured by the official software.
The device should send not only send Button Press and Button Release event but also other data like mouse movement etc., which might be useful for scroll operation (an option under long press button mapping in official software).
Yes okay, then only (tedious) reverse engineering will help if the same features as in the Logitech Software are needed.
Before I found out the vibration message myself, I asked the Logitech support via email for help on it - Never got an answer - I guess they are not too eager to share that information :grinning:
The device by default do not seem to send any event on either of Next or Back hold event.
I guess on windows official software do some kind of initialization of device and then the device starts to send such events.
However, I am not able to find the required usb packets.