steam-for-linux icon indicating copy to clipboard operation
steam-for-linux copied to clipboard

Stratus Duo can't be found

Open dubrowgn opened this issue 5 years ago • 10 comments

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:

  1. Plug in Stratus Duo receiver, and turn on controller
  2. Run steam via terminal, notice controller is detected
  3. Notice controller is unusable, and steam UI shows "No Controllers Detected"

dubrowgn avatar Feb 17 '20 00:02 dubrowgn

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

dubrowgn avatar Feb 26 '20 02:02 dubrowgn

+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 avatar Mar 17 '20 08:03 iliaan

@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.

dubrowgn avatar Mar 18 '20 03:03 dubrowgn

I had found some ugly workaround

  1. Pair Controller with my Android mobile
  2. Launch Steam on my PC
  3. Launch Steam Link on my mobile (Steam link recognizes Stratus Duo ) and connects to PC
  4. 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.

iliaan avatar Mar 20 '20 10:03 iliaan

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.

dubrowgn avatar Mar 21 '20 01:03 dubrowgn

I can confirm the same behavior using Ubuntu 20.04.

dubrowgn avatar Apr 25 '20 15:04 dubrowgn

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 avatar Jun 07 '20 20:06 bender-the-greatest

@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

dubrowgn avatar Jun 13 '20 00:06 dubrowgn

@bender-the-greatest Thanks ! Setting the environment variable worked for me too.

anti-mony avatar Oct 03 '20 20:10 anti-mony

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.

kisak-valve avatar Jul 08 '22 18:07 kisak-valve

Working fine, out of the box, for the past year, on Ubuntu 22.04/20.04, can be closed

iliaan avatar Aug 14 '22 18:08 iliaan

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!

dubrowgn avatar Aug 17 '22 15:08 dubrowgn