Manjaro 和 DualShock 3
Posted
技术标签:
【中文标题】Manjaro 和 DualShock 3【英文标题】:Manjaro and DualShock 3 【发布时间】:2018-10-14 16:02:27 【问题描述】:我最近安装了 Manjaro,希望得到一个不是 ubuntu 或 debian 派生但方便使用的 linux。
我正在使用 Manjaro 4.14.74-1 和肉桂。
当我插入 DualShock 3 控制器(游戏手柄)时,大多数 Linux 会立即识别出来,并且在第一次尝试时就可以使用。
但 Manjaro 会将其识别为 USB 设备(在 lsusb 中列为“DualShock 3”)但没有 evdev 或类似的东西可以使用它。
所以它无法将其识别为控制器,或者我可能没有所需的内核模块或类似的东西,但我真的不知道该怎么做。
如何让我的 dualshock 3 工作?
谢谢
编辑:
运行mhwd -lh -d --usb
有以下输出:
10: USB 00.0: 0000 Unclassified device
SysFS ID: /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0
SysFS BusID: 3-1:1.0
Hardware Class: unknown
Model: "Sony Batoh Device / PlayStation 3 Controller"
Hotplug: USB
Vendor: usb 0x054c "Sony Corp."
Device: usb 0x0268 "Batoh Device / PlayStation 3 Controller"
Revision: "1.00"
Driver: "usbhid"
Driver Modules: "usbhid"
Speed: 12 Mbps
Module Alias: "usb:v054Cp0268d0100dc00dsc00dp00ic03isc00ip00in00"
Attached to: #7 (Hub)
【问题讨论】:
你能检查一下你是否有 hid-sony 内核模块吗? 是的,我愿意。 /lib/modules/4.14.77-1-MANJARO/kernel/drivers/hid/hid-sony.ko.xz 所以看起来如果在我启动时插入了 ds3 控制器,则所需的模块已正确加载并且我能够使用它。但是如果我在我的系统启动后插入控制器,那么我会遇到解释的问题。如果我尝试 sudo modprobe hid-sony 或 hid_sony,那么 modprobe 找不到模块 【参考方案1】:我认为问题在于,“uname -r”与模块的目录名称和内核的实际版本不匹配。
我可以用符号链接修复它。我跑了sudo modprobe hid_sony
,我得到了类似的东西
modprobe:致命:在目录 /lib/modules/4.14.78-1-MANJARO 中找不到模块 hid-sony
但实际的内核版本是 4.14.79-1-MANJARO,所有模块的现有目录的名称也是如此。所以我跑了
sudo ln -s /lib/modules/4.14.79-1-MANJARO/ /lib/modules/4.14.78-1-MANJARO
sudo depmod -a`
现在它可以正常工作了。此修复可能会持续到我下次升级内核时,但它快速简单并且可以完成工作。
【讨论】:
以上是关于Manjaro 和 DualShock 3的主要内容,如果未能解决你的问题,请参考以下文章
如何编写使用 Sony Dualshock 4 控制器数字和模拟输入的 Android 应用程序?
IOKit:未收到来自与蓝牙连接的 DualShock 4 控制器的 HID 中断报告