1005 RPi0-2U2E(双百兆网络双USB)
关键词
树莓派、 Raspberry Pi Zero、USB2.0-A、双以太网、扩展板、USB HUB 集线器
一、简介
树莓派双网络双USB扩展板是专为树莓派Zero系列所设计的扩展板,支持一代Zero和二代Zero全系列,包括带或者不带WiFi、焊或者不焊插针的各个子型号。同时也支持部分具备相同位置测试点的国产派。
该扩展板通过镀金顶针和Zero系列相连,其中两根顶针用于供电,另两根顶针用于USB通讯,需要注意的是Zero上的MicroUSB接口不能再接其它USB设备,也不能接USB线缆,不然扩展板的USB将无法使用。可通过树莓派Zero标记了PWR的MicroUSB供电,也可以通过扩展板上的USB-C供电。扩展板板载一扩四USB Hub,两路用来扩展USB转百兆网卡,两路以USB2.0-A主机口形态引出。其中一路USB2.0-A后方还预留了1.25mm 4Pin接插件,可通过该接口扩展4G网卡等设备。
二、硬件资源
1. 通过镀金顶针和Zero系列连接,供电和通讯;
2. 可通过USB-C供电或者Zero上的PWR MicroUSB供电;
3. 板载四口USB Hub,两路用来扩展百兆网络,两路用来扩展USB2.0-A主机口;
4. 其中一路USB2.0-A后方预留1.25mm 4pin接口,共用一组USB信号,二选一使用;
5. 可选配铝合金外壳。
三、系统烧写
3.1 本文档使用基于树莓派Zero 2W的硬件,镜像为2024-07-04-raspios-bookworm-arm64.img.xz(树莓派OS,Raspberry Pi OS with desktop)。
(若使用树莓派Zero一代系列的板子,只支持32位系统,请注意下载版本。)
树莓派OS下载地址:
https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit
或ubuntu-24.04-preinstalled-server-arm64+raspi.img.xz(Ubuntu系统,Ubuntu Server 24.04 LTS,服务器版,树莓派Zero 2W因为性能关系不能用Desktop版)。
Ubuntu系统下载地址:
https://ubuntu.com/download/raspberry-pi
以及OpenWrt系统,版本为:openwrt-bcm27xx-bcm2709-rpi-2-squashfs-sysupgrade-linux-6.1.98-20240723.img.gz
3.2 系统烧写在SD(TF)卡上,点击直达烧写方法说明。
四、树莓派系统下使用演示
4.1 查看硬件设备
4.1.1 查看USB设备
打开树莓派OS的终端,输入命令lsusb
,如下图所示:
可以看到系统识别到了USB HUB和两个百兆网卡。其中:
Device 002:外挂USB Hub;
Device 003:USB转百兆网卡;
Device 004:USB转百兆网卡;
Device 005:USB2.0-A接口;
Device 006:USB2.0-A接口。
如果系统卡在树莓派logo处无法启动:
或者启动后键盘鼠标,请仔细观察顶针是否对准了镀金触点,并请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本:
需要确认下图中的三处红框的位置是否都配置成完全,如果没有,请手动添加完整并保存文件:
# otg_mode=1
(建议按此注释掉)
dtoverlay=dwc2,dr_mode=host
(两处必须确保加上)
4.1.2 查看网络设备
打开树莓派OS的终端,输入命令ifconfig -a
,如下图所示:
可以eth0和eth1为USB转百兆网卡,其中eth1为靠近后方带有1.25mm 4Pin接插件的USB2.0-A口,wlan0为Zero 2W自带的无线网卡。
4.2 测试网络设备
4.2.1 设置网卡优先级与指定DNS服务器
关于该部分的知识,可参阅以下链接:
建议通过udhcpc软件,而不是编辑resolv.conf文件来指定DNS服务器,这样会比较稳定。
4.2.2 iperf3测速
Windows版iperf3下载:
http://www.mcuzone.com/down/Software.asp?ID=10000634
Linux下iperf3安装:
sudo apt-get install iperf3
百兆以太网测速结果:
eth0:client模式93Mbps左右,server模式94Mbps左右:
eth1:client模式93Mbps左右,server模式94Mbps左右:
4.3 测试外接4G模组
将外接4G模组与扩展板相连,本文档使用4G Cat1模块进行测试。可以使用USB Type C-A线线连接,也可以通过1.25mm 4Pin进行连接。
4.3.1 模块连接
在树莓派终端中执行ifconfig -a
,我们可以看到4G模块(eth2)已经正确获得了IP地址:
如果此时看不到4G模块(eth1),请检查连线是否正确,以及使用4.3.4节中提到的lsusb
命令查看模块是否被系统识别。
Statu LED灯状态如下:
闪烁状态为1.8秒亮0.2秒灭(也可以通过亮的时间比灭的时间长来判断)表示4G模组已经联网。
闪烁状态是1.8秒灭0.2秒亮,说明SIM卡或者网络有问题,请检查SIM卡和天线。
4.3.2 设置网卡优先级与指定DNS服务器
关于该部分的知识,可参阅以下链接:
建议通过udhcpc软件,而不是编辑resolv.conf文件来指定DNS服务器,这样会比较稳定。
4.3.3 联网测试
4G模组正确获得ip地址后,且正确指定DNS地址后,我们可以ping外网地址,如:
ping www.mcuzone.com
能ping通则说明联网成功。
4.3.4 打开串口
系统上电启动后,在树莓派终端中执行命令lsusb
,如下图所示:
本模块的id为19d1 0001,记录下这个值。
使用下列命令打开ttyUSB串口,其中echo后面的值就是之前记录的ID值:
sudo modprobe option
sudo sh -c 'echo 19d1 0001 > /sys/bus/usb-serial/drivers/option1/new_id'
执行上述两条命令之后执行:
ls /dev
此时应该能看到dev设备下有ttyACM0-2三个设备:
4.3.5 执行AT命令
下载minicom工具:
sudo apt-get install minicom
通过minicom打开AT命令串口:
sudo minicom -D /dev/ttyACM0
注意,使用哪个串口,应以在进入此串口后,可输入运行AT命令,显示不乱码,不乱跳结果为准。
下面以minicom为例,如果需要查看回显,请键入命令:ate1
,然后回车,继续键入其它命令,回车可以看到结果。
用AT+CPIN?来检查SIM是否正常插入并识别;
用AT+CSQ来检查信号强度,第一个值是0-31,需要25以上才算信号质量良好;
用AT+COPS?来检查注网情况,双引号内是运营商代码,最后一个数字是网络模式,7代表4G。
五、Ubuntu系统下使用演示
5.1 编辑初始化脚本
Ubuntu Server烧写完毕后,请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本,Ubuntu Server对USB初始化了两遍,前面一遍没有配置成host模式,需要确认下图中的两处红框的位置是否都配置成完全,如果没有,请手动添加完整:
dtoverlay=dwc2,dr_mode=host
5.2 配置用户名和密码
将TF卡插入Zero 2W,启动系统。第一次启动后会要求登录,用户名和密码均为ubuntu,登录成功后会要求修改密码。
修改完毕后就自动进入系统。
5.3 配置网络
系统启动后并无网络可用,需要进行后续设置后才能使用。
注意,系统默认并没有集成ifconfig工具,只有ip命令可用。
执行ip addr
查看并记录下网卡名称:
其中2号、3号网卡(enx00e099d51fa4、enx00e099d6eb5e)为USB转百兆网卡。
然后运行下面的命令,打开网卡配置文件:
sudo nano /etc/netplan/50-cloud-init.yaml
按照下图编辑网卡配置文件:
保存退出,然后重启。
重启后即可联网,安装net-tools工具以便于使用:
sudo apt install net-tools
5.4 设置网卡优先级与指定DNS服务器
执行命令ifconfig -a
,查看两块网卡信息,均能获取IP地址:
关于该部分的知识,可参阅以下链接:
建议通过udhcpc软件,而不是编辑resolv.conf文件来指定DNS服务器,这样会比较稳定。
5.5 网络测试
4G模组正确获得ip地址后,且正确指定DNS地址后,我们可以ping外网地址,如:
ping www.mcuzone.com
能ping通则说明联网成功。
Windows版iperf3下载:
http://www.mcuzone.com/down/Software.asp?ID=10000634
Linux下iperf3安装:
sudo apt-get install iperf3
百兆以太网测速结果:
2号网卡:client模式93Mbps左右,server模式94Mbps左右:
3号网卡:client模式93Mbps左右,server模式94Mbps左右:
5.6 测试外接4G模组
将外接4G模组与扩展板相连,本文档使用4G Cat1模块进行测试。可以使用USB Type C-A线线连接,也可以通过1.25mm 4Pin进行连接。
5.6.1 模块配置
执行ifconfig -a
,与之前的两个有线网卡比较,我们可以看到4G模块为enx2089846a96ab:
17
运行下面的命令,打开网卡配置文件:
sudo nano /etc/netplan/50-cloud-init.yaml
按照下图编辑网卡配置文件:
18
保存退出,然后重启。
执行命令ifconfig -a
,查看外接4G模组信息,能获取IP地址:
19
关于该部分的知识,可参阅以下链接:
建议通过udhcpc软件,而不是编辑resolv.conf文件来指定DNS服务器,这样会比较稳定。
5.6.2 网络测试
4G模组正确获得ip地址后,且正确指定DNS地址后,我们可以ping外网地址,如:
ping www.mcuzone.com
20
能ping通则说明联网成功。