项目简介
本项目是基于C语言构建的LoRa网关系统,以构建基于Semtech LoRa多通道RF接收器(集中器)的网关为核心。项目提供硬件抽象层(HAL)库,让上层应用可独立于硬件平台与LoRa网关通信,同时包含多个辅助程序和脚本用于测试和调试网关不同功能。
项目的主要特性和功能
- 核心库功能:libloragw库提供构建网关的基础功能,编译后生成libloragw.a静态库文件,还附带基本测试程序以测试库的不同子模块。
- 多用途辅助程序:- util_pkt_logger:用JSON配置文件设置LoRa集中器,将接收到的数据包记录到日志文件。
- util_spi_stress:检查主机平台与LoRa集中器寄存器文件之间链接的可靠性。
- util_tx_test:通过LoRa集中器发送测试数据包,评估网关下行链路功能。
- util_tx_continuous:将LoRa集中器设为连续发送模式,用于频谱测量。
- util_spectral_scan:在LoRa网关运行频段内进行后台频谱扫描。
- util_lbt_test:测试“Listen - Before - Talk”通道时间戳。
 
- 初始化脚本:reset_lgw.sh脚本用于在IoT Start Kit平台上通过GPIO重置集中器芯片,使用集中器的应用启动前必须运行。
- 时间处理与校准:支持GPS时间获取和转换,优化和校准数据包空中时间计算、TX启动延迟等。
- 多种调制方式支持:支持LoRa和FSK两种调制方式,可灵活配置通信参数。
安装使用步骤
前提条件
假设用户已下载本项目的源码文件,且具备适当的编译器(如GCC)和相应的开发环境。
具体步骤
- 重置集中器:在IoT Start Kit平台上,运行reset_lgw.sh脚本重置集中器芯片。
- 编译项目:使用编译器编译项目代码,生成可执行文件和静态库文件。核心库编译后,所有代码包含在libloragw.a文件中。
- 运行程序:根据需求运行相应的辅助程序,例如:- 记录接收到的数据包,运行util_pkt_logger并指定JSON配置文件。
- 测试SPI链接可靠性,运行util_spi_stress。
- 发送测试数据包,运行util_tx_test。
 
- 记录接收到的数据包,运行
- 参数配置:部分程序可能需通过命令行参数或配置文件进行参数设置,如发送频率、数据包格式、发送功率等,按需调整。
- 结果查看与分析:根据程序的输出信息和生成的日志文件,分析和评估网关的运行情况和性能。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】