USB设备端口绑定

环境:

Ubuntu16.04 64位

USB接口IMU设备

在Ubuntu系统的使用中,没有对USB进行设备进行绑定的话,每次插拔或者顺序的不同,都会造成ttyUSB端口号的改变,不利于实际应用,一劳永逸地方法就是对其进行绑定。

1.插入USB设备,并且使用lsusb终端命令

其中

Bus 003 Device 006: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light  这条就是imu设备

2.在/etc/udev/rules.d/目录下创建自己的robot.rules文件,文件名自行设定即可

比如sudo vim /etc/udev/rules.d/usb.rules

文件usb.rules内容为

KERNEL=="ttyUSB*",ATTRS{idProduct}=="ea60",ATTRS{idVendor}=="10c4", MODE:="0777", SYMLINK+="imu"

如果设备生成厂商ID和产品ID相同,可以使用KERNELS字段,使用以下命令查询串口详细信息:

udevadm info --attribute-walk --path=/sys/bus/usb-serial/devices/ttyUSB0

rules内容如下:

KERNEL=="ttyUSB*",KERNELS=="1-2.3.2:1.0",MODE:="0777",SYMLINK+="rtcm"
KERNEL=="ttyUSB*",KERNELS=="1-2.3.3:1.0",MODE:="0777",SYMLINK+="rtk"

3.保存完成后,以root权限打开终端执行

sudo service udev reload
sudo service udev restart

创建生效后重新插拔USB.