Sam Lantinga
ec19f1e12f
Use Uint32 instead of unsigned int for descriptor values
2025-12-12 13:02:39 -08:00
Sam Lantinga
71be323973
Updated Xbox HIDAPI descriptor handling for alternate layout
...
Fixes https://github.com/libsdl-org/SDL/issues/14597
2025-12-12 13:02:39 -08:00
Sam Lantinga
450a2cb5e4
Added support for parsing the Xbox report descriptor
...
This gives us more robust handling of Bluetooth Xbox controllers which may vary the report format between firmware versions.
Firmware versions tested:
Xbox One S: 3.1.1, 4.8.1923, 5.13.3143
Xbox One S/X: 5.11.3118, 5.23.6
Xbox Elite Series 2: 5.22.16, 5.23.6
Fixes https://github.com/libsdl-org/SDL/issues/14597
2025-12-10 10:49:39 -08:00
Sam Lantinga
ef416e84a1
Use SDL_LogDebug() for dumping HID packets
2025-12-10 10:49:39 -08:00
Sam Lantinga
22decf4783
Fixed some clang thread-safety warnings
2025-12-02 01:11:38 -08:00
Sam Lantinga
74653b3cd5
Send the normal sensor data for the right Joy-Con controller in combined mode
2025-11-25 10:38:42 -08:00
Sam Lantinga
55a566a6b4
Steam expects the gyro data to come before the accelerometer data
2025-11-24 18:04:46 -08:00
Sam Lantinga
a9a24ac000
Fixed the KingKong2 PRO Controller failing to initialize over Bluetooth
2025-11-20 09:24:07 -08:00
Sam Lantinga
61bf7087f5
Fixed build warnings with Visual Studio
2025-11-19 17:02:33 -08:00
Sam Lantinga
9f444b3981
Fixed initializing EVORETRO GameCube adapters
...
The HID device needs to be closed while enabling input reports over USB
2025-11-19 16:11:18 -08:00
Sam Lantinga
4931c675ab
Fixed warning C4127 (conditional expression is constant) in Visual Studio
2025-11-17 16:06:58 -08:00
Sam Lantinga
dccf486a0a
Fixed potential infinite recursion opening a Steam Controller
...
This can happen if the controller is opened from an event watcher when the controller is connected.
2025-11-14 13:44:02 -08:00
Vicki Pfau
9fd3dbfc42
switch2: Remove some unneeded init commands
...
These commands seem to be queries the console sends, not setup
2025-11-13 20:46:46 -08:00
Vicki Pfau
f0d4aca03d
switch2: Bring up IMU support
2025-11-13 20:46:46 -08:00
Vicki Pfau
ae6cdea0fa
switch2: Refactor and clean up rumble code a bit
2025-11-13 20:46:46 -08:00
Sam Lantinga
e1af623631
Fixed Steam Deck sensor timings
2025-11-12 11:36:37 -08:00
Sam Lantinga
1998b65045
Added support for the new Steam Controller
2025-11-12 11:32:32 -08:00
Sam Lantinga
9a19cc8323
Fixed unaligned load in Xbox HIDAPI driver
2025-11-07 10:37:58 -08:00
Sam Lantinga
f211a3bb69
Fixed initial rumble on the 8BitDo 64 Bluetooth Controller
2025-11-07 10:18:49 -08:00
Sam Lantinga
c94da8977d
Validate SPI read command in the Nintendo Switch HIDAPI driver
2025-11-05 17:34:22 -08:00
Sam Lantinga
9a1745f2c8
Fixed unaligned access in the Nintendo Switch HIDAPI driver
2025-11-05 17:08:22 -08:00
Sam Lantinga
6493be9eea
Removed SDL_AUTO_ENABLE_ENHANCED_FLYDIGI
2025-11-03 08:20:41 -08:00
Sam Lantinga
889e4787d6
Clarify when we want to auto-enable Apex 5 enhanced functionality
2025-11-02 11:14:41 -08:00
Sam Lantinga
eb87a36940
Fixed the right touchpad calculation for the BLE Steam Controller
...
Fixes https://github.com/libsdl-org/SDL/issues/14368
2025-11-02 08:31:37 -08:00
Sam Lantinga
a82e8a701d
Allow dynamically switching mode of the Apex 5 controller
...
The controller can be in XInput mode or enhanced mode, so it will always show up as an XInput controller, and the enhanced mode controller will come and go as enhanced mode is enabled or disabled in the FlyDigi Space Station app.
2025-11-01 14:49:31 -07:00
Sam Lantinga
28849fd789
Manually enable acquiring the Apex 5 controller if necessary
...
The FlyDigi Space Station app isn't available on non-Windows platforms, so we need to manually enable acquiring the controller on those platforms.
2025-11-01 14:49:31 -07:00
Sam Lantinga
446fb65ca6
Mark the Apex 5 controller as being acquired by SDL
2025-10-30 22:35:06 -07:00
Sam Lantinga
1502c2fd8b
Added support for the Flydigi Apex 5 controller ( #14218 )
2025-10-30 21:20:44 -07:00
Eddy Jansson
aaee09d6ed
Don't do NULL-checks before SDL_free()
...
Replaces the pattern
if (ptr) {
SDL_free(ptr);
}
with
SDL_free(ptr);
2025-10-20 00:13:09 -07:00
Vicki Pfau
d635a064aa
switch2: Read out serial number
2025-10-18 07:57:30 -07:00
Vicki Pfau
e4b763f9f8
switch2: Enable grip buttons on charging grip
2025-10-18 07:57:30 -07:00
Vicki Pfau
b152c9fb3c
switch2: Refactor out flash reading
2025-10-18 07:57:30 -07:00
Vicki Pfau
ee4c2ce120
switch2: The reply to the LED packet is only 8 bytes
2025-10-18 07:57:30 -07:00
Vicki Pfau
82374b4778
switch2: Use report ID 5 for all controllers
2025-10-18 07:57:30 -07:00
Vicki Pfau
061ce935df
switch2: Simplify init data array
2025-10-18 07:57:30 -07:00
Oleksandr Manenko
901173aee6
Fix thread safety attributes for TryLock functions
...
Changed SDL_TRY_ACQUIRE and SDL_TRY_ACQUIRE_SHARED success value
from 0 to true for functions that now return bool instead of int.
This fixes false positives/negatives in Clang's thread safety analysis.
2025-10-14 12:47:20 -07:00
Sam Lantinga
361f7e0873
Fixed power state reporting for the Nintendo Joy-Con Charging Grip
2025-10-13 10:34:22 -07:00
Anonymous Maarten
a472f5ea1e
Fix MSVC syntax error
...
Fixes the following error:
`
error C2059: syntax error: '}'
`
2025-10-13 01:19:17 +02:00
Vicki Pfau
c89fed4eae
switch2: Preliminary rumble support
...
Fused controller support is somewhat lacking, and the scaling and frequency
on rumble is somewhat arbitrary, but otherwise it works fine.
2025-10-11 14:04:52 -07:00
Vicki Pfau
ef99341691
switch2: Move initialization after reading calibration
...
This removes the need to wait for initialization to finish
2025-10-11 14:04:52 -07:00
Vicki Pfau
70bfdd013a
switch2: Send full init sequence from real hardware
2025-10-11 14:04:52 -07:00
Vicki Pfau
cdc1922801
switch2: This is the zero point, not the max
2025-10-11 14:04:52 -07:00
Sam Lantinga
33a74c7548
Fixed typo
2025-09-25 07:31:07 -07:00
Vicki Pfau
ed2cdceb66
switch2: Read user calibration data
2025-09-24 18:15:07 -07:00
zuiki_inn
fc648e5546
Support ZUIKI MasconPro ( #13770 )
...
* Add ZUIKI controller
Support version:
MasconPro
Enable rumble
Disable sensors
2025-09-21 23:38:28 -07:00
Sam Lantinga
1aba421bd3
Wait briefly after enabling effects on DualSense controller
...
The rumble motors apparently take a short time to power up after enabling enhanced mode.
Fixes https://github.com/libsdl-org/SDL/issues/13909
2025-09-14 09:59:01 -07:00
mitchellcairns
78e0ec7e0d
SInput: Version as a capabilities vehicle ( #13667 )
...
* SInput: version capabilities compression
This commit includes additions relating to SInput generic device reporting capabilities in a bit more detail, to automatically choose the best input map possible for the given device.
Thanks to Antheas Kapenekakis (git@antheas.dev ) for contributing the neat compression algorithm, this is pulled from the PR Draft here: https://github.com/libsdl-org/SDL/pull/13565
Co-authored-by: Antheas Kapenekakis <git@antheas.dev >
2025-09-13 07:21:39 -07:00
Sam Lantinga
3ddc3f1146
Send events for mice and keyboards detected during initialization
...
Fixes https://github.com/libsdl-org/SDL/issues/12815
2025-09-11 20:07:55 -07:00
Sam Lantinga
df0cc6e98b
Make sure we always zero the buffer sent to Steam Controllers
...
This fixes bad initialization for Steam Controllers with the original firmware
2025-09-08 18:41:17 -07:00
Sam Lantinga
25d9096d41
Fixed rumble strength on DualSense Edge and Bluetooth connected controllers
...
Fixes https://github.com/libsdl-org/SDL/issues/13771
2025-09-06 11:53:32 -07:00