What's the best firmware for bpi-r4 now, Extreme slow WiFi 7 speed on openwrt snapshot?

Hi everyone,

I’ve tested multiple firmware versions, including the OpenWRT snapshot build, and noticed a significant issue with Wi-Fi speed when using an Qualcomm 8Gen3 client (with BE support) connected to the 5GHz Band 36 at 160MHz (the only 160MHz channel allowed by local regulations). The speed is extremely slow, ranging between 20Mbps and 110Mbps (with noticeable jitter, lag, and packet loss). In comparison, the “MTK 4.0 SDK” firmware achieves over 2000Mbps throughput (See Edit 1).

Testing method:

  1. First, I tested like normal router using NAT.
  2. Then, try bridged the Wi-Fi ports to the SFP+ port, cut NAT

SFP+ linking to an R7525 server running OpenSpeedTest. For reference, the iperf3 from the BPI-R4 to the server showed >9.6Gbps, so the fiber link is confirmed to be fine.

also 80Mhz 40Mhz also tested, it’s slow. 8Gen1 Wifi 6 Phone, Qualcomm 7200 Laptop, also tested, no suprise, SDK 4.0 has >Gbps, and snapshot never push > 200Mbps.

While I understand that open-source drivers might have lower performance, the gap between the OpenWRT snapshot and the MTK 4.0 SDK firmware was far larger than I expected.

Interestingly, the “MTK 4.0 SDK” firmware doesn’t even show BE (it’s detected as AX on the client side), whereas the OpenWRT snapshot does show BE. a bit odd.(See Edit 2)

and the bpi-r4 MTK 4.0 sdk firmware (download from: Banana Pi BPI-R4 - Banana Pi Wiki ) has several luci page contain unknown error about some proxy tool?.. do we have a clean version?

Additionally, I’ve noticed that the MTK 4.0 SDK firmware can occasionally be slow as well, but placing my palm close to the board seems to dramatically improve speed. This led me to suspect internal interference. (For power, I used a Type-C adapter with three-pin grounding from a Lenovo laptop, so I don’t think this is a power supply issue.) Adjusting the antenna placement away from the GPIO pins seems to improve performance. After this adjustment, the MTK 4.0 firmware consistently achieves speeds above 1800Mbps. However, the OpenWRT snapshot firmware remains stuck at just tens of Mbps, even after these tweaks.

I’ve check the forum since wifi performance hasn’t been widely discussed, so I’m curious:

  • What firmware / repo are you using?
  • What has your experience been?
  • What Wi-Fi speeds are you achieving under different firmware versions / build repo?

spent a lot of time just tring to find a better firmware… or repo… Or if no one has encountered this problem, I may need to contact RMA whether there is an abnormality with the board…

Would appreciate any insights or suggestions!

2024-12-01 Edit 1: I found that AX speed is okey now, the problem side is WiFi 7.

2024-12-01 Edit 2: If you set you AP to AX, or encryption not with WPA3, or using a AX client, your probably fine, cause you are using WiFi 6 not 7. You are limited to 2400Mbps HT Speed, not 2880Mbps/+

Unfortunately, that’s where the performance is at on mainline OpenWrt with the open-source BE14 driver. We’ll have to wait until it’s mature enough. You can follow the progress at [Banana BPI-R4] Wifi7 status - For Developers - OpenWrt Forum

The official MTK 4.0 SDK firmware is pretty old at this time and likely will never be updated. Nor can it be updated manually.

As for the Qualcomm QNCM865 wireless NIC, I have the same issue of BE not showing up with the latest driver. Reverting to version 3.1.0.1262 (Microsoft Update Catalog) fixed it for me.

1 Like

Hi Betonmischer,

Thanks for the reply! The thread you linked looks very informative—now add to my watchlist.

Good to know I’m not the only one! :joy::joy:

I can get almost 1600Mb/s at Wifi LAN, test with danpawlik’s v17-luci-eht-rmandrad branch.

Maybe you can try it?

Test environment:

speedtest host-

JD RE-CP-03(MediaTek MT7986A) OpenWrt SNAPSHOT r27783 with luci-speedtest-web package.

Connect to Mikrotik CRS309 using 2.5G port.

BPI-R4-

Running danpawlik’s v17-luci-eht-rmandrad.

Connect to Mikrotik CRS309 using SFP+ port with 10G Fiber.

test client-

8 Gen2 smartphone connect to BPI-R4 5G band with 160MHz.

1 Like

Hi, thanks for you reply, I tried a few more times and I found:

I can now achieve similar results with immortalwrt firmware (I believe openwrt snapshot as well) but only on WiFi 6 (AX).

If I set the radio to AX or set Encryption to WPA2, it actually create a AX WiFi (5Ghz HT speed only 2400Mbps, not 2880), and I can get ~1.9Gbps on AX @ 5Ghz 36 Band @ 160Mhz now.

but on BE @ WPA3, a true WiFi 7, with BE client, it’s slow ~20Mbps, both 2Ghz@40Mhz nor 5Ghz@160Mhz, something wrong.

Which tool are you using to test the wifi speeds? Are you just testing wifi to router or wifi to internet?

