Sam Lantinga
2fd3f756d2
Fixed trying to use the HIDAPI driver for the original Xbox One S Bluetooth controller
2019-11-28 11:44:17 -08:00
Sam Lantinga
4a77613881
Added the full Xbox One Elite Series 2 controller initialization sequence, to start input reports after switching out of Bluetooth mode.
2019-11-27 18:26:57 -08:00
Sam Lantinga
0b863f8a5c
Sorted controller entries by type and VID/PID to more easily find entries in the list
2019-11-27 15:27:19 -08:00
Sam Lantinga
43cb7b3c51
Added support for the Hori Fighting Commander
2019-11-27 12:38:51 -08:00
Sam Lantinga
a76e547477
Added support for the PowerA XB1 Fusion Fight Pad
2019-11-27 12:38:48 -08:00
Sam Lantinga
a5e6b87ce6
Added support for a variant of the PowerA FUSION Pro Controller
2019-11-26 08:35:41 -08:00
Sam Lantinga
f3d95396d6
Added some missing controller names
2019-11-25 15:02:54 -08:00
Sam Lantinga
8243a3e801
Added support for the Hyperkin X91
2019-11-25 15:02:50 -08:00
Sam Lantinga
8e153922e4
This packet didn't end up being needed to initialize input for the Xbox One Elite Series 2 controller
2019-11-22 17:46:30 -08:00
Sam Lantinga
733f25252a
Fixed build
2019-11-22 14:09:24 -08:00
Sam Lantinga
b5aff9d7c3
Added SDL_GameControllerTypeForIndex() and SDL_GameControllerGetType() to return the type of controller attached.
2019-11-22 13:12:12 -08:00
Sam Lantinga
c0650aca21
Added support for the PDP Battlefield One controller
2019-11-21 14:04:48 -08:00
Sam Lantinga
68d8fc5c7b
Added support for the Xbox One Elite Series 2 controller in wired mode
2019-11-18 15:46:13 -08:00
Sam Lantinga
1e24a1514d
Added names for some missing Xbox controllers
2019-11-18 11:51:39 -08:00
Sam Lantinga
144956442d
Added identifiers for the Xbox One Elite Series 2 controller
2019-11-18 11:44:51 -08:00
Sam Lantinga
a9ac9e3865
Don't try to use this driver with the Xbox One S in Bluetooth mode on Linux
2019-11-16 19:58:29 -08:00
Sam Lantinga
9ca5373024
Added support for the Xbox One S controller in Bluetooth mode on Linux
2019-11-16 19:55:53 -08:00
Sam Lantinga
cf33f1f0ef
Added a utility function to simplify the hint handling logic
2019-11-13 21:53:01 -08:00
Sam Lantinga
9a76bebfbc
SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS defaults to true, to match Steam's default behavior
2019-11-13 14:24:48 -08:00
Sam Lantinga
9da4bfc141
Added support for the Power A Nintendo Switch Enhanced Wireless Controller
2019-10-22 10:57:07 -07:00
Sam Lantinga
b3470f04b1
Added the hint SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS to control whether Nintendo Switch controllers use their button labels or button positions for game controller button reporting.
2019-10-17 17:32:47 -07:00
Sam Lantinga
e6ac16ef2f
Added support for third party Nintendo Switch controllers that don't support the full protocol
2019-10-17 16:59:05 -07:00
Sam Lantinga
3b3dbb5adb
Removed unused volume check interval
2019-10-01 08:50:04 -07:00
Sam Lantinga
cbde0ffa3d
The PS4 is ignoring the volume values in the report, so we don't need to fill them in.
2019-09-19 16:50:49 -07:00
Sam Lantinga
c10a87429d
Make sure HIDAPI is initialized whenever we call HIDAPI_IsDevicePresent()
2019-07-31 10:20:37 -07:00
Andrew Eikum
c172f36bf4
joystick: Ensure HIDAPI is initialized before calling it
2019-07-31 11:14:48 -05:00
Sam Lantinga
dc714389f0
Don't call hid_enumerate() if the HIDAPI drivers are all disabled
2019-07-25 15:21:44 -07:00
Sam Lantinga
be6cda9f95
Rolling back GameCube HIDAPI support
...
It causes the HIDAPI devices to always be opened on enumeration, which causes crashes in the Windows drivers when multiple applications are reading and writing at the same time. We can revisit this after 2.0.10 release.
2019-06-19 15:54:21 -07:00
Zack Middleton
56e2b9a4ee
Handle GameCube WaveBird controller differences
...
Make wireless GameCube controllers use unknown power level instead of
wired and don't allow rumble (it doesn't have hardware for it).
2019-06-19 06:43:54 -07:00
Zack Middleton
6f63c1c37f
Make GameCube controllers only rumble if both USB cables are connected
...
The Nintendo USB GameCube Adapter has two USB connectors. Black for data
and grey for additional power for rumble. The Wii U and other software
require both cables to use rumble. The rumble is weaker without the
second USB cable. Other than that I don't know if there is any negative
side affects from using rumble with only one cable.
2019-06-19 06:43:36 -07:00
Sam Lantinga
d97387ccff
Fixed bug 4600 - Dualshock 4 touchpad press is not detectable with SDL_JoystickGetButton
...
Dexter Friedman
When using a Dualshock 4 controller (model numbers CUH-ZCT1U and CUH-ZCT2U), pressing anywhere on the center touchpad does not send an SDL_JOYBUTTONDOWN event. I have verified this with testjoystick:
Repro steps:
1. Plug in a DS4 over USB
2. Compile testjoystick and run: testjoystick.exe 0
3. Press and hold the touchpad. Observe that no lime green box appears
Expected behavior:
A lime green box appears while the touchpad is pressed.
Notes:
I've attached a patch here that works on my PC and produces the expected behavior in testjoystick, for both DS4 model numbers I listed earlier.
If I understand correctly, by exposing this as a joystick button, the gamecontroller API mapping can be modified with a change to gamecontrollerdb.txt in the future.
2019-06-08 14:32:19 -07:00
Zack Middleton
82af42761e
hidapi: Use GameCube adapter controller port for player index
...
The Nintendo USB GameCube adapter has four controller ports. Return
the port number as 0 to 3 from SDL_JoystickGetPlayerIndex() and
SDL_JoystickGetDevicePlayerIndex().
2019-06-08 13:36:59 -07:00
Cameron Gutman
5cb14f4467
Ignore Xbox One S gamepads with older firmware in HIDAPI
...
This older firmware had a different HID report style that we don't support.
2019-04-30 20:37:49 -07:00
Ethan Lee
f07c992bb8
hidapi: Add GCN L/R buttons, just in case someone wants them...
2019-03-17 12:36:40 -04:00
Ethan Lee
c528615626
hidapi: Add support for Wii U/Switch USB GameCube controller adapter.
...
Note that a single USB device is responsible for all 4 joysticks, so a large
rewrite of the DeviceDriver functions was necessary to allow a single device to
produce multiple joysticks.
2019-03-12 20:27:54 -04:00
Sam Lantinga
5e13087b0f
Updated copyright for 2019
2019-01-04 22:01:14 -08:00
Sam Lantinga
14c55ac890
This change looks okay in the general case.
...
If we run into problems where these events aren't dispatched (initialized on a different thread than the main thread?) we may need to create a separate thread to handle device notifications like we do with the windows joystick subsystem.
2018-10-26 20:20:28 -07:00
Ryan C. Gordon
be8ef94f18
hidapi: Don't run a separate event loop for device notifications.
...
Fixes Bugzilla #4286 .
2018-10-26 14:43:39 -04:00
Sam Lantinga
14329256cb
Generalized the XInput user index into a player index
2018-10-25 16:53:14 -07:00
Sam Lantinga
f01cdcedbc
It turns out HIDAPI for Xbox controllers doesn't allow background input, so we won't enable it by default on Windows.
2018-10-05 01:41:59 -07:00
Sam Lantinga
1944556171
Make sure we don't read and write to HIDAPI at the same time, it's not thread-safe on Windows
2018-10-02 20:51:33 -07:00
Ozkan Sezer
fde82e5972
SDL_hidapi_ps4.c: add HAVE_ENDPOINTVOLUME_H check to win32 volume code.
...
this makes it build with my old toolchain with mingw-w64 1.0.10 headers
2018-09-28 14:01:40 +03:00
Sam Lantinga
9aa8a75d26
Fixed building with Xcode 10.0
2018-09-28 01:18:54 -07:00
Sam Lantinga
f964ce03b4
Fixed mingw-w64 build
2018-09-28 01:00:47 -07:00
Ozkan Sezer
870c44bfed
safer this way, just in case..
2018-09-25 09:20:56 +03:00
Sam Lantinga
cd90e2ca58
Fixed bug 4267 - linkage failure with --enable-hidapi because of missing libudev symbols
...
Ozkan Sezer
hidapi dynamic udev initial patch
2018-09-24 16:33:14 -07:00
Sam Lantinga
d07fe7ad95
Removed button logging message
2018-09-21 09:41:21 -07:00
Sam Lantinga
e8b0859f17
Added missing call to WindowsDeleteString()
2018-09-20 15:55:52 -07:00
Sam Lantinga
600126c90e
Added experimental support for Windows.Gaming.Input
2018-09-19 10:03:40 -07:00
Sam Lantinga
6a7b0c27af
Fixed crash launching under Steam on Mac OS X
2018-09-14 12:41:29 -07:00