openwifi
openwifi
⭐⭐⭐⭐☆ (4/5)
🧩 软硬件结合
已发布
项目简介
open-source IEEE 802.11 WiFi baseband FPGA (chip) design: driver, software
openwifi是一个基于软件定义无线电(SDR)的完整开源Wi-Fi实现,兼容Linux mac80211协议栈,支持IEEE 802.11a/g/n标准。该项目由比利时根特大学的研究团队发起,旨在提供一个完全开源、可编程的Wi-Fi硬件和软件平台,让研究人员和开发者能够深入探索Wi-Fi协议栈的底层细节。
标签
项目特点
完整的 IEEE 802.11a/g/n 基带和 MAC 层实现
基于 FPGA 的低延迟 DCF(CSMA/CA)实现,SIFS 达到 10us
支持多种 SDR 平台(Xilinx ZC706、ZedBoard、ADRV9364 等)
提供 CSI(信道状态信息)采集功能,支持雷达和通信联合应用
支持 802.11 数据包注入和模糊测试
可配置的信道接入优先级参数(CCA 阈值、SIFS/DIFS/xIFS 等)
支持时间切片(基于 MAC 地址的时分复用)
易于更改带宽和频率,支持 2MHz(802.11ah)和 10MHz(802.11p)
提供预构建的 SD 卡镜像,快速启动
技术规格
| 标准支持 | |
|---|---|
| 带宽 | |
| 频率范围 | |
| 性能(TCP) | |
| 性能(UDP) | |
| EVM | |
| 灵敏度(MCS0) | |
| 灵敏度(MCS7) | |
| 测试平台 | |
| 模式 | |
| 低 MAC 层 | |
| 许可证 |
项目资源
搜索资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| Xilinx ZC706 板 | 1 | — | 需要 Vivado 许可证 |
| FMCOMMS2/3/4 射频板 | 1 | — | 与 ZC706 配合使用 |
| Xilinx ZedBoard | 1 | — | 无需 Vivado 许可证 |
| ADRV9364-Z7020 | 1 | — | 无需 Vivado 许可证 |
| ADRV9361-Z7035 | 1 | — | 需要 Vivado 许可证 |
| Xilinx ZC702 板 | 1 | — | 无需 Vivado 许可证 |
| MicroPhase antsdr | 1 | — | 增强版 ADALM-PLUTO |
| HexSDR sdrpi | 1 | — | 树莓派大小的 SDR |
| SD 卡(≥16GB) | 1 | — | 用于启动和存储 |
| 天线 | 2 | — | 2.4GHz 或 5GHz |
| 以太网线 | 1 | — | 连接 PC 和板子 |
| 电源适配器 | 1 | — | 根据板子规格 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| Vivado 2021.1 | FPGA 设计和编译 | ▢ 推荐 |
| Vitis | 软件开发和调试 | ▢ 推荐 |
| SD 卡烧录工具 | 将镜像写入 SD 卡 | ✅ 是 |
| SSH 客户端 | 登录板子 | ✅ 是 |
| 串口终端 | 调试和监控 | ▢ 推荐 |
| 频谱分析仪 | 射频调试 | ▢ 推荐 |
能力画像
记忆与知识检索
2/5
逻辑推演
4/5
表达与交流
2/5
感知与观察
3/5
数理与计算
4/5
动手与操作
4/5
狂热与坚持
4/5
创造与创新
4/5
项目图库
所需技能
🔧 **动手能力**:需要具备 SDR 硬件平台搭建、SD 卡烧录、天线连接、以太网配置等硬件操作能力。熟悉 FPGA 开发板的使用和调试。
💻 **编程能力**:需要掌握 Linux 系统操作、Shell 脚本、C 语言驱动开发、FPGA 设计(Vivado/Vitis 工具链)。了解 Wi-Fi 协议栈和 mac80211 框架。
⚡ **电子电路**:需要了解射频电路基础、SDR 原理、天线匹配、信号完整性等知识。熟悉 AD9361 等射频芯片的配置和使用。
适用场景
学术研究:Wi-Fi 协议研究、信道建模、通信算法验证
无线安全:802.11 数据包注入、模糊测试、安全漏洞分析
雷达与通信:利用 CSI 进行移动检测、联合雷达通信
物联网:定制 Wi-Fi 接入点、低功耗 IoT 通信
教育:SDR 和无线通信教学实验平台
原型开发:快速原型验证新的 Wi-Fi 功能和算法