Wiimote on linux

Hello, I have a wiimote connected via bluetooth on my linux machine.

It works with kodi (arrows and buttons), xwiishow and dolphin-emu (arrow, buttons, accelerometer, infrared) without issues.

When starting retroarch, the wiimote is recognized as such (it appears a little notification on startup, and it is listed on the devices), but the buttons do not work as expected.

I cannot navigate the menu with arrows, only A seems to work for selecting things, and home button as-if I’ve pressed escape on the keyboard. If I start a game (for example witht he keyboard), the B button activates fast forward, otherwise thats it.

I tried configuring the device, during setup I’ve pressed the arrow buttons (they get recognized), but after the setup nothing changed, I still cannot navigate retroarch ui.

I did already used retroarch on another linux pc with the wiimote, and no configuration was necessary, it worked out of the box.

As additional information, I tested another bluetooth controller (not wiimote), and it works correctly out-of-the-box.

I’m not sure what I can do for fixing the issue, currently I’m not even interested in ir and accelerometer (or playing wii games)

Are there known issues? I’ve installed retroarch from https://buildbot.libretro.com/nightly/linux/x86_64/ instead of the one packaged for my distribution (Debian)

I assume it’s using this profile? https://github.com/libretro/retroarch-joypad-autoconfig/blob/37f429527d7b44fcc6e9d5c3861b89d89b803b4e/udev/Nintendo_Wii_Remote.cfg#L4

If so, I think it may no longer be current/sane since some Nintendo driver stuff was added to the linux kernel…? In any event, try deleting that profile (you can always re-fetch it from the online updater, so no big deal) and see if you can successfully map it yourself. If so, save a new profile and then open it in a text editor and let’s see what it says :slight_smile:

Deleting the file did not make a difference, but something really strange happened during the last test (and it is reproducible)

Start retroarch, connect a non-wiimote controller, connect the wiimote, disconnect the non-wiimote controller.

Now I can navigate retroarch with the wiimote :confused:

Update: deleting the file did made a difference: it works! I accidentally worked from the wrong directory. But what I’ve written still stands; there is a difference if the wiimote is connected as second controller :confused:

With the config file deleted, the issue is that he wiimote does not have sane keybindongs when starting, for example, a gba game.

When starting the game, the dialog wiimote not configured appears.

Once the game is started, the arrow works, but I can reember that when it worked out-of-the-box

  • I had to keep it sideways (much more practical)
  • the menu button exited the game, not retroarch
  • A and B buttons where mapped to 1 and 2

Which is currently not the case

ok, were you able to map it properly in settings > input > retropad binds and then create an autoconfig profile of your own?

Not really.

I’ve used the remapping functionality of retroarch and just remapped the arrows, but after that the navigation with the remote did not work anymore, keyboard too. I had to reset the retroarch.cfg file.

Also, if I write my own autoconfig file, wont this get overwritten by an update?

it can get overwritten by an update, sure, but that one is so old it doesn’t even have the vendor and device IDs (vid/pid pair) to identify with, so it’s just using the device name. As long as your has a different name it will not be overwritten, and as long as it includes the vid/pid, it will be preferred over the one without them. And, if it works so well, you could submit it to https://github.com/libretro/retroarch-joypad-autoconfig for inclusion with the official bundle.

Ok, I’ll try again in the next days.

Still I’m confused that I could find nowhere else a similar report, for this reason it seems strange that it should work for no-one

What I could found are only reports about wiimote not working when playing wii games.

Ok, I’ve decided to do another test.

I’ve installed retroarch 1.16 (same version) on another PC.

It has the unmodified Nintendo_Wii_Remote.cfg, and the remote works as expected.

Hold it horizontally, arrow works, buttons with sensible mappings.

I’ve checked related installed wii packages with “aptitude search wii | grep ‘^i’”, and found that my machine has “xserver-xorg-input-xwiimote” installed.

Removed it, and the wiimote works as expected in retroarch!

So it seems there is an issue only when xserver-xorg-input-xwiimote is installed. Since other programs (dolphin, xwiishow) work both with and without that package, it would be nice if retroarch could be able to use the wiimote as-is, even if this package is installed.

1 Like