LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 03-16-2020, 06:36 PM   #1
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: Slackware
Posts: 24
Blog Entries: 1

Rep: Reputation: Disabled
Steam Controller is Not Detected in steam but works as mouse and keyboard.


So I'm facing the same issue as explained here https://www.linuxquestions.org/quest...de-4175657131/

Except that solution does not seem to work.
Here's my dmesg output.

Code:
[ 5425.244809] usb 1-9: USB disconnect, device number 37
[ 5426.530965] usb 1-9: new full-speed USB device number 38 using xhci_hcd
[ 5426.696323] usb 1-9: New USB device found, idVendor=28de, idProduct=1102
[ 5426.696327] usb 1-9: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 5426.696329] usb 1-9: Product: Wired Controller
[ 5426.696331] usb 1-9: Manufacturer: Valve Software
[ 5426.696529] usb 1-9: ep 0x81 - rounding interval to 64 microframes, ep desc says 80 microframes
[ 5426.696534] usb 1-9: ep 0x82 - rounding interval to 32 microframes, ep desc says 48 microframes
[ 5426.696539] usb 1-9: ep 0x83 - rounding interval to 32 microframes, ep desc says 48 microframes
[ 5426.697743] input: Valve Software Wired Controller as /devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.0/0003:28DE:1102.002E/input/input84546
[ 5426.748549] hid-generic 0003:28DE:1102.002E: input,hidraw4: USB HID v1.11 Keyboard [Valve Software Wired Controller] on usb-0000:00:14.0-9/input0
[ 5426.749253] input: Valve Software Wired Controller as /devices/pci0000:00/0000:00:14.0/usb1/1-9/1-9:1.1/0003:28DE:1102.002F/input/input84547
[ 5426.749450] hid-generic 0003:28DE:1102.002F: input,hidraw6: USB HID v1.11 Mouse [Valve Software Wired Controller] on usb-0000:00:14.0-9/input1
[ 5426.750357] hid-generic 0003:28DE:1102.0030: hiddev0,hidraw7: USB HID v1.11 Device [Valve Software Wired Controller] on usb-0000:00:14.0-9/input2
The udev rules seems to be adjusted in slackbuild accordingly to that previous issue. I've added myself to both input and plugdev groups. I also upgraded controllers firmware manually and then it was possible to do that via steam.

But controller just works as mouse and keyboard, X Y A B buttons does work in the Big picture mode correctly. But controller is not detected, not configurable and basically works entirely wrong in games, (well as a mouse and a bit of a keyboard).

P.S. Having no issues with cheap variant of PS3 controller.
 
Old 03-16-2020, 07:57 PM   #2
RadicalDreamer
Senior Member
 
Registered: Jul 2016
Location: USA
Distribution: Slackware64-Current
Posts: 1,082

Rep: Reputation: 529Reputation: 529Reputation: 529Reputation: 529Reputation: 529Reputation: 529
I use a PS2 controller! The only advice I have is to plug it in another USB port. Sometimes Steam doesn't recognize my controller and I have to plug it into another USB port. I don't have a Steam Controller so I can't help.
 
Old 03-16-2020, 09:33 PM   #3
TarFile
Member
 
Registered: Mar 2003
Posts: 338

Rep: Reputation: 31
Is this on 14.2 or current.

It does not work on 14.2 for me but I just built that system as current was nuking too many things and I got tired of fixing them after each update.

It does not seem to work on current either. To be clear the steam does not see the controller on 14.2 on current it sees it but it acts like yours. Thinks its a mouse. Steam sees it and tries to use it but it does not show up in the game. Like in Trine it only sees the keyboard and mouse. It even says it loaded the config that I selected for it. But no joy.

Not sure about other games.
 
Old 03-16-2020, 09:41 PM   #4
TarFile
Member
 
Registered: Mar 2003
Posts: 338

Rep: Reputation: 31
OK it works fine in Serious Sam BFE. Not sure why it did not work on Trine as is says it has full controller support.

Not sure whats going on here but SS BFE does have an official Steam Controller config.

