跳到主要内容

快速安装 - Linux / OpenWrt

导航栏

EC20 安装​

Linux / OpenWrt 平台快速使用 EC20 LTE Cat 4 Dongle

需要准备​

  1. 一台 Linux 设备(本文以 OpenWrt / ImmortalWrt 路由器为例)
  2. Dongle EC20 及 USB 数据线
  3. 可上网的 Nano-SIM 卡
  4. 路由器的 WAN 口可以正常上网(用于下载驱动)
提示

如果路由器还没有联网,可以先在能上网的电脑上下载对应的 IPK/APK,再用 U 盘安装。 不同路由器架构不同,请在 OpenWrt 软件源 中查找对应版本。


接入设备​

安装 Nano-SIM 卡​

图片

  1. 如设备带有 USB 保护盖,先取下保护盖(无外壳的裸板设备可跳过此步)
  2. 按卡槽标识方向将 Nano-SIM 卡推入卡槽

接入路由器 USB 接口​

将 Dongle 插入路由器的 USB-A 接口。

注意:部分路由器的 USB 口供电不足,建议使用带独立供电的 USB HUB,避免模块反复重启。


配置 Dongle - 路由器部分​

连接到路由器​

ssh root@192.168.1.1

管理地址以实际路由器为准。

检查 USB 设备​

先确认系统已经识别到模块:

root@OpenWrt:~# lsusb

预期可以看到 Quectel 设备(EC20 与 EC25 共用 USB PID,显示为 EC25 LTE modem 属正常现象):

Bus 001 Device 002: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem

如果提示 lsusb: not found,先安装 usbutils:

# OpenWrt 24.10 及更早版本
opkg update
opkg install usbutils

# ImmortalWrt 25.12 等使用 apk 的版本
apk update
apk add usbutils

安装驱动和工具​

安装 USB 串口驱动(用于 AT 指令):

# opkg
opkg update
opkg install kmod-usb-serial-option

# apk
apk update
apk add kmod-usb-serial-option

安装 ECM 网卡驱动(用于 usb0 上网):

# opkg
opkg install kmod-usb-net-cdc-ether

# apk
apk add kmod-usb-net-cdc-ether

安装串口工具:

# opkg
opkg install minicom

# apk
apk add minicom

查看串口​

root@OpenWrt:~# ls /dev/ttyUSB*

预期输出:

/dev/ttyUSB0  /dev/ttyUSB1  /dev/ttyUSB2  /dev/ttyUSB3

EC20 的 AT 指令口为 /dev/ttyUSB2,本机实测波特率为 115200。

如果 /dev/ttyUSB* 不存在,请确认 kmod-usb-serial-option 已安装,并重新插拔 Dongle。


可选:恢复出厂复位​

注意

复位会清除模块内的历史配置(APN、USB 模式、频段锁定等)。新设备或配置混乱时建议执行;如果模块当前工作正常,可以跳过本节,直接看 设置 USB 工作模式。

1. 进入 AT 终端​

minicom -D /dev/ttyUSB2 -b 115200

发送 AT,返回 OK 表示通信正常:

AT
OK

2. 恢复出厂并重启​

AT&F
OK

AT+QPRTPARA=3
OK

AT+CFUN=1,1
OK

AT+CFUN=1,1 会让模块重启,USB 会重新枚举,串口会短暂消失,等待 30~60 秒即可。

3. 退出 minicom​

按 Ctrl + A,再按 X,选择 Yes。

提示

复位后 usbnet 会恢复为模块默认值 0(QMI / RMNET),需要按下一节重新设置为 ECM 模式。


设置 USB 工作模式​

重新进入 AT 终端:

minicom -D /dev/ttyUSB2 -b 115200

查看当前模式​

AT+QCFG="usbnet"
+QCFG: "usbnet",0
OK

模式说明​

参数模式说明
0QMI / RMNET需要 kmod-usb-net-qmi-wwan + uqmi,EC20 出厂默认
1ECMLinux/OpenWrt 原生支持,推荐
2MBIM需要 kmod-usb-net-cdc-mbim + umbim
3RNDIS需要 kmod-usb-net-rndis

如果查询结果为 0(默认)或 3(RNDIS)而系统没有安装对应驱动,就会出现“模块已识别,但没有任何网卡”的现象。

切换为 ECM 模式​

AT+QCFG="usbnet",1
OK

AT+CFUN=1,1
OK

等待模块重启(约 30~60 秒),退出 minicom。

确认网卡​

root@OpenWrt:~# ls /sys/class/net

USB ECM 网卡通常命名为 usb0(若 eth0/eth1 未被占用,也可能命名为 eth2,以实际输出为准)。

root@OpenWrt:~# ip addr show usb0

