-
-
Notifications
You must be signed in to change notification settings - Fork 94
Make the controller in DS4 Mode hidden by default #59
Description
Related to #23
The issue
DS4 Mode presents the controller as a HID compatible Gamepad. Because of this, this device needs to be hidden with HidHide/HidGuardian, which adds complexity to the setup.
Proposed solution
Change DS4 Mode HID Descriptor so that:
- The Usage page is
Vendor-Defined - Usage is
0x01(Generic Desktop Control?)
This branch of DsHidMini has these changes implemented.
Making this changes makes the controller be presented as a vendor defined device, so it is mostly ignored by aplications. The usage needs to be 0x01, as setting it to 0x04 or 0x05 (Joystick and Gamepad respectively) still make the original controller detectable by some aplications.
Potential issues with the proposed solution
DS4Windows changes
DS4Windows only checks for devices if their usage is 0x04 or 0x05. Since the DS4 Mode usage will 0x01, 0x01 detection support needs to be implemented on DS4Windows side.
This branch of DS4Windows has the changes implemented.
DS4Windows does not detect the device if DS4 Mode is the default mode on driver installation
If DsHidMini's .inf file is altered so the default mode on installation is "4" (DS4 Mode), the device will not be picked by DS4Windows for unknown reasons. Changing to another mode and back to DS4 mode again will not fix the issue.
If the default mode on installation is any other and the mode is changed to DS4 Mode afterwards then DS4Windows will detect the device.