I need it to get low level access to some PlayStation Dualsense controller features, such as adaptive triggers and setting colors.

UPDATE: The function is missing from the VTables likely due to vibe coding, but I found a workaround. Opening the device's pnpPath as a file will grant you evdev-like access to the device.

all 5 comments

sorted by: hot top controversial new old
[–] 2 points 9 months ago*

I know this doesn’t fully answer your exact question but have you considered this instead

https://github.com/microsoftconnect/GameInput

> GameInput is a functional superset of all legacy input APIs—XInput, DirectInput, Raw Input, Human Interface Device (HID), and WinRT APIs

I think OP is already talking about this API

  • source
  • [–] 1 point 9 months ago (3 children)

    Which language, OS, or environment?

  • source
  • hideshow 3 child comments
  • [–] [S] 1 point 9 months ago (2 children)

    It's part of the Windows GameInput API. It's C++/COM interface.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 9 months ago (1 child)

    Can't you use something more modern in C#? COM is a billion years old and it's the worst thing I've ever seen.

  • source
  • parent
  • hideshow 1 child comment
  • [–] [S] 1 point 9 months ago

    This is the newest input API for Windows. Apparently there's some C# binding, but it's still for the COM interfaces. Issue is, not everything is being documented in the official MS documentations.

  • source
  • parent