Project

General

Profile

Actions

Emulator Issues #8737

closed

No controllers are being detected

Added by gibedashekeru almost 10 years ago.

Status:
Won't fix
Priority:
Normal
Assignee:
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Game Name?
n/a. This is game-independent.

Game ID?
n/a

What's the problem? Describe what went wrong in few words.
The GC-Pad dialog doesn't seem to detect any controller I plug in. I've tried my DS3's and my buddy's XBox 360 controller.

What did you expect to happen instead?
I expected the dialog to detect the controllers like it used to.

What steps will reproduce the problem?
[Don't assume we have ever played the game and know any level names. Be as
specific as possible.]

  1. Plug in controller
  2. Launch Dolphin
  3. Open the controller dialog
  4. Click the dropdown listing available joysticks
  5. See only the keyboard/mouse listed there

Dolphin 3.5 and 3.5-367 are old versions of Dolphin that have
known issues and bugs, so don't report issues about them and test the
latest Dolphin version first.
Which versions of Dolphin did you test on?
I'm using Gentoo's dolphin-9999 (git) ebuild. Current git is not working. I downgraded to 4.0.2-r7 but the problem persisted. Phire's evdev-stable branch also does not fix the problem.
It started a few weeks ago when I did a portage update.

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?
No. I don't know which version I was using when it did work.

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
OS: Gentoo amd64
CPU: AMD FX-8350
GPU: NVidia GeForce GT 640

The necessary kernel drivers are present.

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)
The controllers are working, just not with Dolphin. I can use them with Mupen64Plus.

Actions #1

Updated by gibedashekeru almost 10 years ago

Sorry for the duplicate. My mouse double-clicked. Please remove one of them. Thanks

Actions #2

Updated by phire almost 10 years ago

Could you checkout the latest master from git, create a fresh build directory (so cmake isn't caching results) and pastebin the output of "cmake .."

Actions #4

Updated by zkdarian almost 10 years ago

I went ahead and built it. It's still not detecting the controllers. Not sure that's surprising, just that I'm getting the same result when built independently of portage.

Actions #5

Updated by phire almost 10 years ago

Could be a permission issue, run dolphin as root and see if it detects the controller.

Actions #6

Updated by zkdarian almost 10 years ago

Works as root. What permissions could be responsible for this whose effects are exclusive to Dolphin?

Actions #7

Updated by phire almost 10 years ago

Yeah, dolphin uses the same interface that SDL used to, I'm not sure why it would change.

The file in question is on of the /dev/input/eventX files, you can work out which one based on dmesg when you plug the controller in.

Actions #8

Updated by zkdarian almost 10 years ago

I found this and it worked:
http://forums.libsdl.org/viewtopic.php?t=9772&sid=d8a674f72ddc6f35b4675a39e664d274

It's just a bit bothersome to edit that file for every controller and to reboot after editing so that the changes take effect.

Actions #9

Updated by phire almost 10 years ago

  • Status changed from New to Won't fix

This solidly falls into the "Not dolphin's problem" area, so I'm marking this issue as closed.

It's been a while since I've run a gentoo install, but I can probably point you in the correct direction.

The old interface for accessing joysticks was /dev/input/jsX. Since jsX nodes were always joysticks you could safely set a static rule to chmod them 0666 or 0664 and they would be accessible for all users.

But with the new(er) /dev/input/eventX interface an event node could be a mouse, keyboard, power button, headphone jack or even the pc speaker, so they need to be chmodded 0660 otherwise any user would be able to read the keyboard input to create a keylogger.

So we need dynamically set the permissions of only the joystick event node so default users can access them.

On most other modern linux distros this is all handled by Systemd (since it does everything), it keeps track of what users are actually sitting at the computer, and use access control lists to give any users sitting at the computer read/write access to the joysticks event node.

I suspect you are still using OpenRC (because many gentoo users do) OpenRC should be able to do this still, if it's setup correctly. Make sure udev, Polkit and ConsoleKit are installed and configured correctly.

Otherwise, you might want to consult the gentoo fourms, or file a bug with gentoo.

Actions

Also available in: Atom PDF