如何让 Xbox One 控制器与 16.04 兼容(不是 Steam)

如何让 Xbox One 控制器与 16.04 兼容(不是 Steam)

我全新安装了 Ubuntu 16.04,并从 GOG 下载了一款名为 Transistor 的游戏。我买了一个无线 Xbox One 控制器来玩这种游戏。据我所知,Ubuntu 尚不支持此控制器的无线功能,因此我使用 [已知可工作的] micro-usb > usb 适配器将其插入。

  • 我已成功安装游戏。我可以用键盘/鼠标玩。点击游戏设置中的控制器图标没有任何反应。

  • 我已经安装了“Ubuntu xboxdrv integration”,现在我的设置菜单中有一个操纵杆选项。它列出了四个 360 控制器,但它们均不响应控制器的输入。

  • 当我输入时,lsusb它列出了“Microsoft”作为已连接项之一。我断开了控制器的连接,条目消失了,所以我知道系统正在查看控制器。当我将其插入时,它会发出一阵轰隆声。

  • 如果我按下“X”(连接)按钮,它会闪烁近 30 秒。

据我所知,有线控制器,甚至是 Xbox One 控制器,都可以与较新版本的 Ubuntu 兼容。有人能告诉我我没有做什么或从哪里开始查找吗?我假设操作系统安装了较新的内核。

我输入了,但列表中lsmod没有ubuntu-xboxdrvxboxdrv甚至。我输入终端,被告知无法加载,因为没有文件或目录。输入也说找不到它。(我也尝试了两者。)xpadinsmod ubuntu-xboxdrvmodprobe ubuntu-xboxdrvxboxdrv

据我所知,它不是已加载的模块是罪魁祸首。我怎么知道它是否ubuntu-xboxdrv是模块的名称?我通过重新安装检查了安装是否成功。我如何找到它去了哪里?

答案1

OP 对自己问题的解决方案

首先,我读到,对于高于 4.1* 的内核(我检查过,是 4.4*),xboxdrv 不再适用于 xbox one 控制器。

看来 xpad 得到了 Steam 的青睐,所以它不再像以前那么过时了。我不知道它比 xboxdev 损失了什么,但我只想让控制器能正常工作。

我的控制器是较新的固件版本,称为 Covert Forces Edition。由于它的固件较新,因此需要一个补丁,我发现 这里

sudo apt-get install git
sudo apt-get install dkms
sudo git clone https://github.com/paroj/xpad.git /usr/src/xpad-0.4
sudo dkms install -m xpad -v 0.4

一切似乎都很好。但我点击了lsmod,但xpad仍然没有加载。要加载它,我输入:

sudo modprobe xpad

这给了我一个新错误,无法插入,因为所需的密钥不可用。通过在 BIOS 中关闭安全启动可以解决这个问题。

sudo modprobe xpad再次输入,没有确认,也没有投诉。我查看了下lsmod,瞧,列表顶部是xpad!我猜这是 mod 版本,因为现在在设置中的操纵杆菜单下,它作为第 5 个控制器出现,该死的东西有反应。“X”亮起,按钮工作。

答案2

  1. 安装sysfsutils- sudo apt install sysfsutils
  2. 使用以下方式打开配置文件gksu gedit /etc/sysfs.conf
  3. 添加此行sysfs.conf–>module/bluetooth/parameters/disable_ertm = 1
  4. 保存并重新启动。

相关内容