morrownr / USB-WiFi

USB WiFi Adapter Information for Linux
2.6k stars 172 forks source link

Range of ALFA AWUS036ACM vs. EDUP EP-AX1672 in AP mode? #500

Closed bdantas closed 1 week ago

bdantas commented 1 week ago

Hi Nick. Now that several of my wireless clients support AC1200, I think I'm finally ready to upgrade my AP from ALFA AWUS036ACHM (AC600) to an adapter that supports AC1200.

Between ALFA AWUS036ACM and EDUP EP-AX1672, is there one that has better range in AP mode? In your "The Short List" page, both are listed as having "long" range.

I have no intention of upgrading my home to 802.11ax, so for me the best adapter among those that support AC1200 and have in-kernel driver is simply the one with best range.

bdantas commented 1 week ago

If you don't know off the top of your head, no worries. I got both and will do some tests. For creating an 802.11ac AP do you personally prefer one of these over the other for some reason?

morrownr commented 1 week ago

@bdantas

I'm currently using my EDUP EP-AX1672 in AP mode doing some testing and I've used the Alfa ACM a lot in AP mode over the last few years. While I have not done a head to head battle with those two adapters in AP mode, it seems to me that they are basically equal as far as range goes. Both seem to be well made so it is basically a flip of the coin in my mind. I consider both to be very good adapters to use with Linux.

bdantas commented 1 week ago

@morrownr

Thank your for sharing your thoughts. Good to know they are both very good to use with Linux. Because of my great experience with ALFA adapters over the years, I decided to try the AWUS036ACM first.

I have not had a chance to compare the AWUS036ACM with the EP-AX1672. However, I did compare the AWUS036ACM (my upgrade) to the AWUS036ACHM (my battle-tested baseline).

Before I share my results, just some context for our readers: I live on three-floor house. Wireless router with AP is on floor 2, in a room roughly in the center of the house.

Now for the results. Drumroll, please... I'm happy to report that when operating at 5 GHz to create a 802.11ac AP, I cannot detect a significant difference in range between my new AWUS036ACM and my trusty AWUS036ACHM: In most places on floors 1 and 3, both adapters give me -55 to -60 dBm signal strength. If I go to the very periphery of floors 1 and 3, signal drops to -65 to -70 dBm with both (not great, but I still have a reliable connection).

The only difference I can detect between AWUS036ACM vs. AWUS036ACHM is the speed. In areas of the house with strong signal (better than -60 dBm), maximum download speed for clients connected to the AWUS036ACHM is around 140 Mbps. Maximum download speed for clients connected to the AWUS036ACM is 220 Mbps.

For no detectable difference in range or signal strength, I'm very happy with my AWUS036ACHM -> AWUS036ACM upgrade!

bdantas commented 1 week ago

@morrownr - Thanks to your github page, the download speed of my home's wifi clients has steadily gone up over the years--all while using the same ISP and largely the same hardware (except for the USB adapter being used to create the AP). Here is the download speed of the wifi clients in my home over the years:

I learned a ton and had a lot of fun in the process. I can't thank you enough. I wish I could buy you a beer or some gear to help you with testing and keeping your github page awesome.

bdantas commented 1 week ago

Ok, so I tried using the AX1672 so that I could compare its range to that of AWUS036ACM.

The firmware files are available but the device is not working:

