How to use 5 MHz Wi-Fi channels?

Hi all,
I would like to use 5 MHz Wi-Fi channels (quarter channel).

I've notices on some other OpenWRT implementation such as CompexWRT it can be achieved by changing Contry setting. (https://wiki.compex.com.sg/wiki/Manual:Network/WiFi)

It does not seem that simple in standart OpenWRT.

Can anyone help?
Thanks,

Channels narrower than 20 MHz are not supported in the GUI, but you can use the CLI to edit /etc/config wireless and add option chanbw 5. This is a per-device (radio) setting not a per-interface setting. It only works on ath9k and maybe ath10k hardware.

Always set 'country' to your country to enable the widest options of frequencies and power that are legal in your country.

2 Likes

What is the use of wifi channels with 5 MHz width?

wrong. it works on ath5k and ath9k

1 Like

It's for usage of channels smaller than standard 20 MHz (i.e. 15, 10, 5 MHz). This lowers bandwidth and subdivides the standard channels by roughly the factor of division (e.g. 5 MHz band is one-quarter the bandwidth of a 20 MHz channel).

I am trying to have multiple synchronized radios controlled by the same computer to sense specific Wi-Fi signals.
I would like to limit the bandwidth of the Wi-Fi as much as possible to accommodate more radios to sense Wi-Fi.

If all your devices aren't Atheros 5k or 9k, this likely won't work.

My radios are SDR, however I want to sense a standard 802.11 communication between two devices (A station and an AP).

It seems that implementing the station int Atheros 5k/9k is the only way to have a 5 MHz Wi-Fi link.

Is there any other way to set it from the AP options? If not with OpenWRT, does anyone know other ways?

Thanks,

Then you would use 20 MHz; not 5 MHz.

Correct.

You can set an Atheros in OpenWrt, just not on the web GUI. Are you asking for instructions on how to do so?

Have you seen: https://openwrt.org/docs/guide-user/network/wifi/basic -

Name Type Required Default Description
chanbw integer no 20 Specifies a narrow channel width in MHz, possible values are: 5, 10, 20

(In an earlier post, I used 15 MHz in a mathematical example; but it appears to be an invalid value.)

Thanks for the great answer.
More generally, are not 5 MHz and 10MHz still part of the 802.11 standards even if not popular for obvious reasons? If so, why are they left out the AP (advanced) configuration?

Thanks,

From: https://en.wikipedia.org/wiki/IEEE_802.11#General_description

2.4 GHz ISM frequency band offering only three non-overlapping 20 MHz-wide channels, where other adjacent channels overlap

BTW, only Atheros implements this in their older 5k and 9k-series WiFi chips. I don't know of any other manufacturers who do so.

Also see: https://en.wikipedia.org/wiki/IEEE_802.11g-2003#Technical_description

1 Like

It's not IEEE standard. 802.11b will always be about 22 MHz wide due to the use of an 11 Mchip DSSS code. The g standard defines a 20 MHz wide signal. The n standard allows 20 or 40 MHz.

The only thing that an Atheros AP running in the 5 or 10 MHz mode can communicate with is another similar chip. The potential use case is long distance point to point links. Reducing the bandwidth improves the signal to noise ratio, at the expense of bit rate of course.

2 Likes

can we configure the bandwidth to 5, 10, 20 MHz on raspberry pi?

does raspberry pi support bandwidth configuration?

No that feature is only on ath9k chips. The Raspberry has a Broadcom chip.

1 Like

Have anyone found a solution? I have changed my /etc/config/wireless just as https://openwrt.org/docs/guide-user/network/wifi/basic adviced me and applied patch in openwrt repo, but there are no changes at all...
I'm doing this on ath9k_htc(ar9721) connected to RPi4
OpenWrt 22.03

  • RC4?
  • Solution to what?

Do you have some kinda license to do that...if so, why do you need 5 MHz?

I am compiling system for Raspberry Pi 4
Solution about enabling 5MHz, because i read that there is way to change channel bandwidth simply by writing 'option chanbw 5' to /etc/config/wireless, but i haven't noticed any changes...
Can't use echo 0x00000005 > /sys/kernel/debug/ieee80211/phy1/ath9k/chanbw because system doesn't allow me to make changes in sys
I need 5MHz to communicate with another device with 5MHz channel bandwidth