为什么我的 USB 调制解调器会生成多个 /dev/ttyUSB* 文件?那么,我必须选择哪一个来执行 AT 命令呢?

为什么我的 USB 调制解调器会生成多个 /dev/ttyUSB* 文件?那么,我必须选择哪一个来执行 AT 命令呢?

在此输入图像描述为什么我的 USB 调制解调器会生成多个 /dev/ttyUSB* 文件?那么,我必须选择哪一个来执行 AT 命令呢?

我在Linux系统中使用SIM7600模块。这是我的 lsusb 输出。

答案1

USB 设备可以提供多个USB 接口,例如USB 3G/4G 调制解调器可以模拟USB 以太网适配器和包含主机操作系统驱动程序的CD-ROM 设备。这就是你所看到的。

就像 AdminBee 所说,您可以使用lsusb输出来检查您实际正在处理的内容。

您还可以使用这篇 Debian wiki 文章来了解如何识别 USB 端口:

https://wiki.debian.org/HowToIdentifyADevice/USB

最后确保您拥有最新版本http://www.linux-usb.org/usb.ids安装。

答案2

下面是一个获取 AT 调制解调器特定地址的简单脚本。我正在连接到所有可能的 ttyUSBx 端口并尝试发送 AT 命令。脚本需要 picocom >= v3.0

#!/usr/bin/env bash

for tty in $(ls /dev/ttyUSB*); do
    echo "Checking $tty"
    picocom -qrX -b 9600 $tty
    sleep 1
    result=$(echo "AT&F" | picocom -qrix 1000 $tty)
    if [ "$result" = "AT&F" ]; then
        echo "Found AT compatible modem at $tty"
    else
        echo "No AT compatible modem at $tty"
    fi
done

相关内容