flycast icon indicating copy to clipboard operation
flycast copied to clipboard

[V2.2] [WINDOWS] no response when using XBOX controller with DS4 controller

Open Tartifless opened this issue 1 year ago • 4 comments

Please Note: This form is the minimum required information for submitting bugs.
Removing this form may lead to your issue being closed until it is completed.

Platform / OS / Hardware: Windows 11 PRO (genuine with key)

Github hash:

Hardware: INTEL 12th gen mobile + NVIDIA 3050 RTX + XBOX One S controller + dualshock 4 (both connected BT)

Description of the Issue Using flycast 2.2 public build. When using individually each controllers, they work fine and i can control all games without issues. Same happens when using 2 XBOX controllers. However, as soon as the dualshock is introduced in combination with one or both XBOX controllers, no inputs work anymore and the screen displays wrong controller names:

Case of 2 XBOX + 1 DS4: image

Case of 1 XBOX and 1 DS1: image

Working cases with only the 2 XBOX controllers: image

And with only the DS4: image

Debugging Steps Tested

  1. connected all 3 controllers and noticed that 2 PS4 controllers + 1 XBOX controller appeared Tried to perform mappings for all 3 lines with all 3 physical controllers : none responded

  2. close flycast and delet emu.cfg, restart with DS4 shut down Working correctly : both XBOX controllers are assigned to A and B ports and can be configured

  3. close flycast and delet emu.cfg, restart with 1 DS4 and 1 XBOX controller PS4 Controller appearing twice, tried to perform mappings for all 2 lines : none responded

  4. close flycast and delet emu.cfg, restart with only DS4 connected All working fine

Logs Gathered

No logs

Tartifless avatar Feb 08 '24 12:02 Tartifless

Please try with the latest master build since SDL has been upgraded a few times since v2.2.

flyinghead avatar Feb 08 '24 12:02 flyinghead

Downloaded last master : image

Same behaviour: image

Not sure the issue is with SDL, as the library supports PS4 controller since multiple versions.

Tartifless avatar Feb 08 '24 15:02 Tartifless

Made an additional test: image

With this, i am able to setup controller in port C, and it detects buttons of 2 controllers:

  • the DS4 (as SDL)
  • one of the 2 XBOX controllers (as dinput)

As you see : image

Here i have defined up on the DS4 and down on the XBOX controller

I think the index has issues, as SDL and dinput do not share the same indexes, the joystick instance messes up the devices. 2 devices merged into 1.

The device in port A is not configurable, on any of the controllers.

Tartifless avatar Feb 08 '24 15:02 Tartifless

Here are my device numbers: XBOX dark :

  • SDL index 0
  • dinput index 0

XBOX white :

  • SDL index 1
  • dinput index 2

DS4 :

  • SDL index 2
  • Dinput index 1

Tartifless avatar Feb 08 '24 15:02 Tartifless