SO maybe you have to build the config to match the game I had to do that for a lot of games but I usually use an XBox one controller or a Xbox 360 controller never got the hang of the Steam controller.
 
Old 03-16-2020, 10:10 PM   #5
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 9,555

Rep: Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265
Putting the following in /etc/udev/rules.d/99-steamcontroller.rules didn't work for you on -current? It definitely worked for me, although that was admittedly a while ago.

Code:
KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"
You've confirmed (by rebooting or whatever) that the udev rule is actually taking effect, right?

Last edited by dugan; 03-16-2020 at 10:34 PM.
 
1 members found this post helpful.
Old 03-17-2020, 01:29 AM   #6
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: Slackware
Posts: 24

Original Poster
Blog Entries: 1

Rep: Reputation: Disabled
Quote:
Originally Posted by TarFile View Post
Is this on 14.2 or current.

It does not work on 14.2 for me but I just built that system as current was nuking too many things and I got tired of fixing them after each update.

It does not seem to work on current either. To be clear the steam does not see the controller on 14.2 on current it sees it but it acts like yours. Thinks its a mouse. Steam sees it and tries to use it but it does not show up in the game. Like in Trine it only sees the keyboard and mouse. It even says it loaded the config that I selected for it. But no joy.

Not sure about other games.
Oh I forgot to mention it's 14.2 I'm using.

Quote:
Originally Posted by dugan View Post
Putting the following in /etc/udev/rules.d/99-steamcontroller.rules didn't work for you on -current? It definitely worked for me, although that was admittedly a while ago.

there are these rules in /lib/udev/rules.d/60-steam-input.rules installed with steam slackbuild

Code:
KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"
You've confirmed (by rebooting or whatever) that the udev rule is actually taking effect, right?
Steam slackbuild installs these rules to /lib/udev/rules.d/60-steam-input.rules

Code:
# Valve USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"

# Steam Controller udev write access
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput" GROUP="plugdev"

# Valve HID devices over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0660", TAG+="uaccess"

# Valve HID devices over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0660", TAG+="uaccess"

# DualShock 4 over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess"

# DualShock 4 wireless adapter over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0660", TAG+="uaccess"

# DualShock 4 Slim over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0660", TAG+="uaccess"

# DualShock 4 over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0660", TAG+="uaccess"

# DualShock 4 Slim over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0660", TAG+="uaccess"

# Nintendo Switch Pro Controller over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="2009", MODE="0660", TAG+="uaccess"

# Nintendo Switch Pro Controller over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*057E:2009*", MODE="0660", TAG+="uaccess"

# Nacon PS4 Revolution Pro Controller
KERNEL=="hidraw*", ATTRS{idVendor}=="146b", ATTRS{idProduct}=="0d01", MODE="0660", TAG+="uaccess"

# Razer Raiju PS4 Controller
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1000", MODE="0660", TAG+="uaccess"

# Razer Panthera Arcade Stick
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0401", MODE="0660", TAG+="uaccess"

# Mad Catz - Street Fighter V Arcade FightPad PRO
KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8250", MODE="0660", TAG+="uaccess"

# Mad Catz - Street Fighter V Arcade FightStick TE S+
KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8384", MODE="0660", TAG+="uaccess"

# EMiO Elite Controller for PS4
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="1cf6", MODE="0660", TAG+="uaccess"

# HORI RAP4
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="008a", MODE="0660", TAG+="uaccess"

# HORIPAD 4 FPS
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0055", MODE="0660", TAG+="uaccess"

# HORIPAD 4 FPS Plus
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0066", MODE="0660", TAG+="uaccess"

# Armor Armor 3 Pad PS4
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0e10", MODE="0660", TAG+="uaccess"

# STRIKEPAD PS4 Grip Add-on
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c5", MODE="0660", TAG+="uaccess"

# NVIDIA Shield Portable (2013 - NVIDIA_Controller_v01.01 - In-Home Streaming only)
KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7203", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""

# NVIDIA Shield Controller (2015 - NVIDIA_Controller_v01.03 over USB hidraw)
KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7210", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""

# NVIDIA Shield Controller (2017 - NVIDIA_Controller_v01.04 over bluetooth hidraw)
KERNEL=="hidraw*", KERNELS=="*0955:7214*", MODE="0660", TAG+="uaccess"

