Skip to content

[IMPORTANT] Documented that input_vendor_id, and input_product_id are used by udev #16904

Closed
@davidhedlund

Description

@davidhedlund

Description

Until this issue has been solved it will be impossible to duplicate files and modify the input_device, to make controllers compatible with linuxraw, or udev for with multiple Linux kernel versions, or BlueTooth/USB:

In RetroArch, the linuxraw and udev drivers rely on input_device instead of input_vendor_id and input_product_id. These drivers automatically select the autoconfig file that matches the name used by the active Linux kernel.

However, when using udev, RetroArch still generates input_vendor_id and input_product_id, even though they aren't necessary. This behavior is not present in linuxraw. The issue with udev creates the impression that users need to comment or uncomment these IDs to choose which udev autoconfig file to use, especially when multiple autoconfig files are available—a common scenario for both non-HID and HID autoconfig files.

Expected behavior

The configuration should be as follows:

input_driver = "udev"
input_device = "Pro Controller"

Also, input_driver and input_device should not be required by PR checks for udev (they are not required by linuxraw)

image

Actual behavior

udev: The configuration currently includes unnecessary vendor and product IDs:

input_driver = "udev"
input_device = "Pro Controller"
input_vendor_id = "1406"
input_product_id = "8201"

linuxraw

input_driver = "linuxraw"
input_device = "Pro Controller"

Steps to reproduce the bug

  • Change the controller profile directory.
  • Navigate to Settings -> Drivers -> Controller, and select "udev".
  • Restart RetroArch to apply the new setting.
  • Go to Settings -> Input -> RetroPad Binds -> Port 1 Controls, and click on "Save Controller Profile".
  • Repeat step 1-3 but select "linuxraw" in step 1

Todo list

After resolving the issue, please remove input_driver and input_device from the following autoconfig files that I am maintaining:

  • DualSense
  • Nintendo Switch Pro Controller
  • Nintendo Switch Pro Controller (non-HID)
  • DualShock 4 v2

Newly created PRs that can be used to diagnose this issue:

Version/Commit

  • RetroArch: 1.19.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions