4

I am trying to connect to 40 MHz Wifi Channel. I have configured the router to enable 40MHz channel width option. But still the it gets connected to 20 MHz channel width.

$ iw wlan0 link
Connected to b4:75:0e:14:d8:98 (on wlan0)
        SSID: Cisco08012
        freq: 2462
        RX: 69690 bytes (330 packets)
        TX: 48728 bytes (158 packets)
        signal: -50 dBm
        tx bitrate: 72.2 MBit/s MCS 7 short GI

I would like to know whether to additional parameters in wpa_supplicant.conf file or I have to configure the firmware of the chipset we are using.

EDIT:

the wpa_cli scan_results:

b4:75:0e:14:d8:98       2462    -57     [WPA2-PSK-CCMP][ESS]    Cisco08012
c4:12:f5:08:10:70       2412    -67     [WPA-PSK-CCMP][WPA2-PSK-CCMP][ESS]      GoGreen

EDIT 2:

$ iw reg get
global
country US: DFS-FCC
        (2402 - 2472 @ 40), (N/A, 30), (N/A)
        (5170 - 5250 @ 80), (N/A, 23), (N/A), AUTO-BW
        (5250 - 5330 @ 80), (N/A, 23), (0 ms), DFS, AUTO-BW
        (5490 - 5730 @ 160), (N/A, 23), (0 ms), DFS
        (5735 - 5835 @ 80), (N/A, 30), (N/A)
        (57240 - 63720 @ 2160), (N/A, 40), (N/A)

global
country US: DFS-FCC
        (2402 - 2472 @ 40), (N/A, 30), (N/A)
        (5170 - 5250 @ 80), (N/A, 23), (N/A), AUTO-BW
        (5250 - 5330 @ 80), (N/A, 23), (0 ms), DFS, AUTO-BW
        (5490 - 5730 @ 160), (N/A, 23), (0 ms), DFS
        (5735 - 5835 @ 80), (N/A, 30), (N/A)
        (57240 - 63720 @ 2160), (N/A, 40), (N/A)

3 Answers3

3

Not being able to connect to a 40 MHz Wifi Channel is not a problem on the Linux side per se in this case. WiFi is a complex protocol, and even more down to the definition of the protocol and particular bits of how to is implemented by different vendors.

As we can see from the output of your commands, you are using Cisco equipment and the client is in the 2.4GHz band. The culprit is the Cisco WiFi gear/AP is not supporting 802.11n over 2.4GHz.

From Cisco forums:

Cisco does not support channel bonding in 2.4 GHz frequency (802.11 b/g), because only three non-overlapping channels 1, 6 and 11 are available.
....
In 802.11n, two adjacent channels, each of 20 MHz are bonded to get a total bandwidth of 40 MHz. This provides increased channel width to transmit more data. Cisco does not support channel bonding in 2.4 GHz frequency (802.11 b/g), because only three non-overlapping channels 1, 6 and 11 are available. However, the channel bonding has more relevance in 5 GHz frequency range where you have as many as 23 adjacent non-overlapping channels currently available. Channel bonding is supported only in 5 GHz, for example 802.11a.

Also, as a footnote, if you want to try other 2.4GHz equipment, beware the WiFi protocol defines 40MHz channels only go up if the AP does not sense other nearby APs also transmitting in overlapping frequencies. Some vendors chose to ignore that, hostapd and other vendors do not ignore that feature.

Nevertheless, if you want to use 40MHz with that Cisco equipment, you need to use a WiFi stick or a client that supports 5GHz.

PS. I do advise to see the vendor literature of both the AP and client Wifi chipset in the future when doing experiments for having a notion of what it is supported. Beware that also distance to the AP/noise/quality of signal/quality of wifi adapter can determine you won't be able to operate at the full AP offered speed.

I would advise also reading for general WiFi knowledge my related answer Wi-Fi problems using ASUS USB-N13 adapter (realtek)

Jeff Schaller
  • 67,283
  • 35
  • 116
  • 255
Rui F Ribeiro
  • 56,709
  • 26
  • 150
  • 232
  • 1
    I tried with TP-LINK and Netgear routers too. The results are the same. I am testing this in the office environment which has a dozen access points. I am gonna test it in an isolated environment. – parera riddle Apr 25 '19 at 11:01
  • 1
    As far the data you are providing in the question, little more can be said. Cisco does not support it with 2.4GHz. (...) However, what is the brand of that wifi chipset, does an lsusb or lspci show it? – Rui F Ribeiro Apr 25 '19 at 12:26
  • 1
    It is a Qualcomm Atheros chipset – parera riddle Apr 25 '19 at 12:57
  • Can you restrict the definition? model? I have here different Qualcoms at home, however they have supported 5GHz for a long time. The oldest one is from 2009, and supports 802.11a. Nevertheless, be aware of 2.4GHz limitations on 40MHz. They exist to maintain the quality and because of long range of those connections compared to 5GHz. IT is also not clear wheter those TPLINK/NetGear support 5GHz, or ultimately if the specific chipset you are using only supports 5GHz in Windows, or if is an ac model which it is not entirely supported and needs a compiled driver....(cont) – Rui F Ribeiro Apr 25 '19 at 13:19
  • (cont) there are a lot of variables out there affecting Wifi use, including coverage and distance, and the question and comments seem to show a lack of understanding the problem ultimately is not Linux. It is quite a complex theme, and one where the little details count on. – Rui F Ribeiro Apr 25 '19 at 13:21
3

The problem is with the firmware of the chipset I am using. The vendor has disabled the channel bonding in the configuration. Once I enabled it I can connect it to the 40 Mhz Channel. The Qualcomm chipset requires the gChannelBondingMode24GHz variable to be set as one in the configuration file

0

Use the wpa_cli tool to check for the existence of a 40 MHz wifi channel, then use the wpa_cli "get_pref_freq_list" option to see the freq list for your interface.

  • @VincentAchard I ran get_pref_freq_list /var/run/wpa_supplicant . But it returns FAIL. I have updated the scan_results in the question. How to find the channel with the scan results.? – parera riddle Apr 25 '19 at 07:33
  • From the return of your scan_result, my guess is your wifi card must be first configured to scan the 40MHz channel instead of 20Mhz. What is the output of iw reg get? – Vincent Achard Apr 25 '19 at 07:57
  • Updated the output of iw reg get in the question. – parera riddle Apr 25 '19 at 10:56