Skip to content

Windows (sometimes) recognizing the controller in DS4Windows mode as a gamepad #90

@Kanuan

Description

@Kanuan

Summary

Since in DS4Windows Mode the controller is supposed to be remapped into a virtual controller by DS4Windows, to prevent the famous double-input issue the controller's HID descriptor was changed so Windows stopped recognizing it as a gamepad.

Some users are reporting that in the latest stable driver Windows still recognizes the controller in DS4Windows Mode as an actual gamepad.

Details

From the image below, Windows is ignoring the X, Y, Z, RZ axes and the T-Hat, though RX and RY as well as the other buttons are recognized as normal :

image

Looking at the HID descriptor, it seems as windows is ignoring everything before the usage page is refreshed:

image

Test

I wanted to confirm if the issue was being caused by windows recognizing the axes/buttons after the usage page was "refreshed" in the HID descriptor, so I replaced all gamepad related sections of the HID descriptor (all axes, buttons, t-hat) with vendor-defined padding:

image

And the result was that Windows still recognizes the controller as a gamepad, but now without any buttons/axes:

image

Final thoughts on the issue

I can only think that Windows got stuck identifying the controller as a gamepad, regardless to what the initial usage and usage page is defined on the HID Descriptor. I don't know how to further troubleshoot this, since I can't replicate this on my system.

Metadata

Metadata

Assignees

No one assigned

    Labels

    CoreCore/Common Driver TopicbugSomething isn't working

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions