An open-source IEEE 802.11a/g/n Wi-Fi baseband FPGA design with Linux driver and software for SDR platforms.
Openwifi is an open-source IEEE 802.11a/g/n Wi-Fi baseband implementation that runs on FPGA hardware with a Linux driver. It provides a complete software-defined radio (SDR) based Wi-Fi stack, enabling researchers and developers to experiment with and customize Wi-Fi functionality at the physical and MAC layers. The project solves the problem of proprietary, closed Wi-Fi chips by offering full transparency and control over the wireless communication stack.
Wireless researchers, FPGA developers, and SDR enthusiasts who need to experiment with or modify Wi-Fi protocols at a low level. It's also valuable for educators teaching wireless networking and for developers building custom wireless applications.
Developers choose Openwifi because it's one of the few fully open-source Wi-Fi implementations that provides complete access to the PHY and MAC layers. Unlike commercial Wi-Fi chips, it offers unprecedented configurability, real-time channel state information, and the ability to run on various FPGA platforms without proprietary firmware restrictions.
open-source IEEE 802.11 WiFi baseband FPGA (chip) design: driver, software
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a completely transparent IEEE 802.11 implementation from PHY to MAC layers, enabling deep modification and extension for research purposes, as emphasized in the project's philosophy.
Implements the DCF (CSMA/CA) layer in FPGA achieving 10µs SIFS, allowing precise control over medium access timing for experimental scenarios, as detailed in the app notes.
Delivers CSI, frequency offset, and equalizer data directly to applications, facilitating advanced research in wireless sensing and communication, with dedicated app notes for access.
Supports multiple SDR platforms including Zynq-based boards and ADALM-PLUTO derivatives, with some options not requiring Vivado licenses, as listed in the supported platforms table.
Maximum throughput is capped at 40-50 Mbps under ideal conditions, significantly lower than modern commercial Wi-Fi chips, and it lacks 802.11b compatibility, requiring client-side patches per the special note.
Requires specific FPGA hardware, SD card imaging, kernel compilation, and Vivado toolchain installation for some boards, making initial deployment time-consuming and error-prone, as seen in the Quick Start and update sections.
Uses dual licensing with AGPL for open source and proprietary options for advanced features on openwifi.tech, and documentation is scattered across multiple app notes, potentially confusing users.