Brenton Bostick
f361034ac3
fix typos
2025-07-27 08:10:03 -07:00
Sam Lantinga
72b7fd10b4
Fixed warning: 'break' will never be executed
2025-07-25 16:20:44 -07:00
mitchellcairns
4a30ee58ca
Implement SInput Device Namings ( #13391 )
2025-07-21 10:08:27 -07:00
mitchellcairns
34d9db3657
SInput Serial MAC Fix ( #13388 )
...
* Resolve MAC address Order
2025-07-18 08:08:24 -07:00
Mitch Cairns
46ea7aa80e
SInput Serial from MAC
2025-07-17 21:30:39 -07:00
Sam Lantinga
ad52ebf985
Fixed build
2025-07-17 20:56:41 -07:00
Sam Lantinga
e70ecb37c1
Implement the D-pad as a hat for SInput controllers
...
This lets games that use the joystick API handle the D-pad the same way as other controllers
2025-07-17 20:51:29 -07:00
Sam Lantinga
de20b731f2
Removed unnecessary cast
2025-07-17 19:32:29 -07:00
mitchellcairns
8e5fe0ea61
SInput Timestamp and Protocol Version ( #13371 )
...
* Implement Uint32 microseconds timestamp for IMU reporting instead of deltas
* Implement protocol version in feature request response
2025-07-16 10:12:38 -07:00
mitchellcairns
18eeaea054
Implement SInput Device Support ( #13343 )
...
This implements a new SDL HID driver for a format developed by Hand Held Legend for their gamepad devices called SInput
Devices that are supported by this change with well-defined mappings
GC Ultimate ( https://gcultimate.com )
ProGCC ( https://handheldlegend.com/products/progcc-kit-wireless-wired-bundle )
The SInput format is documented here: https://github.com/HandHeldLegend/SInput-HID
2025-07-15 18:35:47 -07:00
Sam Lantinga
a53eb5221b
Added support for the PDP REALMz Wireless Controller for Switch
2025-07-15 17:41:54 -07:00
Sam Lantinga
d53fcab609
Reordered the 8BitDo Pro 3 controller
2025-07-15 10:09:06 -07:00
8BitDo
3c04c88c6e
Add support for Pro3
...
Add support for Pro3
2025-07-15 03:26:08 -07:00
Andon M. Coleman
a07cf3ecdc
Allow 1 kHz sample rate for DualSense Edge over USB
...
DualSense Edge natively reports at 1 kHz for all connection types, but gyro sample rate was limited to 250 Hz for USB.
2025-07-14 10:02:19 -07:00
Sam Lantinga
afa27243df
Ignore sensor delta values that look like they're out of range
2025-06-26 11:10:21 -07:00
Sam Lantinga
8d5bf053f7
Fixed detecting 8BitDo sensor timestamp on older firmware
...
Also updated the reported sensor rate over USB for new firmware
2025-06-26 10:47:35 -07:00
Sam Lantinga
f40bf44928
Removed unnecessary include
2025-06-25 18:50:28 -07:00
8BitDo
6d3e8b749e
add 8BitDo Controller sensor_timestamp ( #13278 )
2025-06-25 18:49:43 -07:00
Vicki Pfau
8442d4f0f7
joystick: Add support Xbox Adaptive Controller
...
The Xbox Adaptive Controller reports the pressed guide button state as 2
instead of 1. This is contrary to the spec, but it's needed for the guide
button to work.
This also adds a bit more documentation on observed-but-not-known GUIDs.
2025-06-24 16:51:18 -07:00
Rémi Verschelde
db3a35e9bc
joystick: Fix MSVC errors C2099 with /fp:strict
2025-06-24 06:58:24 -07:00
mitchellcairns
796961acec
Resolve bug for calibration Nintendo Switch Pro Controller ( #13260 )
...
Resolves a bug which prevents the stored calibration data from loading, only allowing loading of factory-installed calibration data
2025-06-22 20:59:15 -07:00
Mitch Cairns
3a6f9e01f8
Fixed Nintendo Switch thumbstick calibration
2025-06-22 15:26:49 -07:00
Sam Lantinga
038a3806eb
Fixed Nintendo Switch Pro thumbstick calibration
...
Fixes https://github.com/libsdl-org/SDL/issues/13246
2025-06-21 19:55:05 -07:00
Sam Lantinga
d7939abf42
Use consistent style for pointer declarations and casts
2025-06-18 10:03:44 -07:00
Sam Lantinga
d6bae53341
Added support for an alternate version of the Vader 4 Pro
2025-06-17 08:07:12 -07:00
Sam Lantinga
b833c618a9
Improved reliability detecting FlyDigi Vader controllers
2025-06-16 11:07:50 -07:00
Aubrey Hesselgren
f5d1402c28
Flydigi Vader 4 Pro IMU rate correction ( #13215 )
...
Flydigi IMU rate now matches observed rate of packets in both dongle and wired connection.
Flydigi Vader 4 Pro IMU rate correction was set at a fixed 125hz. In actuality rate is 1000hz over dongle and 500hz when wired.
2025-06-13 22:29:19 -07:00
Aubrey Hesselgren
1e886c8a2f
8 bitdo polling rate corrections ( #13221 )
...
Gathered correct IMU polling rate in wired mode for good gyro synchronization.
Wireless: different models had different amounts of Bluetooth packet loss.
USB_PRODUCT_8BITDO_ULTIMATE2_WIRELESS: Solid 120hz over bluetooth (note: only appears via).
USB_PRODUCT_8BITDO_PRO_2_BT: Lossy - 80-90hz registered.
SB_PRODUCT_8BITDO_SN30_PRO_BT & USB_PRODUCT_8BITDO_SN30_PRO_BT: Very Lossy - 60-90hz registered
2025-06-13 22:25:31 -07:00
ceski
558a89fdb6
Read Switch controller gyro/accel sensitivity coeffs (SDL3)
...
These vary by controller, so using the stored values should improve the accuracy of the sensor data.
2025-06-13 12:18:05 -07:00
Sam Lantinga
e18a6313de
Added gyro support for the Flydigi Vader 3 Pro controller
2025-06-12 09:10:07 -07:00
Vicki Pfau
7dd5e765df
joystick: Report battery on GIP controllers
2025-06-05 18:34:22 -07:00
Vicki Pfau
c54a017f47
joystick: Clean up Elite Button handling
2025-06-05 18:34:22 -07:00
Vicki Pfau
559efd58e2
joystick: Add headset stub to GIP driver
2025-06-05 18:34:22 -07:00
Sam Lantinga
7457857304
Fixed input from the MayFlash GameCube adapter with version 7 firmware
2025-06-03 11:13:43 -07:00
Aubrey Hesselgren
a26e5f32e0
Gyro degrees per second is 2000 across all 8bitdo controllers ( #13147 )
2025-05-29 14:28:55 -07:00
Sam Lantinga
36936cbf37
Set the serial number to the Bluetooth MAC address for 8BitDo controllers
2025-05-28 12:18:27 -07:00
Sam Lantinga
8a2e2e75d1
Simplified loop logic
2025-05-27 08:47:32 -07:00
8BitDo
b4f7948410
Ensure that report 06 command reads normally
...
Ensure that report 06 command reads normally
2025-05-27 08:45:09 -07:00
Vicki Pfau
4cd889cb13
joystick: Several minor GIP fixes
...
This mostly fixes stylistic issues, but also fixes an issue with some
controllers where an erroneous check would clear the DLI flag, offsetting the
share button index so it wouldn't work.
2025-05-22 21:45:00 -07:00
Sam Lantinga
c9cf4c42e0
Improved HIDAPI support for Flydigi controllers
2025-05-22 15:36:38 -07:00
bakatrouble
354895d975
Add Flydigi VADER 4 Pro HIDAPI support ( #12874 )
2025-05-22 09:56:17 -07:00
Sam Lantinga
264eb8d440
Fixed the Bluetooth flag for the combined Joy-Con controller
2025-05-21 13:30:00 -07:00
Joe [ReRezd]
afd1e51023
Fix: GameCube controller adapter hotplug not working
...
SDL_PrivateJoystickAdded was called before setting the InstanceId in the adapters ctx->joysticks array. This would eventually broadcast the SDL_EVENT_JOYSTICK_ADDED event with the new InstanceId, if your program listens for the added events and opens joysticks at that point it would always fail because there would be no matching InstanceId in the ctx->joysticks array.
2025-05-19 08:24:40 -07:00
Vicki Pfau
cf62637261
joystick: Add support for Xbox One Chatpad attachment
2025-05-13 17:30:39 -07:00
Vicki Pfau
7b3bd8c538
joystick: Improve GIP metadata retry
...
This reduces the number of retries, since they almost never help, and always
attempts the fallback if metadata fails enough times.
2025-05-08 16:41:26 -07:00
Vicki Pfau
367cf9ba63
joystick: Always continue processing GIP packets
...
This loop breakout was originally from an attempt to parse coalesced packets.
Breaking out early does more harm than good, and no devices coalesce packets,
so this is unnecessary.
2025-05-08 16:41:26 -07:00
Vicki Pfau
955a49c883
joystick: Add quirk for no impulse vibration on the Spectra Pro
2025-05-08 16:41:26 -07:00
Vicki Pfau
82899501b5
joystick: Fix GIP fast ACK issue
...
By moving the message sending onto the main thread and adding a small timeout
we can now ensure the ACKs are sent fast enough to avoid the firmware bugs in
these controllers.
2025-05-08 16:41:26 -07:00
Vicki Pfau
9e0edea16f
joystick: Assume GIP gamepads have the LED command if no metadata is present
2025-05-08 16:41:26 -07:00
Vicki Pfau
9a96960728
joystick: Sort out GIP vendor messages into the supported interfaces
2025-05-08 16:41:26 -07:00