1005 Zero-DETH DUSB(双百兆网络双USB)

来自Mcuzone Wiki
Mcuadm留言 | 贡献2024年9月20日 (五) 08:57的版本 →‎5.6.3 测试AT命令
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

关键词

树莓派、 Raspberry Pi Zero、USB2.0-A、双以太网、扩展板、USB HUB 集线器

一、简介

树莓派双网络双USB扩展板是专为树莓派Zero系列所设计的扩展板,支持所有树莓派Zero版本,包括Zero、Zero W、Zero WH和Zero 2W。同时也支持部分具备相同位置测试点的国产派。

该扩展板通过镀金顶针和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供电,二选一使用,树莓派Zero无需额外供电;

3. 板载四口USB Hub,两路用来扩展百兆网络,两路用来扩展USB2.0-A主机口;

4. 新版本扩展板在其中一路USB2.0-A后方预留1.25mm 4pin接口,共用一组USB信号,二选一使用;

5. 可选配铝合金外壳。

1005_Zero-DETH_DUSB_39.jpg

三、系统及烧写

3.1 本文档使用基于树莓派Zero 2W的硬件,

1)树莓派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

2)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

3)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,如下图所示:

1005_Zero-DETH_DUSB_01.jpg

可以看到系统识别到了USB HUB和两个百兆网卡。其中:

Device 002:外挂USB Hub;

Device 003:USB转百兆网卡;

Device 004:USB转百兆网卡;

Device 005:USB2.0-A接口;

Device 006:USB2.0-A接口。

如果系统卡在树莓派logo处无法启动:

0007_Zero_4G_Cat1_58.jpg

或者启动后键盘鼠标及4G模组都无法使用,请仔细观察顶针是否对准了镀金触点,并请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本:

0007_Zero_4G_Cat1_41.jpg

需要确认下图中的三处红框的位置是否都配置成完全,如果没有,请手动添加完整并保存文件:

# otg_mode=1(建议按此注释掉)

dtoverlay=dwc2,dr_mode=host(两处必须确保加上)

0007_Zero_4G_Cat1_57.jpg

4.1.2 查看网络设备

打开树莓派OS的终端,输入命令ifconfig -a,如下图所示:

1005_Zero-DETH_DUSB_02.jpg

可以eth0和eth1为USB转百兆网卡,如下图所示,而wlan0为Zero 2W自带的无线网卡。

1005_Zero-DETH_DUSB_38.jpg

4.2 测试网络设备

4.2.1 设置网卡优先级与指定DNS服务器

关于该部分的知识,可参阅以下链接:

设置网卡优先级

利用udhcpc指定DNS服务器

udhcpc应用场景举例

建议通过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左右:

1005_Zero-DETH_DUSB_03.jpg

eth1:client模式93Mbps左右,server模式94Mbps左右:

1005_Zero-DETH_DUSB_04.jpg

4.3 测试外接4G模组

将外接4G模组与扩展板相连,本文档使用4G Cat1模块进行测试。可以使用USB Type C-A线连接,也可以通过1.25mm 4Pin线进行连接。

4.3.1 模块连接

在树莓派终端中执行ifconfig -a,我们可以看到4G模块(eth2)已经正确获得了IP地址:

1005_Zero-DETH_DUSB_05.jpg

如果此时看不到4G模块(eth2),请检查连线是否正确,以及使用4.3.4节中提到的lsusb命令查看模块是否被系统识别。

Statu LED灯状态如下:

闪烁状态为1.8秒亮0.2秒灭(也可以通过亮的时间比灭的时间长来判断)表示4G模组已经联网。

闪烁状态是1.8秒灭0.2秒亮,说明SIM卡或者网络有问题,请检查SIM卡和天线。

4.3.2 联网测试

4G模组正确获得ip地址后,且正确指定DNS地址后,我们可以ping外网地址,如:

ping www.mcuzone.com

1005_Zero-DETH_DUSB_06.jpg

能ping通则说明联网成功。

4.3.3 打开串口

系统上电启动后,在树莓派终端中执行命令:

ls /dev

此时应该能看到dev设备下有ttyACM0-2三个设备:

1005_Zero-DETH_DUSB_09.jpg

4.3.4 执行AT命令

下载minicom工具:

sudo apt-get install minicom

0007_Zero_4G_Cat1_13.jpg

通过minicom打开AT命令串口:

sudo minicom -D /dev/ttyACM0

注意,使用哪个串口,应以在进入此串口后,可输入运行AT命令,显示不乱码,不乱跳结果为准。

下面以minicom为例,如果需要查看回显,请键入命令:ate1,然后回车,继续键入其它命令,回车可以看到结果。

