Closed Black-Seraph closed 1 month ago
Sign me up for testing new features or enhancement
Sign me up for testing new features or enhancement
It will be a bit before any of this lands in Duo I'm afraid.
How will you handle vid pid duplicate serials or the Xbox dongle? Admittedly I know nothing how the Xbox dongle works for making game pad devices (do they even make vid/pid/sid entries you can match on?) . Example, I've written input support for applications with homebrew adapters that have the same serial. The work around was to use the device plug port to differentiate it
I think those duplicate pid or serials causes locking up xbox controls if using Duo's multiple instances.
I've looked into this a little further, and sadly, the UMDF-based filter drivers will not get us the result we want due to the limitations involved with them.
The UMDF-based virtual gamepad drivers do work, but gamepad support itself isn't our primary concern at the moment.
Sucks, but this wasn't the solution either.
Duo has two problems with gamepad support:
Issue number 1 could be solved by implementing a feature-equivalent UMDF-based input driver of our own, as UMDF-based drivers can be self-signed, unlike KMDF-based drivers, which cannot.
Issue number 2 could be solved by implementing a UMDF-based filter driver and building an extensive vendor + product ID list of known physical gamepads, like the input driver mentioned above, as long as we stay within the limitations of UMDF, we can self-sign the driver.
The vendor + product ID list is required because UMDF-based filter drivers aren't allowed to target device classes, but rather need to target devices directly.
I'm not entirely sure how doable the second part is yet, but I know for a fact the first part is as I just did a test-run on a Secure Boot & DSE-enabled test machine.