First, after more testing I seem to have made an error in post #15
The code listing must have come from a Phone and not the Dell 3502.
Because the reported Mbit/s of 270 only occurs in the MCS table (thanks to Aki) for 2 Spatial Streams i.e 2 antennas.
Whereas the QCA9377-5 only supports a “Single Wi-Fi/Bluetooth antenna” so 1 Spatial Stream.
I should also point out that 693 Mbps over 20MHz can only occur over 8 streams. See link below.
My excuse is Xmas spirit (of the liquid kind) & excited children interrupts!
I have also fired up an older Pixel 3 which only supports 802.11ac thus making comparisons to the laptops .11ac more valid.
Using the cmd ‘iw dev wlp2s0 link’ several measurements were made, with the Dell 3502 at different distances from the access point. The first at 2 metre distance produced;-There is the first surprise, connected at MCS 4 (16-QAM). I thought that the phy layer might be stuck at MCS 3 (16-QAM & 26MHz rate) thus limiting the download speed, if not then I expected it to connect at around 325 Mbps MCS 7 (64-QAM).
Considering this further, it might be because the high received signal level is overloading the rf frontend of the wifi chip. This will cause multiple spurious signals that might be interpreted as increased noise thus degrading the SNR which, in turn, forces a lowered data rate.
After this first test, a series of further tests were made by moving the laptop and checking for a new modulation rate, as in the MCS table.
The following rates were found.
MCS-Mbps-BW(MHz)--Comment
9------200----40----------Only seen briefly, then it swapped to 150
8------180----40----------Only seen once.
7------150-----“
6------135-----“
4-------90------“
3-------60------“
2-------45------“
1-------30------“
1------14.4---20
0-------7.2----20
Thus one can conclude that the physical layer has the functionality to change the modulation coding/rx bitrate. (as long as it is not MCS 5 or needs the 80MHz band)
The tx bitrate is stuck at 6.0 Mbit/s (in the code above) and never changes, this also applied to the NetworkManager Applet > clicking on Connection Information shows Speed “6Mb/s”.
This is still 6Mb/s when speedtest.net is downloading at 22.51 and uploading at 16.48 Mbits/s.
It was very noticeable that the MCS rate v.s RSSI (Received Signal Strength Indicator) was extremely vairiable and unpredictable.
The MCS form just states RSSI, it is assumed that the figures are dBm (dB below a 1mW ref)
MCS 5,6 and 7 are each seperated by 1dB, it would require a carefully calibrated circuit to resolve such small increments at -65 dBm and relate it to the noise floor to recover SNR.
The 5GHz channel used was 132 with no other nearby user signals (in a rural area) and was consistent for all measurements, WPA3 encryption always on.
The one thing missing from ‘iw dev wlp2s0 link’ is SNR, or Noise level dBm.
Next test was a speedtest.net run at different MCS settings (ISP downloads at 50Mbit/s);-
MCS/---BW---Signal---Down----Up
Rate---(MHz)--dBm---(Mbps)-(Mbps)
7/150----40___-61-----21.83---15.97
7/150----40___-47-----23.16---16.40
4/90----- 40___-55-----21.78---17.61
3/60------40___-76-----11.83---12.75
2/45------40___-83------6.47----8.09*
0/7.2-----20___-66-----13.31---16.51
* Possibly minimum SNR not met. Firefox or Chromium same typical results.
Hmm, looks as if the wifi system is as confused as I am!
If the MCS rate is set 7.2 Mbps how did it manage uploads/downloads of 16.51/13.31 Mbps ?
Also the 80 MHz BW is never used.
Swapped encryption over to WPA2, in case WPA3 was a problem – no difference.
Tried a live distro Alma Linux, (oh - sorry about mentioning red hat based things here!) but this was just same. Around 22Mbps download max.
The Pixel 3 uses the 80 MHz BW and the phy layer can connect at 433 Mbps. The Pixel 6 ax phy does 573 Mbps. Both download at ISP limit of 50 Mbps, thus eliminating the router.
The QCA9377 is described as an SoC (System on a Chip.) So the Laptop Mfg’s are embedding a system within a system. That must require some means to calibrate the RSSI and perhaps the filters for 20/40/80 MHz as these have a quite strict spectral mask, see link below.
Finally, the penny dropped. In the first post I mentioned an error msg;-Here we see that 2 types of calibrate .bin failed to load – pre-cal-pci & cal-pci
Text after ‘]’ for Acer & Dell only differ in the address after ‘sub’ (1028:1810) and ‘0x6C’ entries.
This all leads me to conclude that the QCA9377 is not configured properly and that the additional
pre-cal-pci & cal-pci files must be loaded, to improve the wifi.
I am not convinced that a common file set will do both laptops, but maybe.
Question; How does one get the calibrate files loaded ?
url for 802.11ac rates with up to 8 spatial streams.
‘community.cisco.co m/t5/wireless-mobility-knowledge-base/802-11ac-mcs-rates/ta-p/3155920’
‘rfwireless-world.com/Tutorials/802-11ac-spectral-mask.html’

