罗技无线手柄F710绑定映射为/dev/joystick

罗技无线手柄F710绑定为/dev/joystick

在使用手柄进行ROS开发时,一般手柄默认的端口是/dev/input/js0,可以将端口名写在配置文件中使用。但是如果右多个类似的设备的时候,手柄的端口可能是/dev/input/js1等,导致连接失败。可以将手柄绑定映射为/dev/joystick就可以避免出现该问题。
类似的方法可以应用于多个不同的串口设备,如果计算机接上了两个不同的USB转TTL设备,对应的端口号可能为/dev/ttyUSB0和/dev/ttyUSB1,如果直接使用/dev/ttyUSB0也可能会导致连接失败,配置方法可以查看我的博客 Ubuntu 使用USB串口等设备

查看设备信息

罗技无线手柄F710有两种模式,分别是X模式和D模式,可以在手柄的前面侧方位置通过拨码开关的方式选择不同的模式。在命令行使用lsusb查看设备信息:
当手柄处于X模式时,执行lsusb会得到手柄的信息

$ lsusb
Bus 002 Device 002: ID 05e3:0612 Genesys Logic, Inc. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 046: ID 046d:c21f Logitech, Inc. F710 Wireless Gamepad [XInput Mode]
Bus 001 Device 006: ID 046d:c31c Logitech, Inc. Keyboard K120
Bus 001 Device 005: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 001 Device 004: ID 05e3:0610 Genesys Logic, Inc. 4-port hub

其中Bus 001 Device 046: ID 046d:c21f Logitech, Inc. F710 Wireless Gamepad [XInput Mode]是手柄。
当手柄处于D模式时,执行lsusb会得到手柄的信息

$ lsusb
Bus 002 Device 002: ID 05e3:0612 Genesys Logic, Inc. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 047: ID 046d:c219 Logitech, Inc. Cordless RumblePad 2
Bus 001 Device 006: ID 046d:c31c Logitech, Inc. Keyboard K120
Bus 001 Device 005: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 001 Device 004: ID 05e3:0610 Genesys Logic, Inc. 4-port hub

其中Bus 001 Device 047: ID 046d:c219 Logitech, Inc. Cordless RumblePad 2是手柄。

配置rules文件

新建/etc/udev/rules.d/joystick.rules文件,将下述文本复制到该文件中(要使用sudo权限,如sudo vim /etc/udev/rules.d/joystick.rules)

KERNEL=="js*",SUBSYSTEM=="input", ATTRS{idVendor}=="046d",  ATTRS{idProduct}=="c21*", MODE:="0666", GROUP:="dialout", SYMLINK+="joystick"

重新插拔遥控手柄的接收器,查看是否设置成功

$ ll /dev | grep joy
lrwxrwxrwx  1 root   root             9 1130 20:13 joystick -> input/js0

如果设置成功,无论手柄处于X模式还是D模式,手柄都会映射为/dev/joystick

测试(可选)

使用 jstest 测试映射是否成功

sudo apt install jstest-gtk
sudo jstest /dev/joystick
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值