# gr-lora LoRa 物理层解码模块

> 由 Pieter Robyns 等人开发的 GNU Radio 树外模块，借助软件定义无线电接收并解码 LoRa 物理层帧，实现了专利和博客文章中描述的调制特性。其接收器先对输入进行信道化，检测 LoRa 线性调频信号并与之同步、校正时钟漂移，再经格雷映射、解交织、去白化和汉明译码把符号还原为报头和载荷字节；消息套接字汇点可把结果通过 UDP 端口 40868 转发。附带的流图可解码录制的信号或实时采集的信号，README 列出 HackRF One、USRP B201、RTL-SDR 和 LimeSDR 为经过测试的接收设备。

- 类型：工具
- 目标：协议
- 类别：协议分析工具
- 关联：基础工具
- 来源复核于：2026-10-27
- 收录于：2026-11-03
- 原始资源：<https://github.com/rpp0/gr-lora>
- 一手来源：<https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/gr-lora/>
- 记录 JSON：<https://awesomerea.org/resources/gr-lora/record.json>
- 英文版：[English](https://awesomerea.org/resources/gr-lora/index.md)

## 使用条件与局限

- master 分支最新提交（2021-12-10）合并了向 GNU Radio 3.9 的移植：CMake 要求 GNU Radio 3.9，Python 绑定改用 pybind11，库链接 liquid-dsp 和 log4cpp。README 未随移植更新，仍列出 Python 2、SWIG 和 wx 依赖，其 Docker 镜像在未固定版本的 Arch Linux 基础镜像上安装 python2 软件包；Travis CI 配置构建的是 GNU Radio maint-3.8。gr3.7 分支保留了旧代码。
- 输入为来自 SDR 或录制文件的 IQ 采样。接收器模块的采样率、中心频率、信道列表、带宽、扩频因子、编码率、隐式报头、CRC 和低速率模式等参数必须与发射端一致。apps/lora_receive_file_nogui.py 可从作者所在大学的服务器下载一段 868.1 MHz、SF7 的示例信号，更多信号样本见独立的 gr-lora-samples 仓库。README 列出 LoPy、Dragino HAT、Adafruit Feather 32u4、Microchip RN2483 和 SX1276 板卡为经过测试的发射设备。
- README 说明不校验载荷和报头的 CRC，也不能同时解码多个信道；其更新日志把 0.7 版的下行链路、隐式报头低速率模式和任意带宽支持标为实验性功能。最新的版本标签是 v0.6.2，因此 0.7 版只存在于 master 分支。docs/test-results 收录了作者在移植期间于 2021-12-01 重新运行测试集得到的解码率，例如短 USRP 信号样本为 100%；作者还认为自 0.6 版起 LoRa 已被完全逆向，理由是信号清晰时解码准确率接近 100%。这些都是作者报告的结果。
- GPL-3.0（LICENSE）。README 请研究用户引用 Zenodo 记录 10.5281/zenodo.853201。它只涉及 LoRa 物理层。

## 一手来源

1. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/README.md>
2. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/CMakeLists.txt>
3. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/lib/CMakeLists.txt>
4. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/grc/lora_receiver.block.yml>
5. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/lib/decoder_impl.cc>
6. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/apps/lora_receive_file_nogui.py>
7. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/docker/Dockerfile>
8. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/.travis.yml>
9. <https://github.com/rpp0/gr-lora/tree/90343d45a3c73c84d32d74b8603b6c01de025b08/docs/test-results>
10. <https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/LICENSE>

## 同分区更多条目：协议

- [termshark tshark 终端界面](https://awesomerea.org/zh/resources/termshark/index.md) · 工具
- [SigDigger 数字信号分析器](https://awesomerea.org/zh/resources/sigdigger/index.md) · 工具
- [grpc-tools gRPC 流量调试工具集](https://awesomerea.org/zh/resources/grpc-tools/index.md) · 工具
- [Holley EFI Parser 日志与 CAN 协议解析工具](https://awesomerea.org/zh/resources/holley-efi-parser/index.md) · 工具
- [CAN Bus Parser VanMoof 总线解析工具](https://awesomerea.org/zh/resources/vanmoof-can-bus-parser/index.md) · 工具
- [Lutron Protocols 路创通信协议研究](https://awesomerea.org/zh/resources/lutron-protocols/index.md) · 项目

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
