我正在尝试获取 Nintendo Wiimote 和 Nunchuck 键映射以与 Ubuntu 20.10 或 21.04 配合使用,第一步是获取从 wiimote 按钮按下映射到其他键的键映射。
我有一个临时解决方案,即在 Ubuntu 20.10 上使用 AntiMicro GUI,这样我现在就可以与 Wiimote 的 11 个按钮进行交互。这个解决方案根本不理想,因为它是基于 x11 的,因此不适用于 Ubuntu 21.04(wayland)。它也不适用于命令行。在某个时候,一个完整的驱动程序可以让所有传感器正常工作。
我使用的软件语言不能轻易识别非标准键 - 包括向上箭头等。因此,键映射对我的项目很重要。
有人有好的方法让 wiimote 与 Ubuntu 20.10 或 21.04 上的按键映射一起工作吗?
我迄今为止的研究:
4 种基于命令行的方法。其中三种方法在 retropie 网站上有介绍,以下是 retropie 文章的链接:https://retropie.org.uk/docs/Wiimote-Controller/ 第四个是某个人为使他的特定自定义游戏控制器正常工作而创建的解决方案,用 Python 编写。但那不是为 Wiimote 准备的。两种或更多基于 GUI 的解决方案。其中之一是“AntiMicro”,该项目引用的另一个程序是“Steam 控制器”。Steam 控制器可能会取代 AntiMicro 的努力,我还没有检查过。我想还有其他 GUI 解决方案。
方法 1-wminput。
我通过这个网站 lifewire 上的文章进行了探索。 https://www.lifewire.com/use-nintendo-wii-controller-linux-games-2202065 我的测试结果非常糟糕。我根本无法让它工作,可能是 wiimote 的电池电量不足影响了我的部分测试。当我有另一个 bash 时,我会重新测试。我只涉及了 wmgui。
方法 2 - moltengamepad 我根本没有测试过这种方法,到目前为止他们的团队是在 Arch linux 上进行的测试。也许这是可行的方法。
方法 3- xwiimote。看起来是个过时的方法,以前用过,但我没有研究。创建者现在在 Red Hat 工作,我感兴趣的是看看这个方法在 Ubuntu 上能不能用。
方法 4-自定义游戏控制器,但不适用于任何控制器,例如 wiimote。https://www.reddit.com/r/linux/comments/bxims5/anoterh_approach_at_joystick_mapping/
GUI 方法:我让 AntiMicro 在 Ubuntu 2010 上运行。它是 GUI,而不是此游戏控制器的完整驱动程序。适用于 Wiimote 的按钮按下。不适用于 Wayland。
Steam 控制器。尚未调查。
我对 lifewire 中的文章进行的测试结果与方法 1 有关。我在各种计算机上按照文章中的说明进行操作。
Ubuntu 20.04.2
在一台有 10 年历史的 HP(x64) 上,也在普通台式机(x64) 上
当我到达:Sudo apt install wminput
错误消息 E:无法找到包 wminput
所以失败了
Ubuntu 20.10
当我尝试在 Raspberry pi400(ARM) 上运行
sudo wminput -c /etc/cwiid/wminput/gamepad
我收到错误:分段错误
所以失败了
Ubuntu 21.04(Wayland)
在 raspberry pi400(ARM) 和旧的 HP(x64) 上我得到了相同的结果
尝试运行时:sudo wminput -c /etc/cwiid/wminput/gamepad
我收到错误信息:
导入错误:/usr/lib/python3/dist-packages/cwiid.cpython-39-x86_64-linux-gnu.so:未定义符号:PyVarObject_CallFunction
所以失败了
Ubuntu 21.04(在 X11 上)
这里没有测试过,下次我将尝试解决这个问题。
Raspberry PI OS(2021 年 3 月 4 日)
在 raspberry pi400 上。当我尝试运行 wmgui 时,我遇到了意外的写入错误。所以这里没有什么乐趣。只是简单地探索了一下,而且是在电池快没电的时候。
包含 Raspberry PI OS,如果它在这里可以运行,那么为什么 Ubuntu 不行。