小电台二次开发
基本信息
| 项目 | 详情 |
|---|---|
| 项目名称 | 小电台二次开发 |
| 小组名称 | 小电台 |
| 项目方向 | IoT / 嵌入式 / 通信 |
| 项目周期 | 2026年7月 — 2026年8月 |
小组成员
| 姓名 | 角色 | GitHub |
|---|---|---|
| 武文斌 | 组长/网页展示 | @vvvgege |
| 关斯予 | 硬件调试 | @GUAGUA0215 |
| 代光宇 | 代码开发 | @dgy123 |
| 栾 翔 | 代码开发 | @Lxx201314 |
| 徐钰彬 | 网页展示 | @xuyubin3390 |
| 李 健 | 硬件调试 | @LJLOVEWFL |
| 薛珂涵 | 硬件调试 | @xiabang |
项目简介
在原来小电台自组网的基础上进行二次开发,实现电台多跳信息转发以及泛洪路由算法,并进行参数优化。
技术栈
硬件端
主控芯片: ESP32‑C6(支持 BLE、USB Serial/JTAG) 外设与传感器:OLED 显示屏、旋钮编码器(EC06)、WS2812 RGB LED、蜂鸣器、振动电机、外部负载电源开关 通信:BLE 5.0(NimBLE 协议栈)、USB CDC(串口/调试) 开发环境:ESP‑IDF / VScode
固件层
操作系统:FreeRTOS BLE协议栈:NimBLE 显示驱动:U8g2 存储:NVS
自研协议与算法
Mesh通信:自定义泛洪协议 加密:AES 延迟测量:自定义REQ/ACK 协议
核心功能
- 多跳自组网 — 支持 ≥3 台设备自动组成 BLE Mesh 网络,节点通过泛洪信标发现邻居并动态维护多跳拓扑
- 泛洪路由传输 — 实现序列号去重、TTL 递减、自适应延迟中继的消息泛洪机制,确保全网可靠覆盖且不产生广播风暴
- 拓扑快速收敛 — 动态追踪每个源节点的最佳跳数与 RSSI,全网拓扑收敛时间 < 30 秒,满足路由表建立需求
- 端到端延迟保障与测量 — 内置 REQ/ACK 延迟测试协议,3 跳内端到端延迟 < 500 ms,支持 min/mean/p50/p95 统计及重传去重
- 本地管理与诊断 — 支持串口命令行(延迟测试、统计查询)与 OLED 菜单交互,便于现场验证与调试
项目 Logo

项目截图
小电台实物展示

延迟测试结果(4次)




路由表收敛测试

系统架构图

代码仓库
- 项目源码: GitHub链接
演示
在线演示地址: 演示链接
项目亮点
- 📡 自研泛洪路由,无中心自组网,≥3 台设备即开即用,收敛 <30 秒
- ⚡ 3 跳端到端延迟 <500 ms,内建 REQ/ACK 精准测量与多维统计
- 🔋 引用计数负载开关 + 深睡眠管理,野外电池长续航
- 🧩 高度模块化分层设计,无线核心逻辑可脱离硬件独立测试
- 📝 文档完善、接口清晰,调用链可追溯,适合快速二次开发
项目总结
在为期四周的实践活动中,我们小组完成了从需求分析到系统部署的完整项目开发流程。团队成员各司其职、密切配合,在遇到技术难题时共同攻克
主要收获:
- 掌握了 ESP32‑C6 + BLE 协议栈的嵌入式开发技术
- 学会了自研泛洪路由协议的设计与调优方法
- 实践了 FreeRTOS 多任务调度与低功耗系统设计
- 提升了模块化架构设计和工程文档编写能力