预期输出(IP 由模块自动分配):

11: usb0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
link/ether 16:38:3e:7e:05:30 brd ff:ff:ff:ff:ff:ff
inet 192.168.225.49/24 brd 192.168.225.255 scope global usb0
EC20 的优势

与 BG95 不同,EC20 切换到 ECM 模式后 AT 串口仍然存在(/dev/ttyUSB0 ~ /dev/ttyUSB3), 可以一边上网一边用 minicom 查询 CSQ、CEREG 等状态,无需切回其他 USB 组合。


配置上网​

方式一:命令行(UCI)​

将 WAN 口的设备改为 usb0(接口名以实际为准,本文使用 wan / wan6):

uci set network.wan.device='usb0'
uci set network.wan6.device='usb0'

uci commit network
service network reload

如果是多 WAN 环境(例如 wan1 为主线路、wan3 为蜂窝备份),建议给蜂窝接口设置更高的 metric,实现主备切换:

uci set network.wan3.device='usb0'
uci set network.wan36.device='usb0'
uci set network.wan3.metric='20'
uci set network.wan36.metric='20'

uci commit network
service network reload

metric 数值越小优先级越高。wan1 保持默认 0,蜂窝设为 20,则网线优先、蜂窝备份;拔掉网线后自动切换到蜂窝。

方式二:Web 界面​

  1. 打开 网络 → 接口 → wan → 编辑
  2. 将 设备 选择为 usb0
  3. 点击 保存 → 保存并应用
  4. 如需 IPv6,对 wan6 做同样设置

关于 APN​

EC20 在 ECM 模式下由模块自动拨号,使用 AT+CGDCONT 中配置的 APN。出厂固件通常预置了 ctnet / ctwap(中国电信), 使用其他运营商时需要在 AT 终端中修改(以中国移动 cmnet 为例):

AT+CGDCONT=1,"IPV4V6","cmnet"
OK

AT+CFUN=1,1

APN 由运营商提供,例如 cmnet(移动)、ctnet(电信)、3gnet(联通)。


验证​

查看接口状态​

root@OpenWrt:~# ifstatus wan

确认 "up": true,并且获取到 192.168.225.x 地址。

查看路由​

root@OpenWrt:~# ip route
default via 10.0.0.1 dev eth1 src 10.0.0.43
default via 192.168.225.1 dev usb0 src 192.168.225.49 metric 20

测试模块链路​

root@OpenWrt:~# ping -c 3 192.168.225.1

能通说明 路由器 ↔ 模块的 ECM 链路正常。

指定网卡测试(不拔网线也能验证蜂窝)​

root@OpenWrt:~# ping -I usb0 -c 3 223.5.5.5
64 bytes from 223.5.5.5: seq=0 ttl=50 time=41.8 ms
64 bytes from 223.5.5.5: seq=1 ttl=50 time=49.8 ms
64 bytes from 223.5.5.5: seq=2 ttl=50 time=55.6 ms

IPv6 测试​

多 WAN 场景下 IPv6 默认路由带有源地址前缀,需要指定源地址测试:

root@OpenWrt:~# ip -6 addr show usb0
root@OpenWrt:~# ping -6 -I <usb0 的 IPv6 地址> -c 3 2400:3200::1

本机实测结论

在 ImmortalWrt 25.12.2(MT7981,内核 6.12)上实测:

  • 模块型号 EC20F,固件 EC20CEHCLGR06A04M1G
  • 恢复出厂后 usbnet 默认值为 0,切换为 1(ECM)后生成 usb0
  • ECM 模式下 /dev/ttyUSB0 ~ /dev/ttyUSB3 仍然可用
  • IPv4(192.168.225.0/24)与 IPv6(运营商分配前缀)均可正常上网

常见问题​

现象原因处理
lsusb 无 2c7c:0125USB 未识别/供电不足更换 USB 口或使用带供电 HUB
有 lsusb,无 /dev/ttyUSB*未安装串口驱动安装 kmod-usb-serial-option
无 usb0usbnet=0/3 但未装 QMI/RNDIS 驱动切换为 ECM(usbnet=1)或安装对应驱动
usb0 无 IP未运行 DHCP 客户端确认接口 proto 为 dhcp 并重新加载网络
AT 无返回串口或波特率不对确认 /dev/ttyUSB2、波特率 115200(可再试 9600)
复位后不能上网复位把 usbnet 改回默认 0重新执行 AT+QCFG="usbnet",1 + AT+CFUN=1,1
有网卡但无法上网SIM 未注册/APN 不对/无流量用 AT+CPIN?、AT+CSQ、AT+CGDCONT? 检查

更多 AT 指令请参考 设备调试。