4G/5G
本节以移远 Quectel EM05(4G)和 RM520N-GL(5G)为例,介绍NG4520 平台下 4G/5G 模组的使用方 法。两款模组在主流 Linux 系统中已自带驱动,无需额外安装。
串口工具
用于 AT 指令交互,推荐 minicom
:
$ sudo apt-get install minicom
EM05(4G)模组使用
- 驱动检测
插入模组后,使用 lsusb
查看设备识别情况:
Bus 001 Device 004: ID 2c7c:030e Quectel Wireless Solutions Co., Ltd. Quectel EM05-G
查看串口节点(dmesg
),一般会出现 4 个 /dev/ttyUSB*
,其中 ttyUSB2
用于 AT 指令:
[ 11.224317] usbserial: USB Serial support registered for GSM modem (1-port)
[ 11.224419] option 1-2.3:1.0: GSM modem (1-port) converter detected
[ 11.224595] usb 1-2.3: GSM modem (1-port) converter now attached to ttyUSB0
[ 11.224653] option 1-2.3:1.1: GSM modem (1-port) converter detected
[ 11.224763] usb 1-2.3: GSM modem (1-port) converter now attached to ttyUSB1
[ 11.224811] option 1-2.3:1.2: GSM modem (1-port) converter detected
[ 11.225863] usb 1-2.3: GSM modem (1-port) converter now attached to ttyUSB2
[ 11.225951] option 1-2.3:1.3: GSM modem (1-port) converter detected
[ 11.227422] usb 1-2.3: GSM modem (1-port) converter now attached to ttyUSB3
- AT 指令交互
打开串口终端:
$ sudo minicom -D /dev/ttyUSB2
常用 AT 指令:
ati 查看模块型号及固件版本
at+cpin? 查看 SIM 卡是否就位
at+csq 检测信号
at+cops 查看运营商
at+creg? 获得手机的注册状态(0,1:表示注册正常)
- 网络配置与测试
Ubuntu 网络管理器会自动识别和配置网络,亦可通过图形界面配置。
使用ifconfig命令查看网络
enx12849acd283b: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.225.26 netmask 255.255.255.0 broadcast 192.168.225.255
inet6 2409:8934:20d1:2d63:849f:fe7:583d:664c prefixlen 64 scopeid 0x0<global>
inet6 2409:8934:20d1:2d63:cee5:ca58:9917:456b prefixlen 64 scopeid 0x0<global>
inet6 fe80::ebb7:1cbd:5f8d:93a1 prefixlen 64 scopeid 0x20<link>
ether 12:84:9a:cd:28:3b txqueuelen 1000 (Ethernet)
RX packets 11732 bytes 14718060 (14.7 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 9674 bytes 811730 (811.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
测试网络连通性:
$ ping -I enx12849acd283b www.baidu.com
PING www.baidu.com(2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c)) from 2409:8934:20d1:2d63:849f:fe7:583d:664c enx12849acd283b: 56 data bytes
64 bytes from 2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c): icmp_seq=1 ttl=48 time=49.1 ms
64 bytes from 2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c): icmp_seq=2 ttl=48 time=50.4 ms
64 bytes from 2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c): icmp_seq=3 ttl=48 time=43.9 ms
RM520N-GL(5G)模组使用
- 驱动检测
插入模组后,使用 lsusb
查看设备识别情况:
Bus 002 Device 003: ID 2c7c:0801 Quectel Wireless Solutions Co., Ltd. RM520N-GL
查看串口节点(dmesg
),一般会出现 4 个 /dev/ttyUSB*
,其中 ttyUSB2
用于 AT 指令:
[ 9.209315] option 2-1.3:1.0: GSM modem (1-port) converter detected
[ 9.214898] usb 2-1.3: GSM modem (1-port) converter now attached to ttyUSB0
[ 9.214989] option 2-1.3:1.1: GSM modem (1-port) converter detected
[ 9.215167] usb 2-1.3: GSM modem (1-port) converter now attached to ttyUSB1
[ 9.215211] option 2-1.3:1.2: GSM modem (1-port) converter detected
[ 9.215319] usb 2-1.3: GSM modem (1-port) converter now attached to ttyUSB2
[ 9.215368] option 2-1.3:1.3: GSM modem (1-port) converter detected
[ 9.215450] usb 2-1.3: GSM modem (1-port) converter now attached to ttyUSB3
- AT 指令交互
打开串口终端:
$ sudo minicom -D /dev/ttyUSB2
常用 AT 指令:
ATI 查看模组信息
AT+CPIN? 查SIM卡状态
AT+C5GREG? 查运营商注网状态,应该返回 0,1 或 0,5
AT+QENG="servingcell" 查运营商信息
AT+CGPADDR=1 查看第一路PDP有没有IP,如果没有执行下面的指令
AT+CGACT=1,1 激活第一路PDP
AT+QCFG="usbnet" 查看网卡配置模式
以下是执行的结果。
Welcome to minicom 2.8
OPTIONS: I18n
Port /dev/ttyUSB2, 09:50:32
Press CTRL-A Z for help on special keys
Quectel
RM520N-GL
Revision: RM520NGLAAR01A08M4G
OK
+CPIN: READY
OK
+C5GREG: 0,1
OK
+QENG: "servingcell","NOCONN","NR5G-SA","TDD",460,00,203959107,575,3259E7,504990,41,3,-116,-12,12,1,4
OK
+CGPADDR: 1,"10.131.145.127","36.9.137.52.32.194.251.231.24.28.238.148.193.140.209.180"
OK
+QCFG: "usbnet",1
OK
- 网卡模式配置(推荐 ECM 模式)
查询当前网卡模式:
AT+QCFG="usbnet"
配置为 ECM 模式(Linux 推荐):
AT+QCFG="usbnet",1
AT+CFUN=1,1
模式定义:
指令 | 描述 |
---|---|
AT+QCFG="usbnet",0 | NDIS(QMI) |
AT+QCFG="usbnet",1 | ECM(推荐) |
AT+QCFG="usbnet",2 | MBIM |
AT+QCFG="usbnet",5 | NCM |
- 网络配置与测试
模组重启后,dmesg
可见 ECM 设备注册:
[ 9.206605] cdc_ether 2-1.3:1.10 usb0: register 'cdc_ether' at usb-3610000.usb-1.3, CDC Ethernet Device, 7a:a8:fd:a4:36:d1
查看网络接口:
enx7aa8fda436d1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.225.94 netmask 255.255.255.0 broadcast 192.168.225.255
inet6 2409:8934:20c2:fbe7:bc33:5fcd:fd07:f46b prefixlen 64 scopeid 0x0<global>
inet6 fe80::df81:1f32:7692:e058 prefixlen 64 scopeid 0x20<link>
inet6 2409:8934:20c2:fbe7:4430:9c7e:4027:7637 prefixlen 64 scopeid 0x0<global>
ether 7a:a8:fd:a4:36:d1 txqueuelen 1000 (Ethernet)
RX packets 12581 bytes 15549574 (15.5 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 9243 bytes 773976 (773.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
测试网络连通性:
$ ping -I enx7aa8fda436d1 www.baidu.com
PING www.baidu.com(2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c)) from 2409:8934:20c2:fbe7:4430:9c7e:4027:7637 enx7aa8fda436d1: 56 data bytes
64 bytes from 2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c): icmp_seq=1 ttl=47 time=44.6 ms
64 bytes from 2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c): icmp_seq=2 ttl=47 time=64.1 ms
64 bytes from 2409:8c20:6:1135:0:ff:b027:210c (2409:8c20:6:1135:0:ff:b027:210c): icmp_seq=3 ttl=47 time=107 ms
如需使用其它品牌或型号的 4G/5G 模组,建议参考对应厂商文档及官方驱动说明。