$ dmesg | grep mt7921
[   13.461146] usbcore: registered new interface driver mt7921u
[   13.461411] mt7921u 4-2:1.0: HW/SW Version: 0x8a108a10, Build Time: 20240826150948a
[   14.486609] mt7921u 4-2:1.0: Failed to send patch
[   17.603804] mt7921u 4-2:1.0: Message 00000010 (seq 4) timeout
[   17.603812] mt7921u 4-2:1.0: Failed to release patch semaphore
[   20.803868] mt7921u 4-2:1.0: Message 00000010 (seq 5) timeout
[   20.803879] mt7921u 4-2:1.0: Failed to get patch semaphore
[   24.003881] mt7921u 4-2:1.0: Message 00000010 (seq 6) timeout
[   24.003896] mt7921u 4-2:1.0: Failed to get patch semaphore
[   27.203875] mt7921u 4-2:1.0: Message 00000010 (seq 7) timeout
[   27.203889] mt7921u 4-2:1.0: Failed to get patch semaphore
[   30.403883] mt7921u 4-2:1.0: Message 00000010 (seq 8) timeout
[   30.403893] mt7921u 4-2:1.0: Failed to get patch semaphore
[   33.603866] mt7921u 4-2:1.0: Message 00000010 (seq 9) timeout
[   33.603876] mt7921u 4-2:1.0: Failed to get patch semaphore
[   36.807141] mt7921u 4-2:1.0: Message 00000010 (seq 10) timeout
[   36.807155] mt7921u 4-2:1.0: Failed to get patch semaphore
[   40.003867] mt7921u 4-2:1.0: Message 00000010 (seq 11) timeout
[   40.003876] mt7921u 4-2:1.0: Failed to get patch semaphore
[   43.203868] mt7921u 4-2:1.0: Message 00000010 (seq 12) timeout
[   43.203883] mt7921u 4-2:1.0: Failed to get patch semaphore

$ ls /lib/firmware/mediatek/
WIFI_MT7961_patch_mcu_1_2_hdr.bin  mt7662u.bin
WIFI_RAM_CODE_MT7961_1.bin         mt7662u_rom_patch.bin
mt7610u.bin

Any ideas how to make it work?

P.S. I already tried # echo 0e8d 7961 >/sys/bus/usb/drivers/mt7921u/new_id but that didn't help. I'm using linux kernel 6.6.8. If there is no easy fix, no big deal because the AWUS036ACM is working great.

bdantas commented 1 week ago

The EDUP AX1672 proved to not be plug-and-play despite driver and firmware being present on my machine. I gave up and am returning it.

The AWUS036ACM's range is comparable to that of AWUS036ACHM and that's good enough for me :)

I'm serious about wanting to make a donation. Please let me know if this is possible. Cheers!

bjlockie commented 1 week ago

The EDUP AX1672 proved to not be plug-and-play despite driver and firmware being present on my machine.

It in on my openwrt.

bdantas commented 6 days ago

@bjlockie - That's strange. Now I want to investigate further. Will post here if I figure out what the problem was.

bjlockie commented 6 days ago

Maybe the kernel version. i use openwrt. Kernel 6.6.47

You might try to add the usbid to the module parameter if it is that.

bdantas commented 6 days ago

@bjlockie - Thanks for the tips. I'm on Tiny Core Linux 15 (x86_64 port) with kernel 6.6.8, so kernel version probably not the culprit. Relevant kernel module and firmware files are present. I'm puzzled.

I'm getting my hands on another adapter with mt7921au chipset later this week. Will let you know how it goes. I'll keep the usbid module parameter in mind.

P.S. If I have problems with the new adapter, I'll open a new issue. I have drifted far enough off-topic.

bdantas commented 5 days ago

@bjlockie @morrownr - I figured it out. The same usb adapter (I used Netgear A8000 for the tests) doesn't work on my laptop (ThinkPad X230) but works on my wife's slightly more modern laptop (Sony Vaio SVE15124CXP). Both laptops are using same OS, same linux version, same driver version, same firmware version. The main differences are the age of the laptop/USB3 port and the BIOS.

I have two theories:

  1. The USB3 port on the X230 ThinkPad is not of a recent enough version (3.0 vs. 3.1 vs. 3.2) and/or generation to support the mt7921au chipset
  2. Her laptop uses the stock Sony UEFI. My laptop uses coreboot with SeaBIOS. Maybe coreboot/SeaBIOS is missing something in how it handles USB3.