We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 5177

Summary: [Patch] Add gamecontrollerdb entry for 'Xbox Controller S' (Linux)
Product: SDL Reporter: Matt Borgerson <contact>
Component: joystickAssignee: Sam Lantinga <slouken>
Status: NEW --- QA Contact: Sam Lantinga <slouken>
Severity: normal    
Priority: P2 CC: dimitriy.ryazantcev, sezeroz, vwcjtblat
Version: HG 2.1Keywords: target-2.0.16
Hardware: x86_64   
OS: Linux   
Attachments: Patch to add new gamecontrollerdb entry for Xbox Controller S

Description Matt Borgerson 2020-06-09 03:52:52 UTC
Created attachment 4375 [details]
Patch to add new gamecontrollerdb entry for Xbox Controller S

This patch adds a new entry to the gamecontrollerdb for the GUID which my original Microsoft Xbox Controller S presents as. My particular device version (bcdDevice) is 1.20. I've created this mapping using the controllermap utility, and it mimics how the other original Xbox controllers are mapped. I've tested this change locally against my SDL2-based application and it works as expected.

As a side note, the xpad driver claims the name for this particular device should be called 'Microsoft X-Box pad v2 (US)', however I've instead opted to change the name in this file to reflect what's actually printed on the controller label: 'Microsoft Xbox Controller S'. A follow-up patch should also update the other 'X-Box pad' entries to more closely reflect Xbox branding.
Comment 1 Dimitriy Ryazantcev 2021-01-25 11:45:05 UTC
@Matt Borgerson what is part number printed on the back of your controller?
Comment 2 Matt Borgerson 2021-02-04 00:09:28 UTC
(In reply to Dimitriy Ryazantcev from comment #1)
> @Matt Borgerson what is part number printed on the back of your controller?

The part number for the controller mentioned in this patch is X08-69873. This patch provides the missing entry for `bcdDevice` version 1.20, which is used to encode a portion of the controller GUID.

I also checked three other 'Controller S' variants that I own (one of which has identical part number of X08-69873), and all three have unique part numbers among them but have the same `bcdDevice` 1.21; because the 1.21 variant is in the database already, these three work as expected.