[Banana BPI-R4] Wifi7 status

Good evening, here I leave you this version LuCI openwrt-24.10 branch (24.342.15905~46f8438) / OpenWrt 24.10.0-rc2 (r28161-ea17e958b9)

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

The image has been saved once downloaded, and there are no problems with the link, it is not corrupt.

Kernel version 6.6.58, updated to OpenWrt 24.10.0-rc2 (r28161-ea17e958b9)

The image is to save on sd, it has been saved on 8gb sd, they are not tested on larger capacity sd. I only have 2 8gb sd and they work perfectly on both.

All bands have been tested, 320mhz -160mhz in all countries that use wifi 7 and the speeds are what we all expect.

I also leave a backup, so that in case you do a factory reset, you can reload the configuration so that the image is as if you had just recorded it again.

backup-OpenWrt-2024-12-08.tar.gz

192.168.1.1 has no password, put the one you use.

All antennas are active as OpenWrt-6g, OpenWrt-5g, OpenWrt-2g, password for all antennas 12345678.

6G band activated at 320mhz, 5g band at 160mhz, 2g band at 20mhz, all work perfectly, default country Singapore, but put the one you want to use.

The speeds are what they should be, there is no problem. This image is not mine, I just adapted it so that we can enjoy WiFi 7, and enjoy the WiFi speeds we all expect.

The Mlo feature is not implemented

I hope you enjoy it.




Not working for me sadly. at all.. Can't even SSH in.

Good morning, please check the link again, thank you.

This time it is the image itself, it is not compressed.

It is verified on a larger capacity SD card.

I also leave one for you to try, this one is set to Japan by default, channel auto.

I look forward to your comments

countries that work well on both radios I've tried.

japan
singapore
united arab emirates

I've tried it and it works fine on 5g, but it has problems on 6g

US

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

I leave a backup copy in case of doing a factory reset

backup-OpenWrt-2024-12-09.tar.gz

I await your response.

