Closed a-l-e-x-d-s-9 closed 6 years ago
Key checker recognized them both.
For "back" button: Native key value: 0x1008ff26 Qt Key value: 0x01000061 antimicro value: 0x01000061
For "guide" button: Native key value: 0x1008ff18 Qt Key value: 0x01000090 antimicro value: 0x01000090
I have prepared other branch, that is a copy of old version with qt4 support, but with fixed CMakeLists.txt file. Could you install the app version from "old-qt4" branch, reproduce the same steps for your all issues and tell me, if everything works fine? It would be helpful, because it could be for me a good reference point (If I should fix a code, add some functionality or change some functionality). It will be available for everyone that want to check some functionality or just to have the working old version with qt4 (however not developed).
Yes, I also have the 2016 version. Regarding this particular problem with "back" and "guide" buttons, they both are not recognized in "Game Controller Mapping" in the 2016 version too, the same way they are not recognized in the new 2.24 version. From "Options>Properties" I see that they are probably buttons 5 and 6, because they are the only two that never light up.
Does your gamepad have GUID: 03000000381000001814000000000000 ? You can check it here
git clone https://github.com/juliagoda/SDL_JoystickButtonNames.git
cd SDL_JoystickButtonNames/examples
cmake .
make
./checkInfo
I don't know why but "checkGuid" only print: "Platform: Linux", without GUID. In the properties it shows me a GUID: 05000000110100001914000009010000:
Sorry, check updated post: renamed checkGuid to checkInfo, but it's ok. The GUID from antimicro can be too
EDIT: At least one controller has to be attached at the time
I cloned it from git to a new directory, compiled it, and "checkInfo" returns the same line: "Platform: Linux", still no GUID.
Could you test those buttons with evtest this time? I want to know, if the problem is related to old dinput support in controller. For example in the back of my gamepad I have some kind of switch for choosing Dinput or Xinput. Whenever I use DInput, the guide button never works in my case too but when I switch to XInput, then all buttons work properly. With DInput during evtest execution the guide button isn't detected at all, so that's the reason, why I want you to test it. There is tutorial, how to use the command:
To find /dev/input/event devices:
ls /dev/input/ | grep event*
It will probably range from event0 to event20. You'll have to test each one of them until you find out which one is the event associated with your USB controller. To do so, enter the following command and press your controller buttons (press CTRL+C to exit after checking):
evtest /dev/input/event11
If you got the wrong event, nothing will happen when you press buttons. When you get the right event, you'll notice because as soon as you press a button there will be a corresponding terminal output. Keep testing your available events until you find out which one is correct.
In my case it was /dev/input/event12
Source: https://steamcommunity.com/app/221410/discussions/0/558748653738497361/?ctp=4
Or even here. I was switching between DInput and XInput on this site too and it's the same:
I tested all of my events. It looks that my gamepad represented by 4 different events: event27: SteelSeries Stratus XL Keyboard - Only "back" and "guide" buttons. event28: SteelSeries Stratus XL Mouse - Nothing. event29: SteelSeries Stratus XL - All the buttons and joysticks, except: "back" and "guide" buttons. event30: SteelSeries Stratus XL - Nothing.
Here are the headers for each event: event27:
$ sudo evtest /dev/input/event27
Input driver version is 1.0.1
Input device ID: bus 0x5 vendor 0x111 product 0x1419 version 0x109
Input device name: "SteelSeries Stratus XL Keyboard"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 139 (KEY_MENU)
Event code 158 (KEY_BACK)
Event code 172 (KEY_HOMEPAGE)
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:
Testing ... (interrupt to exit)
event28:
n$ sudo evtest /dev/input/event28
Input driver version is 1.0.1
Input device ID: bus 0x5 vendor 0x111 product 0x1419 version 0x109
Input device name: "SteelSeries Stratus XL Mouse"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 272 (BTN_LEFT)
Event code 273 (BTN_RIGHT)
Event code 274 (BTN_MIDDLE)
Event code 275 (BTN_SIDE)
Event code 276 (BTN_EXTRA)
Event type 2 (EV_REL)
Event code 0 (REL_X)
Event code 1 (REL_Y)
Event code 8 (REL_WHEEL)
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Properties:
Testing ... (interrupt to exit)
event29:
$ sudo evtest /dev/input/event29
Input driver version is 1.0.1
Input device ID: bus 0x5 vendor 0x111 product 0x1419 version 0x109
Input device name: "SteelSeries Stratus XL"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 304 (BTN_SOUTH)
Event code 305 (BTN_EAST)
Event code 306 (BTN_C)
Event code 307 (BTN_NORTH)
Event code 308 (BTN_WEST)
Event code 309 (BTN_Z)
Event code 310 (BTN_TL)
Event code 311 (BTN_TR)
Event code 312 (BTN_TL2)
Event code 313 (BTN_TR2)
Event code 314 (BTN_SELECT)
Event code 315 (BTN_START)
Event code 316 (BTN_MODE)
Event code 317 (BTN_THUMBL)
Event code 318 (BTN_THUMBR)
Event code 319 (?)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min -2047
Max 2047
Flat 255
Event code 1 (ABS_Y)
Value 0
Min -2047
Max 2047
Flat 255
Event code 2 (ABS_Z)
Value 0
Min -2047
Max 2047
Fuzz 15
Flat 255
Event code 5 (ABS_RZ)
Value 0
Min -2047
Max 2047
Fuzz 15
Flat 255
Resolution 745
Event code 9 (ABS_GAS)
Value 0
Min 0
Max 4095
Fuzz 15
Flat 255
Event code 10 (ABS_BRAKE)
Value 76
Min 0
Max 4095
Fuzz 15
Flat 255
Event code 16 (ABS_HAT0X)
Value 0
Min -1
Max 1
Event code 17 (ABS_HAT0Y)
Value 0
Min -1
Max 1
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Event type 17 (EV_LED)
Event code 0 (LED_NUML) state 0
Event code 1 (LED_CAPSL) state 0
Event code 2 (LED_SCROLLL) state 0
Event code 3 (LED_COMPOSE) state 0
Properties:
Testing ... (interrupt to exit)
event30:
$ sudo evtest /dev/input/event30
Input driver version is 1.0.1
Input device ID: bus 0x5 vendor 0x111 product 0x1419 version 0x109
Input device name: "SteelSeries Stratus XL"
Supported events:
Event type 0 (EV_SYN)
Event type 3 (EV_ABS)
Event code 40 (ABS_MISC)
Value 0
Min 0
Max 255
Properties:
Testing ... (interrupt to exit)
Test results by event: event27 (first "back" button, then "guide" button):
Event: time 1540974346.249243, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0224
Event: time 1540974346.249243, type 1 (EV_KEY), code 158 (KEY_BACK), value 1
Event: time 1540974346.249243, -------------- SYN_REPORT ------------
Event: time 1540974346.384245, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0224
Event: time 1540974346.384245, type 1 (EV_KEY), code 158 (KEY_BACK), value 0
Event: time 1540974346.384245, -------------- SYN_REPORT ------------
Event: time 1540974347.666806, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0223
Event: time 1540974347.666806, type 1 (EV_KEY), code 172 (KEY_HOMEPAGE), value 1
Event: time 1540974347.666806, -------------- SYN_REPORT ------------
Event: time 1540974347.824326, type 4 (EV_MSC), code 4 (MSC_SCAN), value c0223
Event: time 1540974347.824326, type 1 (EV_KEY), code 172 (KEY_HOMEPAGE), value 0
Event: time 1540974347.824326, -------------- SYN_REPORT ------------
event28 - Nothing.
event29 (just a few random buttons):
Event: time 1540974673.493197, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90001
Event: time 1540974673.493197, type 1 (EV_KEY), code 304 (BTN_SOUTH), value 1
Event: time 1540974673.493197, -------------- SYN_REPORT ------------
Event: time 1540974673.628173, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90001
Event: time 1540974673.628173, type 1 (EV_KEY), code 304 (BTN_SOUTH), value 0
Event: time 1540974673.628173, -------------- SYN_REPORT ------------
Event: time 1540974674.663275, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90004
Event: time 1540974674.663275, type 1 (EV_KEY), code 307 (BTN_NORTH), value 1
Event: time 1540974674.663275, -------------- SYN_REPORT ------------
Event: time 1540974674.764545, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90004
Event: time 1540974674.764545, type 1 (EV_KEY), code 307 (BTN_NORTH), value 0
Event: time 1540974674.764545, -------------- SYN_REPORT ------------
Event: time 1540974677.835983, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9000c
Event: time 1540974677.835983, type 1 (EV_KEY), code 315 (BTN_START), value 1
Event: time 1540974677.835983, -------------- SYN_REPORT ------------
Event: time 1540974677.970926, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9000c
Event: time 1540974677.970926, type 1 (EV_KEY), code 315 (BTN_START), value 0
Event: time 1540974677.970926, -------------- SYN_REPORT ------------
Event: time 1540974678.004683, type 3 (EV_ABS), code 10 (ABS_BRAKE), value 86
Event: time 1540974678.004683, -------------- SYN_REPORT ------------
Event: time 1540974679.163445, type 3 (EV_ABS), code 17 (ABS_HAT0Y), value 1
Event: time 1540974679.163445, -------------- SYN_REPORT ------------
Event: time 1540974679.275987, type 3 (EV_ABS), code 17 (ABS_HAT0Y), value 0
Event: time 1540974679.275987, -------------- SYN_REPORT ------------
Event: time 1540974681.217524, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90007
Event: time 1540974681.217524, type 1 (EV_KEY), code 310 (BTN_TL), value 1
Event: time 1540974681.217524, -------------- SYN_REPORT ------------
Event: time 1540974681.390926, type 4 (EV_MSC), code 4 (MSC_SCAN), value 90007
Event: time 1540974681.390926, type 1 (EV_KEY), code 310 (BTN_TL), value 0
Event: time 1540974681.390926, -------------- SYN_REPORT ------------
event30 - Nothing.
The same situation as with xinput test... It's not good that gamepad is recognized as keyboard, mouse, gamepad itself and something not specified in a system. I am afraid that the problem exists in the system configuration. I would like to help you, but on many linux forums are much more advanced linux users, that will know what to do, but as first they will need several outputs from your console to know the hidden reason. I would recommend you to ask here for example:
https://ubuntuforums.org/forumdisplay.php?f=130
I wonder if other gamepads connected to the system are recognized similarly
I've checked with XBOX360 controller and it created a single event with all the buttons working properly. I'll try to figure it out. Thanks!
"Game Controller Mapping" does not recognize back and guide buttons for gamepad "Steelseries Stratus XL". All other buttons recognized and working properly. If I check with "xinput test", those 2 buttons are the only buttons that print any output when I push them, as follows (first "guide" and then "back"):
Can I make them be recognized somehow?
Tested on Ubuntu 18.10 amd64.