Skip to main content

为 M2 网关刷写开源固件

SenseCAP M2 网关是基于成熟硬件解决方案 MT7628 和 Semtech SX1302 基带长距离芯片的经济型 LoRa 网关解决方案。具体型号根据工厂设置的频段(EU868/US915/AS923/AU915)、可选模块(4G/GPS)以及支持的 LoRa 网络(LoRaWAN®/Helium 网络)进行区分。

本文档将指导您如何为 M2 网关刷写开源固件。基于开源固件,您可以深度定制您的 M2 网关,例如添加额外功能或更改工作频段(需要适配对应频段的天线)。

警告

刷写开源固件后,您 无法 恢复到 工厂固件

Seeed Studio 对用户 使用开源固件或第三方固件 导致设备损坏 不承担任何责任

支持的产品列表

准备固件

下载预编译固件

如果您希望方便地体验开源固件,我们提供了一些编译好的固件。您可以从 Seeed-Solution/LoRa_Gateway_OpenWRT/Release 下载。

注意

检查 .bin 文件的后缀以验证固件是否与您的 M2 网关兼容。

例如,openwrt-...-EU868-4G.bin 固件是为运行在 EU868 频段并带有 4G 模块 的 M2 网关编译的。

构建您的固件

如果您的网关与我们的预编译固件不兼容,或者您希望进一步开发,您可以按照以下步骤构建自己的固件。

构建固件需要一个 GNU/Linux、BSD 或 MacOSX 系统(需要区分大小写的文件系统)。由于缺乏区分大小写的文件系统,Cygwin 不支持。

步骤 1: Seeed-Solution/LoRa_Gateway_OpenWRT 克隆源代码。

git clone https://github.com/Seeed-Solution/LoRa_Gateway_OpenWRT.git

步骤 2: 安装必要的依赖包,参考 构建系统设置

注意

请使用 非 root 用户 执行以下步骤。

步骤 3: 进入源代码文件夹,运行 ./scripts/feeds update -a 获取 feeds.conf / feeds.conf.default 中定义的所有最新包定义。

步骤 4: 运行 ./scripts/feeds install -a 为所有获取的包安装符号链接到 package/feeds/。

步骤 5: 运行 cp diffconfig-sensecap-general .config 使用 SenseCAP 差异文件,然后运行 make defconfig 展开完整配置。

步骤 6: 运行 make menuconfig 选择您的 SenseCAP 硬件信息。

  • SenseCAP Hardware->Have 4G(是否包含 4G 硬件)

  • SenseCAP Hardware->Have GPS(是否包含 GPS 硬件)

  • SenseCAP Hardware->REGION(选择您的默认区域)

pir

pir

步骤 7: 运行 make 构建您的固件。

这将下载所有源代码,构建交叉编译工具链,然后为目标系统交叉编译 GNU/Linux 内核及所有选定的应用程序。

编译完成后,您可以在 <prj>/bin/targets/ramips/mt76x8/ 目录中找到名为 openwrt-21.02.0-ramips-mt76x8-sensecap_wm7628n-squashfs-sysupgrade.bin 的固件。

刷写固件

您可以通过以下三种方式之一将固件刷写到网关中。

通过 Luci 刷写固件

登录 Luci 并导航到 System > Backup/Flash Firmware

pir

向下滚动并导航到 Local upgrade,然后点击 Flash image...

pir

浏览文件夹并上传固件

pir

上传完成后,确认上传的固件信息正确,然后点击 Continue

pir

之后,网关将开始安装固件,LED 将进入橙色慢闪状态,直到安装完成。

通过 TFTP 刷写固件

在开始之前,您需要在计算机上安装 TFTP 服务器工具,并将固件放置在适当的目录中。

步骤 1: 使用 Type-C 数据线将设备连接到计算机,并使用网线将设备和计算机置于同一局域网中。

步骤 2: 使用名为 USB-SERIAL CH340 的串口以 波特率 57600 连接设备。

步骤 3: 重启设备。当设备进入 uboot 时,选择命令 2 进入系统更新。

步骤 4: 输入 设备 IP(设备 IP 的网络段必须与您的网络段一致);输入 服务器 IP(即您的计算机 IP);输入要刷写的 固件名称(必须包含文件后缀)。

pir

步骤 5: 等待固件更新完成。网关将开始安装固件,LED 将进入橙色慢闪状态,直到安装完成。

pir

通过串口刷写固件

tip

在开始以下步骤之前,我们建议下载最新版本的 TeraTerm,因为本 Wiki 中的操作均基于 TeraTerm。

步骤 1: 使用 Type-C 数据线将设备连接到计算机。

步骤 2: 使用名为 USB-SERIAL CH340 的串口以 波特率 57600 连接设备。

步骤 3: 重启设备。当设备进入 uboot 时,选择命令 0 进入系统更新。

步骤 4: 将波特率切换到 230400,然后按下回车键。设备将提示 Ready for binary (kermit) download to 0x80100000 at 230400 bps...

步骤 5: 使用 kermit 协议上传固件。TeraTerm 提供了 kermit 传输工具,您可以参考下图上传固件。

pir

步骤 6: 等待固件上传完成,之后设备将提示 Switch baudrate to 57600 bps and press ESC...。按照设备提示操作。然后设备将自动安装固件并重启。

pir

登录控制台

在固件安装完成后,设备会自动开启一个 AP 热点,名称为 SenseCAP_XXXX

使用手机或电脑连接到该热点,无需密码

在浏览器中输入 192.168.168.1 进入 LuCI 界面

pir

使用用户名 root无密码 登录控制台

pir

资源

技术支持

在使用开源固件时遇到问题?欢迎通过以下 Discord 链接与社区成员讨论。

Loading Comments...