IDLab's Openwifi Project Brings Open Source Software-Defined Radio to the Linux mac80211 Subsystem

Fully controllable from userspace and via mac80211 APIs, openwifi aims to make prototyping Wi-Fi projects as easy as possible.

Gareth Halfacree
4 years agoCommunication / FPGAs

IDLab Research has released the source code for openwifi, an open source full-stack Wi-Fi design based on software defined radio (SDR) and offering compatibility with the Linux mac80211 wireless device framework.

Created as part of the Orchestration and Reconfiguration Control Architecture (ORCA) project — an effort to provide experimentation facilities and testbed environments for wireless innovation — and funded through the European Union's Horizon2020 program, openwifi aims to provide a drop-in replacement for proprietary Wi-Fi devices on Linux using software defined radio in place of fixed-function radio systems.

"[The] Linux mac80211 subsystem, as a part of Linux wireless, defines a set of APIs (ieee80211_ops) to rule the Wi-Fi chip driver behavior," the openwifi maintainers explain. "SoftMAC Wi-Fi chip driver implements (part of) APIs. That is why Linux can support so many types of Wi-Fi chip."

As well as providing access through the mac80211 APIs, userspace control of openwifi is provided using an sdrctrl system written as part of the project. Other project aspects include code which runs on a field programmable gate array (FPGA) as part of the software defined radio itself, and an SDR driver which sits below mac80211 to interface with the SDR.

At present, opensdr includes support for 802.11a/g/n Wi-Fi networking in ad-hoc, station, and access point modes, with 802.11ax support on the roadmap. Its performance has been measured at up to 38.8Mb/s throughput from access point to client and 21.5Mb/s from client to access point.

Interested parties can download the source - which is provided under a dual-licence system, with the code provided to all under AGPLv3 and under a custom non-open licence on request for ease of implementation into commercial products — from the openwifi GitHub repository. Anyone looking to try it out will need a Xilinx ZX706 Evaluation Kit and Analog Devices FMCOMMS2 or FMCOMMS4 Evaluation Kit, with support for more SDR platforms on the roadmap for future releases.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles