Просмотр исходного кода

Don't use the HIDAPI driver with Backbone One PlayStation Edition Gen 2

This product doesn't appear to use the DualSense protocol. On Android this shows up as two interfaces that don't send reports that we can parse.

(cherry picked from commit a84dafd5b9352e32f10dc60179c9f6c2c7f8a2dc)
Sam Lantinga 1 день назад
Родитель
Сommit
33ea9c3e63
2 измененных файлов с 7 добавлено и 0 удалено
  1. 6 0
      src/joystick/hidapi/SDL_hidapi_ps5.c
  2. 1 0
      src/joystick/usb_ids.h

+ 6 - 0
src/joystick/hidapi/SDL_hidapi_ps5.c

@@ -298,6 +298,12 @@ static bool HIDAPI_DriverPS5_IsSupportedDevice(SDL_HIDAPI_Device *device, const
     Uint8 data[USB_PACKET_LENGTH];
     Uint8 data[USB_PACKET_LENGTH];
     int size;
     int size;
 
 
+    if (vendor_id == USB_VENDOR_BACKBONE &&
+        product_id == USB_PRODUCT_BACKBONE_ONE_PS5_V2) {
+        // This product doesn't appear to use the DualSense protocol
+        return false;
+    }
+
     if (type == SDL_GAMEPAD_TYPE_PS5) {
     if (type == SDL_GAMEPAD_TYPE_PS5) {
         return true;
         return true;
     }
     }

+ 1 - 0
src/joystick/usb_ids.h

@@ -79,6 +79,7 @@
 #define USB_PRODUCT_ASTRO_C40_XBOX360                     0x0024
 #define USB_PRODUCT_ASTRO_C40_XBOX360                     0x0024
 #define USB_PRODUCT_BACKBONE_ONE_IOS                      0x0103
 #define USB_PRODUCT_BACKBONE_ONE_IOS                      0x0103
 #define USB_PRODUCT_BACKBONE_ONE_IOS_PS5                  0x0104
 #define USB_PRODUCT_BACKBONE_ONE_IOS_PS5                  0x0104
+#define USB_PRODUCT_BACKBONE_ONE_PS5_V2                   0x0304
 #define USB_PRODUCT_BDA_XB1_CLASSIC                       0x581a
 #define USB_PRODUCT_BDA_XB1_CLASSIC                       0x581a
 #define USB_PRODUCT_BDA_XB1_FIGHTPAD                      0x791a
 #define USB_PRODUCT_BDA_XB1_FIGHTPAD                      0x791a
 #define USB_PRODUCT_BDA_XB1_SPECTRA_PRO                   0x592a
 #define USB_PRODUCT_BDA_XB1_SPECTRA_PRO                   0x592a