ID( usb设备的ID,是设备厂商的唯一标识)相同,即多个串口的ATTRS{idVendor}, ATTRS{idProduct}相同。使用USB一转多或者相同厂商的USB串口,可能出现ID相同。
-
ls -l /dev | grep ttyUSB 查看需要映射的串口名
-
udevadm info --attribute-walk --name=/dev/ttyUSB0 |grep KERNELS
-
比如USB0:
-
-
USB1:
-
-
根据串口名寻找不同串口设备的差异点
-
way2: ls -l /sys/class/tty
-
-
关键在于寻找设备的差异点,以便区分出不同设备
-
以上,可以看出两个设备的KERNELS值不同,那么我们就可以根据这个值,来区分不同设备。
-
创建serial.rules ,编辑内容:
-
ACTION==“add”, KERNELS==“1-4.4”, SUBSYSTEMS==“usb”,MODE:=“0666”,SYMLINK+=“base_ctl”
-
创建create_udev_rules.sh,编辑内容:
#!/bin/bash
echo “remap the device serial port(ttyUSB1) to base_ctl”
echo “base_ctl usb connection as /dev/base_ctl, check it using the command : ls -l /dev|grep ttyUSB”
echo “start copy serial.rules to /etc/udev/rules.d/”
sudo cp serial.rules /etc/udev/rules.d
echo " "
echo “Restarting udev”
echo “”
sudo service udev reload
sudo service udev restart
echo "finish "
- 在该目录下,打开终端,执行 . create_udev_rules.sh :
- reboot
end.