ubuntu 為USB串口綁定固定的設備名


參考文件 

1.ubuntu下為usb綁定固定的設備名

2.建立USB串口別名,創建udev規則

3. UDEV命令中文翻譯

查找 usb設備和camera

# 查看 video 設備
ls /dev/video*
#查看usb 設備
ls /dev/ttyUSB*
#查看端口地址
yan@yan-virtual-machine:~$ udevadm info /dev/video0
P: /devices/pci0000:00/0000:00:15.0/0000:03:00.0/usb3/3-2/3-2.1/3-2.1:1.0/video4linux/video0
N: video0
#其中3-2.1:1.0 為端口地址
#查看usb 設備 的端口地址
udevadm info /dev/ttyUSB0

查找設備idVendor ,和id Prodcut 命令

#查看詳細信息
udevadm info --attribute-walk --name=/dev/video0 或者 lsusb

創建udev 規則

mkdir ~/arm
cd ~/arm
vim arm.rules

內容如下:

1.綁定USB 端口號

# set the udev rule , make the device_port be fixed by rplidar

ACTION=="add",KERNELS=="1-1.2:1.0",SUBSYSTEMS=="usb",MODE:="0777",SYMLINK+="imu"
ACTION=="add",KERNELS=="3-3:1.0",SUBSYSTEMS=="usb",MODE:="0777",SYMLINK+="lidar"
ACTION=="add",KERNELS=="3-2:1.0",SUBSYSTEMS=="usb",MODE:="0777",SYMLINK+="my_serial3"

ACTION=="add",KERNELS=="2-1:1.0",SUBSYSTEMS=="usb",ATTR{index}=="0",MODE:="0777",SYMLINK+="myvideo2"

缺點:固定好之后usb設備插入的usb端口不能再改變。

2.綁定USB串口號,通過USB ID來識別

KERNEL==”ttyUSB*”, ATTRS{idVendor}==”10c4”, ATTRS{idProduct}==”ea60”, MODE:=”0666”, SYMLINK+=”lidar”
KERNEL==”ttyUSB*”, ATTRS{idVendor}==”1a86”, ATTRS{idProduct}==”7523”, MODE:=”0666”, SYMLINK+=”base”

缺點: 當兩個串口芯片相同時會出現ID完全相同的情況, 例如上圖的兩個串口芯片都為
Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light
ID也都為10c4:ea60.

 

新建腳本文件

vim arm.sh
#內容如下

#!/bin/bash

sudo cp arm.rules /etc/udev/rules.d
echo " "
echo "Restarting udev"
echo ""
sudo service udev reload
sudo service udev restart
echo "finish "

 

1.運行腳本文件

sudo chmod -R 777 *
./arm.sh 

2.出現下面的信息則說明OK了
Restarting udev

finish

3.新插拔設備(或重啟)就會在/dev目錄下生成固定的設備名 ,檢查規則是否建立成功

# udevadm test [options] devpath

Simulate a udev event run for the given device, and print debug output.

 

模擬插拔事件命令

#模擬攝像頭
udevadm test /sys/class/video4linux/video0

#模擬usb設備
udevadm test /sys/class/tty/ttyUSB0
View Code

 

#查看規則生效沒有
ls -l
/dev/rplidar

出現/dev/rplidar,則說明別名成功。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM