树莓派USB TO M.2 B KEY教程

说明

  • 支持 M.2(NGFF) Key B 接口的 5G 模块,可适配 SIMCom 和移远的 5G 模组
  • 支持 3042 / 3052 封装的 5G 模组,如 SIM82XX、RM50XQ 系列的 5G 模组
  • 板载 USB 3.1 Type A 接口,方便直接接入电脑、树莓派或 Jetson Nano 主板进行高速5G上网
  • 板载 4 路 IPEX 4 代 转 SMA 的天线接口,方便直接安装固定天线
  • 板载 SIM 卡槽,适用 NANO SIM 卡
  • 板载电源、网络指示灯,并预留有多个焊盘,方便查看模块工作状态和测试其他功能
  • PCB沉金工艺设计,预留有多处开槽和定位孔,方便嵌入集成使用
  • 配套有定制的铝合金散热板,散热效果好,美观,防护和耐用性强

RM50XX 模组使用

模组参数对比

5G Sub-6RM500U-CNRM500Q-GLRM500Q-AERM502Q-AE
区域/运营商中国全球(不含美国)全球(不含中国)
工作温度-30 °C ~ +75 °C-30 °C ~ +70 °C
扩展温度-40 °C ~ +85 °C
模块尺寸30.0 × 52.0 × 2.3 (mm)
模块重量8.9 (g)8.7 (g)
供电电压3.3~4.4 V,典型值 3.7 V3.135~4.4 V,典型值 3.7 V
功耗90 μA @ 关机;

3.7 mA @ 休眠;
待定 @ USB 2.0,空闲; 待定 @ USB 3.0,空闲;

70 μA @ 关机;

4.0 mA @ 休眠;
32 mA @ USB 2.0,空闲; 54 mA @ USB 3.0,空闲;

80 μA @ 关机

4.2 mA @ 休眠
39 mA @ USB 2.0,空闲 54.5 mA @ USB 3.0,空闲

工作频段
5G5G NR NSAn41, n78, n79n41, n77, n78, n79n1, n2, n3, n5, n7, n8, n12, n20, n25, n28, n38, n40, n41, n48*, n66, n71, n77, n78, n79
5G NR SAn1, n28, n41, n77, n78, n79n1, n2, n3, n5, n7, n8, n12, n20, n25, n28, n38, n40, n41, n48*, n66, n71, n77, n78, n79
LTELTE-FDDB1, B2, B3, B5, B7, B8, B20, B28B1, B2, B3, B4, B5, B7, B8, B12(B17), B13, B14, B18, B19, B20, B25, B26, B28, B29, B30, B32, B66, B71
LTE-TDDB34, B38, B39, B40, B41B34, B38, B39, B40, B41, B42, B43, B48
LAA-B46
UMTSWCDMAB1, B2, B5, B8B1, B2, B3, B4, B5, B6, B8, B19
GNSS-GPS / GLONASS / BeiDou(Compass) / Galileo
数据传输速率
5G SA Sub-6下行 2 Gbps;
上行 1 Gbps
下行 2.1 Gbps;
上行 900 Mbps
下行 2.1 Gbps;
上行 450 Mbps
下行 4.2 Gbps;
上行 450 Mbps
5G NSA Sub-6下行 2.2 Gbps;
上行 575 Mbps
下行 2.5 Gbps;
上行 600/650 Mbps
下行 2.5 Gbps;
上行 650 Mbps
下行 5 Gbps;
上行 650 Mbps
LTE下行 600 Mbps;
上行 150 Mbps
下行 1.0 Gbps;
上行 200 Mbps
下行 1.0 Gbps;
上行 200 Mbps
下行 2 Gbps;
上行 200 Mbps
UMTS下行 42.2 Mbps;
上行 11 Mbps
下行 42 Mbps;
上行 5.76 Mbps
说明* 表示正在开发/规划/进行中;
RM500Q-GL 模组规格书,详见:[数据手册 1]

资源简介


