Banana Pi BPI-R3 OpenWRT image

I can see you used the MT7921K, but that’s not 6E either ? (6ghz) Banana Pi has miss informed a lot of people by stating that it is 6E (6ghz) and it is not. As you pointed out. And I see no correction on this ! Which is leading to perpetual confusion. You are also correct in pointing out that the correct chip from Mediatek is the same die and could be put on the board. IT Could be 5 & 6 ghz by leaving the 2.4 ghz off the board (not a lot to be gained in WiFi 6 with 2.4) Just stick in a 2.4 USB dongle, if you need 2.4 I have considered removing the 2.4 and soldering on the 6 ghz myself. Or how about a “group buy” of such a board. I wonder how many boards we would have to buy, to get what we thought we were getting. 4x4 5ghz + 4x4 6ghz The only reason I was attracted to this board in the first place.

Just another WiFi guy eh!

MT7921 can operate on 6 GHz channels with 2T2R and 160 MHz channel width. So it is 6E.

It could even serve all three bands by using a DBDC frontend for 2.4GHz + 5GHz and single-band 4T4R frontend for 6 GHz. I guess the choice to populate the board with two single-band 4T4R frontends for 2.4 GHz and 5 GHz is mostly due to limited available and/or high cost of 6 GHz chips at the time when the R3 was designed.

Given the current situation, the best would be to add MT7915E on M.2 slot with 4T4T single-band 6 GHz front-end connected.

Sacrificing the only USB 3.0 port for 2.4 GHz seems also like a waste, and USB 2.0 dongles generally don’t work well and are very limited in terms of available bandwidth and number of clients which can be served simultaneously. I’d always stay away from USB Wi-Fi, compared to PCIe-based solutions that’s all toy-grade stuff. And yes, it is possible to see way beyond 200 MBit/s also on 2.4 GHz, and range is much better than in higher frequency bands, so I wouldn’t want to miss it.

I’m afraid that may not work due to efuse already being burned for the combination of chips used on the board… But if you have access to compatible 6 GHz frontend chip and BGA rework station it would definitely be a very interesting experiment :alembic::microscope::satellite:

You can run OpenWrt directly from the microSD card or use the bootloader menu in the serial console to install OpenWrt on either the SPI-NAND or the SPI-NOR flash chip (depending on the position of the physical switch on the board).

How exactly does one enter the Bootloader Menu via Serial Console?

Got a Serial->USB adapter connected and can read everything, but i don’t know how to get into the Bootloader Menu like you did.

output_2022-12-04_18-16-38.log (26.0 KB)

P.S But here is a picture of the Serial Pins for Github " Insert photo of PCB with markings for serial port" Clipboard01

You need to use a VT100/ANSI capable terminal emulator, that can be puTTY on Windows, minicom on Linux, … Using that you will see the menu, and you can interrupt the boot process to select options in the menu.

1 Like

Does anyone else have wifi performance issues?

This seems to affect apple devices.

There are others https://forum.openwrt.org/t/802-11ax-worse-than-802-11ac-with-mt76-driver/126466/159 also affected by this issue.

To me WiFi performance looks good and similar to other reports such as here:

But I also don’t have any Apple devices to test with, only Intel AX2xx in laptops and some Samsung Exynos and MediaTek Helio based mobile devices. So it can very well be that there is a general problem with mt76 or even mac80211 drivers in general and Apple devices on the other side.

Did a quick iPerf test of WiFi performance with my Surface Pro 3 and Samsung Galaxy Tab S7+ with QC SD865+. Worked pretty well and better WiFi Range compared to my old Netgear R6400.

I can borrow an iPhone Xr to test, but not sure if it supports wifi6

UPD:

Iphone XR meets 802.11ac

Download:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-30.02  sec  2.14 GBytes   613 Mbits/sec    2             sender

Upload:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-30.01  sec  1.62 GBytes   463 Mbits/sec                  receiver

UPD: Xiaomi Mi10 (Snapdragon 865 802.11ax Android 11)

Download:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   884 MBytes   741 Mbits/sec    0             sender

Upload:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.01  sec   677 MBytes   567 Mbits/sec                  receiver
-----------------------------------------------------------

UPD2: OnePlus 9 Pro (Snapdragon 888 802.11ax A12)

Down:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.01  sec  1.54 GBytes  1.33 Gbits/sec    0             sender
-----------------------------------------------------------

Up: attempt1:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.02  sec   724 MBytes   607 Mbits/sec                  receiver
-----------------------------------------------------------

attempt2 - after reboot:

- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.02  sec  1.32 GBytes  1.13 Gbits/sec                  receiver
-----------------------------------------------------------

I have a new weird issue on latest snapshot.

My Google Nest mini fails to connect suddenly. I cannot figure out the cause really. Tried toggling the usual culprit 802.11w, but no dice. Switched from WPA3 to WPA2 and it persists on 5GHz and 2.4GHz.

I have a dumb AP set also in the network… it works through that thou. So it ain’t some firewall issue also.

Was there any sort of magic going around in wifi driver sections? In upstream mt76 changes I don’t see anything for MT7986.

Maybe try disabling wed (wireless dispatch).

I am on mainline builds. WED ain’t present there yet imho. Also WED only works for 5GHz.

Then you should start hostapd with debug (-dd) and look there why connection is broken sometimes

It was a DHCPv6 related derp. It still brings up strange stuff sometimes.

So far then… good then.

It is true that WED is not enabled by default on mainline builds.

It may not be relevant for you at this point, but unlike the BPi-R64 which is based on MT7622, on the BPi-R3 based on MT7986 WED can work for both, 2.4GHz and 5GHz provided by the SoC, and also additional PCIe radio connected. And unlike MT7622 which supported only Eth->WiFi offloadring, MT7986 supports both directions.

So it has to be enabled in multiple places not only mt7915e options? Like for the MT7622, I have the Xiaomi AX3200 breed, thus many things overlap…

Well they should overlap, as exactly your code is used in both platforms lol. It just puzzles me as the name is left from different IC. Now I read the same comment from Belkin/Linksys page about the HW acceleration paths.

Shame there are no pcie mediatek nics to slap in that m.2 slot and have it HW accelerated. I need a third 2.5Gbe port. Putting an intel or realtek will hog the CPU badly like on even beefier platforms. I have ordered an adapter to try myself, but I have a feeling already how it will turn out, I have a 2.5GB M.2 AE Realtek RTL8125.

No, it’s just options for mt7915e module. MT7986 contains a dual-band Wi-Fi similar to MT7915, hence the same driver is used. MT7622 built-in Wi-Fi is more similar to MT7615 and hence doesn’t support WED. Most devices with MT7622 use MT7915E as 5 GHz radio, so there WED is supported.

Hi, I flashed the 21.01 image, it works, but cant do a Sysugrade to Snapshot.

So i used your method to flash nand, and got a Snapshot install on NAND, But cant flash it to Emmc.

There is a way to flash EMMC using “fw_setenv bootcmd”? or any other way without Serial console?

Yes, there is. You have to boot from NAND and then issue

fw_setenv bootcmd "run emmc_init ; env default bootcmd ; saveenv ; saveenv ; reset"
reboot
1 Like

Hello everyone, has anyone experimented whether openwrt’s hwoffload works on mt7986? In addition, I heard that mt7986 also supports qosoffload. How does it work?

Works like a Charm, needs to go to Wiki.