diff --git a/docs/guides/controller-autoconfiguration.md b/docs/guides/controller-autoconfiguration.md index a12f7e89..958b3d0e 100644 --- a/docs/guides/controller-autoconfiguration.md +++ b/docs/guides/controller-autoconfiguration.md @@ -287,9 +287,19 @@ This dual functionality ensures that RetroArch can correctly identify and apply Importantly, this name remains consistent across various controller drivers, such as udev, sdl2, and linuxraw, as specified in **Settings > Drivers > Controller**. -### Naming scheme for udev, and sdl2 +### sdl2 notes +SDL2 uses the [SDL2 Game controller community database](https://github.com/mdqinc/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt). -#### Example: Nintendo Switch Pro Controller on GNU/Linux +You can check it using [SDL2 Gamepad Mapper](https://gitlab.com/ryochan7/sdl2-gamepad-mapper/-/releases). + +#### Appimage issue +Currently, the [RetroArch Appimage package generates udev autoconfig file with sdl2 driver](https://github.com/hizzlekizzle/RetroArch-AppImage/issues/12). Therfore, use the Flatpak package in order to upload SDL2 autoconfig files. + +### udev + +#### Naming scheme for udev + +##### Example: Nintendo Switch Pro Controller on GNU/Linux The following table illustrates how the Device Index for the Nintendo Switch Pro Controller varies across different Linux kernel versions, along with its HID support and corresponding autoconfig file names. As a side-note, the notation "(default-off)" indicates that the configuration is disabled by default to avoid @@ -300,9 +310,9 @@ The following table illustrates how the Device Index for the Nintendo Switch Pro | 6.2.0 | Nintendo Switch Pro Controller | Yes | | | 6.8.0 | Nintendo Co., Ltd. Pro Controller | Yes | Nintendo Co.,Ltd. Pro Controller | -##### Configuration file examples +###### Configuration file examples -###### Pro Controller (default-off).cfg +####### Pro Controller (default-off).cfg ``` # This file uses the legacy Device Index "Pro Controller" (generated by RetroArch on Linux 5.15) # "(default-off)" was added to the file name to indicate that the autoconfig file is not active by default. See comments for input_vendor_id and input_product_id. @@ -314,20 +324,22 @@ input_device = "Pro Controller" # input_product_id = "8201" ``` -###### Nintendo Co.,Ltd. Pro Controller.cfg +####### Nintendo Co.,Ltd. Pro Controller.cfg ``` input_device = "Nintendo Co.,Ltd. Pro Controller" input_vendor_id = "1406" input_product_id = "8201" ``` -### Naming scheme for linuxraw (depends on multiple Device Indexes) +### linuxraw notes + +#### Naming scheme for linuxraw (depends on multiple Device Indexes) The linuxraw controller driver relies on the `input_device` variable in the autoconfig file generated by the Device Index (described below) and does not use the `input_vendor_id` or `input_product_id` variables in the autoconfig file. The Device Index may vary depending on the system version, particularly the Linux kernel version. To ensure compatibility, you must compare the Device Index across different Linux kernels and generate autoconfig files when they differ. The easiest way to do this is to run GNU/Linux distributions in live mode or as installed virtual machines. -#### Example: Nintendo Switch Pro Controller +##### Example: Nintendo Switch Pro Controller | Linux Kernel Version | HID Support | Device Index in RetroArch | |----------------------|-------------|-----------------------------------|