Last edited by v32itas; 03-17-2020 at 01:44 AM.
 
Old 03-17-2020, 01:39 AM   #7
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: Slackware
Posts: 24

Original Poster
Blog Entries: 1

Rep: Reputation: Disabled
Quote:
Originally Posted by dugan View Post
Putting the following in /etc/udev/rules.d/99-steamcontroller.rules didn't work for you on -current? It definitely worked for me, although that was admittedly a while ago.

Code:
KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"
You've confirmed (by rebooting or whatever) that the udev rule is actually taking effect, right?
Actually. adding this single line into a new file /etc/udev/rules.d/99-steamcontroller.rules worked, now the controller is detected.

But I also have these first lines edited in /lib/udev/rules.d/60-steam-input.rules

Code:
# Valve USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666", TAG+="uaccess"

# Steam Controller udev write access
KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput" GROUP="plugdev"

# Valve HID devices over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0666", TAG+="uaccess"

# Valve HID devices over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0666", TAG+="uaccess"

EDIT


So instead of adding a separate line to /etc/udev/rules.d/99-steamcontroller.rules

I just mashed everything to /lib/udev/rules.d/60-steam-input.rules


Code:
# Valve USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666", TAG+="uaccess"

# Steam Controller udev write access
KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"

# Valve HID devices over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0666", TAG+="uaccess"

# Valve HID devices over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0666", TAG+="uaccess"
and my whole /lib/udev/rules.d/60-steam-input.rules looks like this

Code:
# Valve USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666", TAG+="uaccess"

# Steam Controller udev write access
KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"

# Valve HID devices over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="28de", MODE="0666", TAG+="uaccess"

# Valve HID devices over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0666", TAG+="uaccess"

# DualShock 4 over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess"

# DualShock 4 wireless adapter over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ba0", MODE="0660", TAG+="uaccess"

# DualShock 4 Slim over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="09cc", MODE="0660", TAG+="uaccess"

# DualShock 4 over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:05C4*", MODE="0660", TAG+="uaccess"

# DualShock 4 Slim over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*054C:09CC*", MODE="0660", TAG+="uaccess"

# Nintendo Switch Pro Controller over USB hidraw
KERNEL=="hidraw*", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="2009", MODE="0660", TAG+="uaccess"

# Nintendo Switch Pro Controller over bluetooth hidraw
KERNEL=="hidraw*", KERNELS=="*057E:2009*", MODE="0660", TAG+="uaccess"

# Nacon PS4 Revolution Pro Controller
KERNEL=="hidraw*", ATTRS{idVendor}=="146b", ATTRS{idProduct}=="0d01", MODE="0660", TAG+="uaccess"

# Razer Raiju PS4 Controller
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1000", MODE="0660", TAG+="uaccess"

# Razer Panthera Arcade Stick
KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0401", MODE="0660", TAG+="uaccess"

# Mad Catz - Street Fighter V Arcade FightPad PRO
KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8250", MODE="0660", TAG+="uaccess"

# Mad Catz - Street Fighter V Arcade FightStick TE S+
KERNEL=="hidraw*", ATTRS{idVendor}=="0738", ATTRS{idProduct}=="8384", MODE="0660", TAG+="uaccess"

# EMiO Elite Controller for PS4
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="1cf6", MODE="0660", TAG+="uaccess"

# HORI RAP4
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="008a", MODE="0660", TAG+="uaccess"

# HORIPAD 4 FPS
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0055", MODE="0660", TAG+="uaccess"

# HORIPAD 4 FPS Plus
KERNEL=="hidraw*", ATTRS{idVendor}=="0f0d", ATTRS{idProduct}=="0066", MODE="0660", TAG+="uaccess"

# Armor Armor 3 Pad PS4
KERNEL=="hidraw*", ATTRS{idVendor}=="0c12", ATTRS{idProduct}=="0e10", MODE="0660", TAG+="uaccess"

# STRIKEPAD PS4 Grip Add-on
KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c5", MODE="0660", TAG+="uaccess"