标号引脚号SIMxx说明RM50XX说明
①56Antenna tuner control3
(Antenna tuner MIPI CLK)
Used for external MIPI IC control
②58Antenna tuner control2
(Antenna tuner MIPIDATA)
Used for external MIPI IC control
③67System reset control input Active lowReset the module.
Active LOW
④60I2S master clockNotification from WLAN to
SDR when WLAN transmitting
⑤61Antenna tuner control1Antenna tuner GPIO control
⑥65WiFi 5G TX indicatorPower supply for RFFE
⑦59Antenna tuner control0Notification from SDR to
WLAN when LTE transmitting
⑧63n79 TX indicatorAntenna tuner GPIO control
⑨23Wake on the host Active lowWake up the host.
Active LOW
⑩25Dynamic power reduction
H: Max transmitting power
will not be reduced (default)
L: Max transmitting power
will be reduced
Dynamic power reduction
⑪26GNSS disable Active lowGNSS control.
Active LOW
⑫8WWAN RF disable Active lowAirplane mode control.
Active LOW
⑬/电源指示灯
⑭/网络指示灯(访问到网络会闪烁)
⑮/M.2 B KEY 接口
⑯/USB3.1
⑰/天线接口

4G/5G模组 兼容性说明

若需要把USB TO M.2 B KEY用于其他4G/5G模组,可参考下图M.2连接示意图,自行检查下是否有引脚存在冲突,再接入进行测试:


测试说明

常用AT指令

SSCOM串口助手AT指令收发实测
命令说明返回值
ATAT测试指令OK
ATEATE1设置回显
ATE0关闭回显
OK
AT+CGMI查询模组制造商OK
AT+CGMM查询模组型号OK
AT+CGSN查询产品序列号OK
AT+CSUB查询模块版本以及芯片OK
AT+CGMR查询固件版本序列号OK
AT+IPR?设置模块硬件串口波特率+IPR:
OK
AT+CFUN=1,1复位模块OK
AT+QUIMSLOT?查询SIM卡选用情况:
返回1,选择SIM卡1;
返回2,选择SIM卡2
+QUIMSLOT: 1/2
OK
AT+CPIN?查询SIM卡状态,返回READY,SIM卡能正常识别+CPIN: READY
AT+COPS?查询当前运营商,正常联网后会返回运营商信息+COPS:
OK
AT+CEREG?查询网络注册状态+CEREG:
OK
AT+C5GREG?查询5G网络注册状态+C5GREG:
OK
AT+QENG="servingcell"查询UE系统信息
AT+QNWPREFCFG=?网络模式选择命令:
"mode_pref":Automatic
"nr5g_band" : 5G NR
"lte_band":LTE only
"gw_band":WCDMA only
... ....
OK
更多详细AT指令说明,请查阅:[数据手册 2]
SSCOM串口调试助手,软件下载:[软件 1]

Windows使用

安装驱动

  • 通过双头 usb3.0 数据线 接5G HAT到电脑后,其它设备出现一系列未安装驱动的设备,类似下图:


下载驱动[软件 2]到电脑,并解压压缩包。
  • 进入RM50XQ_Driver目录。
  • 点击setup.exe安装驱动,完成安装后,设备管理器会生成如下设备:



关于识别出来的USB端口的功能说明,请查阅:[数据手册 3]


联网测速

RM50XQ 网速实测
  • 安装测速软件,比如:网速管家等测速软件,可自行选择下载测速 www.speedtest.cn/pc/download。

关于测速速度

由于实际和实验室条件会存在很多不一致的地方,会导致5G速度不能理想的稳定保持100MBPS,有以下几点:

  • 基站距离,离5G基站越近信号越好,速度越快;
  • 基站负荷,使用的人越少速度越快,上下班高峰期会慢;
  • 基站的数量:由于频谱关系,等量的4G覆盖率需要双倍的5G基站
  • 运营商:需要确认您的5G卡,是否被限速了,可以定期要求运营商重置您的网络
  • 室内比室外差:建筑穿透衰耗,以及室内的绕射衰耗

PS:目前的基站数量还是没有很好的覆盖,在不同的地点测速也不太一样。

MBIM拨号上网

RM5XXQ系列也可以选择MBIM上网,步骤如下:

下载并安装MBIM网卡驱动,[软件 2]
  • 打开RM5XXQ AT端口,发送以下指令拨号上网:
AT+QENG="servingcell"
AT+QCFG="usbnet",2
AT+QNETDEVCTL=2,3,1
AT+QNETDEVSTATUS=2
AT+CFUN=1,1
  • 拨号并重启后,电脑网络连接界面出现手机网络网卡,拨号成功


