Skip to content

FAQ and Resources

Frequently asked questions

What hardware do you need, and how do you get it running?

Pick a board from Supported Boards: the ZedBoard with an FMCOMMS2/3 card is the classic reference, and several cheaper community boards also work. Then follow Getting Started to flash the SD image, boot the board, and bring up the sdr0 interface.

Is openwifi a real Wi-Fi chip?

openwifi is a full-stack Wi-Fi design that runs on FPGA-based SDR hardware rather than a fabricated ASIC. The FPGA behaves like a Wi-Fi chip: it presents a standard Linux Wi-Fi interface and interoperates with commercial devices. Every layer remains open and modifiable.

Which 802.11 standards does it support?

802.11a/g and 802.11n (Wi-Fi 4) at 20 MHz in the open-source release. 802.11ax and other advanced features are commercial (see openwifi.tech). A feature-by-feature breakdown, including why there's no Wi-Fi 5, is on Wi-Fi 4 & Wi-Fi 6 Features.

Does it do MIMO or 40 MHz?

Not in the open-source release. openwifi's 11n implements 52 subcarriers, 5/6 coding, and 400 ns short guard interval, for a theoretical 72.2 Mbps single-stream. MIMO, 40 MHz bandwidth, and A-MSDU are not supported. A-MPDU aggregation is available experimentally (./wgd.sh 1). Full 11n with 4×4 MIMO and 40 MHz channels reaches 600 Mbps. openwifi implements only the single-stream 20 MHz subset.

Why won't a 2.4 GHz phone connect when 5 GHz works?

openwifi is OFDM-only and not backward-compatible with 802.11b, which makes 2.4 GHz association fail. Suppress 11b rates on both ends, or use 5 GHz. See Operating Modes → About 802.11b for details.

Can it work outside normal Wi-Fi frequencies?

Yes. The AD9361 tunes from 70 MHz to 6 GHz. Bring the system up on the nearest legal channel, lock the frequency so the driver stops re-tuning it, then override the RF frequency. See sdrctl → arbitrary tuning. Mind your local spectrum regulations.

The upstream README also lists 2 MHz for sub-GHz 802.11ah-style work and 10 MHz for 802.11p vehicular work. These need a matched FPGA, RF filter, driver, and MAC timing configuration. See Adapting the design for 10 MHz or 2 MHz channels for the source-based modification path and its limits.

The receiver stops working after about two hours. Broken?

No. That's the Xilinx Viterbi decoder evaluation license halting. Reload the FPGA or power-cycle. See Troubleshooting.

Do you need a paid Vivado license?

Only for some boards. Boards with the Zynq-7020 FPGA (ZedBoard, ADRV9364-Z7020, ZC702, antsdr, sdrpi, and the community 7020 boards) build under the free Vivado tier. ZC706, ZCU102, and ADRV9361-Z7035 need a license to rebuild the FPGA. Either way, the prebuilt images need no license to run.

Can you try it without any hardware?

Yes. The imec w-iLab.t testbed offers remote access to openwifi boards (and supports JTAG boot instead of SD card).

Is an openwifi ASIC planned (for example on SkyWater sky130)?

It's frequently requested, and the team is supportive but not actively working on it. The current focus is maturing the FPGA IP to match commercial chips. A Wi-Fi chip is more complex than it looks, and cheap only because of enormous production volume.

A serious ASIC analysis would need to port many vendor IP cores, including the FFT, Viterbi decoder, FIFOs, RAM and ROM, FIR filters, AXI DMA and AXI-Lite, dividers, and multipliers. Two harder parts are the AD9361 RF interface and the AXI bus coupling to the processor. The AD9361 is an expensive SDR front end that tunes from 70 MHz to 6 GHz, not a cheap dedicated Wi-Fi radio. The AXI bus gives low latency but ties the design to its current platform. The team welcomes a larger organization leading such an effort. See the ASIC considerations note for the full reasoning.

Can you develop on Windows?

See the community Tips for Windows users thread.

How to cite openwifi

If you use openwifi in research, cite the VTC2020 paper:

@inproceedings{jiao2020openwifi,
  title={openwifi: a free and open-source IEEE802.11 SDR implementation on SoC},
  author={Jiao, Xianjun and Liu, Wei and Mehari, Michael and Aslam, Muhammad and Moerman, Ingrid},
  booktitle={2020 IEEE 91st Vehicular Technology Conference (VTC2020-Spring)},
  pages={1--2},
  year={2020},
  organization={IEEE}
}

You can also cite the code base:

@electronic{openwifigithub,
  author = {Jiao, Xianjun and Liu, Wei and Mehari, Michael and Thijs, Havinga and Muhammad, Aslam and Chen, Baiheng},
  title = {open-source IEEE802.11/Wi-Fi baseband chip/FPGA design},
  url = {https://github.com/open-sdr},
  year = {2023}
}

Selected publications

A categorized list of research using openwifi (Feature/System, TSN/Real-Time, CSI Sensing/Security, Wi-Fi & Cellular 5G/6G) is in doc/publications.md. Highlights:

Videos

A curated playlist lives in doc/videos.md. Good starting points:

  • First public demo and the FOSDEM presentations from 2020, 2021, and 2022.
  • FSF LibrePlanet 2021: The dawn of the free/libre WiFi chip.
  • Feature demos: CSI, WiFi CSI Radar (joint communication and sensing), and the CSI fuzzer (plus an ACM WiSec interview).
  • Conceptual talks: How a Wi-Fi chip works internally (CCC GPN22) and An open-source Wi-Fi chip, What, Why, and How? (FSiC 2024).

Community and support

For setup and usage questions, search this wiki, especially Getting Started and Troubleshooting, then check existing openwifi Discussions. If you still need help, ask in Discussions or on the mailing list.

Use the openwifi issue tracker for reproducible software bugs and the openwifi-hw issue tracker for reproducible FPGA bugs. Search existing issues first, then include the board, software version, steps to reproduce, expected result, and actual result in a new report.

Site analytics

This wiki uses GoatCounter to count page visits, referring sites, outbound link clicks, search outcomes, and page feedback. It sends page paths, screen widths, referring domains, the category and destination of each outbound link you click, search outcome counts, and feedback votes.

The analytics code does not send search terms, full referrer links, or query strings. An outbound link is recorded as its destination site and path with the query string removed, for example github.com/open-sdr/openwifi. It does not use cookies or browser storage. GoatCounter uses your IP address and browser information in memory for up to eight hours to estimate visits. Its default settings store aggregate counts. See GoatCounter's privacy policy for details.

License

openwifi is dual-licensed. AGPLv3 covers the open-source release, and openwifi.tech offers commercial licenses and advanced features. Some files are GPL-2.0-or-later or BSD-3-Clause, so check individual files. Third-party components (Analog Devices HDL, Xilinx IP, openofdm) carry their own licenses, and it's your responsibility to comply for your use case. Analog Devices' compound-license explanation is a useful model for the situation.

Funding and origin

openwifi originated at Ghent University and imec. It received funding from the EU H2020 ORCA project (grant 732174). NLnet funded the 802.11n feature, the 802.11a/g/n maturity work, and the OpenWrt support through NGI Zero.