待补充 bastibl/gr-ieee802-15-4

智能家居 3/5 🧩 软硬件结合 已发布
bastibl 356 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5
待补充

项目简介

IEEE 802.15.4 ZigBee Transceiver


这是一个基于GNU Radio框架开发的IEEE 802.15.4 O-QPSK收发器开源项目,源自Thomas Schmid的早期实现。项目核心功能是提供完整的无线传感器网络物理层和协议栈实现,主要特点包括:将O-QPSK物理层封装为层次化模块,支持CSS物理层(但要求固定长度数据包),集成了Contiki操作系统中的Rime轻量级通信协议栈,并构建了从USRP硬件到物理层、MAC层、网络层直至UDP Socket应用层的完整ISO/OSI七层模型收发流程。技术栈方面,项目完全依赖GNU Radio原生模块完成物理层调制解调,使用gr-foo库实现Wireshark数据包导出、突发标记等功能,并提供了与TelosB传感器节点和Contiki系统互操作的固件支持。该项目解决了无线传感器网络开发中缺乏开源、可定制的IEEE 802.15.4协议栈的问题,特别适合需要快速原型验证的物联网研究场景。典型应用包括:通过USRP硬件进行真实环境下的传感器网络通信测试,使用Wireshark实时分析802.15.4和Rime协议数据包,以及基于Socket PDU模块快速连接外部应用程序(如用netcat发送传感器数据)。项目还提供了可视化传感器数值的示例应用,展示了如何通过Socket PDU模块轻松实现外部程序与GNU Radio流图的集成。

标签

项目特点

**完整的协议栈实现**:从O-QPSK物理层、MAC层、网络层到UDP Socket应用层,覆盖ISO/OSI七层模型
**层次化模块封装**:将IEEE 802.15.4物理层封装为GNU Radio的层次化模块,方便复用和二次开发
**Contiki Rime协议栈集成**:内置Contiki操作系统的轻量级通信协议栈,支持多跳无线传感器网络
**CSS物理层支持**:支持Chirp Spread Spectrum物理层,但要求固定长度数据包
**Wireshark数据包导出**:通过gr-foo库实现数据包导出和突发标记,方便网络分析
**纯GNU Radio实现**:物理层调制解调完全依赖GNU Radio原生模块,无需额外硬件依赖

技术规格

支持的IEEE标准
调制方式
符号速率
数据速率
芯片速率
扩频方式
每符号芯片数
支持的SDR平台
依赖框架
协议栈
数据包导出

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
USRP B210/B200 1 推荐全双工型号
USRP N210/N200 1 需搭配WBX子板
WBX子板 1 用于N系列USRP
天线 (2.4 GHz) 2 收发各一
GNU Radio 1 ≥3.7版本
UHD驱动 1 USRP硬件驱动
gr-foo 1 数据包导出库
Contiki OS 1 Rime协议栈
Wireshark 1 可选,用于抓包分析

能力画像

**记忆与知识检索**:3/5 — 需要查阅IEEE 802.15.4标准和GNU Radio文档,但项目本身文档较完整
**动手与操作**:4/5 — 需要连接USRP硬件、配置天线、调试射频链路,硬件操作要求较高
**编程与算法**:4/5 — 涉及GNU Radio模块开发、Contiki协议栈移植、C++和Python混合编程
**设计与建模**:3/5 — 层次化模块设计已由项目完成,用户主要做参数配置和流图搭建
**实验与调试**:5/5 — 需要反复调试射频参数、分析误码率、用Wireshark抓包验证协议栈
**协作与分享**:2/5 — 项目为个人维护,社区贡献较少,但可通过GitHub提交Issue和PR
**学习与研究**:5/5 — 非常适合研究无线传感器网络协议、学习SDR和物理层实现
**系统集成**:4/5 — 需要将GNU Radio、Contiki、USRP驱动等多个组件集成到完整收发链路

所需技能

GNU Radio框架使用与模块开发 C/C++编程(GNU Radio OOT模块开发) Python脚本编写(流图控制与数据处理) IEEE 802.15.4协议栈理解(物理层、MAC层) USRP SDR硬件操作与调试 无线通信基础(O-QPSK调制、DSSS扩频) Contiki操作系统基本使用 Wireshark网络抓包分析 Linux系统操作与命令行 CMake构建系统使用

适用场景

无线传感器网络协议研究与教学实验
ZigBee/IEEE 802.15.4物理层算法验证与优化
SDR平台上的物联网通信原型开发
多跳无线网络协议栈(如Rime)的测试与评估
无线通信课程中的GNU Radio实践教学
工业物联网场景下的自定义MAC层开发
无线安全研究中的数据包注入与嗅探
智能家居、楼宇自动化等低功耗无线通信系统原型