6GHz USB adapter Q's

I just got an EDUP wifi 6E AX3000 wireless USB adapter and want to hook it up to an Openwrt router (GL.iNet GL-AR750S) in order to provide 6GHz capability.

At the moment, I'm more interested in 6GHz capability, than in performance, although I would hope that 6GHz would provide performance nearly as good
as 5GHz.

I've gotten this EDUP dongle to work in 2GHz and 5GHz modes,
but I can't figure out how to configure it for 6GHz operation (a lot of the
Openwrt documentation still doesn't know anything about 6GHz).

My current Openwrt is 23.05.5 with kernel 5.15.167 -- i.e., completely up to
date for regular distribution.

provides some outstanding help, but it never shows an actual 'wireless'
config file that is known to work.

For example, the morrownr site seems to indicate that 160MHz width
(htmode 'HE160') doesn't work, although Google tells me that the
mt7921u kernel should be able to support 160MHz.

There is also some discrepancies regarding where the country code
has to be set (I'm in the US).

I'm just running some exploratory tests, so this is far from a production
set up.

When I ask this 6GHz radio to scan, it seems to display only SSID's
from the 5GHz band, so this leads me to believe that it still isn't working
(i.e., transmitting or receiving) on the 6GHz band.


I keep seeing postings that others have gotten this USB dongle 'working'
on 6GHz, but they haven't been very precise about what their config
files contained.

Do I have to move to a different distribution of Openwrt?

Do I have to recompile anything (so far, I've been using imagebuilder to
good effect) ?

Thanks in advance for any suggestions/pointers/links/...

As 6 GHz support in OpenWrt is still rather fresh, you should go with the newest code possible, at least with 24.10.0-rc1.

Wrong tree to rise a hind leg.

Error message from imagebuilder:

"opkg_install_cmd: Cannot install package kmod-mt7921u"

Oops!

Since "kmod-mt7921u" is essential for the functioning of this USB dongle,
I'd say that "24.10.0-rc1" isn't ready for prime time yet.

I can try to recompile the entire Openwrt (including the needed kmod's),
but before I do, would this recompile likely work ?

Better wait weeks to months to get stable 24.10?

Openwrt 24.10.0-rc2 WORKS with this EDUP ('EP-AX1672') USB adapter
attached to GL-iNet GL-AR750S (nor/nand) !

Make sure to include 'kmod-mt7921u' & dependencies in software packages.

However, country=US does NOT appear to work.
Only channel widths of 20 (htmode 'HE20') work.
Only some of the 6GHz channels work -- e.g., 9, 13, 17, 21, etc., but not 1 or 5.

So here's the relevant part of my working /etc/config/wireless:

config wifi-device 'radio2'
  option type 'mac80211'
  option path '<some USB path>'
  option band '6g'
  option country 'CA'
  option channel '9'
  option htmode 'HE20'
  option cell_density '0'

config wifi-iface 'default_radio2'
  option device 'radio2'
  option mode 'ap'
  option ssid '<yourssid>'
  option encryption 'sae'
  option key '<yourpw>'
  option network 'lan'
  option ieee80211k '1'
  option ocv '0'
  option disassoc_low_ack '0'
  option isolate '1'

Tested against Windows 11 24H2; using 'Device Manager'; make wifi adapter
prefer ax and 6GHz.

Haven't done any performance (speed/range) tests yet;
was primarily interested in testing 6GHz capability.

Only basic USB driver is preinstalled, not anything you might be able to connect to external port.

Tested against RPi3B+ "Bookworm" with its own EDUP USB dongle; WORKS.

uname:

Linux 6.6.62+rpt-rpi-v8 aarch64

/lib/firmware/mediatek:

-rw-r--r-- 1 root root  532782 Dec  2 14:31 BT_RAM_CODE_MT7961_1_2_hdr.bin
-rw-r--r-- 1 root root  792228 Dec  2 14:31 WIFI_RAM_CODE_MT7961_1.bin
-rw-r--r-- 1 root root   92192 Dec  2 14:30 WIFI_MT7961_patch_mcu_1_2_hdr.bin

iwconfig:

wlxe84e06ad56e9  IEEE 802.11  ESSID:"<myssid>"
          Mode:Managed  Frequency:5.995 GHz  Access Point: E8:4E:06:AD:14:0B
          Bit Rate=103.2 Mb/s   Tx-Power=3 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=55/70  Signal level=-55 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

So this particular adapter is not well instrumented in OpenWRT pre-dating its release. Do you want to take a week or month to identify a\nd backport missing pieces?

Ran some speed tests on this USB adapter on Openwrt 24.10.0-rc2.

*** NOTE: This mt7921au adapter supports htmode=HE80, htmode=HE40,
and htmode=HE20, but currently LUCI defaults to htmode=HE20. ***

Since LUCI offers no way to set htmode=HE80, in order to use the
wider channels (HE40, HE80), you must edit /etc/config/wireless yourself.

HE40, HE80 works on both 5g and 6g -- at least if I can believe what
Windows-11 is telling me.

That's the good news.

The bad news is that I haven't been able to achieve iperf3 speeds of
more than 120 MBits/sec, regardless of the setting of htmode.

This is true even when Windows-11 claims nominal speeds of 1.2GBits/sec
with HE80.

I'll have to try some non-iperf3 performance tests to see what the
problem is.

SoC is quite slow. 400-500 with flow offload may be achievable. wifi link speed is input+output+everybody within 100m radius, ie if you are very lucky you get half of that over the air.

The performance problem seems to have been with the AR750S: either
its CPU is slow or its USB is slow.

I installed this mt7921 USB adapter into my Netgear R7800 running
off-the-shelf Openwrt 23.05.5, and it WORKS!!

(Note that the package 'kmod-mt7921u' & its dependencies were also
included in my Netgear R7800 Openwrt build.)

Furthermore, I'm getting 308Mbps on 6GHz (AX HE80 mode) talking
to a similar adapter plugged into my Windows PC.

I plugged the adapter directly into the USB port on the R7800 -- i.e.,
no other adapters or cables -- so the R7800 must have a faster USB port
than the AR750S (as well as a faster CPU).

USB 2.0 is 480Mbps in+out which is roughly SoC forwarding capacity.

Neither the r7800 (with USB3), nor the AR750S (with USB2) will be able to drive a mt7921au USB3 WLAN card at full capacity, the SOCs simply aren't really up to it (in case of the AR750S not at all, apart from the USB2 sized elephant in the room). Obviously the r7800 is much faster than the AR750S, SOC and USB ports, but still not 'fast enough' for full speed.

700-800 MBit/s are realistic on x86_64/ USB3.

FWIW, I got 600Mbps/300Mbps on 80MHz ax on 5GHz on a late model iPad.

My Win11 laptop got 330Mbps on 80MHz ax on 5GHz.

When the wifi 7be routers are supported by Openwrt & become affordable,
I'm clearly going to have to upgrade.

This USB wifi adapter -- EP-AX1672 with mt7921u driver --
seems to have a bug in the power control portion of its AP driver.

Here's the problem: having a 5Ghz 80MHz wide ax AP starting
on channel 149 doesn't really work, because the power control
software powers the signal down to 3dbm, which is pretty far
down compared with the maximum allowable of 23dbm (or
greater in some countries).

Thus, an AP at 5GHz channel 149 won't show up on list of ac or
ax AP's for a device scanning for an AP to hook up to.

Note that setting the power to 'driver default' doesn't help (it
stays at 3dbm), nor does setting the power to 23dbm (it still
stays at 3dbm).

If I simply change the channel number to 36, everything works
fine; the power problem is with the higher numbered channels
like 149.

This power control bug renders channels 149+ essentially useless
for an AP, because a lot of devices can't see this 'very faint' AP.

Since most of the other 5GHz channels are also useless for an
AP due to DFS, this leaves the channels 36,40,44,48 incredibly
crowded.

Note that some older device that support ac but not ax will still
work with this USB adaptor (falling back from ax HE mode to ac
VHT mode), but this backwards compatibility works only if the
device can 'see' the AP in the first place.

It had already been reported here.

1 Like

FWIW, I've been testing this USB dongle with 5GHz 'ax' mode with
Openwrt 23.05.5, and it mostly works, except that every couple of
days this dongle stops working and I have to reboot the Netgear 7800
that it's attached to.

The obvious thing to try is the new Openwrt 24.10.0-rc4, but I didn't
want to upgrade to that SW until I was sure that 24.10.0-rc4 was
stable enough.

I also haven't yet gone through the log files to see if I could pinpoint
when this dongle stopped working.