Steam Controller

Steam Controller

[macOS] Steam Input does not produce a virtual gamepad
On macOS specifically, it looks like the Steam Controller does not generate a joystick device for use with games that use SDL_GameController, for example.

Test games include every SDL game on macOS, such as Pyre, Charlie Murder, Dishwasher: Vampire Smile, FEZ, etc.

The controller works in Big Picture Mode, but when initializing a game, we never get a controller device add event for the Steam Virtual GamePad. This appears to apply to ALL devices using Steam Input; when connecting a 360 controller, you only get the native device handle and not a virtual gamepad.

This appears to be the opposite behavior of what's intended as of SDL 2.0.6, where the virtual gamepad should at most get ignored if an environment variable is not specified (but you should still get a cdevice event, instead we get nothing at all):

https://hg.libsdl.org/SDL/file/973151a33ec5/src/joystick/SDL_gamecontroller.c#l1276
< >
Showing 1-6 of 6 comments
flibitijibibo Sep 28, 2017 @ 1:51pm 
Originally posted by MartyWF:
Here's how to report a bug...

http://steamcommunity.com/groups/SteamClientBeta/discussions/0/864957817327818370/
Cool.

Also, for clarity, SDL commits relating to Steam Controller device filtering:

https://hg.libsdl.org/SDL/rev/813a8510bd0c
https://hg.libsdl.org/SDL/rev/2c405337cf3d
flibitijibibo Nov 9, 2017 @ 6:47am 
Quick update, it appears the problem is the virtual gamepad no longer getting recognized:

https://bugzilla.libsdl.org/show_bug.cgi?id=3951

Would it be possible for Steam to add the virtual gamepad bindings to its SDL_GAMECONTROLLERCONFIG environment variable? We can do this on SDL's side but there are lots of games that may not be updating soon enough to fix this across the board.
Last edited by flibitijibibo; Nov 9, 2017 @ 6:53am
MrBurns Nov 10, 2017 @ 9:23am 
I also seem to be having this problem with some games.

OS is Mac OS 10.12.6

Can't play the following games with steam controller:

Pyre

Hollow Knight, also only very buggy input with DS3

will add more as I check this further.

This is very annoying and makes the controller unusable in some games. The controller works fine in big picture, using the dongle or via steamlink.
But isn't recognized in the mentioned games no matter if via dongle, plugged in, or over steamlink.

So please dear steam developer please look into solutions.


flibitijibibo Nov 28, 2017 @ 11:07am 
The fix is in SDL mainline but that will have to be pushed to all Mac games, so until Steam itself produces a config here's a fix for anyone reading this:

echo "export SDL_GAMECONTROLLERCONFIG=\"030000005e0400008e02000001000000,Steam Virtual GamePad,a:b0,b:b1,x:b2,y:b3,back:b9,start:b8,leftstick:b6,rightstick:b7,leftshoulder:b4,rightshoulder:b5,dpup:b11,dpdown:b12,dpleft:b13,dpright:b14,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:a2,righttrigger:a5,\"" >> ~/.bashrc

Log out then log back in and it should work after that.
austinp_valve Nov 28, 2017 @ 1:50pm 
SamL is going to put a fix in the next Steam beta client. Thanks for the thorough report!
< >
Showing 1-6 of 6 comments
Per page: 1530 50

Date Posted: Sep 28, 2017 @ 1:41pm
Posts: 6