2023年2月27日
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.