USB-WiFi
USB-WiFi copied to clipboard
(Hot) Reports on adapters that use the new MT7921au chipset go here
I will update the report below as testing continues.
Updated: 2022-09-17
Tested USB WiFi Adapter: COMFAST CF-951AX
2022-09-17 - Info: The Comfast CF-953AX and CF-951AX support Bluetooth (BT)
Test 1: Managed (client) mode 5 GHz band AC 80 MHz channel width Channel 60 (DFS - clear air) AMD64 CPU kernel 6.0 rc3 Distance: 8 meters, 2 wood and sheet rock walls
$ iperf3 -c 192.168.1.1
Connecting to host 192.168.1.1, port 5201
local 192.168.1.185 connected to 192.168.1.1
Interval Transfer Bitrate Retr Cwnd
0.00-1.00 sec 72.2 MBytes 605 Mbits/sec 0 1.83 MBytes
1.00-2.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
2.00-3.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
3.00-4.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
4.00-5.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
5.00-6.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
6.00-7.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
7.00-8.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
8.00-9.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
9.00-10.00 sec 77.5 MBytes 650 Mbits/sec 0 1.83 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
Bitrate 646 Mbits/sec
Retr 0
Thoughts: I have repeated this test several times. The results are fast and consistent with no drops. The mt7921au chipset and mt7921u driver can push some data in managed mode. I'm now using the adapter in managed mode for normal operations with my main dev box. So far performance is very fast and snappy. I have also tested on congested channels. The performance is very good but reduced as expected. The mt7921au chipset and mt7921u driver appear to be in very good shape in managed mode. I will be testing range over the next few days. My results so far tend to indicate a medium range. It is definitely better than short (same room, line of sight) range performance but I doubt this specific adapter can be called a long range adapter. I have not been able to test AX in managed mode so far, only AC and N.
Test 2: Master (AP) mode 5 GHz AC 80 MHz channel width Channel 36 - very congested air ARM CPU (ZyXEL NBG6817) kernel 5.10 (the OpenWRT devs backported the driver) OpenWRT 22.03
0.00-1.00 sec 29.0 MBytes 244 Mbits/sec 0 1.05 MBytes
1.00-2.00 sec 33.8 MBytes 283 Mbits/sec 0 1.18 MBytes
2.00-3.00 sec 26.2 MBytes 220 Mbits/sec 0 1.24 MBytes
3.00-4.00 sec 28.8 MBytes 241 Mbits/sec 0 1.24 MBytes
4.00-5.00 sec 32.5 MBytes 273 Mbits/sec 0 1.39 MBytes
5.00-6.00 sec 30.0 MBytes 252 Mbits/sec 0 1.39 MBytes
6.00-7.00 sec 32.5 MBytes 273 Mbits/sec 0 1.45 MBytes
7.00-8.00 sec 35.0 MBytes 294 Mbits/sec 0 1.45 MBytes
8.00-9.00 sec 28.8 MBytes 241 Mbits/sec 0 1.53 MBytes
9.00-10.00 sec 30.0 MBytes 252 Mbits/sec 0 1.53 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
Bitrate 257 Mbits/sec
Retr 0
2022-09-12 - Thoughts: Tested with OpenWRT. OpenWRT is WiFi 6 ready (but not WiFi 6e) and has the mt7921au driver available. AX and WPA3 work well. Tested with 2 clients. The above iperf3 data shows pretty good performance for the situation given that the channel is very heavily congested. OpenWRT is not fully ready for 6 GHz band (6e) operation yet unless you want to configure via the command line with ssh. Luci is just not there yet. I was able to configure AX and 6 GHz channel 77 by hand and all indications are that it was working. The problem is that I have no other devices that support 6 GHz channel yet so testing will happen when able. DFS Channels in the 5 GHz band do not appear to be supported yet. I really hope that this support is added. Bottom line: This CF-951AX adapter is working well with my main wifi router that runs OpenWRT 22.03. I think a better choice between the 2 adapters that are currently available would be the CF-953AX as it has antennas that should provide longer range. I am anxiously awaiting an Alfa long range adapter to be the permanent solution.
One major problem has been noted and it has slowed testing greatly. This adapter has refused to work with USB3 extension cables. I have several that are known to work well but this adapter will not work with them. I can only get the adapter to work if it is plugged directly into an onboard USB port. I have tried on 3 separate systems and it held true for all. It is not clear if this is an issue with this specific adapter or if it is a problem with all CF-951AX adapters. If you have this adapter, please test with your USB3 extension cables and report.
This CF-951AX adapter is wide. If plugged directly into a RasPi port, the side port will not be usable. The fix I have been using on adapters that are too fat or too wide and block ports is to use the following Right Angle Extension Adapters. This adapter is working with these short adapters:
https://www.amazon.com/dp/B07S6B5X76
Additional note on OpenWRT 22.03:
OpenWRT 22.03 has the mt7921u available for installation. The firmware is also available but it is currently part of the package that installs the mt7921e driver so you either have to additionally install that driver or manually install the firmware. A bug has been submitted to change the location of the firmware to a common file.
Overall observations so far:
The good:
- WPA3 works well with Managed and AP modes.
- The CF-951AX is a single state adapter. This is really good.
- AP mode works well in the 2.4 GHz and 5 GHz bands.
- AX works well in AP mode with the 2.4 GHz band and the 5 GHz band.
- Managed mode in 2.4 and 5 GHz AC are solid and fast.
- Monitor mode and packet injection appeared to work well in very limited testing.
The bad:
- No 5 GHz DFS channel support (is this going to be added?)
- No LED support. LED is not coming on as expected. (will this be added?)
- The CF-951AX does not have long range but it is a small adapter. More testing is needed.
Other:
- 6 GHz channel support in AP mode does appear to work with OpenWRT but I haven't been able to test. Manual setup is required as Luci does not do 6 GHz yet.
Recommendation: I cannot recommend purchase of the Comfast CF-951AX at this time. We need more reports regarding whether the adapter will work with extension cables. With the exception of nano adapters, my opinion is that USB WiFi adapters must work well with extension cables in order to locate them for best performance. We shall see what others have to say as more testing is reported.
Additional note regarding the mt7921u driver: It is not finished. Many capabilities are in place and work well.
The following are currently supported:
managed AP AP/VLAN monitor
The following are not yet supported but are expected to be supported:
IBSS mesh point P2P-client P2P-GO
Nick
I have images
iw phy >> https://pastebin.com/raw/gBCkBBji
for STA test, AP has an AX200, for AP test, STA has an AX200 (Yes, I have AX200's 5GHz AX AP mode working)
--
6GHz AP needs manual edit on /etc/config/wireless
You might also need to edit regdb or just set it to a country with 6GHz enabled. Please respect regulations and don't use it as daily if it isn't allowed, for a little testing, its up to you.
I cant verify 6GHz AP existence, all I know is that hostapd was able to bring it up
its kind of funny looking when you have a vertical usb port https://i.imgur.com/FWim664.jpg
Any idea if the mt7921u would be backportable to older kernels? I have an odroid-c4 board which runs under a dedicated coreelec distro for kodi, and unfortunately it's bound to the amlogic bsp kernel because of unsupported (for now anyway, work is ongoing in linux-meson) video decoders. Right now it's on 4.9, but it will get 5.4 soonish.
Hi @ishioni
Any idea if the mt7921u would be backportable to older kernels?
It already has been backported to kernel 5.10:
https://github.com/openwrt/mt76
That repo is maintained by the OpenWRT devs, some of which are also Linux Kernel WiFi devs. It was backported for the very soon to be released OpenWRT 22.03 which uses kernel 5.10. The repo above is a downstream of the main Linux repo.
I would prefer to be working on the in-kernel drivers instead of the Realtek drivers and I could do that if I someone would volunteer to take over some of the current work that I do around here.
luci is offset by 190 in real channel, jow on irc said its iwinfo and thats right.
this is just visual anyway.
I hope someone else can test and show if the 6GHz actually exists and seen by other devices. I only have one 6GHz capable device (this one) so I can't do that.
@ayyyuki1
6GHz AP needs manual edit on /etc/config/wireless
What is the required edit?
What is the required edit?
make sure first that you dont see "no IR" on the channel you want to use, on your iw phy, Band 4
ofcourse you can edit regdb or move to another country, I'm not telling you to commit a crime though.
basically
option band '6g'
option channel '77'
then # wifi
@ayyyuki1
basically
option band '6g' option channel '77'
I'm on 22.03 rc6 with a CF-951AX and this is not working. Luci won't show the 6g band. Which version of OpenWRT are you using?
I'm on 22.03 rc6 with a CF-951AX and this is not working. Luci won't show the 6g band. Which version of OpenWRT are you using?
im on master but, it should work in rc6 show me
iw phy phyX channels
@ayyyuki1
make sure first that you dont see "no IR"
I am seeing 'no IR' on all 6g band channels. That is a reg thing. I'm trying to think about what to do but I am less familiar with the internals of OpenWRT than I am with some other platforms. Any guidance?
@ayyyuki1
make sure first that you dont see "no IR"
I am seeing 'no IR' on all 6g band channels. That is a reg thing. I'm trying to think about what to do but I am less familiar with the internals of OpenWRT than I am with some other platforms. Any guidance?
maybe its time for you to fly to DE/ES/FR many such countries :wink:
once youve flown to one
either
# iw reg set FR
or edit radio config again and
option country 'FR'
then
# wifi
if you still have any issues, feel free to post the output of logread | grep hostapd
My trip to FR went well. Pleasant flight. Now the 'no IR' is gone. Now I need to come up with a way to test. The lack of 6g channel capability is a hindrance. Thanks for the push.
My trip to FR went well. Pleasant flight. Now the 'no IR' is gone. Now I need to come up with a way to test. The lack of 6g channel capability is a hindrance. Thanks for the push.
yeah it seems no Inflight Rockets on your current country.
Managed to bring up your AP from FR?
-- Some observations as for some tests I did just now, it seems 6GHz is pure SAE only
Sat Sep 3 00:38:57 2022 daemon.err hostapd: Management frame protection is required in 6 GHz
sae-mixed, 802.11w optional
Sat Sep 3 00:49:47 2022 daemon.err hostapd: Invalid AKM suite for 6 GHz
sae-mixed with 802.11w (required) still no go
thats some nice rules hey, and this is fine, WPA3-SAE predates 6GHz anyway
Managed to bring up your AP from FR?
Not yet but seem to be making progress. Your comment about sae only seemed to have helped.
Right now my problem is that I have several others things going and I can't concentrate on this. It may have to wait for a couple of days.
ill help you out tomorrow, you might need to build wpad/hostapd with 11ax support, if you can build your own image then this is easy. to avoid technicalities you just build your openwrt sysupgrade with kmod-iwlwifi as that enables driver_config_11ax_support. yes it is not enabled for wifi 5 aps with openwrt. I have built hostapd with this support for armv7l (part of wpad openssl full) but ifcourse, i recommend you to build your own image. i hope you know on how to use the imagebuilder or have the time to learn how to use it. im currently mobile so excuse the bad formatting.
@ayyyuki1
I appreciate the help. All indications are that it is working now. The problem is that I need to find a way to test as I currently do not have anything that supports the 6g band. It may be sometimes next week before I can find a way to test.
I went to the OpenWRT site and was checking with WiFi 6 and 6e routers are supported. The light came on for me. There are a few WiFi 6 routers supported but zero 6e at this point. Luci needs some serious work.
Nice!, and yep, I do have the same problem too since this is my only 6GHz capable device heh. (cant do iperf3 tests with just one) Well, I bought this anyway for monitor and its real good for that, headache free just like AR9271, and yup, 6GHz.
Has anyone been able to get 6ghz meshpoints working with CF-951AX/CF-953AX? What speeds can you obtain?
Has anyone been able to get 6ghz meshpoints working with CF-951AX/CF-953AX? What speeds can you obtain?
no IBSS / 802.11s support yet, so the best you can do is AP+WDS and client+WDS. you can still do some "mesh" via batman but it won't be "mesh" like 802.11s+OLSR
I'm unable to get the CF-953AX to come up in AP mode in OpenWrt 22.03 on a Raspberry Pi 4B. In Luci it says "Device is not active" & "wireless is not associated". I installed the mt7921e and mt7921u drivers.
logread below @ AX 80Mhz channel width. Changing to AX 40Mhz does not resolve the issue, Changing to AC does not resolve the issue.
Sat Sep 17 02:26:02 2022 daemon.notice netifd: radio1 (2203): Failed to create interface wlan0 Sat Sep 17 02:26:02 2022 daemon.notice hostapd: Configuration file: /var/run/hostapd-phy0.conf (phy wlan0) --> new PHY Sat Sep 17 02:26:02 2022 kern.info kernel: [ 313.216398] br-lan: port 2(wlan0) entered blocking state Sat Sep 17 02:26:02 2022 kern.info kernel: [ 313.224484] br-lan: port 2(wlan0) entered disabled state Sat Sep 17 02:26:02 2022 kern.info kernel: [ 313.232448] device wlan0 entered promiscuous mode Sat Sep 17 02:26:02 2022 daemon.err hostapd: Driver does not support configured HT capability [LDPC] Sat Sep 17 02:26:02 2022 daemon.notice hostapd: wlan0: interface state UNINITIALIZED->DISABLED Sat Sep 17 02:26:02 2022 daemon.notice hostapd: wlan0: AP-DISABLED Sat Sep 17 02:26:02 2022 daemon.err hostapd: wlan0: Unable to setup interface. Sat Sep 17 02:26:02 2022 daemon.notice hostapd: nl80211: deinit ifname=wlan0 disabled_11b_rates=0 Sat Sep 17 02:26:03 2022 kern.info kernel: [ 313.282783] device wlan0 left promiscuous mode Sat Sep 17 02:26:03 2022 kern.info kernel: [ 313.291243] br-lan: port 2(wlan0) entered disabled state Sat Sep 17 02:26:03 2022 daemon.err hostapd: rmdir[ctrl_interface=/var/run/hostapd]: Permission denied Sat Sep 17 02:26:03 2022 daemon.notice hostapd: wlan0: CTRL-EVENT-TERMINATING Sat Sep 17 02:26:03 2022 daemon.err hostapd: hostapd_free_hapd_data: Interface wlan0 wasn't started Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): Command failed: ubus call hostapd config_add {"iface":"wlan0", "config":"/var/run/hostapd-phy0.conf"} (Invalid argument) Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): Usage: ubus [
] [arguments...] Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): Options: Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): -s : Set the unix domain socket to connect to Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): -t : Set the timeout (in seconds) for a command to complete Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): -S: Use simplified output (for scripts) Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): -v: More verbose output Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): -m : (for monitor): include a specific message type Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): (can be used more than once) Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): -M <r|t> (for monitor): only capture received or transmitted traffic Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): Commands: Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): - list [ ] List objects Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): - call [ ] Call an object method Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): - subscribe [ ...] Subscribe to object(s) notifications Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): - listen [ ...] Listen for events Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): - send [ ] Send an event Sat Sep 17 02:26:03 2022 daemon.notice netifd: radio1 (2203): - wait_for
Sat Sep 17 02:26:02 2022 daemon.err hostapd: Driver does not support configured HT capability [LDPC]
You may have to manually get rid of [LDPC}
.
Awesome, thanks. No resolution after adding "option ldpc '0'" to /etc/config/wireless although I did progress further in the error chain per the below log. I had to add the following values to /etc/config/wireless.
option ldpc '0' option tx_stbc '0' option rx_stbc '0' option max_amsdu '0'
Sat Sep 17 04:19:58 2022 daemon.notice hostapd: Configuration file: /var/run/hostapd-phy0.conf (phy wlan0) --> new PHY Sat Sep 17 04:19:58 2022 kern.info kernel: [ 7148.408661] br-lan: port 2(wlan0) entered blocking state Sat Sep 17 04:19:58 2022 kern.info kernel: [ 7148.415223] br-lan: port 2(wlan0) entered disabled state Sat Sep 17 04:19:58 2022 daemon.err hostapd: Configured VHT capability [VHT_CAP_MAX_MPDU_LENGTH_MASK] exceeds max value supported by the driver (2 > 0) Sat Sep 17 04:19:58 2022 daemon.notice hostapd: wlan0: interface state UNINITIALIZED->DISABLED Sat Sep 17 04:19:58 2022 daemon.notice hostapd: wlan0: AP-DISABLED Sat Sep 17 04:19:58 2022 daemon.err hostapd: wlan0: Unable to setup interface. Sat Sep 17 04:19:58 2022 daemon.notice hostapd: nl80211: deinit ifname=wlan0 disabled_11b_rates=0 Sat Sep 17 04:19:58 2022 kern.info kernel: [ 7148.421884] device wlan0 entered promiscuous mode Sat Sep 17 04:19:58 2022 kern.info kernel: [ 7148.501709] device wlan0 left promiscuous mode Sat Sep 17 04:19:58 2022 kern.info kernel: [ 7148.508436] br-lan: port 2(wlan0) entered disabled state Sat Sep 17 04:19:58 2022 daemon.err hostapd: rmdir[ctrl_interface=/var/run/hostapd]: Permission denied Sat Sep 17 04:19:58 2022 daemon.notice hostapd: wlan0: CTRL-EVENT-TERMINATING Sat Sep 17 04:19:58 2022 daemon.err hostapd: hostapd_free_hapd_data: Interface wlan0 wasn't started
That is interesting. I've only tested AP mode with OpenWRT on my ZyXEL NBG6817 wifi router, All I did was load the packages for mt7921e and mt7921u and configure the new interface with Luci. It just worked. Now, that is for WiFi 6. To get it to do WiFi 6e I had to mod /etc/config/wireless as Luci is not ready for 6e yet (22.03).
I'm not an expert on the internals of OpenWRT. Now, hostapd by itself, I can hold my own.
Have you had a chance to test it with a CF-953AX yet or just the CF-951AX? (they should respond similar... right?) I have a CF-951AX here and can test it this weekend. Yeah, usually Luci handles it fine for me when using mt drivers,
(stupid question) How do you get your hostapd settings to persist through a restart in OpenWrt? Is everything done through uci?
Have you had a chance to test it with a CF-953AX yet or just the CF-951AX?
I only have a 951AX.
usually Luci handles it fine for me when using mt drivers
Luci handles WiFi 6 (AX) fine here with the 951AX. They problem comes in with the 6 GHz band. Luci is not yet upgraded to handle it. Luci can do WiFi 6 but not WiFi 6e. I'm sure it will happen but it is not there yet.
How do you get your hostapd settings to persist through a restart in OpenWrt?
No clue.
Remember that there is some good 6 GHz setup info back up this thread. Note the need to set security to sae
as 6 GHz doesn't do mixed or WPA2 or anything else, only WPA3.
Tested it this morning with a fresh 22.03 system image & the 951AX produced identical errors on the Pi. I'll move this over to another thread.. Thx for the heads up re: 6e WPA3.
For the record, CF-953AX:
@dhewg
The cover is easy to remove on my CF-951AX, not that I need to remove. Since the 953 have the external antennas, I'm curious as to your thoughts on the range?
My opinion of the range of the 951 is that it is shorter than I expected. I'm not saying it is really bad but a little shorter than I expected... however, I've been using Alfa adapters for a long time so my experience may not be typical.
I haven't yet tested it on 6g, just 5g as I'm still waiting for another 6g card to connect to it :) And at least on the 5g band it's not yet stable for me, even with the latest and greatest driver using OpenWrt: https://github.com/openwrt/mt76/issues/711
So no judgement yet, but hopefully soon.
I did open it to see if I can connect external antennas once that thing is stable. But as you can see, the current ones are soldered. The pads aren't too small to solder, so I might just do that to increase the range even more, but we'll see...
Finally got around to solder antenna connectors to it:
With that I get these rates on close range:
Sweet! A few rooms/walls away I get better reception than with 5g using my ipq40xx router
Cool. Have you tried a fresh install with OpenWRT 22.03.3? Maybe the stability thing is history. I have a CF-951AX stuffed into the USB3 port on my Zyxel wifi router running 22.02.3 and it appears to be very stable. The devs finally took the firmware out of the mt7921e driver and gave it it's own package so all you have to these days is install the mt7921u package. No 6 GHz support in Luci yet but there is progress.