1001 RPi0 4G Cat1-ETH/RS485
Change the language to English
关键词
树莓派、 Raspberry Pi Zero、Zero W、Zero WH、Zero2 W、Cat1 4G LTE、USB2.0-A、以太网、扩展板、USB HUB 集线器、RS485、串口
一、简介
树莓派Zero系列(包括Zero、Zero W(H)以及Zero 2W)是一款具备极高性价比的嵌入式系统平台,尺寸小巧功耗较低性能尚可,适合很多轻量型应用场景。Zero系列虽然小巧,但预留了扩展接口,特别是板子反面引出了USB和电源的镀金测试点,我们可以借助这两组USB和电源测试点进行多种类型的外设扩展。
本扩展板实际就是一个USB HUB集线器,通过顶针将扩展板和Zero的USB口连接起来,通过USB扩展四路USB口,其中一路USB转百兆有线以太网,一路USB接4G Cat1模组以及两路USB2.0-A主机接口。另有RS485版本可选,RS485版本可选将一路USB转为RS485接口,且是工业级带隔离。
4G Cat1是针对10Mbps左右的中速物联网应用的高性价比模组,10Mbps下行5Mbps上行的速率可以满足绝大多数联网和传输需求;4G在树莓派OS和Ubuntu系统,免驱,自动识别;4G全网通,支持联通,电信和移动。
二、硬件资源
2.1 创新性采用镀金顶针和树莓派Zero系列进行连接,免去外接线缆;
2.2 两组镀金顶针分别用于供电和USB通讯;板载USB HUB芯片;
2.3 一路USB-C 5V供电接口,可通过此接口给整个系统供电,也可以用Zero上的MicroUSB口供电(供电二选一使用);
2.4 两路USB-A host接口;
2.5 一路百兆网口;
2.6 一路CAT1 4G LTE;
2.7 一个Nano SIM卡座;
2.8 一个1代IPEX座或SMA座;
2.9 三盏LED灯:PWR/MODE/ACT LED指示灯;
2.10 一个4G复位按键;
2.11 其中一路USB口可选配为带电源隔离的工业级RS485模块;
2.12 尺寸:70*56mm; 外壳尺寸:80*58*38mm;
2.13 PCB板沉金工艺,无铅生产;通过UL和ROHS认证,防火等级为94V-0;
2.14 可选配铝合金外壳。
注意1:连接了此扩展板后,Zero上的MicroUSB口将不可使用。
注意2:部分系统下需要禁用OTG功能并将USB模式设置为Host模式。
RS485隔离模组特点:
本模组采用自动流控型高速RS485隔离模块,是一款采用IC集成化技术,实现了电源隔离、信号隔离、RS-485通信和总线保护于一体的RS-485协议收发模组。模组自带定压隔离电源,可实现2500VDC电气隔离耐压保护;可作为从机接入RS485总线,也可作为主机,接收处理各从机信息。
- 最多可以连接64/128个节点;
- 高达500Kbps传输速率;
- 电磁辐射EMI极低;
- 工作温度范围:-40℃ - +85℃;
- 集成电源隔离、信号隔离和总线ESD保护功能。
RPi0_CAT1-ETH:
| model | CAT1 | CAT1-EU |
|---|---|---|
| Band | FDD:B1/B3/B5/B8 | FDD:B1/B3/B5/B7/B8/B20/28 |
| TDD:B34/B38/B39/B40/B41 | TDD:B38/B40/B41 | |
| DATA | FDD: Max 10Mbps(DL)/Max 5Mbps(UL)
TDD:Max 8Mbps(DL)/Max 2Mbps(UL) Max 6Mbps(DL)/Max 4Mbps(UL) | |
三、树莓派OS的使用
本文档使用基于树莓派Zero 2W的硬件,树莓派OS(Raspberry Pi OS with desktop),镜像为2024-07-04-raspios-bookworm-arm64.img.xz。
(若使用树莓派Zero一代系列的板子,只支持32位系统,请注意下载版本。)
树莓派OS下载地址:
https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit
不同的树莓派系统版本,对于网络管理的策略有差异,基于64位系统版本,测试结果如下:
| 系统版本 | 测试结果 |
| 2023-02-21-bullseye | 免驱免拨号,自动识别,即插即用,自动联网。 |
| 2023-05-03-bullseye | |
| 2023-12-05-bookworm | 免驱免拨号,自动识别,但是可能会碰到联网失败,系统需要安装DNS软件。 |
| 2024-07-04-bookworm | |
| 2024-11-19-bookworm | |
| 2025-05-13-bookworm | |
| 2025-10-01-trixie |
3.1 查看硬件设备
3.1.1 查看USB设备
扩展板的USB口接了无线键鼠,打开树莓派OS的终端,输入命令lsusb,如下图所示:
RPi0_RS485CAT1:
RPi0_CAT1-ETH:
注意,若扩展板USB口不接设备,那lsusb里是不会出现相应的设备编号的。
3.1.2 查看网络设备
打开树莓派OS的终端,输入命令ifconfig -a,如下图所示:
可以看到eth1为4G Cat1(上图中IP地址默认为192.168.5.8)。
3.2 测试网络设备
3.2.1 ping包测试
测试的时候有优先级,如果eth0已连接则优先走eth0。如有内外网特殊优先级需要请调整各网络的metric值以及DNS服务器设置。
可以用-I参数指定从哪个网卡开始ping包,如下所示:
ping www.mcuzone.com -I eth0
ping www.mcuzone.com -I eth1
优先级可以通过可以执行route命令来查看,哪个网卡的metric值小就从优先从哪个网卡通讯。
我们也可以通过关闭某个网卡,达到强制指定通过另一个网络进行通讯,如需关闭eth0,可执行下面的命令:
sudo ifconfig eth0 down
以及通过执行下面的命令来开启eth0:
sudo ifconfig eth0 up
3.2.2 网卡优先级的设置
如果要设置网卡的优先级,需要修改网卡的metric值,我们首先需要安装ifmetric软件:
sudo apt install ifmetric
安装完毕后就可以修改网卡的metric值,如需要将eth0的metric值修改为102,可执行:
sudo ifmetric eth0 102
修改完毕后再用route命令查看,我们可以看到eth0的metric值已修改为102:
但是这样修改仅仅是临时修改,如果系统重启的话还是会恢复到原样,如果我们需要永久修改eth0的metric值为102,则需通过编辑启动文件rc.local来达到目的。
开启rc-local服务:
sudo systemctl enable --now rc-local
通过下面的命令打开rc.local:
sudo nano /etc/rc.local
在exit 0上面添加你要开机执行的命令,如sudo ifmetric eth0 102,然后保存文件,这样就可以实现每次启动系统修改eth0的metric:
修改完metric值后,有可能系统的nameserver(即DNS服务器)还是原来优先级高的网卡的,因为此时默认网卡已改变,就会造成域名无法解析,所以我们还需要修改nameserver。
通过下面的命令打开resolv.conf文件:
sudo nano /etc/resolv.conf
查看此时的nameserver是否正确,如果不正确,请将其改为目前优先级高的网卡的nameserver或者一些通用的nameserver地址(如114.114.114.114等)。
3.2.3 利用udhcpc指定DNS服务器
上一节我们讲了通过修改nameserver来指定DNS服务器,其实我们也可以通过使用udhcpc来完成该任务。
首先需要安装udhcpc软件:
sudo apt install udhcpc
本节我们测试的例子中,eth0为USB转以太网,eth1为4G Cat1,如果我们需要使用USB转以太网(eth0)的网络DNS,请使用下面的命令:
sudo udhcpc -i eth0
如果我们需要使用4G Cat1(eth1)的网络DNS,请使用下面的命令:
sudo udhcpc -i eth1
3.2.4 udhcpc应用场景举例
例1:百兆网口接Internet,4G Cat1正常联网。
这时我们ping某个域名,是可以成功的:
此时拔了百兆网口的网线,就无法ping成功了:
执行sudo udhcpc -i usb0,将DNS服务器切换到4G Cat1上,就可以正常ping了:
例2:百兆网口接内网(不连通Internet),4G Cat1正常联网。
这时我们ping某个域名,无法ping成功:
执行sudo udhcpc -i usb0,将DNS服务器切换到4G Cat1上,就可以正常ping了,同时还可以通过IP地址正常访问内网设备:
3.2.5 iperf3测速
Windows版iperf3下载:
http://www.mcuzone.com/down/Software.asp?ID=10000634
Linux下iperf3安装:
sudo apt-get install iperf3
百兆以太网测速结果,client模式70Mbps左右,server模式90Mbps左右:
注意:USB转百兆有线受Zero 2W性能和USB Hub以及4G Cat1带宽占用影响并不能跑满,请知悉。
4G CAT1的测速结果如下:
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
3.3 4G的AT命令操作
3.3.1 打开AT命令串口方法
以CAT1ETH为例,其余4G模块也是同样操作:
在终端中执行命令:
lsusb
记下4G模块的ID值:19d1 0001
使用下列命令打开串口,其中echo后面的值就是上面记录的ID值:
sudo modprobe option
sudo sh -c 'echo 19d1 0001 > /sys/bus/usb-serial/drivers/option1/new_id'
执行以上两条命令后系统应该会在dev设备下有ttyACM0-2三个设备,输入ls /dev可以查看:
▶ 如果是RS485CAT1,设备中识别的4G串口设备为ttyUSB0-2;
▶ 如果是RS485CAT1EU或CAT1ETH,设备中识别的4G串口设备为ttyACM0-2。
下载minicom工具:
sudo apt-get install minicom
通过minicom打开AT命令串口:
▶ 如果是RS485CAT1:
sudo minicom -D /dev/ttyUSB0
(注意,典型情况下会出现ttyUSB0-2三个端口,一般系统下AT口是ttyUSB0,如果不行,可以尝试其它端口如ttyUSB1。如果有多个USB转串口设备,则需要进一步的尝试直至找到正确的AT端口。)
▶ 如果是RS485CAT1EU或CAT1ETH:
sudo minicom -D /dev/ttyACM0
(注意,典型情况下会出现ttyACM0-2三个端口,一般系统下AT口是ttyACM0,如果不行,可以尝试其它端口如ttyACM2。如果有多个USB转串口设备,则需要进一步的尝试直至找到正确的AT端口。)
第一次输入AT命令可能没有回显,此时如果输入命令at后回车,有返回OK,就说明工作正常。如果需要查看回显,请键入命令:ate1,然后回车,继续键入其它命令,回车可以看到结果。
3.3.2 常用AT命令
常用AT命令:
1. 检查SIM卡是否识别到:
at+cpin?
返回ready表示卡已识别,返回error要检查硬件
2. 检查天线信号质量:
at+csq
返回值在26-31表示信号OK,信号满格31;返回值在20-25表示信号勉勉强强;返回值在20以下表示信号比较糟糕或者天线没接
3. 检查注网情况:
at+cops?
正常应该返回运营商代码和7,7代表4G。
注意,以上命令只有at+csq不要加问号,另外两条命令需要加问号。
4. 查看4G模块的IMEI码:
at+cgsn
5. 重启4G模块(有时候如果重插SIM卡,热插拔不一定管用,可以用这个reset命令来复位模块):
at+reset
6. 关闭射频:
at+cfun=0
开启射频:
at+cfun=1
上述两条命令成对使用,可以在不重启4G模组的情况下让模组重新注网。
7. APN设置
普通手机SIM卡,不需要任何设置,直接使用;有些物联网卡需要设置APN才能使用,以下是用户使用提供的参考,具体的APN代码需要SIM卡运营商提供。
移动卡:
AT+CPNETAPN=0,"cmnet","",""
电信卡:
AT+CPNETAPN=0,"ctnet","",""
3.4 测试RS485
RPi0_RS485CAT1扩展板带有RS485模块,此RS485是由一路USB转换而来,和树莓派Zero自身的40PIN GPIO无关,此RS485操作如下。
首先需要安装串口软件CuteCom,安装命令为:
sudo apt install cutecom
安装完毕后,点击桌面左上角的树莓派图标,在“System Tools”有CuteCom的快捷方式:
如果在使用过程中有权限不足的问题,请打开树莓派OS终端,输入:
sudo cutecom
来运行CuteCom。
本扩展板带有4G模组,
▶ 如果是RS485CAT1:
4G模组占用了ttyUSB0-2三个串口,因此RS485串口的串口号向后顺延,为ttyUSB3。
在终端中执行:
ls /dec/ttyUSB*
即可看到这4个串口。
▶ 如果是RS485CAT1EU或CAT1ETH:
RS485串口的串口号为ttyUSB0。
在PC端插上一个USB转485的转换器,与扩展板上的485接口相连,各自打开串口软件进行收发,结果如下(以ttyUSB3为例):
树莓派OS端:■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■Windows端:
经过实测,波特率最高可达到2.06M(以传输数据不发生乱码为准)。
3.5 FAQ
问:如果系统卡在树莓派logo处无法启动,或者启动后键盘鼠标及4G模组都无法使用怎么办?
答:请仔细观察顶针是否对准了镀金触点,并请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本:
需要确认下图中的三处红框的位置是否都配置成完全,如果没有,请手动添加完整并保存文件:
# otg_mode=1(建议按此注释掉)
dtoverlay=dwc2,dr_mode=host(两处必须确保加上)
四、Ubuntu Sever的使用
本文档使用基于树莓派Zero 2W的硬件,
Ubuntu系统(Ubuntu Server 24.04 LTS服务器版,树莓派Zero 2W因为性能关系不能用Desktop版)。镜像为ubuntu-24.04-preinstalled-server-arm64+raspi.img.xz
Ubuntu系统下载地址:
https://ubuntu.com/download/raspberry-pi
4.1 编辑初始化脚本
Ubuntu Server烧写完毕后,请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本,Ubuntu Server对USB初始化了两遍,前面一遍没有配置成host模式,需要确认下图中的红框的位置是否配置成完全,如果没有,请手动添加完整:
dtoverlay=dwc2,dr_mode=host
4.2 配置用户名和密码
将TF卡插入Zero 2W,启动系统。第一次启动后会要求登录,用户名和密码均为ubuntu,登录成功后会要求修改密码。
修改完毕后就自动进入系统。
4.3 配置网络
Ubuntu Server系统出于安全考虑,有非常多的限制,默认很多服务器和组件也都是关闭状态。因为网络接口被关闭,所以系统启动后并无网络可用,需要进行开启设置后才能使用。
注意,系统默认并没有集成ifconfig工具,只有ip命令可用。
执行ip addr查看并记录下网卡名称:
其中2号网卡(enx00e0996df1cd)为USB转百兆网卡,3号网卡(enxac4bb3b9ebe5)为4G模组。
然后运行下面的命令,打开网卡配置文件:
sudo nano /etc/netplan/50-cloud-init.yaml
按照下图编辑网卡配置文件:
保存退出,然后重启。
重启后即可联网,安装net-tools工具以便于使用ifconfig命令:
sudo apt install net-tools
4.4 网络及4G模组测试
执行命令ifconfig -a,查看网卡信息:
可见第一块网卡为USB转百兆网卡,第二块网卡为4G模组。
通过使用-I参数,在ping包时加上网卡名称,可指定哪块网卡进行ping包。通过这两块网卡对腾讯的网站的ping包测试可知,第二块网卡即4G模组支持ipv6:
4.5 使用AT命令
安装minicom工具:
sudo apt-get install minicom
然后和树莓派OS一样,先配置并开启tty串口,再通过minicom打开AT命令串口:
▶ 如果是RS485CAT1:
sudo minicom -D /dev/ttyUSB0
(注意,典型情况下会出现ttyUSB0-2三个端口,一般系统下AT口是ttyUSB0,如果不行,可以尝试其它端口如ttyUSB1。如果有多个USB转串口设备,则需要进一步的尝试直至找到正确的AT端口。)
▶ 如果是RS485CAT1EU或CAT1ETH:
sudo minicom -D /dev/ttyACM0
(注意,典型情况下会出现ttyACM0-2三个端口,一般系统下AT口是ttyACM0,如果不行,可以尝试其它端口如ttyACM2。如果有多个USB转串口设备,则需要进一步的尝试直至找到正确的AT端口。)
第一次输入AT命令可能没有回显,此时如果输入命令at后回车,有返回OK,就说明工作正常。如果需要查看回显,请键入命令:ate1,然后回车,继续键入其它命令,回车可以看到结果。
4.6 测试RS485
▶ 如果是RS485CAT1:
4G模组占用了ttyUSB0-2三个串口,因此RS485串口的串口号向后顺延,为ttyUSB3。
▶ 如果是RS485CAT1EU或CAT1ETH:
RS485串口的串口号为ttyUSB0。
在PC端插上一个USB转485的转换器,与扩展板上的485接口相连,各自打开串口软件进行收发,Ubuntu系统端使用minicom(以ttyUSB3为例):
sudo minicom -D /dev/ttyUSB3
Ubuntu系统端:■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■Windows端:
经过实测,波特率最高可达到2.00M(以传输数据不发生乱码为准):
五、OpenWrt的使用
5.1 概述
此扩展板搭配树莓派Zero 2W,在OpenWrt系统下可配置为一进一出的交换机模式,扩展板上的4G可作为WAN口(直接4G上网),网口配置为LAN口,用于连接PC。
5.2 准备工作
本文使用的OpenWrt系统为:openwrt-bcm27xx-bcm2709-rpi-2-squashfs-sysupgrade-linux-6.1.98-20240723.img.gz
烧写OpenWrt系统并上电启动后,我们通过树莓派自带网口连接网线至PC网口,待PC的网卡与树莓派的网口连接成功后,我们在Windows设置中找到网络和Internet,在以太网中打开连接的网络查看默认网关的IP地址,这个地址就是OpenWrt系统的后台配置页面地址,如图所示,本文测试的地址为192.168.198.1:
然后打开网页浏览器输入192.168.198.1进入OpenWrt系统。默认用户名为root,默认密码为password。
5.3 设置OpenWrt系统
进入OpenWrt系统后,如前所述,用网线把树莓派的网口和PC的网口直连,等PC的网卡获取了IP地址后,即可让PC直接通过4G模块上网(无需设置)。
5.4 测试4G模块网速
在PC端打开https://www.speedtest.cn/进行测速,此时流量走的是4G模块,测试结果如下:
注意:4G网络测速受网络信号和测试方法影响,速度请以实际为准。
5.5 挂载U盘及文件操作
将U盘插入USB口,则在“系统 - 磁盘管理”中直接可以看到该U盘的信息及挂载情况:
在“系统 - 挂载点”中可以看到各个挂载点的情况,也可以在此页面对其进行配置。
在“网络存储 - 文件助手”中,可以对系统中的文件进行操作。
5.6 TTYD终端
OpenWrt系统自带一个网页版的TTYD终端,可在“系统 - TTYD终端”中打开。默认用户名为root,默认密码为password,因为是使用root账号登录,登录后即有root权限。
六、香橙派Zero 2W的测试
香橙派Zero 2W的尺寸和设计结构兼容树莓派Zero开发板,所以也可适用于我们扩展板。本章介绍香橙派Zero 2W搭配RPi0_RS485CAT1使用。
测试使用Ubuntu24.04,版本为:Orangepizero2w_1.0.4_ubuntu_noble_desktop_xfce_linux6.1.31.img
下载地址:
扩展板上插上USB键鼠,打开终端,输入lsusb,显示如下:
6.1 测试网络
打开终端,输入ifconfig -a,显示如下:
可见4G模组都已经正确获得了IP地址。
执行route,显示如下:
以太网排第一位,表示此时优先通过以太网上网,我们操作ping外网IP和域名都成功,说明以太网工作正常:
如果要使用4G模组优先上网,则需将4G模组的优先级改到最高,步骤如下:
安装ifmetric软件:
sudo apt install ifmetric
然后执行:
sudo ifmetric enxac4bb3b9ebe5 99
这样就将4G模组的优先级改到最高,执行route后可见4G模组排第一位,此时通过4G模组上网。:
我们ping外网IP和域名,都成功,说明4G模组工作正常:
6.2 测试RS485
经测试发现,此系统中的盲文软件brltty占用了扩展板上的RS485串口 ID,所以需要先在brltty中屏蔽被占用的ID。
在终端中执行:
sudo nano /usr/lib/udev/rules.d/85-brltty.rules
将下面的语句屏蔽(语句前加“#”):
ENV{PRODUCT}=="1a86/7523/*", ATTRS{idVendor}=="1a40", ATTRS{idProduct}=="0101", ENV{BRLTTY_BRAILLE_DRIVER}="bm", GOTO="brltty_usb_run"
保存后重启系统即可。
在终端中执行:
ls /dev/ttyUSB*
ttyUSB0即为RS485串口。
安装串口软件CuteCom:
sudo apt install cutecom
打开CuteCom,选择ttyUSB0,在PC端插上一个USB转485的转换器,与扩展板上的485串口相连,各自打开串口软件进行收发,结果如下:
Ubuntu系统端:■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■Windows端:
经过实测,波特率最高可达到0.41K(以传输数据不发生乱码为准)。
打开AT命令串口的方法和树莓派系统一样,在终端中执行:
sudo modprobe option
sudo sh -c 'echo 1782 4e00 > /sys/bus/usb-serial/drivers/option1/new_id'
执行完毕后再执行:
ls /dev/ttyUSB*
可见多出了ttyUSB1-3三个串口,这三个串口即为4G模组的串口。
经测试,ttyUSB1为AT命令串口,AT命令其余操作与树莓派系统相同。
七、扩展板选型表
联系我们
电话:13957118045
如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!
Copyright 2004-2025 野芯科技




QQ:8204136