Hi, everyone! I've got bpi-r4 this weekend and I didn't manage to make wifi stable. 2.4Ghz is working fine, 5Ghz is only working with 20mhz channel width. 40mhz is not stable at all(everything is lagging, can't get more then 10mbits/s) 80 an 160 mhz are completely unusable. It works ok as a client, so I don't think it's something on the hardware side, but who knows. 6ghz I didn't manage to test because of my ax210's LAR. Is there any solution to this problem?

Thanks for your inputs. I found time to put the configuration following your guidelines and reboot the device, but it seems the behavior is the same:

Core 0 is still at almost 100% when launching the iperf

image

Results are still ~ 4.4 Gbits/sec

iperf command is a simple

iperf3 -c "router ip" -t 1000

It could be the cables, but I'm surprised of the activity on cpu #0, it should not be that high if offload is active. What do you think ?

1 Like

I have too ax210 but i want to replace it, i have a+e slot so i can't put there mt7925 or qcncm825... But i have no problem to send files over 5 gig 160MHz at over 1.5Gbits . On the other side and second notebook with qualcomm fastconnect 6900 i can't get more than 50Mbps on 5 or 6Gig radio... Phone ends near 2Gig. So i gave up and srayed with my fibers.

You are sending data to router so there is nothing to offload and for 10gbps to router [(iperf3 -> router (iperf3)] we will need RSS/LRO, which are yet to be implemented in mainline kernel.

3 Likes

curious on your reasons for using iptables vs nftables.
personal preferences or performance/technical related?

cheers

fw4 uses nftables ... and converts any of the iptables settings to nft rulesets

no particular reason apart from not knowing much nftables and being lazy in adapting to nftables and also there this lovely feature we have in openwrt that translates iptables to nft rulesets

here's the same commands in nftables

# Warning: table ip filter is managed by iptables-nft, do not touch!
table ip filter {
        chain FORWARD {
                type filter hook forward priority filter; policy accept;
                xt match "pkttype" counter packets 0 bytes 0 accept
                ip protocol udp counter packets 7145 bytes 3417677 xt target "FLOWOFFLOAD"
                ip protocol tcp xt match "conntrack" counter packets 49260 bytes 9435096 xt target "FLOWOFFLOAD"
        }
}
# Warning: table ip6 filter is managed by iptables-nft, do not touch!
table ip6 filter {
        chain FORWARD {
                type filter hook forward priority filter; policy accept;
                xt match "pkttype" counter packets 0 bytes 0 accept
                meta l4proto udp counter packets 0 bytes 0 xt target "FLOWOFFLOAD"
                meta l4proto tcp xt match "conntrack" counter packets 0 bytes 0 xt target "FLOWOFFLOAD"
        }
}

1 Like

low on coffee today. I am sure i am missing something.
if you are using fw4, why explicitly use iptables rules above to declare hardware flowoffload bindings in rc.local?
kmod-nf-conntrack,kmod-nft-offload etc.. should be loaded as dependencies for fw4 right?

Thank you for your answer. It is indeed better when sending from router to PC

image

Even if I see a lot of variation in bandwith from 5.3 to 7.3 Gbits/s

We can see load is balanced between cores and softirq is doing most of the job

On PC side, load is taking half a core

Ah, I was wondering if OpenWrt could translate iptables commands to nftables like modern Ubuntu. Although, it is not configured by default to do that. I see a bunch of iptables-related packages in your .config. Is there a single package that would bring along the rest as dependencies so I could include it in my .config and keep it brief before doing defconfig/menuconfig?

.. sometime ago I couldn't see any nf_flowoffload threads so I took these iptables commands from the mediatek sdk script smp-76.sh and selected all of the iptables modules ... maybe things changed since then. ..This is obviously wrong but again I just wanted to prove to myself that offloading was working

also one thing I noticed related to pkttype was that xt_DNETMAP wasn' t being built in-kernel ... so I forced it via the kernel menuconfig

happy to try out something different based on other experiences/knowledge

2 Likes

now i understand :slight_smile:

interesting.. what's the .config to force this?

nf flow offload works as intended under snapshots for a while already. do try it out.

i have also been cherry picking from mtk's sdk and upsteam patchwork. and my build is starting to look like frankenstein...

edit:
for xt_DNETMAP, maybe just install xtables-addon package?
https://github.com/openwrt/packages/blob/master/net/xtables-addons/Makefile

1 Like

i choose all of the iptables because didn't want to fiddle nor this is my focus ... also had to use kernel_menuconfig for XT _DNETMAP to load ... this is not optimal nor i think it is required but my focus was not iptables/nftables optimal config etc. Again, my focus is not this area but instead is a playing area for testing mediatek wifi/eth etc stuff... so please use it with this in mind. Feel free to change any configurations and find the optimal setup for nftables / iptables whatever flavour you prefer

1 Like

it doesn't get built in-kernel ... it fails loading at boot ... something most likely wrong in the makefile but didn't want to mess to yet another thing ... yes i've been trying to keep as much aligned apart from the kernel config, mtk wifi + eth

Anyone know how I can ssh into my fs GPON module without fibre, (well.i can add fibre but no link since I need to change serial number and Mac)

On my bpi-r4 to connect to isp I use command "ethtool -s eht0 autoneg off", without this command gpon stick have a trouble with speed on bpi-r4. Please install ethtool-full and send commands ethtool -m eth0, ethtool eth0 and share to this topic.
To enter gpon stick web gui - add new interface with 192.168.1.2/24, uncheck default gateway, add to wan, wan6 firewall zone.

For me was a little different had to have fibre in stock first then plug into router

Good morning, here I leave you Version 6.6.58, the only thing that has been added has been the new download to install the openwrt-24.10.0-rc2 packages

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

Version of the kernel 6.6.58, updated to OpenWrt 24.10.0-rc2 (r28161-ea17e958b9)

The image is for use in sd.

All bands have been tested, 320mhz -160mhz in countries that use wifi 7, except the US which gives problems in my country its channels are prohibited, the speeds in wifi 7 are what we all expect.

I also leave a small backup, so that in case you do a factory reset, you can reload the configuration so that the image is as if you just recorded it again.

backup-OpenWrt-2024-12-12.tar.gz

192.168.1.1 has no password, put the one you use.

All antennas are active as OpenWrt-6g, OpenWrt-5g, OpenWrt-2g, password for all antennas 12345678.

6G band activated at 320mhz, 5g band at 160mhz, 2g band at 20mhz, all work perfectly, default country Singapore, but put the one you want to use.

The speeds are what they should be, no problem. This image is not mine, I just adapted it so that we can enjoy WiFi 7, and enjoy the WiFi speeds that we all expect.

Mlo function is not implemented

I hope you enjoy it.








2 Likes