I can run my numbers as well.

Hi totkeks,

I found that wifi throughput eats a lot of CPU (Maybe not fully hardware accelerated?), so I run openspeedtest on my standalone server connected to sfp+:

docker run --restart=restart --name openspeedtest -d --net host openspeedtest/latest

And go http://serverIp:3000

docker not required, other choice available(including Windows):

iperf3 also a choice.

it is a bit hit and miss with openwrt v17-luci-eht-rmandrad or latest snapshot from openwrt.

problems seen:

  1. slow Wi-Fi speed (as per initial post, I just confirming that I see same problem). Qualcomm FastConnect 6900 Wi-Fi 6E - speeds are around 20Mbits on 2.4g , 5g- 50Mbits, 6g - 40Mbps(160hz channel) iPhone 12 - ~70Mbits on 2.4g ,5g - 200Mbits intel ax201 2.4g - 100Mbits ,5g - 508Mbits
  2. from CPU soft interrupts I can guess that HW offloading is not working. in SDK firmware this issue wasn’t seen

but annoying thing that SDK firmware compilation does not work, at least I hit multiple issue when I was trying to compile SDK image and then just gave up

did anyone had success story with SDK firmware compilation ?

Good day. I confirm that I have the same problems with the speed in the BE range, on the openwrt forum, respected @rmandrad created a new firmware, where they write about very good speeds in the BE range, but I have not tested it yet. I am waiting for the BE range fixes to appear in the official versions of openwrt, maybe when 24.10 is released?!

Good morning, these images work in range BE , as they should, in all countries and all frequencies with the speeds we all expected.

MLO is not available.

But for the rest, wifi 7 works perfectly.

apk-banana-bpi-r4-wifi7

OpenWrt 24.10-SNAPSHOT r28163-c995dd97c7

openwrt-24.10.0-rc2-mediatek-filogic-bananapi_bpi-r4-sdcard.img

Japan-openwrt-24.10.0-rc2-mediatek-filogic-bananapi_bpi-r4-sdcard.img

openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.IMG.gz

openwrt-24.10.0-rc3

@tutugreen I see that I have the exact same problem (AX is fast as advertised while BE is slow to around 20mbs) did you managed to get any more info on that?

I just built latest openwrt from source while only adding luci

have a look @ [Banana BPI-R4] all related to MTK-SDK - #2 by glassdoor - Community Builds, Projects & Packages - OpenWrt Forum

Hello, I know this is a old post but I’ve tried the few images and I get this error (lan1) entered blocking state [ 27.555063] br-lan: port 1(lan1) entered disabled state

So I also having issues with the backups, I get a few errors trying to extract it. just learning the BPI so any suggestions would help.
thank you

Good morning, sorry I don’t work with those images anymore, check out this thread, they are much better than the ones I used, for me it is the best one currently.

banana-bpi-r4-all-related-to-mtk-sdk

The official one also works very well. I recommend this BPI-R4-BE1350-WIFI_MT76-20240202.zip oficial , the bad thing is that you can’t install packages, you have to do it manually by searching for the packages manually on these pages.

src/gz openwrt_core https://downloads.openwrt.org/releases/21.02-SNAPSHOT/targets/mediatek/mt7988/packages src/gz openwrt_base Index of /releases/21.02-SNAPSHOT/packages/aarch64_cortex-a53/base/ src/gz openwrt_luci Index of /releases/21.02-SNAPSHOT/packages/aarch64_cortex-a53/luci/ src/gz openwrt_mtk_openwrt_feed https://downloads.openwrt.org/releases/21.02-SNAPSHOT/packages/aarch64_cortex-a53/mtk_openwrt_feed src/gz openwrt_packages Index of /releases/21.02-SNAPSHOT/packages/aarch64_cortex-a53/packages/ src/gz openwrt_routing Index of /releases/21.02-SNAPSHOT/packages/aarch64_cortex-a53/routing/ src/gz openwrt_telephony Index of /releases/21.02-SNAPSHOT/packages/aarch64_cortex-a53/telephony/

have a good day

Thanks everyone, I did tested “Woziwrt’s BPI-R4_MLO_beta_2_EXT_upd-1.2.zip”

It’s give me the best result so far.

8 Elite (OnePlus Ace5Pro) 6Ghz (320Mhz): ~ Avg 3.6Gbps DL, and Peak at 4.2Gbps, wow!

but, the test method is phone place on bpi-r4 case, one move, the speed drop quickly.

In addition, the system is not very stable, WiFi can be connected in the morning but may or maynot survived to evening (I mean, can’t connect anymore, without reboot).

also, like I metion in https://github.com/openwrt/openwrt/issues/17715

the test result on Snapdragon 8 Gen3 (Lenovo Y700 2025 Tablet TB321FU), the speed not stable.

And it is also susceptible to interference from other devices’ speed test. (causing its speed to cut off or drop to 0). As is well known, multi device concurrent connectivity and air interface optimization are one of the key advantages of AX and BE.

don’t know mtk or sinovoip play what roles, it’s their product , they have duty to make this work, not relay on community

But I do see the efforts and improvements of the community, thanks for contributions