我有一个PYNQ-Z2板,它包含FT2232HQ芯片,可以将数据从USB转换到JTAG和UART。
问题是板正在工作,并被Vivado检测到(我可以编程),但是设备没有显示为/dev/ttyUSB*
设备,它显示为/dev/ftdi-x
(其中x是随机数),并且我不能用这个设备文件打开一个串口。
我使用了lsusb
命令,并发现芯片被正确检测到:
Bus 003 Device 017: ID 0403:6010 Future Technology Devices International, Ltd FT2232C Dual USB-UART/FIFO IC
在那之后,我试着检查syslog文件,我注意到了两种奇怪的行为,第一种是当我连接板时,识别出两个ttyUSB设备,而不是一个!/dev/ttyUSB0
& /dev/ttyUSB1
。
第二种行为是这两个设备在连接后立即断开连接。
下面是完整的syslog
Oct 27 11:45:20 ao20xa kernel: [73109.798748] usb 3-4: new high-speed USB device number 17 using xhci_hcd
Oct 27 11:45:21 ao20xa kernel: [73109.949757] usb 3-4: New USB device found, idVendor=0403, idProduct=6010
Oct 27 11:45:21 ao20xa kernel: [73109.949761] usb 3-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Oct 27 11:45:21 ao20xa kernel: [73109.949763] usb 3-4: Product: TUL
Oct 27 11:45:21 ao20xa kernel: [73109.949765] usb 3-4: Manufacturer: Xilinx
Oct 27 11:45:21 ao20xa kernel: [73109.949767] usb 3-4: SerialNumber: 1234-tul
Oct 27 11:45:21 ao20xa kernel: [73109.950844] ftdi_sio 3-4:1.0: FTDI USB Serial Device converter detected
Oct 27 11:45:21 ao20xa kernel: [73109.950899] usb 3-4: Detected FT2232H
Oct 27 11:45:21 ao20xa kernel: [73109.951100] usb 3-4: FTDI USB Serial Device converter now attached to ttyUSB0
Oct 27 11:45:21 ao20xa kernel: [73109.951815] ftdi_sio 3-4:1.1: FTDI USB Serial Device converter detected
Oct 27 11:45:21 ao20xa kernel: [73109.951861] usb 3-4: Detected FT2232H
Oct 27 11:45:21 ao20xa kernel: [73109.952058] usb 3-4: FTDI USB Serial Device converter now attached to ttyUSB1
Oct 27 11:45:21 ao20xa mtp-probe: checking bus 3, device 17: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-4"
Oct 27 11:45:21 ao20xa mtp-probe: bus: 3, device: 17 was not an MTP device
Oct 27 11:45:21 ao20xa systemd-udevd[18701]: Process '/bin/sh -c 'basename $(dirname $(realpath /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/device)) > /sys/bus/usb/drivers/ftdi_sio/unbind'' failed with exit code 1.
Oct 27 11:45:21 ao20xa kernel: [73110.089464] ftdi_sio ttyUSB1: FTDI USB Serial Device converter now disconnected from ttyUSB1
Oct 27 11:45:21 ao20xa kernel: [73110.089536] ftdi_sio 3-4:1.1: device disconnected
Oct 27 11:45:21 ao20xa kernel: [73110.089818] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
Oct 27 11:45:21 ao20xa kernel: [73110.089865] ftdi_sio 3-4:1.0: device disconnected
Oct 27 11:45:21 ao20xa snapd[16139]: hotplug.go:199: hotplug device add event ignored, enable experimental.hotplug
Oct 27 11:45:21 ao20xa upowerd[1835]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0
Oct 27 11:45:21 ao20xa snapd[16139]: hotplug.go:199: hotplug device add event ignored, enable experimental.hotplug
Oct 27 11:45:21 ao20xa upowerd[1835]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1
Oct 27 11:45:21 ao20xa systemd-udevd[18701]: Process '/bin/sh -c 'basename $(dirname $(realpath /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/device)) > /sys/bus/usb/drivers/ftdi_sio/unbind'' failed with exit code 1.
Oct 27 11:45:21 ao20xa upowerd[1835]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4
Oct 27 11:45:21 ao20xa ModemManager[1044]: <info> (tty/ttyUSB0): released by device '/sys/devices/pci0000:00/0000:00:14.0/usb3/3-4'
Oct 27 11:45:21 ao20xa ModemManager[1044]: <info> (tty/ttyUSB1): released by device '/sys/devices/pci0000:00/0000:00:14.0/usb3/3-4'
Oct 27 11:45:21 ao20xa ModemManager[1044]: <info> Couldn't check support for device '/sys/devices/pci0000:00/0000:00:14.0/usb3/3-4': Operation was cancelled
Oct 27 11:45:21 ao20xa upowerd[1835]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0
Oct 27 11:45:21 ao20xa upowerd[1835]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1
所以,我想知道有没有人能帮我解决这个问题。
发布于 2022-01-08 11:36:38
在我的例子中,我的用户不在dialout
组中。当我说:
sudo adduser <my_user> dialout
最后,在寻找答案的几个小时之后,我终于成功地连接到了这个系列。
发布于 2022-09-16 00:44:35
正如Ian Abbot和Abady在评论中提到的那样,运行:
grep -l ftdi_sio /etc/udev/rules.d/*.rules
注释掉那里的台词也有帮助。对我来说,他们是:
#lattice
#BUS=="usb", ACTION=="add", ATTRS{idVendor}=="1134", ATTRS{idProduct}=="8001", MODE=="0666", GROUP=="plugdev", SYMLINK+="lattice-%n"
#FTDI
#SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE=="0666", GROUP=="plugdev", SYMLINK+="ftdi-%n"
#SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", RUN+="/bin/sh -c 'basename %p >/sys/bus/usb/drivers/ftdi_sio/unbind'"
似乎有一条规则导致断开连接(将ttyUSB*重命名为ftdi-*)
https://stackoverflow.com/questions/64551135
复制相似问题