用AT+CPIN?来检查SIM是否正常插入并识别;

用AT+CSQ来检查信号强度,第一个值是0-31,需要25以上才算信号质量良好;

用AT+COPS?来检查注网情况,双引号内是运营商代码,最后一个数字是网络模式,7代表4G。

1003_Zero_4G_Cat1-Hub_09.jpg

五、Ubuntu系统下使用演示

5.1 编辑初始化脚本

Ubuntu Server烧写完毕后,请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本,Ubuntu Server对USB初始化了两遍,前面一遍没有配置成host模式,需要确认下图中的两处红框的位置是否都配置成完全,如果没有,请手动添加完整:

dtoverlay=dwc2,dr_mode=host

0007_Zero_4G_Cat1_32.jpg

0007_Zero_4G_Cat1_30.jpg

5.2 配置用户名和密码

将TF卡插入Zero 2W,启动系统。第一次启动后会要求登录,用户名和密码均为ubuntu,登录成功后会要求修改密码。

0007_Zero_4G_Cat1_31.jpg

修改完毕后就自动进入系统。

5.3 配置网络

系统启动后并无网络可用,需要进行后续设置后才能使用。

注意,系统默认并没有集成ifconfig工具,只有ip命令可用。

执行ip addr查看并记录下网卡名称:

1005_Zero-DETH_DUSB_10.jpg

其中2号、3号网卡(enx00e099d51fa4、enx00e099d6eb5e)为USB转百兆网卡。

然后运行下面的命令,打开网卡配置文件:

sudo nano /etc/netplan/50-cloud-init.yaml

按照下图编辑网卡配置文件:

1005_Zero-DETH_DUSB_11.jpg

保存退出,然后重启。

重启后即可联网,安装net-tools工具以便于使用:

sudo apt install net-tools

0007_Zero_4G_Cat1_35.jpg

5.4 设置网卡优先级与指定DNS服务器

执行命令ifconfig -a,查看两块网卡信息,均能获取IP地址:

1005_Zero-DETH_DUSB_12.jpg

1005_Zero-DETH_DUSB_13.jpg

关于该部分的知识,可参阅以下链接:

设置网卡优先级

利用udhcpc指定DNS服务器

udhcpc应用场景举例

建议通过udhcpc软件,而不是编辑resolv.conf文件来指定DNS服务器,这样会比较稳定。

5.5 网络测试

网卡正确获得ip地址后,且正确指定DNS地址后,我们可以ping外网地址,如:

ping www.mcuzone.com

1005_Zero-DETH_DUSB_14.jpg

能ping通则说明联网成功。

Windows版iperf3下载:

http://www.mcuzone.com/down/Software.asp?ID=10000634

Linux下iperf3安装:

sudo apt-get install iperf3

百兆以太网测速结果:

2号网卡:client模式93Mbps左右,server模式94Mbps左右:

1005_Zero-DETH_DUSB_15.jpg

3号网卡:client模式93Mbps左右,server模式94Mbps左右:

1005_Zero-DETH_DUSB_16.jpg

5.6 测试外接4G模组

将外接4G模组与扩展板相连,本文档使用4G Cat1模块进行测试。可以使用USB Type C-A线连接,也可以通过1.25mm 4Pin线进行连接。

5.6.1 模块配置

执行ifconfig -a,与之前的两个有线网卡比较,我们可以看到4G模块为enx2089846a96ab:

1005_Zero-DETH_DUSB_17.jpg

运行下面的命令,打开网卡配置文件:

sudo nano /etc/netplan/50-cloud-init.yaml

按照下图编辑网卡配置文件:

1005_Zero-DETH_DUSB_18.jpg

保存退出,然后重启。

执行命令ifconfig -a,查看外接4G模组信息,能获取IP地址:

1005_Zero-DETH_DUSB_19.jpg

关于该部分的知识,可参阅以下链接:

设置网卡优先级

利用udhcpc指定DNS服务器

udhcpc应用场景举例

建议通过udhcpc软件,而不是编辑resolv.conf文件来指定DNS服务器,这样会比较稳定。

5.6.2 网络测试

4G模组正确获得ip地址后,且正确指定DNS地址后,我们可以ping外网地址,如:

ping www.mcuzone.com

1005_Zero-DETH_DUSB_20.jpg

能ping通则说明联网成功。

5.6.3 测试AT命令

执行命令:

ls /dev

此时应该能看到dev设备下有ttyACM0-2三个设备:

1005_Zero-DETH_DUSB_23.jpg

下载安装minicom工具:

sudo apt-get install minicom

1005_Zero-DETH_DUSB_24.jpg

通过minicom打开AT命令串口:

sudo minicom -D /dev/ttyACM0

注意,使用哪个串口,应以在进入此串口后,可输入运行AT命令,显示不乱码,不乱跳结果为准。

下面以minicom为例,如果需要查看回显,请键入命令:ate1,然后回车,继续键入其它命令,回车可以看到结果。

用AT+CPIN?来检查SIM是否正常插入并识别;

用AT+CSQ来检查信号强度,第一个值是0-31,需要25以上才算信号质量良好;

用AT+COPS?来检查注网情况,双引号内是运营商代码,最后一个数字是网络模式,7代表4G。

1005_Zero-DETH_DUSB_25.jpg

常用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模组的情况下让模组重新注网。

六、OpenWrt系统操作演示

6.1 概述

此扩展板搭配树莓派Zero 2W,在OpenWrt系统下可配置为一进一出的交换机模式,扩展板上的两个百兆网口一个作为WAN口(连接上游路由器),另一个配置为LAN口,用于连接PC。

6.2 准备工作

本文使用的OpenWrt系统为:openwrt-bcm27xx-bcm2709-rpi-2-squashfs-sysupgrade-linux-6.1.98-20240723.img.gz

烧写OpenWrt系统并上电启动后,我们通过扩展板上的百兆网口(两个网口中,靠近不带1.25mm 4pin接口的USB口的网口)连接网线至PC网口,待PC的网卡与树莓派的网口连接成功后,我们在Windows设置中找到网络和Internet,在以太网中打开连接的网络查看默认网关的IP地址,这个地址就是OpenWrt系统的后台配置页面地址,如图所示,本文测试的地址为192.168.198.1:

0007_Zero_4G_Cat1_18.jpg

然后打开网页浏览器输入192.168.198.1进入OpenWrt系统。默认用户名为root,默认密码为password

0007_Zero_4G_Cat1_19.jpg

6.3 设置OpenWrt系统

点击”网络 - 接口“,如下图所示:

1005_Zero-DETH_DUSB_26.jpg

其中WAN6和WAN相同,将WAN6删除,然后点击”保存&应用“,如下所示:

1005_Zero-DETH_DUSB_27.jpg

这样eth0为LAN口(即双网口中连接网线至PC网口的那个),另一个eth1为WAN口,用网线将其连接至上游路由器,这样PC就可以通过本扩展板上网。

6.4 联网测试

点击”网络 - 接口“,我们可以看到WAN口已经正确获得了IP:

1005_Zero-DETH_DUSB_28.jpg

进入“系统 - TTYD终端”,使用默认的用户名和密码登录终端,执行ifconfig -a

1005_Zero-DETH_DUSB_29.jpg

也可以看到eth1的网络参数。

在终端中ping外网地址:

ping www.mcuzone.com

1005_Zero-DETH_DUSB_30.jpg

能ping通说明网络正常。

在PC端打开https://www.speedtest.cn/进行测速,测试结果如下:

1005_Zero-DETH_DUSB_31.jpg

注意:4G网络测速受网络信号和测试方法影响,速度请以实际为准。

6.5 测试外接4G模组

将外接4G模组与扩展板相连,本文档使用4G Cat1模块进行测试。可以使用USB Type C-A线连接,也可以通过1.25mm 4Pin线进行连接。

启动系统,点击”网络 - 接口“,点击”添加新接口“

1005_Zero-DETH_DUSB_32.jpg

按下图进行设置,设置完毕后点击”提交“:

1005_Zero-DETH_DUSB_33.jpg

新增的eth2即为4G模块。

在”防火墙设置“中,把防火墙区域设置为wan,设置完毕后点击”保存&应用“:

1005_Zero-DETH_DUSB_34.jpg

保存&应用后会自动回到接口页面,稍等片刻,我们就可以看到这个4GWAN已经正确地获得了IP:

1005_Zero-DETH_DUSB_35.jpg

在原WAN口不插网线的情况下,进入TTYD终端ping外网地址:

ping www.mcuzone.com

1005_Zero-DETH_DUSB_36.jpg

能ping通说明网络走的是4G流量。

在PC端打开https://www.speedtest.cn/进行测速,测试结果如下:

1005_Zero-DETH_DUSB_37.jpg

注意:4G网络测速受网络信号和测试方法影响,速度请以实际为准。

联系我们

4f7e81daf8791971.jpg 79c020da7ad0af9b.jpg 2851e01a0549e6f7.gif 0003_bb.jpg 0005_qq.jpg QQ:8204136

邮件:mcuzone@vip.qq.com

电话:13957118045

如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!

Copyright 2004-2024 野芯科技