树莓派玩游戏,新手教程如何设置Xbox手柄

如果你曾经尝试过在树莓派上使用Xbox手柄,你应该知道他们配合的并不好,不是开箱即用的。为了让它们正常工作,需要安装一个特殊的驱动程序。这篇文章就记录下在树莓派上安装Xbox手柄的详细步骤。

xboxcontrollers-thumbnail.png

较新的具有蓝牙功能的Xbox One控制器,需要在安装驱动的基础上进行额外的工作才行。

设备清单

下面是我在这个设置Xbox控制器教程中使用的所有零部件。

建议:

可选:

安装Xbox手柄的方法

有三种不同的方式可以将Xbox One和Xbox 360控制器连接到Raspberry Pi上,最简单的两种连接方式是通过USB线或使用官方的无线适配器。

Xbox控制器USB无线适配器

Xbox USB无线适配器是连接控制器的最简单方法,同时还有无线功能。如果想使用无线Xbox 360控制器或利用第一代Xbox One控制器的无线功能,也需要这个选项。

请注意,Xbox 360控制器和Xbox One控制器使用不同的USB适配器。

蓝牙

使用蓝牙仅是Xbox One S发布时推出的较新的Xbox One控制器的可行选项。使用蓝牙需要几个不同的步骤才能正确工作。

如果想知道如何将Xbox One蓝牙控制器连接到树莓派上,那么请继续往下看。

USB线

USB是设置Xbox One控制器的最简单的方法。但是,如果使用360控制器,只能使用有线的方式,因为它上面的端口只是用来充电的。

只需将Micro USB线插入Xbox One控制器,USB-A端插入Raspberry Pi。

设置树莓派适配Xbox手柄

1. 在开始之前,应该通过在终端中运行以下两个命令来确保Raspberry Pi是最新的。这些命令会更新所有的软件包。

sudo apt-get update
sudo apt-get upgrade

2. 虽然不一定需要再安装xboxdrv,因为Xpad驱动现在已经包含在Raspbian的内核中,有些早期的树莓派可能没有,还是安装一下。

要安装与Xbox One和Xbox 360控制器交互的userland驱动程序,在树莓派的终端中键入以下命令。

sudo apt-get install xboxdrv

将蓝牙Xbox手柄与树莓派配对

1.  在将蓝牙Xbox控制器与树莓派配对之前,请确保已经安装了驱动程序,就像在前面的部分提到的那样。

安装了驱动程序后,就可以开始配对的过程了。首先在Raspberry Pi上运行以下命令。

该命令禁用蓝牙模块的增强型再传输模式(ERTM),启用它后,Xbox手柄会无法正确配对。

echo 'options bluetooth disable_ertm=Y' | sudo tee -a /etc/modprobe.d/bluetooth.conf

2. 为了让这个改变生效,需要重新启动Raspberry Pi。在Raspberry Pi上运行以下命令来重启它。

sudo reboot

3. 现在Raspberry Pi已经启动,可以将蓝牙Xbox One手柄与Raspberry Pi配对。

为了能够配对Xbox One手柄,需要在Raspberry Pi上运行以下命令来启动蓝牙工具。

sudo bluetoothctl

4. 在蓝牙工具中,可以运行一些不同的命令,找到并配对蓝牙Xbox One控制器。首先输入以下两行来开启代理。

agent on
default-agent

5. 完成后就可以开始扫描设备了,只需输入以下命令即可开始扫描过程。

scan on

一旦扫描过程开始,应该开始看到终端内弹出可发现的蓝牙设备。

6. 按下位于Xbox One控制器前面的同步按钮,应该会看到一个新的条目出现在Raspberry Pi的命令行上,比如下面。

注意控制器的 MAC 地址。MAC 地址是用冒号”: “分隔的十六进制数字。

[NEW] Device B8:27:EB:A4:59:08 Wireless Controller

7. 有了蓝牙Xbox One控制器的MAC地址,现在就可以通过树莓派的蓝牙协议栈与它进行连接了。

键入以下命令,确保将 “YOUR_MAC_ADDRESS “替换为步骤6中在控制器上启动同步过程时出现的命令。在我的例子中,是B8:27:EB:A4:59:08。

connect YOUR_MAC_ADDRESS

8. 现在,与控制器连接成功,应该会看到Raspberry Pi上的命令行出现以下内容。

Attempting to connect to B8:27:EB:A4:59:08
[CHG] Device B8:27:EB:A4:59:08 Modalias: usb:v054Cp0268d0100
[CHG] Device B8:27:EB:A4:59:08 UUIDs:
        00001124-0000-1000-8000-00805f9b34fb
        00001200-0000-1000-8000-00805f9b34fb

9. 与Xbox One控制器成功连接后,需要将其添加到受信任设备列表中。这样做可以让Xbox One控制器自动重新连接到树莓派的蓝牙。

需要在Raspberry Pi上运行以下命令。确保将 “YOUR_MAC_ADDRESS “替换为步骤8中用于连接设备的相同MAC地址。

trust YOUR_MAC_ADDRESS

10. 已经配对了蓝牙Xbox One控制器,可以输入 “quit “或按Ctrl + D退出bluetoothctl软件。

11. 现在安装操纵杆工具集。这个工具集将检查Xbox One控制器是否正常工作。在Raspberry Pi上运行以下命令来安装它。

sudo apt-get install joystick

12. 随着操纵杆工具集现在被安装到Raspberry Pi上,可以测试控制器是否正常工作。运行以下命令来测试设置为js0的操纵杆。

sudo jstest /dev/input/js0

应该看到一个屏幕,上面有一堆数字,移动和按下按钮应该会改变屏幕上的文字。如果有变化,就表示控制器已经完全设置好了。

用Xbox控制器控制Raspberry Pi

如果想用Xbox控制器控制Raspberry Pi,只需在终端中使用以下命令即可。这个命令可以让Xbox控制器与电脑进行交互,并将使其模仿鼠标。

sudo xboxdrv --detach-kernel-driver --silent --mouse

运行了该命令后,现在应该可以用Xbox控制器控制Raspberry Pi上的鼠标了,下面的按钮与特定的鼠标动作时绑定的。

  • A:左键
  • B:右键单击
  • X:鼠标中点
  • Y:进入
  • Left Joystick:鼠标移动
  • Right Joystick:滚轮
  • D-Pad:箭头键
  • Start:前进
  • Back:返回
  • LB: Page up
  • RB: Page down

希望在本指南结束时,您已经可以用Xbox手柄和树莓派愉快地玩耍了。

在树莓派上玩游戏的时候,有了这个手柄会爽很多。

如果对本教程有任何反馈或需要帮助,请在下方留言。

平均: 5 / 5. votes: 2

到目前为止还没有投票!成为第一位评论此文章。

欢迎转载,请留下出处链接:Labno3 » 树莓派玩游戏,新手教程如何设置Xbox手柄

赞 (2)

评论

5+8=