mirror of
https://github.com/open-sdr/openwifi.git
synced 2024-12-21 22:47:58 +00:00
Connecting a client to openwifi AP in 2.4GHz
This commit is contained in:
parent
736cca8262
commit
e17fdc17d5
24
README.md
24
README.md
@ -293,6 +293,30 @@ make
|
|||||||
```
|
```
|
||||||
* Now you can connect openwifi hotspot from your phone/laptop and access the internet.
|
* Now you can connect openwifi hotspot from your phone/laptop and access the internet.
|
||||||
|
|
||||||
|
**Connecting a client to openwifi AP in 2.4GHz**
|
||||||
|
|
||||||
|
Openwifi only applies OFDM as its modulation scheme and as a result, it is not backward compatible with 802.11b clients or modes of operation. This is usually the case during beacon transmission, connection establishment, and robust communication.
|
||||||
|
|
||||||
|
As a solution to this problem, openwifi can be fully controlled only if communicating with APs/clients instantiated using hostapd/wpa_supplicant userspace programs respectively.
|
||||||
|
|
||||||
|
For hostapd program, 802.11b rates can be suppressed using configuration commands (i.e. supported_rates, basic_rates) and an example configuration file is provided (i.e. hostapd-openwifi.conf). One small caveat to this one comes from fullMAC Wi-Fi cards as they must implement the *NL80211_TXRATE_LEGACY* NetLink handler at the device driver level.
|
||||||
|
|
||||||
|
On the other hand, the wpa_supplicant program on the client side (commercial Wi-Fi dongle/board) cannot suppress 802.11b rates out of the box in 2.4GHz band, so there will be an issue when connecting openwifi (OFDM only). A patched wpa_supplicant should be used at the client side.
|
||||||
|
|
||||||
|
```
|
||||||
|
cd openwifi/user_space
|
||||||
|
wget http://w1.fi/releases/wpa_supplicant-2.1.tar.gz
|
||||||
|
tar xzvf wpa_supplicant-2.1.tar.gz
|
||||||
|
patch -d wpa_supplicant-2.1/src/drivers/ < driver_nl80211.patch
|
||||||
|
cd wpa_supplicant-2.1/wpa_supplicant/
|
||||||
|
cp defconfig .config
|
||||||
|
sed -i 's/#CONFIG_LIBNL32.*/CONFIG_LIBNL32=y/g' .config
|
||||||
|
make -j16
|
||||||
|
sudo make install
|
||||||
|
cd ../../
|
||||||
|
rm -r wpa_supplicant-2.1/ wpa_supplicant-2.1.tar.gz
|
||||||
|
```
|
||||||
|
|
||||||
## cite openwifi project
|
## cite openwifi project
|
||||||
|
|
||||||
Any use of openwifi project which results in a publication should include a citation via (bibtex example):
|
Any use of openwifi project which results in a publication should include a citation via (bibtex example):
|
||||||
|
19
user_space/driver_nl80211.patch
Normal file
19
user_space/driver_nl80211.patch
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
--- wpa_supplicant-2.1/src/drivers/driver_nl80211.c 2014-02-04 12:23:35.000000000 +0100
|
||||||
|
+++ driver_nl80211.c 2020-01-09 09:11:35.943884000 +0100
|
||||||
|
@@ -5903,6 +5903,8 @@
|
||||||
|
wpa_driver_nl80211_set_mode(bss, nlmode) < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
+ nl80211_disable_11b_rates(drv, drv->ifindex, 1);
|
||||||
|
+
|
||||||
|
retry:
|
||||||
|
msg = nlmsg_alloc();
|
||||||
|
if (!msg)
|
||||||
|
@@ -8625,6 +8627,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
nl80211_mark_disconnected(drv);
|
||||||
|
+ nl80211_disable_11b_rates(drv, drv->ifindex, 1);
|
||||||
|
|
||||||
|
msg = nlmsg_alloc();
|
||||||
|
if (!msg)
|
@ -4,6 +4,8 @@ country_code=BE
|
|||||||
ssid=openwifi
|
ssid=openwifi
|
||||||
hw_mode=a
|
hw_mode=a
|
||||||
channel=44
|
channel=44
|
||||||
|
supported_rates=60 90 120 180 240 360 480 540
|
||||||
|
basic_rates=60 90 120 180
|
||||||
#ieee80211d=1
|
#ieee80211d=1
|
||||||
#ieee80211h=1
|
#ieee80211h=1
|
||||||
#wpa=2
|
#wpa=2
|
||||||
|
Loading…
Reference in New Issue
Block a user