Banana Pi R3 real WiFi Tx power

Short and to the point: I have a power limitation on 29 dBm for 2.4 GHz and 27 dBm on 5 GHz, OpenWRT 23.05.2. I can not hit 30 dBm in any country code.

There is OK? This are the maximuns of wifi Tx?

Any enlightening comments are appreciated.

I also have some problems with country codes, but i’m not quite sure that they are related to maximum Tx power limitations of country codes. However i decided not to create a new topic and post my findings here, maybe they will be of some help with troubleshooting this behavior.

I have a fresh install of 23.05.3 release, have configured my 2.4N (40 MHz BW) and 5AX (80 MHz BW) networks by changing SSID (separate SSIDs for both networks) and adding a WPA2-CCMP password (everything else is default configuration). First I left the Country Code setting to "driver default’ and tested 5 GHz wifi with iperf3 (server on the BPI-R3 and different clients, including Windows notebook with AX210 and iPhone 13). The speeds I got from iperf3 were ~600 Mb/s down and ~200 Mb/s up. Then I’ve changed the Country Code setting to “RU” region (same as my current location) and tried iperf3 tests again. This time i got ~400 Mb/s down and ~400 Mb/s up. I have tried to change both wifi network’s country codes to “driver default” and to “RU” setting - the results are the same.

I’ve tried changing maximum Tx power from “driver default” to 20-19-18 dB - nothing seems to change, i’m still getting 600/200 on "driver “default” country code and 400/400 on “RU”. I’ve replaced my 1.13 IPX-SMA cables with shorter 1.37 ones - made no effect on speeds. The next step will be to try different antennas (right now i have dual band blade PCB antennas from Aliexpress installed and i want to try standard dipole antennas like those). I’ve tested my current antennas with VNA - readings are the same across all 8 antennas.

Keep in mind that the modulation scheme will depend on the signal level and SNR. When we talk about the throughput, it will depend also in the channel occupation. You can modify the transmission power but you can have the same RSSI/SNR and have the same performace. Modifiying the Tx power should lead to less coverage / lower RSSI at the same place, but if you are net to the AP probably you will have similar performance in every scenario (because the MCS could be the same).

In my expecience as I said, in channels which have 30 dBm limitation I just can go until 27 dBm by configuration.

Yes, I’ve forgot to mention that while testing I was using “auto” channel setting, my R3 was in the middle of the room and was the only working router. Client devices mentioned were 1.5-2 meters from router with clear line-of-sight between R3 and clients and were in the same “plane” as R3 (so that they were placed in the maximum of radiation pattern of antennas). I was also monitoring “Noise” graph in OpenWRT on 5GHz wlan - it was -99 to -96 dBm no matter what country code I was setting.

Thinking of it right now, I noticed that 400/400 Mbit/s downlink/uplink speeds I mentioned are pretty close to 433 Mbit/s maximum for 40 MHz BW on 5GHz wifi, but I have set 80 MHz in my settings. So maybe when I change the country code to “RU” OpenWRT (or wifi phy driver, idk) drops the maximum BW to 40 MHz on the channel it choses on “auto” channel setting. That explains why the downlink speed decreases on “RU” compared to “driver default”, but doesn’t explain why I get only 200 Mbit/s uplink on “driver default “ compared to 400 Mbit/s on “RU”

With iw or hostapd cli commands or ubus APIs you can check the modulation scheme which is being used (MCS), but you can also check it using LUCI:

You can run de speedtest and check the MCS rates and bandwidhts there while it runs (the speedtest).