如何通过USB使PS3 Sixaxis控制器工作?

我正在尝试让PS3 Sixaxis控制器在Ubuntu 12.04上工作。Ubuntu的维基页面上说要安装QtSixA,我已经安装了。现在的问题是如何使用这个控制器。我安装了"SuperTux 2"来测试它。通常情况下,SuperTux会显示没有游戏手柄。当我插入PS3控制器并点击扫描时,它会显示所有的控制按钮及其对应的按键。然后我可以点击一个动作,它会提示我按下想要分配的按钮。问题是按下控制器上的按钮没有任何反应。我无法将任何动作分配给控制器上的按钮。
同样的情况也适用于PCSX模拟器。我可以配置控制器,并从下拉菜单中选择索尼Playstation(R)3控制器,但是当我尝试分配按钮时,按下PS3控制器上的按钮没有任何反应。
在网上,我看到很多关于如何通过蓝牙连接的指南,但是我的电脑没有蓝牙适配器,所以我只想通过USB连接。
此外,QtSixA也能识别到这个控制器。我可以"配置默认配置文件",我已经尝试过了,但是SuperTux 2和PCSX都没有任何不同的反应...

更新: 根据Ubuntu社区六轴手柄指南的指导,我尝试了sudo apt-get install libusb-dev libusb-0.1-4 xserver-xorg-input-joystick,然后编译了sixpair。运行sudo ./sixpair会提示启用蓝牙,然后当我点击扫描时,SuperTux 2无法再找到控制器。

在阅读了这篇文章之后,我发现我必须按下PS按钮才能使其工作... 好吧,对于将控制器用作POINTER设备来说,这很好用。现在我可以使用模拟摇杆让屏幕上的鼠标跳舞了。但是我仍然不确定如何在SuperTux 2和PCSX中使用它...

当我没有安装xserver-xorg-input-joystick时,按下PS按钮会使其连接到另一个房间的PS3作为第二个控制器。对于目前发生的事情,我感到非常困惑...

4个回答

我已经了解一些相关信息,我认为最好直接使用蓝牙连接PS3手柄。看一下这个链接

我已经阅读了你的限制条件,但我仍然认为你需要使用蓝牙。你可以购买一个蓝牙USB适配器,它们很便宜 (dealextreme.com/p/…)


很遗憾,我无法使用蓝牙,正如我在问题中所说明的。在阅读文章后,我没有看到任何提到连接蓝牙比USB更好的内容。也许你可以更新你的回答以包含这一点?不过还是谢谢你的帮助! :) - drdrez
1我看了你的限制,但我还是认为你需要使用蓝牙。买一个蓝牙USB适配器,它很便宜(http://www.dealextreme.com/p/super-mini-bluetooth-2-0-adapter-dongle-vista-compatible-11866)。 - logoff
1通过蓝牙连接会更好,因为这样可以将电脑添加到控制器开机后会自动搜索的设备列表中(比如当你按下PS按钮时打开PS3),如果我说的没错的话。 - Phurl

我不确定这个方法是否有帮助,但当我设置我的PS2手柄来玩模拟器时,我使用了jstest-gtk
在jstest-gtk和模拟器(我使用ZSNES)之间设置需要一些时间。在通过jstest-gtk成功读取手柄后,我必须进入模拟器并分配所有按钮。(我原以为它会自动识别手柄,但实际上没有。)它运行得很好,我没有遇到任何问题。
就像我说的,我不知道这种方法是否适用于PS3手柄,但值得一试。

我测试了PS2->PS3适配器(使PS2控制器看起来像通过USB电缆连接的PS3控制器),根据jstest-gtk,箭头向左的按钮(按钮7)缺少模拟轴。这是否符合预期或可能是jstest-gtk的一个错误? - Mikko Rantalainen

我安装了joy2key,它可以直接从Debian的软件库中安装。一旦安装完成,在运行程序/模拟器之前,你需要运行joy2key --dev /dev/input/[设备号] --terminal来配置模拟摇杆。(虽然后面有一种方法可以避免这个步骤,但我还没有研究如何编写配置文件)。然后你就可以使用它了,我在MAME和其他模拟器上使用它,但是我还不能让它在某些snes模拟器上工作,希望对那些需要通过USB端口使用它的人有所帮助。

我可以确认,在10月14日,joy2key在仅支持USB的情况下完美运行,您可以使用jstest-gtk来查找设备编号并测试功能。 - user276488

你需要在终端中运行这个命令:
sudo xboxdrv --detach-kernel-driver 

看一下this


虽然这个回答在理论上可能是正确的,但最好还是在这里包含回答的关键部分,并提供链接作为参考。 - Thomas Ward