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
Sam Lantinga
3572be3998
Improved detection of FlyDigi controllers
2025-09-04 18:21:17 -07:00
Sam Lantinga
637a9b34ab
Added a comment explaining the initialization delay
2025-09-03 15:47:21 -07:00
Sam Lantinga
b6a55c2856
Wait a bit for initialization to complete before requesting calibration data
...
Fixes https://github.com/libsdl-org/SDL/issues/13856
2025-09-03 15:36:58 -07:00
Sam Lantinga
84af0bb53a
Updated the 8BitDo Ultimate 2 Wireless Controller dongle update rate
...
The latest dongle firmware appears to update at 1000Hz
2025-09-02 09:53:09 -07:00
Sam Lantinga
a562e40d2c
Revert "Disable rumble for the Ultimate 2 Wireless Controller in dongle mode"
...
This reverts commit 065fdca953 .
8BitDo has fixed the rumble issue with dongle firmware update V1.05
2025-09-02 09:53:09 -07:00
Sam Lantinga
1f007ad5cd
Added support for the player LED on Nintendo Switch 2 controllers
2025-09-01 21:11:16 -07:00
Sam Lantinga
4b93e7488f
Added support for the Switch 2 Joy-Cons with charging grip
2025-09-01 21:11:16 -07:00
Vicki Pfau
184f6fa231
switch2: Read calibration data
2025-08-29 05:46:19 -07:00
Sam Lantinga
ac5ccbe386
Moved Nintendo Switch 2 Controller initialization from hid.c to SDL_hidapi_switch2.c
2025-08-28 09:10:47 -07:00
Sam Lantinga
fb9fcfa37b
Fixed controller name when hotplugging the Nintendo Switch 2 Pro Controller
2025-08-28 09:10:47 -07:00
Ethan Lee
a798da2ec7
hidapi: Add support for NSO GameCube controller via libusb.
...
Thanks to Nohzockt for the initial libusb init and hidapi polling work!
2025-08-28 09:10:47 -07:00
Ethan Lee
efea62ed61
hidapi: Add a stub driver for Switch 2.
...
Thanks to kiddkaffeine for the Xcode updates!
2025-08-28 09:10:47 -07:00
wankey
6176235a90
fix wrong index in HandleStatePacket with flydigi controller ( #13819 )
2025-08-28 04:08:54 -07:00
Sam Lantinga
5291e9bbbd
Minor cleanup
2025-08-26 19:28:59 -07:00
Sam Lantinga
065fdca953
Disable rumble for the Ultimate 2 Wireless Controller in dongle mode
...
The dongle appears to stop sending input reports with some combination of rumble patterns, easily reproduced with Forza Horizon 5. We'll disable rumble temporarily until @8BitDo can investigate.
2025-08-26 08:39:00 -07:00
Sam Lantinga
fe16c620d8
Fix crash when enumerating Steam Controllers
...
Closes https://github.com/libsdl-org/SDL/pull/13746
2025-08-14 14:49:04 -07:00
Sam Lantinga
2d855e12d2
Fixed style
2025-08-14 14:48:58 -07:00
mitchellcairns
e8b5d90c41
SInput: ABXY Style Application and Code Cleanup ( #13624 )
...
ABXY Face Style Application
- The abxy face style extraction now applies to any SInput device.
- The use-case here is that gamepads that allow for changing styles can dynamically adjust the button labels firmware-side to have the physical location better represent the actual button being pressed.
SInput Sub-Type Clarification
- The code has been updated to better reflect the intention behind the sub-type field of the GUID byte 15.
- Any SInput device may utilize the Sub-Type field to indicate variants of the same device (Same device that has rear paddles or additional physical features but is otherwise identical, etc.).
"Firebird" Company Name Clarification
- "Bonjiri" was a wrong translation. Got clarification from the company and official PID registration for the official English spelling (See 0c5234cd92 ).
- Fixed this spelling for all references (official mapping strings still pending and this will return NULL until this is provided).
Code Notes
- Various notes have been updated to have more clear indications.
- I have moved the face-type and sub-type debug messages to be paired with the extraction for easier location.
- I've removed an incorrect note left-over from a previous commit regarding command response information.
2025-08-02 19:11:18 -07:00
Antheas Kapenekakis
2b94062482
sinput: fix compiling with debug output on
2025-08-02 06:37:27 -07:00
Antheas Kapenekakis
d04899fcfd
Fix setting RGB without a player led ( #13524 )
...
There is a bug where SInput checks for player led capability before
setting RGB. This means that if a controller does not have a player led,
RGB commands are not sent.
2025-08-01 09:15:54 -07:00
mitchellcairns
6d580d74f2
Fix Axis Inputs for Generic SInput Device ( #13489 )
...
- Implement correct SInput generic mapping string to map analog axes
- Implement 6 axis count fallback for generic SInput Device
2025-07-31 15:36:10 -07:00
Petar Popovic
beea8d604e
Replaced binary integer literals with hexadecimal integer literals
2025-07-29 06:34:38 -07:00
Mitch Cairns
49b6bb50c9
Remove Unused Type
2025-07-28 11:05:44 -07:00
Mitch Cairns
2b0b794f86
SInput Generic Types
...
- Implements 'handheld' flag to indicate whether the SInput device is a gamepad or handheld (ROG Ally etc)
- Implements generic mapping fallback along with face style setting ability
2025-07-28 11:05:44 -07:00
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