steam-for-linux
steam-for-linux copied to clipboard
Stratus Duo can't be found
Your system information
- Steam client version (build number or date): Feb 11 2020 at 19:27:00
- Distribution (e.g. Ubuntu): Linux Mint 19.3 (Ubuntu 18.04 base)
- Opted into Steam client beta?: [Yes/No] Tried both
- Have you checked for system updates?: [Yes/No] Yes
Please describe your issue in as much detail as possible:
Steam detects my Stratus Duo controller, but won't use it for some reason. Running steam
via terminal shows:
Local Device Found
type: 1038 1430
path: sdl://1
serial_number: - 0
Manufacturer:
Product: SteelSeries Stratus Duo
Release: 175
Interface: -1
But, the controller is not usable, and the UI shows "No Controllers Detected." This may be hardware (maybe USB controller?) related, as the same controller, connected to a system running the same software stack on older Intel hardware, is able to be detected and used without issue by the same version of steam. I've tried moving the receiver to each of the available USB ports on the machine without success.
Hardware summary - I'm running a Ryzen 3700X based system with the generic Ubuntu 5.3 kernel. I've also tried the 5.0 and 5.5 kernels with the same result.
I tried udev rules for setting the mode to 0666. I confirmed that the new mode was being applied, but the issue persists.
I've seen reports of issues with the 5.3 kernel and systemd 243. However, I'm running systemd 237, and I've tried downgrading to the 5.0 kernel without success.
jstest
detects and is able to use the controller without issue.
Steps for reproducing this issue:
- Plug in Stratus Duo receiver, and turn on controller
- Run
steam
via terminal, notice controller is detected - Notice controller is unusable, and steam UI shows "No Controllers Detected"
To help rule out the USB controllers, I tried installing a PCIe add-in card. I got the same behavior when plugging into the PCIe card. In case it helps, lspci
shows the following for USB controllers on my machine. Renesas
is the add-in card.
$ lspci | grep USB
02:00.0 USB controller: Advanced Micro Devices, Inc. [AMD] Device 43d0 (rev 01)
06:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller (rev 02)
07:00.0 USB controller: ASMedia Technology Inc. ASM1142 USB 3.1 Host Controller
0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
+1 same problem here
jstest shows that device working, but steam UI shows "No Controllers Detected" Added to /lib/udev/rules.d/99-steam-controller-perms.rules
# SteelSeries Duo
KERNEL=="uinput", MODE="0666"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1038", ATTRS{idProduct}=="1430", MODE="0666"
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", KERNELS=="0005:1038:1430.*", MODE="0666"
and
sudo udevadm control --reload-rules
sudo udevadm trigger
this did not help.
@dubrowgn how did you run steam from shell so it would show ?:
Local Device Found
type: 1038 1430
System info:
System: Host: ilia-antec Kernel: 5.3.0-40-generic x86_64 bits: 64
Desktop: Gnome 3.28.4 Distro: Ubuntu 18.04.4 LTS
Machine: Device: desktop System: Gigabyte product: N/A serial: N/A
Mobo: Gigabyte model: X79-UD3 serial: N/A
UEFI: American Megatrends v: F20 date: 03/19/2014
Battery hidpp__0: charge: N/A condition: NA/NA Wh
CPU: Quad core Intel Core i7-4820K (-MT-MCP-) speed/max: 1200/3900 MHz
Graphics: Card: NVIDIA GP104 [GeForce GTX 1070]
Display Server: x11 (X.Org 1.20.5 )
drivers: nvidia (unloaded: modesetting,fbdev,vesa,nouveau)
Resolution: [email protected]
OpenGL: renderer: GeForce GTX 1070/PCIe/SSE2
version: 4.6.0 NVIDIA 440.64
Network: Card: Intel 82579V Gigabit Network Connection driver: e1000e
Drives: HDD Total Size: 3037.6GB (21.0% used)
Info: Processes: 360 Uptime: 33 min Memory: 2531.1/15930.1MB
Client: Shell (bash) inxi: 2.3.56
lsusb
Bus 002 Device 006: ID 1038:1430 SteelSeries ApS
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 003: ID 1532:005c Razer USA, Ltd
Bus 005 Device 002: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
@iliaan I just ran steam
from a terminal and it showed up during launch. You can also switch on the controller after steam has started, and it displays the same output for me.
I had found some ugly workaround
- Pair Controller with my Android mobile
- Launch Steam on my PC
- Launch Steam Link on my mobile (Steam link recognizes Stratus Duo ) and connects to PC
- Play, controller passed though android->steam link->pc, ugly, but works
Next step would be to test with Bluetooth dongle plugged directly to my PC, don't have dongle yet.
I can get the controller to work on my setup using a bluetooth dongle. It works, but it's unfortunate because the controller battery life is a lot shorter.
I can confirm the same behavior using Ubuntu 20.04.
I'm not sure why I have to set the environment variable for this but I was able to get my Stratus Duo to work with the USB dongle by generating an SDL configuration and exporting the SDL_GAMECONROLLERCONFIG
variable I created. For convenience I added the following line to /etc/environment
(the config string is mine but I have it here as an example):
SDL_GAMECONTROLLERCONFIG="03000000381000003014000075010000,SteelSeries Stratus Duo,a:b0,b:b1,x:b2,y:b3,back:b6,guide:b8,start:b7,leftstick:b9,rightstick:b10,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:a2,righttrigger:a5,platform:Linux,"
I used this tool to generate my SDL configuration string which goes on the righthand side of the above line of code. This fixed my SteelSeries not being seen by Steam as well as several games that weren't able to work with it out of the box either.
@bender-the-greatest thank you! Setting SDL_GAMECONROLLERCONFIG
worked for me as well. I ended up with the same configuration, but I see there are two guids for the Stratus Duo with the same mappings in https://github.com/gabomdq/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt
@bender-the-greatest Thanks ! Setting the environment variable worked for me too.
Hello, is anyone still experiencing this issue on an up to date system?
This reads like @bender-the-greatest's SDL_GAMECONTROLLERCONFIG should be sent to upstream libSDL to go beside https://github.com/libsdl-org/SDL/blob/7fd46ec581d45ec3fea3fcfe226bbc2ae824fc7c/src/joystick/SDL_gamecontrollerdb.h#L767. After that is in place and confirmed healthy, then someone should open a pull request for the udev line in https://github.com/ValveSoftware/steam-devices/blob/master/60-steam-input.rules.
Working fine, out of the box, for the past year, on Ubuntu 22.04/20.04, can be closed
I retested on a fresh install of Linux Mint 21 (Ubuntu 22.04 base) without the work around, and the controller works as expected. Thanks everyone!