README.md (fa44dbb5a5db365600b8ee97d6bad0088c7bcd1a) | README.md (b49db4c59a0f2511208515d878ea297c204de6d1) |
---|---|
1<!-- 2Author: Xianjun jiao, Michael Mehari, Wei Liu 3SPDX-FileCopyrightText: 2019 UGent 4SPDX-License-Identifier: AGPL-3.0-or-later 5--> 6 7# openwifi 8<img src="./openwifi-arch.jpg" width="900"> 9 10**openwifi:** Linux mac80211 compatible full-stack IEEE802.11/Wi-Fi design based on SDR (Software Defined Radio). 11 12This repository includes Linux driver and software. [openwifi-hw](https://github.com/open-sdr/openwifi-hw) repository has the FPGA design. It is **YOUR RESPONSIBILITY** to follow your **LOCAL SPECTRUM REGULATION** or use **CABLE** to avoid potential interference over the air. 13 14[[Quick start](#Quick-start)] 15[[Project document](doc/README.md)] 16[[Application notes](doc/app_notes/README.md)] 17[[Videos](#Videos)] | 1<!-- 2Author: Xianjun jiao, Michael Mehari, Wei Liu 3SPDX-FileCopyrightText: 2019 UGent 4SPDX-License-Identifier: AGPL-3.0-or-later 5--> 6 7# openwifi 8<img src="./openwifi-arch.jpg" width="900"> 9 10**openwifi:** Linux mac80211 compatible full-stack IEEE802.11/Wi-Fi design based on SDR (Software Defined Radio). 11 12This repository includes Linux driver and software. [openwifi-hw](https://github.com/open-sdr/openwifi-hw) repository has the FPGA design. It is **YOUR RESPONSIBILITY** to follow your **LOCAL SPECTRUM REGULATION** or use **CABLE** to avoid potential interference over the air. 13 14[[Quick start](#Quick-start)] 15[[Project document](doc/README.md)] 16[[Application notes](doc/app_notes/README.md)] 17[[Videos](#Videos)] |
18[[Papers](#Papers)] | 18[[Publications](doc/publications.md)] |
19[[maillist](https://lists.ugent.be/wws/subscribe/openwifi)] 20[[Cite openwifi project](#Cite-openwifi-project)] 21 22Openwifi code has dual licenses. AGPLv3 is the opensource license. For non-opensource and advanced feature license, please contact [email protected]. Openwifi project also leverages some 3rd party modules. It is user's duty to check and follow licenses of those modules according to the purpose/usage. You can find [an example explanation from Analog Devices](https://github.com/analogdevicesinc/hdl/blob/master/LICENSE) for this compound license conditions. [[How to contribute]](https://github.com/open-sdr/openwifi/blob/master/CONTRIBUTING.md). 23 24**Features:** 25 26- 802.11a/g/n [[IEEE 802.11n (Wi-Fi 4)](doc/app_notes/ieee80211n.md)] 27- 20MHz bandwidth; 70 MHz to 6 GHz frequency range 28- Mode tested: Ad-hoc; Station; AP, Monitor 29- DCF (CSMA/CA) low MAC layer in FPGA (10us SIFS is achieved) 30- [802.11 packet injection and fuzzing](doc/app_notes/inject_80211.md) 31- [CSI](doc/app_notes/csi.md): Channel State Information, freq offset, equalizer to computer | 19[[maillist](https://lists.ugent.be/wws/subscribe/openwifi)] 20[[Cite openwifi project](#Cite-openwifi-project)] 21 22Openwifi code has dual licenses. AGPLv3 is the opensource license. For non-opensource and advanced feature license, please contact [email protected]. Openwifi project also leverages some 3rd party modules. It is user's duty to check and follow licenses of those modules according to the purpose/usage. You can find [an example explanation from Analog Devices](https://github.com/analogdevicesinc/hdl/blob/master/LICENSE) for this compound license conditions. [[How to contribute]](https://github.com/open-sdr/openwifi/blob/master/CONTRIBUTING.md). 23 24**Features:** 25 26- 802.11a/g/n [[IEEE 802.11n (Wi-Fi 4)](doc/app_notes/ieee80211n.md)] 27- 20MHz bandwidth; 70 MHz to 6 GHz frequency range 28- Mode tested: Ad-hoc; Station; AP, Monitor 29- DCF (CSMA/CA) low MAC layer in FPGA (10us SIFS is achieved) 30- [802.11 packet injection and fuzzing](doc/app_notes/inject_80211.md) 31- [CSI](doc/app_notes/csi.md): Channel State Information, freq offset, equalizer to computer |
32- [CSI fuzzer](doc/app_notes/csi_fuzzer.md): Create fake CSI in WiFi transmitter | 32- [CSI fuzzer](doc/app_notes/csi_fuzzer.md): Create artificial channel response in WiFi transmitter |
33- [[IQ capture](doc/app_notes/iq.md)]: real-time AGC, RSSI, IQ sample to computer. [[Dual antenna version](doc/app_notes/iq_2ant.md)] 34- Configurable channel access priority parameters: 35 - duration of RTS/CTS, CTS-to-self 36 - SIFS/DIFS/xIFS/slot-time/CW/etc 37- Time slicing based on MAC address (time gated/scheduled FPGA queues) 38- Easy to change bandwidth and frequency: 39 - 2MHz for 802.11ah in sub-GHz 40 - 10MHz for 802.11p/vehicle in 5.9GHz --- 211 unchanged lines hidden (view full) --- 252## Videos 253 254- Demo [[youtube](https://youtu.be/NpjEaszd5u4)], [[link for CHN user](https://www.zhihu.com/zvideo/1280659393378041856)] 255- FOSDEM2020 [[youtube](https://youtu.be/Mq48cGthk7M)], [[link for CHN user](https://www.zhihu.com/zvideo/1280673506397425664)] 256- Low latency for gaming and introduction [[youtube](https://youtu.be/Notn9X482LI)], [[link for CHN user](https://www.zhihu.com/zvideo/1273823153371385856)] 257- CSI (Channel State Information) [[twitter](https://twitter.com/i/status/1314207380561780738)], [[link for CHN user](https://www.zhihu.com/zvideo/1297662571618148352)] 258- FOSDEM2021 [[Flash back](https://twitter.com/jxjputaoshu/status/1358462741703491584?s=20)], [[link for CHN user](https://www.zhihu.com/zvideo/1340748826311974912)]; [[Presentation](https://mirror.as35701.net/video.fosdem.org/2021/D.radio/fsr_openwifi_opensource_wifi_chip.webm)], [[link for CHN user](https://www.zhihu.com/zvideo/1345036055104360448)] 259 | 33- [[IQ capture](doc/app_notes/iq.md)]: real-time AGC, RSSI, IQ sample to computer. [[Dual antenna version](doc/app_notes/iq_2ant.md)] 34- Configurable channel access priority parameters: 35 - duration of RTS/CTS, CTS-to-self 36 - SIFS/DIFS/xIFS/slot-time/CW/etc 37- Time slicing based on MAC address (time gated/scheduled FPGA queues) 38- Easy to change bandwidth and frequency: 39 - 2MHz for 802.11ah in sub-GHz 40 - 10MHz for 802.11p/vehicle in 5.9GHz --- 211 unchanged lines hidden (view full) --- 252## Videos 253 254- Demo [[youtube](https://youtu.be/NpjEaszd5u4)], [[link for CHN user](https://www.zhihu.com/zvideo/1280659393378041856)] 255- FOSDEM2020 [[youtube](https://youtu.be/Mq48cGthk7M)], [[link for CHN user](https://www.zhihu.com/zvideo/1280673506397425664)] 256- Low latency for gaming and introduction [[youtube](https://youtu.be/Notn9X482LI)], [[link for CHN user](https://www.zhihu.com/zvideo/1273823153371385856)] 257- CSI (Channel State Information) [[twitter](https://twitter.com/i/status/1314207380561780738)], [[link for CHN user](https://www.zhihu.com/zvideo/1297662571618148352)] 258- FOSDEM2021 [[Flash back](https://twitter.com/jxjputaoshu/status/1358462741703491584?s=20)], [[link for CHN user](https://www.zhihu.com/zvideo/1340748826311974912)]; [[Presentation](https://mirror.as35701.net/video.fosdem.org/2021/D.radio/fsr_openwifi_opensource_wifi_chip.webm)], [[link for CHN user](https://www.zhihu.com/zvideo/1345036055104360448)] 259 |
260## Papers 261 262- [openwifi: a free and open-source IEEE802.11 SDR implementation on SoC](https://www.orca-project.eu/wp-content/uploads/sites/4/2020/03/openwifi-vtc-antwerp-PID1249076.pdf) 263- [csi murder](https://ans.unibs.it/projects/csi-murder/) 264- [IEEE 802.11 CSI randomization to preserve location privacy: An empirical evaluation in different scenarios](https://www.sciencedirect.com/science/article/abs/pii/S138912862100102X) 265 266Openwifi was born in [ORCA project](https://www.orca-project.eu/) (EU's Horizon2020 programme under agreement number 732174). 267 | |
268## Cite openwifi project 269 270Any use of openwifi project which results in a publication should include a citation via (bibtex example): 271``` 272@electronic{openwifigithub, | 260## Cite openwifi project 261 262Any use of openwifi project which results in a publication should include a citation via (bibtex example): 263``` 264@electronic{openwifigithub, |
273 author = {Jiao, Xianjun and Liu, Wei and Mehari, Michael}, | 265 author = {Xianjun, Jiao and Wei, Liu and Michael, Mehari}, |
274 title = {open-source IEEE802.11/Wi-Fi baseband chip/FPGA design}, 275 url = {https://github.com/open-sdr/openwifi}, 276 year = {2019}, 277} 278``` 279 280## License 281 282This project is available as open source under the terms of the AGPL 3.0 Or later. However, some elements are being licensed under GPL 2-0 or later and BSD 3 license . For accurate information, please check individual files. | 266 title = {open-source IEEE802.11/Wi-Fi baseband chip/FPGA design}, 267 url = {https://github.com/open-sdr/openwifi}, 268 year = {2019}, 269} 270``` 271 272## License 273 274This project is available as open source under the terms of the AGPL 3.0 Or later. However, some elements are being licensed under GPL 2-0 or later and BSD 3 license . For accurate information, please check individual files. |