EC200A和EC200M兩個型號的區別:
EC200ACNV1-CAT4模塊3孔轉板QTMHXB0036QD cat4:下行速率:150Mbps,上行速率:50Mbps
EC200MCNLF-CAT1模塊3孔轉板QTMHXB0037QD cat1:下行速率:10Mbps,上行速率:5Mbps
只有速率上有區別。EC200A速率比EC200M快,價格更貴。
移遠EC200A模塊linux usb驅動包下載地址:
https://www.quectel.com/download-zone/?_sft_downloads-type=usb-drivers
Quectel_LTE&5G_Linux_USB_Driver_V1.0 ZIP 5.37 MB
https://www.quectel.com/content/uploads/2024/02/Quectel_LTE5G_Linux_USB_Driver_V1.0-5.zip
下載下來後,要修改c文件,把EC200A的usb設備id添加到數組裡面,還要修改makefile裡面的內核和交叉編譯器的路徑。
編譯Quectel_Linux_USB_Serial_Option_Driver_V1.0/v5.3.1前需要開啟的內核選項(./build.sh kernel-config):
Device Drivers ---> [*] USB support ---> <*> USB Serial Converter support
編譯Quectel_LinuxAndroid_QMI_WWAN_Driver_V1.1前需要開啟的內核選項:
Device Drivers ---> [*] USB support ---> <*> USB Wireless Device Management support
在4個文件夾中分別執行make命令編譯驅動,生成下面5個ko模塊和2個用戶態程序。
Quectel_Linux_USB_Serial_Option_Driver_V1.0/v5.3.1/drivers/usb/serial/usb_wwan.ko
Quectel_Linux_USB_Serial_Option_Driver_V1.0/v5.3.1/drivers/usb/serial/option.ko
Quectel_Linux_USB_Serial_Option_Driver_V1.0/v5.3.1/drivers/usb/serial/qcserial.ko
Quectel_LinuxAndroid_GobiNet_Driver_V1.6/GobiNet.ko
Quectel_LinuxAndroid_QMI_WWAN_Driver_V1.1/qmi_wwan_q.ko
QConnectManager_Linux_V1.5/quectel-CM/quectel-CM
QConnectManager_Linux_V1.5/quectel-CM/quectel-qmi-proxy
其中,usb_wwan.ko是qcserial.ko和option.ko的依賴項。
EC200A這個USB設備上面有0-4這五個接口(interface),五個接口的名字分別為:
root@rk3308b-buildroot:/# cat /sys/bus/usb/devices/2-1/2-1:1.0/interface
Mobile RNDIS Network Adapter
root@rk3308b-buildroot:/# cat /sys/bus/usb/devices/2-1/2-1:1.1/interface
Mobile RNDIS Network Adapter
root@rk3308b-buildroot:/# cat /sys/bus/usb/devices/2-1/2-1:1.2/interface
Mobile Diag Interface
root@rk3308b-buildroot:/# cat /sys/bus/usb/devices/2-1/2-1:1.3/interface
Mobile AT Interface
root@rk3308b-buildroot:/# cat /sys/bus/usb/devices/2-1/2-1:1.4/interface
Mobile MODEM Interface
root@rk3308b-buildroot:/#
接口0和接口1(Mobile RNDIS Network Adapter)用的是linux內核自帶的RNDIS驅動(Luckfox_Nova_SDK_250430/kernel/drivers/net/usb/rndis_host.c),在AT+QCFG="usbnet",3模式下,板子開機後會自動產生usb0網絡接口。
接口2(Mobile Diag Interface)和接口3(Mobile AT Interface)用的是option.ko或qcserial.ko驅動模塊(兩個都可以用,二選一,一個模塊同時占用兩個接口),插入模塊前需要事先插入依賴項usb_wwan.ko。插入模塊後,會出現/dev/ttyUSB0和/dev/ttyUSB1兩個串口設備,分別屬於接口2和接口3。AT指令是在接口3(/dev/ttyUSB1)上收發的。
接口4(Mobile MODEM Interface)用的是GobiNet.ko或qmi_wwan_q.ko驅動模塊。兩個模塊只能二選一,如果同時插入,只有先插入的那個模塊起作用。插入GobiNet.ko模塊後會產生/dev/qcqmi1設備文件和usb1網絡接口,插入qmi_wwan_q.ko模塊後會產生/dev/cdc-wdm0設備文件和wwan0網絡接口。
用下面的命令可以看到每個接口匹配的是哪個驅動模塊。
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.0/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:00 /sys/bus/usb/devices/2-1/2-1:1.0/driver -> ../../../../../../bus/usb/drivers/rndis_host
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.1/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:01 /sys/bus/usb/devices/2-1/2-1:1.1/driver -> ../../../../../../bus/usb/drivers/rndis_host
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.2/driver
lrwxrwxrwx 1 root root 0 Dec 25 05:18 /sys/bus/usb/devices/2-1/2-1:1.2/driver -> ../../../../../../bus/usb/drivers/qcserial
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.3/driver
lrwxrwxrwx 1 root root 0 Dec 25 05:18 /sys/bus/usb/devices/2-1/2-1:1.3/driver -> ../../../../../../bus/usb/drivers/qcserial
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.4/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:06 /sys/bus/usb/devices/2-1/2-1:1.4/driver -> ../../../../../../bus/usb/drivers/GobiNet
root@rk3308b-buildroot:/root#
如果提示No such file or directory,說明該接口沒有匹配上驅動模塊。
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.2/driver
ls: cannot access '/sys/bus/usb/devices/2-1/2-1:1.2/driver': No such file or directory
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.3/driver
ls: cannot access '/sys/bus/usb/devices/2-1/2-1:1.3/driver': No such file or directory
root@rk3308b-buildroot:/root#
板子每次開機後,需運行startup.sh開機腳本檢查是否已聯網。
聯網成功後,系統會自動同步網絡時間到本地,可以用date命令看到本地時間是正確的。
root@rk3308b-buildroot:/root# date
Thu Dec 25 11:00:17 UTC 2025
root@rk3308b-buildroot:/root#
可以ping通百度:
root@rk3308b-buildroot:/root# ping www.baidu.com -c 4
PING www.baidu.com (39.156.70.239): 56 data bytes
64 bytes from 39.156.70.239: seq=0 ttl=52 time=33.304 ms
64 bytes from 39.156.70.239: seq=1 ttl=52 time=42.224 ms
64 bytes from 39.156.70.239: seq=2 ttl=52 time=36.970 ms
64 bytes from 39.156.70.239: seq=3 ttl=52 time=41.630 ms
--- www.baidu.com ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 33.304/38.532/42.224 ms
root@rk3308b-buildroot:/root#

如果不是3號模式,而是1號模式的話,那麼USB接口的排布是不一樣的。
root@rk3308b-buildroot:/root# cat /sys/bus/usb/devices/2-1/2-1:1.0/interface
Mobile ECM Network Adapter
root@rk3308b-buildroot:/root# cat /sys/bus/usb/devices/2-1/2-1:1.1/interface
cat: '/sys/bus/usb/devices/2-1/2-1:1.1/interface': No such file or directory
root@rk3308b-buildroot:/root# cat /sys/bus/usb/devices/2-1/2-1:1.2/interface
Mobile Diag Interface
root@rk3308b-buildroot:/root# cat /sys/bus/usb/devices/2-1/2-1:1.3/interface
Mobile AT Interface
root@rk3308b-buildroot:/root# cat /sys/bus/usb/devices/2-1/2-1:1.4/interface
Mobile AT Interface
root@rk3308b-buildroot:/root#
並且EC200M有6個接口,比EC200A多了一個6號接口。
root@rk3308b-buildroot:/root# cat /sys/bus/usb/devices/2-1/2-1:1.6/interface
Mobile NMEA Interface
root@rk3308b-buildroot:/root#
在usbnet 1號模式下,EC200M模塊的USB interface 0(Mobile ECM Network Adapter)和1(無接口名稱)用的是linux內核自帶的cdc_ether驅動(net/usb/cdc_ether.c)。
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.0/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:46 /sys/bus/usb/devices/2-1/2-1:1.0/driver -> ../../../../../../bus/usb/drivers/cdc_ether
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.1/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:48 /sys/bus/usb/devices/2-1/2-1:1.1/driver -> ../../../../../../bus/usb/drivers/cdc_ether
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.2/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:46 /sys/bus/usb/devices/2-1/2-1:1.2/driver -> ../../../../../../bus/usb/drivers/option
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.3/driver
lrwxrwxrwx 1 root root 0 Jan 1 00:46 /sys/bus/usb/devices/2-1/2-1:1.3/driver -> ../../../../../../bus/usb/drivers/option
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.4/driver
ls: cannot access '/sys/bus/usb/devices/2-1/2-1:1.4/driver': No such file or directory
root@rk3308b-buildroot:/root# ls -l /sys/bus/usb/devices/2-1/2-1:1.6/driver
ls: cannot access '/sys/bus/usb/devices/2-1/2-1:1.6/driver': No such file or directory
root@rk3308b-buildroot:/root#