# NVIDIA Shield Portable (2013 - NVIDIA_Controller_v01.01 - In-Home Streaming only)
KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7203", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""

# NVIDIA Shield Controller (2015 - NVIDIA_Controller_v01.03 over USB hidraw)
KERNEL=="hidraw*", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7210", MODE="0660", TAG+="uaccess", ENV{ID_INPUT_JOYSTICK}="1", ENV{ID_INPUT_MOUSE}=""

# NVIDIA Shield Controller (2017 - NVIDIA_Controller_v01.04 over bluetooth hidraw)
KERNEL=="hidraw*", KERNELS=="*0955:7214*", MODE="0660", TAG+="uaccess"

Last edited by v32itas; 03-17-2020 at 02:10 AM.
 
Old 03-17-2020, 07:59 AM   #8
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 9,555

Rep: Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265
When you get on -current, you can take everything out except the line I just gave you.

Your other lines are to ensure that your user account can read the device nodes. Well, -current ships with that problem solved.

Last edited by dugan; 03-17-2020 at 08:14 AM.
 
1 members found this post helpful.
Old 03-17-2020, 10:52 AM   #9
bassmadrigal
LQ Guru
 
Registered: Nov 2003
Location: West Jordan, UT, USA
Distribution: Slackware
Posts: 6,950

Rep: Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634Reputation: 4634
Quote:
Originally Posted by v32itas View Post
But I also have these first lines edited in /lib/udev/rules.d/60-steam-input.rules
Just so you're aware, the files in /lib/udev/rules.d/ aren't supposed to be edited by the end user. If you need to make changes, you're supposed to copy the file to /etc/udev/rules.d/ and then make any changes you need to make. If you have 2 files with the same name, one in /lib/udev/rules.d/ and one in /etc/udev/rules.d/, the one in /etc/ will always take precedence and will be the one that is used.

The reason behind this is the files in /lib/udev/rules.d/ can be updated at any time and you would lose all your changes. We haven't seen any udev updates in 14.2 since it was released (so far, but I suppose it's always possible), but if you ever run -current, it could be updated at any time and you'd lose all your changes.

Just some food for thought
 
1 members found this post helpful.
Old 03-17-2020, 01:09 PM   #10
v32itas
LQ Newbie
 
Registered: Jul 2017
Location: Europe
Distribution: Slackware
Posts: 24

Original Poster
Blog Entries: 1

Rep: Reputation: Disabled
Quote:
Originally Posted by bassmadrigal View Post
Just so you're aware, the files in /lib/udev/rules.d/ aren't supposed to be edited by the end user. If you need to make changes, you're supposed to copy the file to /etc/udev/rules.d/ and then make any changes you need to make. If you have 2 files with the same name, one in /lib/udev/rules.d/ and one in /etc/udev/rules.d/, the one in /etc/ will always take precedence and will be the one that is used.

The reason behind this is the files in /lib/udev/rules.d/ can be updated at any time and you would lose all your changes. We haven't seen any udev updates in 14.2 since it was released (so far, but I suppose it's always possible), but if you ever run -current, it could be updated at any time and you'd lose all your changes.

Just some food for thought
I did not know that. Thanks for explaining. By the way do you need to reboot after editing udev rules or there is some other way for them to take effect ? I never really had any business with it in linux up to the steam controller.
 
Old 03-17-2020, 01:41 PM   #11
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 9,555

Rep: Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265Reputation: 4265
Code:
udevadm control --reload
From:
https://wiki.archlinux.org/index.php...ding_new_rules
 
2 members found this post helpful.
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Steam "No controllers detected" / can't get Steam controller out of lizard mode trite Slackware 9 07-10-2019 05:15 PM
LXer: Steam Controller Works Again with Older Udev Rules in Latest Steam Client Beta LXer Syndicated Linux News 0 12-09-2016 10:33 PM
hp wireless keyboard & mouse, keyboard works, mouse do not work not working john hughes Linux - Desktop 2 04-04-2016 11:00 AM
usb mouse NOT detected, but usb keyboard IS detected mr.anderson Slackware 16 04-26-2006 09:09 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 01:16 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration