将 XIAO ESP32S3 和 Wio-SX1262 套件配置为单通道 LoRaWAN 网关
单通道网关(称为单通道集线器)是低成本工具,使用户能够开始探索 LoRa 领域。这些网关可以在特定的扩频因子和通道上接收 LoRa 数据包,并促进这些数据包与网络的交换。由于其经济实惠,许多用户已经开始构建自己的单通道网关来试验 LoRa。
XIAO ESP32S3 作为主控 MCU 和 Wio-SX1262 LoRa 无线电套件可以配置为单通道网关。该套件为那些有兴趣深入研究 LoRa 技术并建立与 LNS(LoRa 网络服务器)连接的用户提供了实用的解决方案。
这是 GitHub 项目:单通道集线器。
刷写固件
固件已准备好安装,预刷写到带有 3D 外壳的 XIAO ESP32S3 和 Wio-SX1262 套件中。如果您想将 XIAO ESP32S3 和 Wio-SX1262 套件刷写为单通道 LoRaWAN 网关,只需从 bin 库 下载。
带有 3D 外壳的 XIAO ESP32S3 和 Wio-SX1262 套件已预刷写为单通道 LoRaWAN 网关,请跳转到下一节进行配置。
此固件构建时:
- 选择 Seeed XIAO ESP32S3 网关板
- 将闪存大小修改为 8 MB
- 启用从闪存获取配置
- 禁用 Wi-Fi 配网
- 禁用 OLED 显示
使用方法:
- 通过用户按钮启用/禁用配置
- 蓝牙广播名称为 "GW-XIAO-ESP32S3"
- 通过 SenseCraft APP 连接并配置 Wi-Fi/LoRa
如果您不使用完整的 ESP-IDF 环境,也可以使用 esptool 实用程序刷写提供的二进制文件。
点击下载固件:
步骤 1:下载 Esptool,更多信息请参考 Esptool 文档。
pip install esptool
步骤 2:将 XIAO ESP32S3 连接到您的 PC。
步骤 3:导航到下载的文件并打开终端/命令行,然后运行 esptool.py 命令。
- 对于 Linux/macOS
esptool.py --chip esp32s3 -p port -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 8MB 0x0 seeed_xiao_esp32s3_devkit_bootloader.bin 0x10000 seeed_xiao_esp32s3_devkit_lorahub.bin 0x8000 seeed_xiao_esp32s3_devkit_partition-table.bin
- For Windows
py -m esptool --chip esp32s3 -p COM14 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 8MB 0x0 seeed_xiao_esp32s3_devkit_bootloader.bin 0x10000 seeed_xiao_esp32s3_devkit_lorahub.bin 0x8000 seeed_xiao_esp32s3_devkit_partition-table.bin
将 port
替换为所使用的串口名称。如果连接失败,请参阅故障排除。
使用 esp-idf 烧录
识别与要烧录的单通道集线器关联的串行设备。 对于 linux 和 mac,可以通过以下方式检查串口
ls /dev/cu*
then flash using idf.py
, replace the port
idf.py -p port flash
如果返回权限错误,请检查当前用户是否属于 dialout 组。如果不是,请执行以下操作,重启 Linux 机器并重试:
sudo usermod -a -G dialout $USERNAME
On a Windows setup, let's suppose that the device is mounted as COM14, the above command would be like:
idf.py -p COM14 flash
Launch the monitor console to see logs (optional).
idf.py -p port monitor
使用 esptool 烧录
如果不使用完整的 ESP-IDF 环境,可以按照第一节下载提供的二进制文件。
使用 esptool-JS 烧录
推荐使用在线 esptool进行烧录。
步骤1:将波特率设置为 115200 并连接到正确的端口。
步骤2:选择 bin 文件并填入相应的烧录地址。
烧录地址 | 文件 |
---|---|
0x0 | seeed_xiao_esp32s3_devkit_bootloader.bin |
0x10000 | seeed_xiao_esp32s3_devkit_lorahub.bin |
0x8000 | seeed_xiao_esp32s3_devkit_partition-table.bin |
通过 Sensecraft APP 配置
WiFi 和 LoRaWAN 配置
步骤 1:下载 SenseCraft
应用:下载链接
步骤 2:为 XIAO ESP32S3 和 Wio-SX1262 套件接通电源。
步骤 3:按照应用中的说明配置 WiFi 和 LoRaWAN。
- 注册并登录 SenseCraft APP
- 导航到
用户
→设备蓝牙配置
- 选择
XIAO ESP32S3 和 Wio-SX1262 套件
- 点击
设备已准备好配置
- 按一次套件按钮,当 LED 开始闪烁时,将进入蓝牙配对模式。
步骤 4:在 The Things Network(TTN) 上注册 LoRaWAN 网关。
- 创建账户并登录到 https://eu1.cloud.thethings.network/。
- 注册网关。
- 将正确的
网关 EUI
复制到 TTN,并填写正确的频率计划
和网关 ID
。 - 重启您的网关模块并等待约 2 分钟。然后可以检查网关的连接状态。
通过 ESP BLE prov 配置
Wi-Fi 配置
步骤 1:下载 ESP BLE prov
应用:
按下板子上的 RST
按钮,然后按下 BOOT
按钮,LED 将点亮。
步骤 2:将 XIAO 连接到您的 PC 并打开串口工具,如 PuTTY、COMTOOL 或任何其他您喜欢的工具。
步骤 3:打开终端通信
- 对于
COMTOOL
:
(1). 选择正确的串口并将波特率设置为 115200
(2). 转到终端并打开通信
- 对于
PuTTY
:
(1). 选择正确的串行线路并将波特率设置为 115200
(2). 转到终端并点击 'Implicit CR in every LF'
步骤 4:在 ESP BLE prov 应用上点击 'Provison Device'
连接成功后,wifi 连接信息和 lora 网关 ID 将在终端显示。
请记下这些信息,它们对 Lora 配置很有用。
- IP 地址:192.168.1.44
- 端口:8000
- 网关 EUI:0xF09E9EFFFE20D02C
Json 格式的 lora 包转发器消息可以在终端上查看。
LoRaWAN 配置
根据我们记下的 IP 地址和端口,web 界面可在:http://ip_address:8000
访问,在浏览器中打开它。
web 界面允许配置以下参数:
信道参数:
- 频率
- 扩频因子
- 带宽
LoRaWAN 网络服务器:
- 地址
- 端口
SNTP 服务器地址:获取 UTC 时间
配置表单底部有 2 个按钮:
Configure
:按下时,HTML 表单中设置的参数将写入闪存(NVS)。
Reboot
:按下时,触发重启命令,LoRaHub 将重启并应用新配置。
请注意,写入闪存的配置只有在下次重启时才会生效。
全部设置完成。现在我们可以将 XIAO ESP32S3 和 SX1262 套件 lora 套件连接到 Lora 网络服务器,如 TTN(The things network)和 Chirpstack。
自定义和构建固件
如果您想重置配置,以下说明可以帮助您在 ESP-IDF 环境下自行构建固件。
设置环境
此项目基于 Espressif ESP-IDF 开发,查看此指南来设置环境。
获取 ESP-IDF
mkdir -p ~/esp
cd ~/esp
git clone -b v5.2.1 --recursive https://github.com/espressif/esp-idf.git
Set up Tools
cd esp-idf/
./install.sh
Installation of One Channel Hub
Step 1: Clone the hub to local repository. And navigate to the project path.
git clone https://github.com/Seeed-Studio/one_channel_hub.git
cd ~/this_project_directory
Step 2: Install required driver
- SX126x driver(sx1261, sx1262, sx1268):
git clone -b v2.3.2 https://github.com/Lora-net/sx126x_driver.git sx126x_driver
- llcc68 driver:
git clone -b v2.3.2 https://github.com/Lora-net/llcc68_driver.git llcc68_driver
- lr11xx 驱动程序(lr1121):
git clone -b v2.4.1 https://github.com/Lora-net/SWDR001.git lr11xx_driver
Build Firmware
Step 1: Enter the lorahub directory.
cd lorahub
为从命令行使用 ESP-IDF 进行构建准备您的 Linux/MAC 终端。在 Windows 上可以跳过此步骤,因为已安装的 'ESP-IDF x.x CMD' 工具会自动准备环境。
. ~/esp/esp-idf/export.sh
Configure the ESP32 target to build for.
idf.py set-target esp32s3
Customize the build if necessary:
idf.py menuconfig
(1) 设置板型:
LoRaWAN 1-CH HUB Configuration
→ Hardware Configuration
→ Board type
→ Seeed XIAO ESP32S3 Gateway
Lora 无线电类型的默认设置是 sx1262
。
不要忘记禁用 OLED 显示屏。
(2) 设置闪存大小:
Serial flasher config
→ Flash size
→ 对于 XIAO ESP32S3 是 8MB
。
(3) 设置 Wi-Fi 配网:
-
通过 SenseCraft APP 设置 Wi-Fi 配网:
LoRaWAN 1-CH HUB Configuration
→WiFi Configuration
→Disable WiFi Provisionning over BLE
-
通过 ESP BLE prov 设置 Wi-Fi 配网:
LoRaWAN 1-CH HUB Configuration
→WiFi Configuration
→Enable WiFi Provisionning over BLE
构建项目:
idf.py all
资源
- XIAO ESP32S3 & Wio-SX1262 套件通过 SenseCraft APP 的单通道集线器固件
- XIAO ESP32S3 & Wio-SX1262 套件通过 ESP BLE prov 的单通道集线器固件
- Github 仓库
技术支持与产品讨论
感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。