GNSS全球定位

1、将无源GPS天线连接至模组的ANT3,注意将有字一面朝下,天线放于空旷的室外。
2、然后使用AT端口发送AT指令:

AT+QGPS=1        //打开GPS定位
AT+QGPSLOC=0     //获取GPS定位
AT+QGPS=0        //关闭GPS定位


3、打开NMEA端口,即可收到卫星数据:


GNSS天线接口,硬件相关说明,请查阅:[数据手册 4]
更多关于GNSS定位详细使用,请查阅:[数据手册 5]

Raspberry使用

硬件连接

用双头usb3.0数据线连接5G HAT,在5G HAT的Type-C供电口外接5V电源,如图:


步骤1.卸载modemmanager和network-managerECM 拨号上网配置

sudo apt purge modemmanager -y 
sudo apt purge network-manager -y

步骤2.测试5G模块

  • 确保选项 usb-serial 驱动程序正确加载到模块接口。usb-devices用命令检查一下:
pi@raspberrypi:~ $ usb-devices 
T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 
D: Ver= 3.20 Cls=00(>ifc) Sub =00 Prot=00 MxPS= 9 #Cfgs= 1 
P: Vendor=2c7c ProdID=0800 Rev=04.14 
S: Manufacturer= 
Quectel S: Product=RM502Q-AE 
S: SerialNumber=377628d2 
C: #Ifs= 5 Cfg#= 1 Atr=a0 MxPwr=896mA 
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option 
I: If#=0x1 Alt= 0 #EPs= 3 Cls= ff(vend.) Sub=00 Prot=00 Driver=option 
I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option 
I: If#=0x3 Alt = 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option 
I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver= qmi_wwan
  • 执行ls /dev/ttyUSB*,检查是否正确识别到ttyUSB0~ttyUSB4:
  • minicom 测试AT指令收发:
sudo apt-get install minicom
sudo minicom - D /dev/ttyUSB2
Welcome to minicom 2.7.1

OPTIONS: I18n 
Compiled on Aug 13 2017, 15:25:34.
Port /dev/ttyUSB2

Press CTRL-A Z for help on special keys

AT
OK

步骤3.使用AT命令进行网络设置

AT+QCFG="usbnet",1 
AT+CGDCONT=1,"IPV4V6","YOUR_APN" 
AT+CFUN=1,1

等待调制解调器再次启动。可能需要 30 秒。一旦调制解调器重新启动,minicom 将再次被激活。
重启后,打开一个新的 Linux 终端并使用 ifconfig 或 ipaddr 命令检查网络接口中的 usbX。

 

  • 模块重启后,NET灯亮起,用以下指令检查网络状态(可选)
AT+QENG="servingcell"
  • 用以下指令获取IP和设置DNS:
sudo dhclient -v usb0
sudo apt-get install udhcpc
sudo udhcpc -i usb0
sudo route add -net 0.0.0.0 usb0

步骤4. 测试 5G 网络

拨号后,树莓派通过以下指令可以看到usb0获取到ip,输入指令ifconfig usb0 或 ifconfig