The code listing must have come from a Phone and not the Dell 3502.
Because the reported Mbit/s of 270 only occurs in the MCS table (thanks to Aki) for 2 Spatial Streams i.e 2 antennas.
Whereas the QCA9377-5 only supports a “Single Wi-Fi/Bluetooth antenna” so 1 Spatial Stream.
I should also point out that 693 Mbps over 20MHz can only occur over 8 streams. See link below.
My excuse is Xmas spirit (of the liquid kind) & excited children interrupts!
I have also fired up an older Pixel 3 which only supports 802.11ac thus making comparisons to the laptops .11ac more valid.
Using the cmd ‘iw dev wlp2s0 link’ several measurements were made, with the Dell 3502 at different distances from the access point. The first at 2 metre distance produced;-
Code:
:~$ sudo iw dev wlp2s0 linkConnected to 24:4b:xx:xx:xx:xx (on wlp2s0)SSID: xxxxfreq: 5660 RX: 842101 bytes (4776 packets)TX: 10069 bytes (75 packets)signal: -32 dBmrx bitrate: 90.0 MBit/s VHT-MCS 4 40MHz short GI VHT-NSS 1tx bitrate: 6.0 MBit/sbss flags:short-slot-timedtim period:1beacon int:100
Considering this further, it might be because the high received signal level is overloading the rf frontend of the wifi chip. This will cause multiple spurious signals that might be interpreted as increased noise thus degrading the SNR which, in turn, forces a lowered data rate.
After this first test, a series of further tests were made by moving the laptop and checking for a new modulation rate, as in the MCS table.
The following rates were found.
MCS-Mbps-BW(MHz)--Comment
9------200----40----------Only seen briefly, then it swapped to 150
8------180----40----------Only seen once.
7------150-----“
6------135-----“
4-------90------“
3-------60------“
2-------45------“
1-------30------“
1------14.4---20
0-------7.2----20
Thus one can conclude that the physical layer has the functionality to change the modulation coding/rx bitrate. (as long as it is not MCS 5 or needs the 80MHz band)
The tx bitrate is stuck at 6.0 Mbit/s (in the code above) and never changes, this also applied to the NetworkManager Applet > clicking on Connection Information shows Speed “6Mb/s”.
This is still 6Mb/s when speedtest.net is downloading at 22.51 and uploading at 16.48 Mbits/s.
It was very noticeable that the MCS rate v.s RSSI (Received Signal Strength Indicator) was extremely vairiable and unpredictable.
The MCS form just states RSSI, it is assumed that the figures are dBm (dB below a 1mW ref)
MCS 5,6 and 7 are each seperated by 1dB, it would require a carefully calibrated circuit to resolve such small increments at -65 dBm and relate it to the noise floor to recover SNR.
The 5GHz channel used was 132 with no other nearby user signals (in a rural area) and was consistent for all measurements, WPA3 encryption always on.
The one thing missing from ‘iw dev wlp2s0 link’ is SNR, or Noise level dBm.
Next test was a speedtest.net run at different MCS settings (ISP downloads at 50Mbit/s);-
MCS/---BW---Signal---Down----Up
Rate---(MHz)--dBm---(Mbps)-(Mbps)
7/150----40___-61-----21.83---15.97
7/150----40___-47-----23.16---16.40
4/90----- 40___-55-----21.78---17.61
3/60------40___-76-----11.83---12.75
2/45------40___-83------6.47----8.09*
0/7.2-----20___-66-----13.31---16.51
* Possibly minimum SNR not met. Firefox or Chromium same typical results.
Hmm, looks as if the wifi system is as confused as I am!
If the MCS rate is set 7.2 Mbps how did it manage uploads/downloads of 16.51/13.31 Mbps ?
Also the 80 MHz BW is never used.
Swapped encryption over to WPA2, in case WPA3 was a problem – no difference.
Tried a live distro Alma Linux, (oh - sorry about mentioning red hat based things here!) but this was just same. Around 22Mbps download max.
The Pixel 3 uses the 80 MHz BW and the phy layer can connect at 433 Mbps. The Pixel 6 ax phy does 573 Mbps. Both download at ISP limit of 50 Mbps, thus eliminating the router.
The QCA9377 is described as an SoC (System on a Chip.) So the Laptop Mfg’s are embedding a system within a system. That must require some means to calibrate the RSSI and perhaps the filters for 20/40/80 MHz as these have a quite strict spectral mask, see link below.
Finally, the penny dropped. In the first post I mentioned an error msg;-
Code:
~# dmesg | grep -i ath[ 4.706388] ath10k_pci 0000:02:00.0: enabling device (0000 -> 0002)[ 4.707818] ath10k_pci 0000:02:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0[ 4.981580] ath10k_pci 0000:02:00.0: firmware: failed to load ath10k/pre-cal-pci-0000:02:00.0.bin (-2)[ 4.981651] ath10k_pci 0000:02:00.0: firmware: failed to load ath10k/pre-cal-pci-0000:02:00.0.bin (-2)[ 4.981696] ath10k_pci 0000:02:00.0: firmware: failed to load ath10k/cal-pci-0000:02:00.0.bin (-2)[ 4.981737] ath10k_pci 0000:02:00.0: firmware: failed to load ath10k/cal-pci-0000:02:00.0.bin (-2)[ 4.984076] ath10k_pci 0000:02:00.0: firmware: direct-loading firmware ath10k/QCA9377/hw1.0/firmware-6.bin[ 4.984085] ath10k_pci 0000:02:00.0: qca9377 hw1.1 target 0x05020001 chip_id 0x003821ff sub 1028:1810[ 4.984089] ath10k_pci 0000:02:00.0: kconfig debug 0 debugfs 0 tracing 0 dfs 0 testmode 0[ 4.984655] ath10k_pci 0000:02:00.0: firmware ver WLAN.TF.2.1-00021-QCARMSWP-1 api 6 features wowlan,ignore-otp crc32 42e41877[ 5.049699] ath10k_pci 0000:02:00.0: firmware: direct-loading firmware ath10k/QCA9377/hw1.0/board-2.bin[ 5.049940] ath10k_pci 0000:02:00.0: board_file api 2 bmi_id N/A crc32 8aedfa4a[ 5.149744] ath10k_pci 0000:02:00.0: htt-ver 3.56 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1[ 5.241383] ath: EEPROM regdomain: 0x6c[ 5.241390] ath: EEPROM indicates we should expect a direct regpair map[ 5.241392] ath: Country alpha2 being used: 00[ 5.241393] ath: Regpair used: 0x6c[ 5.265184] ath10k_pci 0000:02:00.0 wlp2s0: renamed from wlan0:~#
Text after ‘]’ for Acer & Dell only differ in the address after ‘sub’ (1028:1810) and ‘0x6C’ entries.
This all leads me to conclude that the QCA9377 is not configured properly and that the additional
pre-cal-pci & cal-pci files must be loaded, to improve the wifi.
I am not convinced that a common file set will do both laptops, but maybe.
Question; How does one get the calibrate files loaded ?
url for 802.11ac rates with up to 8 spatial streams.
‘community.cisco.co m/t5/wireless-mobility-knowledge-base/802-11ac-mcs-rates/ta-p/3155920’
‘rfwireless-world.com/Tutorials/802-11ac-spectral-mask.html’
Statistics: Posted by Theuthr — 2025-01-05 17:15 — Replies 20 — Views 812