FTDI的UDEV规则不完全正常

我知道这个问题已被多次询问,但我无法使其发挥作用。 我有一个FTDI串口USB转换器。 我在/etc/udev/rules.d/生成了10-fhss-usb.rules /etc/udev/rules.d/

 SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="FTTA5DMA", SYMLINK+="fhss", GROUP="dialout", MODE="0777", RUN+="echo USB CONNECTED!" 

我还将我的用户添加到了dialout组:

sudo usermod -a -G dialout $ USER

groups $USER返回:

 jvgomez : jvgomez adm dialout sudo plugdev lpadmin sambashare 

(plugdev组是在另一篇文章之后创建的)现在,当我连接USB时,运行ls -al我可以看到:

 $ ls -al /dev/fhss lrwxrwxrwx 1 root root 7 Jun 4 17:13 /dev/fhss -> ttyUSB0 $ ls -al /dev/ttyUSB0 crw-rw-r-- 1 root dialout 188, 0 Jun 4 17:13 /dev/ttyUSB0 

echo USB CONNECTED! 消息永远不会显示。 当我使用screen /dev/fhss/它立即说[screen is terminating] 。 为了使它工作,我必须运行chmod

 $ sudo chmod a+rwx /dev/fhss 

现在:

 $ ls -al /dev/ttyUSB0 crwxrwxrwx 1 root dialout 188, 0 Jun 4 17:13 /dev/ttyUSB0 

1)我错过了什么? 我仍然需要运行chmod,这是我想要避免的。 2)使用SUBSYSTEM=="tty"SUBSYSTEM=="usb"什么区别?

欢迎任何帮助!

编辑:添加NAME =“my_device”如Usb中提出的udev规则从未为我工作过没有改变任何东西。

要在Ubuntu上进行FTDI突破:

使用root权限打开文件/ etc / group:

 sudo nano /etc/group 

之后,搜索tty:x5:dialout:x20:

将您的用户添加到此论坛,在每行前面输入您的用户名:

tty:x5:

dialout:x20:

您还可以使用接下来的两个命令来避免搜索文件:

 sudo usermod -aG tty  sudo usermod -aG dialout  

其中 ,是您的用户名。

最后,重新启动计算机。

如果要使用udev规则,请连接FTDI模块,然后运行:

 lsusb 

这将显示vendorID和productID。 例如:

 Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub 

其中8087是vendorID,0024是productID。

然后,创建一个这样的规则:

 ATTRS{idVendor}="8087", ATRRS{idProduct}="0024", MODE="0660", GROUP="dialout" 

我在Bit Bang模式下使用FT232RL芯片并遇到了相同的权限问题。 由于我不理解的原因,上面提出的规则对我不起作用。 然而,通过一些修改,我得到了它的工作。

希望这可以对某人有所帮助:

$ lsusb

Bus 001 Device 023: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

如上所述,我将用户添加到了dialouttty$ sudo usermod -aG dialout $USER $ sudo usermod -aG tty $USER

但是,/ /etc/udev/rules.d/99-libftdi.rules的行是不同的:

ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS="idProduct"=="6001", OWNER="user", MODE="0777", GROUP="dialout"

可能是关键的区别是SUBSYSTEM=="usb"