使用树莓派构建LoRaWAN网关的完整指南

引言: LoRaWAN(远距离广域网)技术在物联网(IoT)中以其远程和低功耗通信的优势而广受欢迎。本文将展示如何将SX130x 868M LoRaWAN网关模块通过硬件附加在顶部(HAT)的方式连接到Raspberry Pi 4,从而构建一个LoRaWAN网关,使Raspberry Pi(RPi)能够与启用LoRaWAN的设备进行通信。

所需材料

  • Raspberry Pi 4(建议使用B型号或更高版本)
    了解更多
  • SX130x 868M LoRaWAN网关模块(ED-GW1302S-868M)
    了解更多
  • 启用LoRa的兼容天线(随SX1302模块提供)
  • 装有Raspbian OS的MicroSD卡(32 GB,安装说明见下文)
  • SD卡读卡器
  • Raspberry Pi 电源
  • 互联网连接

步骤1:准备硬件

在开始之前,确保您准备好所有必需的硬件组件,包括Raspberry Pi 4、SX130x 868M LoRaWAN网关模块、LoRa天线以及运行Raspbian OS的MicroSD卡。

步骤2:组装硬件

将MicroSD卡插入Raspberry Pi(在RPi安装完毕后 - 请参见步骤3中的说明)。将SX130x LoRaWAN网关模块连接到Raspberry Pi的GPIO引脚,确保引脚正确对齐并牢固连接。由于这是HAT模块,它会完美贴合。

图片
图一:SX130x LoRaWAN网关模块与Raspberry Pi的GPIO引脚连接

步骤3:为Raspberry Pi安装操作系统

使用以下链接下载并安装Raspberry Pi成像软件:Raspberry Pi Imager

图片
图二:Raspberry Pi软件

点击“选择操作系统”。

图片
图三:在Imager软件中选择操作系统

选择32位操作系统的Lite版本,然后在下一步中选择存储设备选项。

图片
图四:选择存储设备选项

接下来,将SD卡通过读卡器插入计算机,选择显示的SD卡。在点击“写入”按钮之前,请务必点击齿轮图标。

图片
图五:使用齿轮按钮更改Wi-Fi设置和其他选项

然后,点击“写入”图像。接下来,您可以更改Wi-Fi设置及其他选项。启用SSH并设置您的用户名和密码。点击“配置无线局域网”,并输入您的Wi-Fi的SSID和密码,这样RPi就能在没有连接到显示器的情况下启动。

图片
图六:添加您的Wi-Fi的SSID和密码

点击“保存”,然后点击“写入”按钮。等待过程完成后,从设备中取出SD卡,并将其插入Raspberry Pi。

步骤4:使用SSH连接Raspberry Pi

在组装并插入SD卡后,打开Raspberry Pi电源,按照以下步骤建立SSH连接。

图片
图七:使用SSH连接RPi后,电源开启

确认Raspberry Pi的IP地址以确保能成功连接。为此,请下载Angry IP Scanner软件:Angry IP Scanner

图片
图八:Angry IP软件

点击“开始”后,将出现当前网络的IP地址列表。一旦过程完成,找到主机名为“Raspberry pi”的IP地址。您也可以在路由器配置页面的DHCP部分找到相关信息。

图片
图九:IP扫描过程

在我们的示例中,IP地址是192.168.1.4,但您的情况可能会有所不同。接下来,下载Bitvise SSH软件:Bitvise SSH Client,启动软件并使用您在SD卡闪存过程中设置的用户名和密码登录到IP地址。

图片
图十:SSH连接到RPi的过程

点击“新建终端控制台”。

图片
图十一:点击“新建终端控制台”

您将看到终端界面。

图片
图十二:登录后的终端屏幕

现在,您已成功与Raspberry Pi建立SSH连接。

图片
图十三:成功连接后

步骤5:配置RPi

使用以下命令启用SPI、串行和I2C功能:raspi-config

图片
图十四:RPi的“系统选项”窗口

转到“系统选项”并启用SPI、串行和I2C。

图片
图十五:在接口窗口上启用SPI、I2C和串行

点击“是”以确认更改。

图片
图十六:确认选项

系统会要求您重新启动。

步骤6:连接SX1302

通过以下步骤安装SX1302网关二进制文件:

sudo apt update
sudo apt install git
cd
git clone https://github.com/Lora-net/sx1302_hal.git
cd sx1302_hal
make clean all
make all
cp tools/reset_lgw.sh util_chip_id/
cp tools/reset_lgw.sh packet_forwarder/

接下来,验证硬件是否已正确连接:

cd sx1302_hal/util_chip_id/
./chip_id

一旦与硬件建立连接,您将看到类似的输出:

图片
图十七:获取芯片ID的命令

您的EUI ID即为网关的MAC地址,请务必记录下来。使用以下命令启动LoRa集中器屏蔽,并提供文件夹中的任何配置文件:

cd sx1302_hal/packet_forwarder/
./lora_pkt_fwd -c global_conf.json.sx1250.EU868

成功连接到LoRa集中器后,您会看到如下界面:

图片
图十八:网关已启动,成功建立与LoRa集中器的连接

此时,通过EU868配置文件发送的任何数据将在此屏幕上接收。

结论

通过此网关发送数据将启用数据接收,接下来的步骤是使用Chirpstack连接、配置和管理网关。