Hmmm, both of those quotes mention Broadcom devices.
I'm looking at an ipq4019-based device right now and it seems to support 256-QAM (MCS index 8, 9) on 2.4 GHz without anything special needing to be done. Edit: Past enabling VHT, which I have not done for 2.4 GHz.
There is, of course, the question of what you'd do with it, as I don't think there are many consumer devices that support it, being non-standard.
Wiphy phy1
max # scan SSIDs: 16
max scan IEs length: 195 bytes
max # sched scan SSIDs: 0
max # match sets: 0
max # scan plans: 1
max scan plan interval: -1
max scan plan iterations: 0
Retry short limit: 7
Retry long limit: 4
Coverage class: 0 (up to 0m)
Device supports AP-side u-APSD.
Available Antennas: TX 0x3 RX 0x3
Configured Antennas: TX 0x3 RX 0x3
Supported interface modes:
* IBSS
* managed
* AP
* monitor
* mesh point
* P2P-client
* P2P-GO
* P2P-device
Band 1:
Capabilities: 0x19ef
RX LDPC
HT20/HT40
SM Power Save disabled
RX HT20 SGI
RX HT40 SGI
TX STBC
RX STBC 1-stream
Max AMSDU length: 7935 bytes
DSSS/CCK HT40
Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
Minimum RX AMPDU time spacing: 8 usec (0x06)
HT TX/RX MCS rate indexes supported: 0-15
VHT Capabilities (0x339959b2):
Max MPDU length: 11454
Supported Channel Width: neither 160 nor 80+80
RX LDPC
short GI (80 MHz)
TX STBC
SU Beamformer
SU Beamformee
MU Beamformer
MU Beamformee
RX antenna pattern consistency
TX antenna pattern consistency
VHT RX MCS set:
1 streams: MCS 0-9
2 streams: MCS 0-9
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
VHT RX highest supported: 0 Mbps
VHT TX MCS set:
1 streams: MCS 0-9
2 streams: MCS 0-9
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
VHT TX highest supported: 0 Mbps
Frequencies:
* 2412 MHz [1] (30.0 dBm)
* 2417 MHz [2] (30.0 dBm)
* 2422 MHz [3] (30.0 dBm)
* 2427 MHz [4] (30.0 dBm)
* 2432 MHz [5] (30.0 dBm)
* 2437 MHz [6] (30.0 dBm)
* 2442 MHz [7] (30.0 dBm)
* 2447 MHz [8] (30.0 dBm)
* 2452 MHz [9] (30.0 dBm)
* 2457 MHz [10] (30.0 dBm)
* 2462 MHz [11] (30.0 dBm)
* 2467 MHz [12] (disabled)
* 2472 MHz [13] (disabled)
* 2484 MHz [14] (disabled)
Thanks for replying. I'll check if MCS 8-9 are supported on my Linksys EA8500.
The first thread by Ansuel is about the ath10k FW used on QCA devices.
On DD-WRT or stock firmware, my smartphones connect to the Linksys EA8500 (IPQ806X) at a rate of 192 Mbps (2.4 GHz + 256 QAM). On OpenWRT, even with 40 MHz enabled, the same smartphones only connect at 144 Mbps.
Is there anything I'd have to add to hostapd perhaps to get this working?
When you say "192 Mbps", is that based on actual throughput, or what the UI of the router says?
Very often firmware reports, well, shall we say "optimistic" values ("I've got a Brand X router and it says I can get NNNN Mbps") rather than actuals. Agreed, it might be that your cell phone has a Broadcom radio that is capable of those rates. For me, unless you are seeing real, measurable different in throughput, it would be hard to justify the work to enable it in hostapd.
Aside: Being a product manager by day, I can hear the conversation now
Can't we say something about how our router is faster?
Yeah, like "Ours goes to 11". Oooh, since the hardware is there for 5 GHz, even if its non-standard, we can claim 256-QAM on 2.4 GHz
How much faster?
Like 31.735%, but it won't work with any other devices. It's non-standard.
Brilliant, yeah, we can claim "30% faster speeds with Broadcom Super Speed 256" OK, I'll work with legal on that
Footnote as "When used with interoperable devices." 6 pt text or larger please, can be anywhere on the box Must be on all promotional material at 6 pt or larger.
When you say "192 Mbps", is that based on actual throughput, or what the UI of the router says?
Actual throughput. I've tested this on multiple smartphones from different OEMs. The link rate on the phone shows 192 Mbps, and there is a very clear difference in throughput when 256 QAM is enabled, versus when it isn't.
The reason I have most clients on 2.4 instead of 5 GHz is due to range on 5 GHz being absolutely terrible because of concrete walls.
Also, the product manager bit of your post was very enjoyable. Thank you for that.
Low SNR and high-order modulation are in conflict with each other. While they may help in high-signal cases, using higher-order modulation won't help in moderate- or low-level situations
Here's a 16-QAM constellation. Each point represents the decided signal at one instant of time. If the dot crosses out of its "box", then there is an error in the symbol, impacting at least one bit, if not more. The "blobbiness" of each dot is related to the SNR. The side-to-side smearing is due to errors in phase recovery (the constellation "rotates") and is also generally increased with lower SNR. (The gain or graph isn't quite right here, as each blob should be in the center of the box.) A 16-QAM signal is a 4x4 box, a 256-QAM signal packs 16x16 into the same space -- each box is 4x smaller in each dimension.
Before diving into patches, checking what you can get for throughput may tell you if you're even close to being able to support them with your SNR. If you're significantly below 100 mbps throughput already, I don't think that enabling the higher rates would help.
Edit:
Looking at the 2.4 GHz paste, it looks like the AP might not be enabling anything faster than 54 Mbps. This might be due to permitting "G" connections, or because of inadequate security that is preventing "N" mode.
If you post your /etc/config/wireless (preferably using the pre-formatted button </> so it is readable), redacting your keys and other sensitive information, perhaps there is something obvious there.
I haven’t explored the source, but my gut feeling is that netifd and associated helper scripts will reject VHT on 2.4ghz as nonstandard.
Whether hostapd allows it or not I don’t know.
That leaves you with manipulating the driver directly to set those higher MCS values..?