在 kubuntu 中使用蓝牙游戏控制器

在 kubuntu 中使用蓝牙游戏控制器

如何使用蓝牙游戏控制器在 kubuntu 12.04 中玩游戏?

具体来说,我想使用 wii 控制器玩游戏,但也可以访问 ps3 和 xb360 控制器。我安装了 wmgui、lswm 和 wminput。它们似乎都能完成它们应该完成的工作,但我只想玩 mednafen 和 kobo。Kubuntu 不允许我将其用作操纵杆,并显示“nintendo 控制器不在 /dev/ 中”之类的信息。

我对 Linux 还不太熟悉,不太习惯从命令行更改系统设置。是的,我可以做到,但如果事情不顺利,我必须记住要改回什么、如何改回以及改回什么。我以前不得不重新安装 Linux,因为错误的设置破坏了系统的稳定性,我不想再犯同样的错误了。

有没有一个实用程序可以让我连接、配置和使用蓝牙控制器?我知道大多数人认为在 Linux 上玩游戏很愚蠢,但我觉得自己用键盘玩 mednafen 很愚蠢。一个使用目前市场上三种主要控制器(wii、ps3、xb360)的一体化程序对使用 Linux 的游戏玩家非常有帮助,并且肯定会帮助更多人认为 Linux 游戏是个好主意。这样的程序已经存在了吗?

以下编辑已添加 2013 年 1 月 25 日

@Grumbel - 感谢您的快速回复。您的建议非常有帮助。

这是我为了让 Wii 控制器正常工作所做的事情:

1- 将蓝牙无线电连接到计算机。2-
使用包管理器查找并安装“wminput”和“wmgui”
3- 重新启动以确保万无一失(不确定是否有必要)
4- 使用 wmgui 确认 Wii 遥控器正常工作。5-
将“/etc/cwiid/wminput/buttons”复制到“/home/[username]/Documents”
6- 更改复制的按钮文件以满足我的需求(详情如下)
7- 打开终端
8- 运行“sudo wminput -c /home/[username]/Documents/buttons”
9- 玩 Kobo 一会儿(调整按钮文件中的设置)
10- 启动 Mednafen11-
使用 ALT+SHIFT+[number] 在 Mednafen 中配置按钮映射
12- 玩 Mednafen,玩得开心

要停止 wminput,请按住 wii 遥控器上的电源按钮。然后,您可以调整配置文件中的不同按钮设置。保存配置并使用与之前相同的命令重新启动 wminput。

以下是我的按钮文件中的内容:

==========================================================
#自定义按钮

插件.led.Led1 = 1
插件.led.Led4 = 1

Wiimote.A = BTN_LEFT
Wiimote.B = BTN_RIGHT
Wiimote.Up = KEY_LEFT
Wiimote.Down = KEY_RIGHT
Wiimote.Left = KEY_DOWN
Wiimote.Right = KEY_UP
Wiimote.Minus = KEY_BACKSPACE
Wiimote.Plus = KEY_ENTER
Wiimote.Home = KEY_TAB
Wiimote.1 = KEY_RIGHTSHIFT
Wiimote.2 = KEY_RIGHTCTRL

Nunchuk.C = KEY_LEFTSHIFT
Nunchuk.Z = KEY_LEFTCTRL

Classic.Up = KEY_UP
Classic.Down = KEY_DOWN
Classic.Left = KEY_LEFT
Classic.Right = KEY_RIGHT
Classic.Minus = KEY_BACKSPACE
Classic.Plus = KEY_ENTER
Classic.Home = KEY_TAB
Classic.A = BTN_LEFT
Classic.B = BTN_RIGHT
Classic.X = KEY_X
Classic.Y = KEY_Y
Classic.ZL = BTN_LEFT
Classic.ZR = BTN_RIGHT
Classic.L = KEY_L
Classic.R = KEY_R

=======================================================

我已打开遥控器上的 LED 指示灯 1 和 4,因此我知道遥控器已打开并连接到我的电脑,而不是连接到 Wii。我相信有更好的方法来配置它,但到目前为止,这种方法对我来说很有效。我还没有测试过双节棍或经典控制器,但我确实怀疑它们会正常工作。

我也想过像这样使用 wminput:

“sudo wminput -d -c /home/[用户名]/Documents/buttons”

这样,只要按下 wii 遥控器上的 1 和 2 按钮,它就会自动连接。有没有办法在启动时自动发出此命令?

答案1

对于 Wiimotewmguiwminput朋友来说,这是正确的选择。首先要做的是使用wmgui并尝试连接控制器,如果它工作并且所有按钮都有响应,那么您可以继续wminput并尝试将它们映射到操纵杆。wminput已经附带了一堆示例配置,它们可以像这样使用:

$ wminput -c /etc/cwiid/wminput/gamepad

或者

$ wminput -c gamepad

当您没有提供完整的补丁时,wminput 将在其中查找配置~/.cwiid/wminput/gamepad,因此您应该在那里存储您的自定义配置。

wminput 的手册页:

$ man wminput

包含更多信息。

对于 PS3 控制器,您将需要:

Xbox360 控制器不是蓝牙,而是微软自己的协议,因此您首先需要 Microsoft Wireless Receiver USB 适配器。之后,它们可以使用标准内核开箱即用。但是,您可以使用以下方式获得更多配置:

一般来说,如果你想确保你的操纵杆在 Linux 中设置正确,你需要尝试一下evtestjstest它们位于 evtest 和 joystick 包中)。它们的使用方式如下:

$ evtest /dev/input/event0

$ jstest /dev/input/js0

不同的设备使用不同的数字。js 内容只是操纵杆,因此通常应该只有 js0,但事件接口包含计算机上将发送输入事件、键盘、鼠标等的所有内容。因此有很多不同的事件设备,您必须尝试所有设备才能找到您的操纵杆,如果最后插入,它通常是最后一个。

相关内容