pi@raspberrypi:~ $ ifconfig usb0
usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.225.60  netmask 255.255.255.0  broadcast 192.168.225.255
        inet6 fe80::8543:f6a0:e678:2e20  prefixlen 64  scopeid 0x20
        ether 4a:aa:f8:62:36:bb  txqueuelen 1000  (Ethernet)
        RX packets 73  bytes 5047 (4.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 100  bytes 15116 (14.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


 ping waveshare.com -I usb0 
pi@raspberrypi:~ $ ping waveshare.com -I usb0
PING waveshare.com (104.26.11.134) from 192.168.10.27 usb0: 56(84) bytes of data.
64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=1 ttl=52 time=87 ms
64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=2 ttl=52 time=82 ms
64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=3 ttl=52 time=92 ms
64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=4 ttl=52 time=73 ms
64 bytes from 104.26.11.134 (104.26.11.134): icmp_seq=5 ttl=52 time=75 ms


5G网速测试

Linux系统下,可以安装speedtest_cli进行测试:

## Raspberry Pi OS
sudo apt install speedtest-cli
speedtest      # or use speedtest_cli

or

## OpenWRT
opkg update   
opkg install python3
opkg install python3-pip
pip install speedtest_cli 
speedtest      # or use speedtest_cli

Jetson nano使用

硬件连接

用双头 usb3.0 数据线 连接USB TO M.2 B KEY,如图所示:


加载USB设备描述符

为了识别模块,需要将模块的 VID 和 PID 信息添加到文件 [内核]

  • 查看RM500U的VID和PID
lsusb


  • 添加VID和PID
sudo apt-get install unzip
wget https://www.waveshare.net/w/upload/0/09/RM5XXQ_For_Jetson_nano.zip
unzip RM5XXQ_For_Jetson_nano.zip
sudo chmod 777 -R RM5XXQ_For_Jetson_nano
cd RM5XXQ_For_Jetson_nano
sudo ./install.sh
sudo reboot

请不要删除或者修改option目录、default.script、install.sh这四个目录文件,否则影响设备描述符的加载!

  • 成功添加PID并重启Jetson nano后,在命令行界面输入以下以下指令出现USB0-USB4五个设备符
ls /dev/ttyUSB*


RNDIS 拨号上网

  • 打开minicom
sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2
  • 在minicom中发送以下指令来RNDIS拨号上网
AT+CPIN?
AT+QCFG="usbnet",3
AT+CFUN=1,1


  • 模块重启后,NET灯亮起,用以下指令检查网络状态(可选)
AT+QENG="servingcell"
  • 用以下指令获取IP和设置DNS:
sudo dhclient -v usb1
sudo apt-get install udhcpc
sudo udhcpc -i usb1
sudo route add -net 0.0.0.0 usb1
  • 拨号后,通过以下指令可以看到usb1获取到ip:
ip route


  • 测试usb1联网状况
 ping -I usb1 www.baidu.com



SIM82XX模组使用

5G模组参数对比

SIM8200EA-M2SIM8202G-M2SIM8262E-M2SIM8262A-M2
5G 标准3GPP R153GPP R16
芯片方案高通骁龙 X55高通骁龙 X62
工作频段
Sub-6Gn1, n2, n3, n5, n7, n8, n12, n20, n28, n38, n40, n41, n48, n66, n71, n78n1, n2, n3, n5, n7, n8, n12, n20, n28, n38, n40, n41, n66, n71, n77, n78, n79n1, n3, n5, n7, n8, n20, n28, n38, n40, n41, n77, n78,n79n2, n5, n7, n12, n13, n14, n25, n30, n41, n48, n66, n71, n77, n78, n79
LTE-FDDB1, B2, B3, B4, B5, B7, B8, B12, B13, B14, B17, B18, B19, B20, B25, B26, B28, B29, B30, B32, B66, B71B1, B3, B5, B7, B8, B18, B19, B20, B26, B28, B32B2, B4, B5, B7, B12, B13, B14, B25, B26, B29, B30, B66, B71
LTE-TDDB34, B38, B39, B40, B41, B42, B43, B48B38, B39, B40, B41, B42, B43B41, B46, B48
WCDMAB1, B2, B3, B4, B5, B8B1, B5, B8B2, B4, B5
GNSSGPS、GLONASS、北斗、伽利略和 QZSS
数据传输
Sub-6G2.4 Gbps (DL)  /  500 Mbps (UL)
LTE1 Gbps (DL)  /  200 Mbps (UL)
HSPA+42 Mbps (DL)  /  5.76 Mbps (UL)
软件功能
操作系统Windows/Linux/Android
通信协议TCP/IP, IPV4, IPV6, Multi-PDP, FTP, FTPS, HTTP, HTTPS, MQTTS, DNS, SSL3.0
拨号上网RNDIS、NDIS、PPP、MBIM
短信(SMS)支持 MT、MO、CB、Text、PDU
固件升级支持通过 USB 接口进行固件升级
硬件说明
SIM卡1.8V/2.95V
天线接口用于 3G/4G/5G/GNSS
6 × IPEX-4 接口4 × IPEX-4 接口
供电电压3.135~4.4V
外形封装M.2
产品尺寸52.0 × 30.0 × 2.3mm42.0 × 30.0 × 2.3mm
工作温度-30℃ ~ +70℃
应用场景
适用地区中美日韩、欧洲、中东、美洲除美洲外的其他地区美洲
适用地区仅供参考,具体以当地运营商网络覆盖和支持的频段选择合适的模组
典型应用CPE, 智能网关, 无人机, 视频直播, 远程医疗, 智能安防

window使用

直接安装

下载驱动(资料->软件->SIM8200驱动)到电脑,并解压压缩包。
进入SIM8200_OS_Driver\Windows目录。
对大部分电脑而言进入1_install目录,点击setup.exe即可安装成功。

且网络链接会生成一个手机网络图标,断开您的电脑网络,不需拨号即可上网。

手动安装

对部分主机而言,可能即使安装了1_install中也不会出现端口,此时需要用到2_AddManully中的文件,进行手动添加,使用方式为在设备管理器中找到未识别的设备,右键进行添加驱动,如下:
G模块上电并将开关打到ON,模块启动,电脑即会识别到4个未知设备(可能有的主板会识别出5个、6个),图示的只有5个

点击右键,更新驱动程序,选择手动添加,路径选SIM8200_OS_Driver\Windows,根据您的系统选择WIN7\WIN8\WIN10,添加完成最多6个位置设备之后,电脑就会生成如下几个设备:

4个端口,其中:AT用于调试AT指令,Audio用于拨号业务,Diagnostics用于debug,NMEA用与GPS;


此时电脑就会加载出一个手机网络,断开您的电脑网络,不需拨号即可上网。

手动NDIS拨号上网

如果上面2步均执行了,WINdows无法上网,则需要手动启动NDIS拨号
打开sim8200 AT端口,发送指令

AT$QCRMCALL=1,1+回车



此时NDIS拨号生效,电脑即可连接网络;如果返回No Carrier,可能已经拨号了,直接上网看看。

GPS定位

SIM8200EA-M2为ANT5;SIM8202G-M2为ANT2;SIM8262E-M2为ANT3;详见模组硬件手册

将无源GPS天线连接至模组的GNSS天线接口,注意将有字一面朝下,天线放于空旷的室外。
然后使用AT端口发送AT指令:

AT+CGPS=1 #回车



打开NEMA端口,即可收到卫星数据:

Raspberry使用

建议您使用树莓派最新系统镜像(最新系统地址),系统的linux内核版本5.4,如果您的内核有差异,建议您更新到与此版本相同,此教程是基于5.4内核,这样能最大限度减少您使用出错的机率。


如果您使用的是其他的linux系统,请下载SIM8200_OS_Driver\linux下的驱动,并按照其下的文档进行移植;也可以哟用系统自带驱动,内部自动拨号的SIM820X RNDIS拨号上网。

第一次使用时需要进行的配置

请不要输错字母,最好复制粘贴

sudo apt-get install p7zip-full
wget https://www.waveshare.net/w/upload/8/89/SIM8200_for_RPI.7z
7z x SIM8200_for_RPI.7z  -r -o./SIM8200_for_RPI
sudo chmod 777 -R SIM8200_for_RPI
cd SIM8200_for_RPI
sudo ./install.sh

请不要删除或者修改option目录、qmi_wwan_simcom目录、default.script、install.sh这四个目录文件,否则影响驱动的加载。
暂不支持2022-04-04的raspbian系统,如果出错误了,请确认系统是不是2020-08-20-raspios-buster-armhf,并将错误信息截图,方便工程师帮助您分析解决问题。
运行ifconfig -a可以看到已经生成了WWAN0

测试AT指令

sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2


5G上网

cd Goonline
make
sudo ./simcom-cm

即可成功看到最下方已经生成了DNS

通过USB接入两个SIM820X到树莓派后可以识别到两个网卡—wwan0和wwan1,通过以下指令可以将两个网卡同时拨号:(网速无法叠加)

sudo ./simcom-cm -i wwan0
sudo ./simcom-cm -i wwan1


  • 说明:如果没能获取IP或者没有成功联网,用以下指令获取IP和设置dns联网:
sudo dhclient -v wwan0
sudo route add -net 0.0.0.0 wwan0

开机自启

设置开机启动,打开树莓派开机配置脚本

sudo nano /etc/rc.local

将启动命令加入倒数第二行,注意是您的运行上网文件的绝对路径,也就是exit 0的上一行。

sudo /home/pi/SIM8200_for_RPI/Goonline/simcom-cm &

注意一定要添加"&" 后台运行,否则可能会出现系统不能启动的情况。

使用ffmpeg进行推流直播

如果您使用的是2020-08-20-raspios-buster-armhf此镜像,那么您什么都不需要安装,系统已经自带了ffmpeg。别问我为什么知道,因为我被旧系统的ffmpeg安装折磨了2天,使用此系统是最方便的。
直接进入主题,假设您已经有了一个摄像头,并且已经正确连接到树莓派上,那么请根据教程继续。

  • 使用摄像头前必须运行 raspi-config 命令启用摄像头:
sudo raspi-config
选择 Enable Camera,选择 YES


  • 如果是使用 CSI 接口的摄像头,那么系统找不到/dev/video0 的设备节点。需要在/etc/modules 文件中添加一行 bcm2835-v4l2:
sudo nano /etc/modules

加上:

bcm2835-v4l2 


那么系统启动之后,系统会加载这个文件中的模块名,重启系统:

sudo reboot
ls /dev/video*

下面发现 video0 设备节点。

说明:如果执行前几步之后,请确认操作和指令正确的情况

假设现在使用斗鱼直播,将自己的账号注册并开通主播功能,打开斗鱼直播主播中心,找到直播设置。

打开推流设置 
会获得rtmp地址和直播码,树莓派端执行命令:

ffmpeg -f video4linux2 -s 640x480 -r 25 -i /dev/video0 -c:v h264_omx -f flv "rtmp地址/直播码"

举个栗子: 先打开一个终端,这个终端先把5G网络跑起来

cd Goonline
sudo ./simcom-cm

然后再打开一个终端,运行如下指令

ffmpeg -f video4linux2 -s 640x480 -r 25 -i /dev/video0 -c:v h264_omx -f flv "rtmp://sendtc3.douyu.com/live/9188303rTNGmU7CS?wsSecret=ef762877aae120262eaf23c3f60a28bf&wsTime=5f59dbf0&wsSeek=off&wm=0&tw=0&roirecognition=0"

rtmp://sendtc3.douyu.com/live就是地址,后面的那一截即为直播码。此时进入房间号,即可观察直播,延迟在1-2S左右。

OpenWrt使用

OpenWrt简介

与软路由相对的是我们平时家用的路由器,软路由是指利用台式机或服务器等设备配合软件形成的路由解决方案,主要靠软件的设置,达成路由器的功能;而硬路由则是以特有的硬设备,包括处理器、电源供应、嵌入式软件,提供设定的路由器功能。
OpenWrt便是软路由系统中的十分受欢迎的一员,它是一款高度模块化、高度自动化的嵌入式Linux系统,拥有强大的网络组件和扩展性,常常被用于工控设备、路由器等设备中。
得益于高度的可定制和可扩展性,OpenWrt软路由除了可以完成一般家用路由器的功能之外,还可以实现:端口转发、内网穿透、4G联网、FTP服务器等更多强大功能。

烧写系统

下载好资料中的 RPI OpenWrt系统(本系统已经安装minicom)
解压Imgs目录下的系统,使用烧写工具烧录到SD上。

登录与初始设置

烧录好系统后,OpenWrt系统开机,树莓派就相当于路由器了,因此要按照路由器的使用,使用网线将树莓派与电脑连接(也可使用手机搜索WIFI,默认名称"OpenWrt"),网页输入192.168.1.1 , 默认用户名:root ,默认密码为:password ,进入OpenWrt的Web端管理界面

设置WIFI密码:网络 —> 无线 —> 修改 —> 接口配置 —> 无线安全,如下图所示:

修改lan口的IPv4地址为一个与家中其他路由器lan口IP不重复的其他IP,这里设置为:192.168.10.1(很多路由器默认lan口IP为192.168.1.1,如果此处不修改,容易导致冲突从而无法联网)

如有需求也建议禁用IPv6分配长度,修改完成后点击“保存&应用”,重新使用192.168.10.1来访问OpenWrt的控制台


此外建议调整防火墙策略以便后续通过局域连接OpenWrt的终端和Web管理界面
网络 —>防火墙,将全部的 “拒绝” 更改为“接受”,修改完成后点击“保存&应用”,如下图所示:

系统 —> 管理权,修改SSH访问的允许的接口为 “未指定”(即任意接口都可进行ssh访问),勾选网关端口,修改完成后点击“保存&应用”

此时,便可以通过lan口或wan口IP地址来连接OpenWrt的Web管理界面或终端

配置联网

  • 将SIM卡插入通信模块的卡槽->所有的5G天线都接上,通过USB连接到树莓派4B后->上电开机;
  • 将移动通信模组改为RNDIS模式(USB网络共享模式),SIM8202G可以在Openwrt通过minicom发送以下指令更改:
sudo minicom -D /dev/ttyUSB2     //(部分模组需要添加PID才有ttyUSB*设备符)
at+cusbcfg=usbid,1e0e,9011      //(不同型号模组设置方式有差异,具体看模组规格书)
如要切换回NDIS模式(出厂默认模式)用这个指令:
at+cusbcfg=usbid,1e0e,9001
  • 添加新接口:网络 —> 接口 —> 添加新接口


  • 创建新接口:新接口的名称 -> SIM8202G ; 新接口的协议 - DHCP客户端 ;包括以下接口 - 以太网适配器: "usb0";提交


  • 配置接口:防火墙设置 - wan;保存&应用


  • 无线配置:网络 -> 无线 -> 修改 -> 接口配置 -> 基本设置 ->网络中勾选SIM8202G和lan;保存&应用


5G网速测试

测速部分,由于树莓派自带的网口为千兆网口,且目前千兆以上的USB网卡还很少,因此此次采用SpeedTest For Python工具在命令行进行测速。 连接至OpenWrt的终端,依次输入命令,即可测速:

opkg update
opkg install python3
opkg install python3-pip
pip install speedtest_cli
speedtest 或 speedtest_cli
SIM8202G 模组注册到5G网络且信号良好时,通过手机连接到OpenWrt的热点(5.8G),手机测速可达百兆左右,实际测速情况可能有差异,仅供参考。

Jetson Nano使用

建议您使用jetson-nano-sd-card-image这个系统镜像(2020年10月更新),此系统的linux内核版本4.9.140-tegra,之前的系统是4.4的,此教程是基于4.9内核的,如果有差异请更新到与此版本相同的,这样能最大限度减少您使用出错的机率。
如果您使用的是其他的linux系统,请下载SIM8200_OS_Driver\linux下的驱动,并按照其下的文档进行移植。

第一次使用时需要进行的配置

请不要输错字母,最好复制粘贴

sudo apt-get install p7zip-full
wget https://www.waveshare.net/w/upload/0/07/Sim8200_for_jetsonnano.7z
7z x Sim8200_for_jetsonnano.7z -r -o./Sim8200_for_jetsonnano
sudo chmod 777 -R Sim8200_for_jetsonnano
cd Sim8200_for_jetsonnano
sudo ./install.sh

请不要删除或者修改option目录、qmi_wwan_simcom目录、default.script、install.sh这四个目录文件,否则影响驱动的加载。
如果出错误了,请确认系统内核是否为4.9.140-tegra,并将错误信息截图,方便工程师帮助您分析解决问题。

运行ifconfig -a可以看到已经生成了WWAN0

测试AT指令

sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2


5G上网

cd Goonline
make
sudo ./simcom-cm

即可成功看到最下方已经生成了DNS

其他使用

如果您需要将产品使用在其他的系统上,请下载SIM8200_OS_Driver的文件,并参考SIMCOM官方文档进行添加驱动。

关于速度

由于实际和实验室条件会存在很多不一致的地方,会导致5G速度不能理想的稳定保持100MBPS,有以下几点:

  • 基站距离,离5G基站越近信号越好,速度越快;
  • 基站负荷,使用的人越少速度越快,上下班高峰期会慢;
  • 基站的数量:由于频谱关系,等量的4G覆盖率需要双倍的5G基站
  • 运营商:需要确认您的5G卡,是否被限速了,可以定期要求运营商重置您的网络
  • 室内比室外差:建筑穿透衰耗,以及室内的绕射衰耗

PS:目前的基站数量还是没有很好的覆盖,在不同的地点测速也不太一样。