-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mouse detected as controller causing many games to crash on startup #6253
Comments
Personally, I'm confused by the definition of mouse being applied here. A gaming mouse is still a normal mouse - they're all mice. My $150 gaming mouse works fine by comparison https://www.logitechg.com/en-us/products/gaming-mice/pro-wireless-mouse.html so by all means your cheap one should as well. I don't know if this is a system problem or a Steam one based on the above info. |
I'm wondering is ckb1 in reference to https://github.com/ccMSC/ckb ? If so, I would say that's your problem, not Steam. |
Seems the same issue some are referencing here, here, and here. One of them even using a Corsair keyboard! @viggy96 Some claim using the -nojoy option fixes the issue for them while others say it does not help. Maybe try it? @kisak-valve Is the -nojoy option available in all games through Steam or just available in CSGO? |
@kisak-valve Thank you! Edit: I've resubmitted a pull request for blacklisting the two Corsair devices. |
@nightsky30 Why the close on the pull request? |
Sorry, I realized there were more files to edit. 🙄 I've submitted a new pull request here. |
@nightsky30 I have tried your branch and it didn't work. I tried both the permissions and rm versions... 😢 |
I just added the device IDs in all files using the copied lines from the initial Corsair device that was listed. Thought that would suffice. Maybe there is something different in the 5.0.x kernel that has changed things? Not sure what the after_kernel_4_9 stuff is about. I'm assuming you tried those files. Ahh...
So any of those should have worked 😞 |
I did some digging and found this. Seems they are matching devices in their udev rules differently with the use of the ckb daemon.
VS
I don't use ckb daemon as I use Razer devs and openrazer's daemon. Does the ckb daemon add its own udev rules files? If so, what order are the files processed? Alphanumerically I would guess? Perhaps they get in each other's way. Or maybe try modifying the udev joystick blacklist rules' regex to match your devices better as named by the daemon?
After all, your product showed as:
|
Yeah, I've tried that udev rule now, and it doesn't work either. I've reported this on ckb-next as well here: ckb-next/ckb-next#410. |
@nightsky30 Removing the device via udev rules works, but then the mouse is unusable. But setting the mode to "0000" doesn't work either, as steam still picks up the mouse as a controller as before. |
Your mouse should work without the need for that to even be installed. You may loose functionality if not stored into mouse hardware memory but the pointer, left & right, middle click should all work at the very least. I have yet to see a mouse that didn't. Similar to what they said on your opened bug post, they are another area where problems surface, and now you're reaping the effects of that. Also if it is partially caused by libinput that means it was borked for an entire year and not long after their "fix". Stuff happens though so maybe you want to keep living with the extra borking. |
Also the owner and curator of udev-joystick-blacklist seems to indicate it is a kernel bug.
If that is the case, then is it really an issue with any of the above mentioned libraries/frameworks/daemons/applications? Perhaps they are also victims. Edit: The linked kernel bug. |
If the removal rule does what it is supposed to do and removes the device it matches with regex, then the other rule type which sets permissions as "0000" should be working as well. As I tried to explain before (maybe not very well), and @tatokis has mentioned in the linked ckb thread, if you have multiple udev rules they can get in each others' ways. One rules file can undo what the prior rules file applied.
I believe the files are applied in alphanumeric order. So, the files beginning with 51 would be applied before the file starting with 99...
If you want ckb then try modifying the ckb udev rules and don't use the other udev files. Maybe add MODE="0000" to the ckb rules, i.e.
|
@tatokis My Corsair Mouse does not appear as a joystick under '/dev/input', and it does not appear in jstest-gtk. |
@tatokis I've fixed the issue by moving the rule that ckb-next installs from its default install location '/usr/lib/udev/rules.d' to '/etc/udev/rules.d'. |
Hello @viggy96, is there any particular reason to continue tracking this issue here? It's fairly clear this is either a udev or kernel issue instead of a Steam client issue. |
Actually I think this can be closed. |
Your system information
Please describe your issue in as much detail as possible:
The Steam client detects the Corsair M65 Pro RGB gaming mouse as a joystick/gamepad device, causing a variety of games to fail.
Steps for reproducing this issue:
@kisak-valve My Corsair mouse is being recognised by Steam as some sort of controller, you can see in the terminal output:
When I don't have my Corsair gaming mouse plugged in, and just use a regular mouse, this game runs fine. It appears that we may need to blacklist some devices from being detected as "controllers" and being passed to the game as such. I suspect that this issue causes games that utilise controllers to fail to start. I have confirmed, as previously mentioned that games run just fine when the gaming mouse is disconnected, and instead a regular mouse is used, including both Proton titles, and native titles.
I have mentioned this on ValveSoftware/Proton#908. I have previously noted that other games like Lego Harry Potter (1 and 2), Ni no Kuni 2, also exhibit this issue. I suspect this affects many other titles as well, though I haven't taken the time to test every single title in my library to confirm this.
The text was updated successfully, but these errors were encountered: