kozec / sc-controller

User-mode driver and GTK3 based GUI for Steam Controller
GNU General Public License v2.0
1.53k stars 128 forks source link

SC-Controller shuts down SC #389

Closed thetargos closed 6 years ago

thetargos commented 6 years ago

Hello. First up, a BIG thank you for this amazing app!! The issue I currently have is as follows: I can't seem to be able to use sc-controller with my Steam Controller in its current state, might be a distribution update (I currently use Fedora 28), or something else entirely. The thing is that if I turn on the controller and start SC-Controller, the controller is not found/useable, and if I cycle the emulation, the SC shuts itself down... And I can't power it up again using the Steam button. In order to power the controller back up, I have to open the back, remove one of the batteries, and then power up, with the same result of SC-Controller not using it, cycling emulation shuts the controller down, etc, etc.

I don't seem able to find any useful entries in dmesg or the logs, and I have made sure all pertinent perms are set.

I see the following when I start scc gui and upon controller shutdown, and if I disconnect the dongle, reattach it and restart the emulation, it may be worth mentioning that upon closer inspection, the controller shuts down UNTIL I either press a button or touch a trackpad.

[  945.700954] hid-generic 0003:28DE:1142.000E: hiddev97,hidraw8: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input1
[  945.706522] hid-generic 0003:28DE:1142.000F: hiddev98,hidraw9: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input2
[  945.711588] hid-generic 0003:28DE:1142.0010: hiddev100,hidraw10: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input3
[  945.716417] hid-generic 0003:28DE:1142.0011: hiddev101,hidraw11: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input4
[  945.894141] usb 1-13: reset full-speed USB device number 7 using xhci_hcd
[  948.367908] input: SCController Keyboard as /devices/virtual/input/input32
[  948.368316] input: SCController Mouse as /devices/virtual/input/input33
[  948.369058] input: Microsoft X-Box 360 pad as /devices/virtual/input/input34
[ 1911.619766] usb 1-13: USB disconnect, device number 7
[ 1911.986646] usb 1-13: new full-speed USB device number 8 using xhci_hcd
[ 1912.357067] usb 1-13: New USB device found, idVendor=28de, idProduct=1142, bcdDevice= 0.01
[ 1912.357070] usb 1-13: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1912.357072] usb 1-13: Product: Steam Controller
[ 1912.357074] usb 1-13: Manufacturer: Valve Software
[ 1912.377917] input: Valve Software Steam Controller as /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-13/1-13:1.0/0003:28DE:1142.0012/input/input35
[ 1912.430728] hid-generic 0003:28DE:1142.0012: input,hidraw8: USB HID v1.11 Keyboard [Valve Software Steam Controller] on usb-0000:02:00.0-13/input0
[ 1912.434494] hid-generic 0003:28DE:1142.0013: hiddev97,hidraw9: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input1
[ 1912.439500] hid-generic 0003:28DE:1142.0014: hiddev98,hidraw10: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input2
[ 1912.444505] hid-generic 0003:28DE:1142.0015: hiddev100,hidraw11: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input3
[ 1912.449475] hid-generic 0003:28DE:1142.0016: hiddev101,hidraw12: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-13/input4
[ 1912.492441] usb 1-13: USB disconnect, device number 8
[ 1945.231564] usb 1-9: new full-speed USB device number 9 using xhci_hcd
[ 1945.603103] usb 1-9: New USB device found, idVendor=28de, idProduct=1142, bcdDevice= 0.01
[ 1945.603106] usb 1-9: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1945.603108] usb 1-9: Product: Steam Controller
[ 1945.603110] usb 1-9: Manufacturer: Valve Software
[ 1945.623545] input: Valve Software Steam Controller as /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-9/1-9:1.0/0003:28DE:1142.0017/input/input36
[ 1945.676197] hid-generic 0003:28DE:1142.0017: input,hidraw8: USB HID v1.11 Keyboard [Valve Software Steam Controller] on usb-0000:02:00.0-9/input0
[ 1945.680835] hid-generic 0003:28DE:1142.0018: hiddev97,hidraw9: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-9/input1
[ 1945.686194] hid-generic 0003:28DE:1142.0019: hiddev98,hidraw10: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-9/input2
[ 1945.691217] hid-generic 0003:28DE:1142.001A: hiddev100,hidraw11: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-9/input3
[ 1945.696231] hid-generic 0003:28DE:1142.001B: hiddev101,hidraw12: USB HID v1.11 Device [Valve Software Steam Controller] on usb-0000:02:00.0-9/input4
[ 2020.141135] input: SCController Keyboard as /devices/virtual/input/input37
[ 2020.141563] input: SCController Mouse as /devices/virtual/input/input38
[ 2020.142317] input: Microsoft X-Box 360 pad as /devices/virtual/input/input39

PS: I am using the latest firmware with the bluetooth low energy profile added to the SC installed from the Beta client of Steam, needless to say I am able to use the controller in Steam without issues.

What additional info would you need in order to try and attempt to fix this? I am assuming the issue is on my end, and I should mention that upon the firmware update, I did connect the controller in BT and then unpaired it and repaired it to the dongle, could this process have caused this behaviour?

Update: Just tried wired, deattached the range extender for the dongle from the cable, and attached the SC and the behaviour was odd: It appeared that a race condition was set in that the SC seemed to shutdown/up several times (while I was able to use it as a regular mouse, as it usually is the case when plugged in with cable) and then the fifth time or so, it registered the inputs in scc gui. From this it is apparent that the issue might be a conflict somwhere, as to what or where... I'm still lost. At the console from which I started scc gui there is no output... Back to square one.

TIA!

thetargos commented 6 years ago

Second update, as a new comment to avoid overcrouding the first one, I did an experiment and connected the controller through BT, and SCC does recognize the controller, alas, the input feels sluggish and lagging in most games, but the Desktop profile seems to be much snappier. I feel no difference in regards to the dongle... So bottom line, it seems to be a conflict with the dongle, and maybe the new firmware or some other interaction with HID/evdev.

kozec commented 6 years ago

Two problems here:

But since there was new kernel-mode driver for Steam Controller added recently, my first question is which kernel are you using? Can you post output of uname -a?

thetargos commented 6 years ago

I knew I was forgetting something, 4.17.2, the kernel side driver I thought was slated for 4.18?

thetargos commented 6 years ago

Follow up, so I did end up deleting my .config/scc directory and try running the scc gui and daemon, voilà... There seems to be an issue of USB conflict, there is an error on top of the SCC window: "There as an error with enabling emulation: Failed to claim USB device: LIBUSB_ERROR_BUSY [-6] Another application (most likely Steam) is using the controller".

Steam is not running, so this leaves an issue open, I remember back in the day that MS XBox 360 Wireless receiver could interfere, maybe I having such an issue... testing...

In fact typing this with the on-screen keyboard...

So in the end, the issue was on my end.

Thanks.

kozec commented 6 years ago

That's good to hear.

Sorry for late answer, I had to reinstall my "guinea-pig" machine before switching it to right kernel version and then was unable to replicate the problem. But at least I can confirm that there is no kernel-mode driver in it yet.

parkerlreed commented 6 years ago

4.18-rc2 added the kernel mode driver behind a config flag (HID_STEAM)