I played around with today’s snapshot which includes the patches and latest firmware and found the following:
Applying the two patches from the ongoing ath12k support (Add ath12k - WCN7850 - opensource driver/firmware support by januszdziedzic · Pull Request #15945 · openwrt/openwrt · GitHub) and manually openwrt’s scripts to generate the hostapd.conf with a hammer I finally have it…
root@OpenWrt:~# iw dev phy1-sta0 station dump
Station 9e:ad:b7:2b:4f:3d (on phy1-sta0)
inactive time: 4230 ms
rx bytes: 18875197
rx packets: 23817
tx bytes: 29013546
tx packets: 25615
tx retries: 804
tx failed: 804
beacon loss: 0
beacon rx: 1074
rx drop misc: 0
signal: -45 [-49, -50, -48] dBm
signal avg: -44 [-48, -50, -47] dBm
beacon signal avg: -44 dBm
tx bitrate: 3843.1 MBit/s 320MHz EHT-MCS 9 EHT-NSS 2 EHT-GI 0
tx duration: 8214725 us
rx bitrate: 2594.0 MBit/s 320MHz EHT-MCS 4 EHT-NSS 3 EHT-GI 0
rx duration: 2195435 us
last ack signal:-46 dBm
avg ack signal: -45 dBm
airtime weight: 256
authorized: yes
authenticated: yes
associated: yes
preamble: long
WMM/WME: yes
MFP: yes
TDLS peer: no
DTIM period: 2
beacon interval:100
short slot time:yes
connected time: 115 seconds
associated at [boottime]: 45.388s
associated at: 1724350689782 ms
current time: 1724350801451 ms```
3 spatial streams, using ETH over 320MHz (sadly over the current distance only MCS below the new QAM4096, this log is from the client but server is of course the same, both BPi R4).
root@OpenWrt:~# iperf3 -c 192.168.1.1 -t 3600
Connecting to host 192.168.1.1, port 5201
[ 5] local 192.168.1.232 port 36568 connected to 192.168.1.1 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 3.25 MBytes 27.2 Mbits/sec 0 165 KBytes
[ 5] 1.00-2.00 sec 3.12 MBytes 26.2 Mbits/sec 0 198 KBytes
[ 5] 2.00-3.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 3.00-4.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 4.00-5.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 5.00-6.00 sec 2.88 MBytes 24.1 Mbits/sec 0 198 KBytes
[ 5] 6.00-7.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 7.00-8.00 sec 2.75 MBytes 23.1 Mbits/sec 0 198 KBytes
[ 5] 8.00-9.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 9.00-10.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 10.00-11.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 11.00-12.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 12.00-13.00 sec 2.88 MBytes 24.1 Mbits/sec 0 198 KBytes
[ 5] 13.00-14.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 14.00-15.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 15.00-16.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 16.00-17.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 17.00-18.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 18.00-19.00 sec 3.00 MBytes 25.2 Mbits/sec 0 198 KBytes
[ 5] 19.00-20.00 sec 2.88 MBytes 24.1 Mbits/sec 0 198 KBytes
I think there is something wrong here, as adding a monitor mode interface reveals I am still sending in 802.11a (OFDM) instead. Using a Intel B200 as client gives me 400Mbps in one direction (Intel sending) but still, fairly terrible.
On the plus side, in HE mode (WiFi 6e) I can confirm its doing well so maybe its the things I did to openwrt to enable BE/EHT support
- - - - - - - - - - - - - - - - - - - - - - - - -
[ 5] 85.00-86.00 sec 75.8 MBytes 635 Mbits/sec
[ 7] 85.00-86.00 sec 77.6 MBytes 651 Mbits/sec
[ 9] 85.00-86.00 sec 65.9 MBytes 553 Mbits/sec
[ 11] 85.00-86.00 sec 61.2 MBytes 514 Mbits/sec
[SUM] 85.00-86.00 sec 280 MBytes 2.35 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
As you can see, iperf3 now manages about 2.35Gbps using 4 processes (number of cpus) and TCP.
Can anyone tell me if this makes sense (added a perfectly fine hostapd.conf from openwrt, well the channel was replaced) as per https://www.spinics.net/lists/hostap/msg12298.html:
ieee80211be=1
channel=37
op_class=137
he_oper_centr_freq_seg0_idx=31
eht_oper_centr_freq_seg0_idx=47