morrownr / USB-WiFi

USB WiFi Adapter Information for Linux
2.64k stars 175 forks source link

COMFAST CF-952AX v2: available, Realtek based, works with 8852bu.ko #402

Open patrakov opened 6 months ago

patrakov commented 6 months ago

I have ordered a COMFAST CF-953AX card, but the seller shipped the wrong item: COMFAST CF-952AX v2. I am going to return it in the next hour (EDIT: already returned). Before I do so, here is some information.

lsusb:

Bus 003 Device 060: ID 3574:6121 Realtek 802.11ac WLAN Adapter
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 [unknown]
  bDeviceSubClass         0 [unknown]
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x3574 Realtek
  idProduct          0x6121 802.11ac WLAN Adapter
  bcdDevice            0.00
  iManufacturer           1 Realtek
  iProduct                2 802.11ac WLAN Adapter
  iSerial                 3 00e04c000001
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x004a
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           8
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              2 802.11ac WLAN Adapter
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x05  EP 5 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x06  EP 6 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x07  EP 7 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x09  EP 9 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x0a  EP 10 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x0b  EP 11 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x0c  EP 12 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 [unknown]
  bDeviceSubClass         0 [unknown]
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0001
  Self Powered

The card initially presents itself as a storage device but then gets switched to the network card mode. It works on Arch Linux with the driver from https://github.com/morrownr/rtl8852bu for a few minutes but then produces this message:

rtl8852bu 3-4:1.0: Runtime PM usage count underflow!

iperf3 test in a bad place (the card shows -76 dBm, the router says -69 dBm):

Connected to ee:9f:80:d4:9e:c6 (on wlp0s20u3)
    SSID: SGP
    freq: 5745.0
    RX: 490066262 bytes (179598 packets)
    TX: 343791219 bytes (255289 packets)
    signal: -76 dBm
    rx bitrate: 576.4 MBit/s 80MHz HE-MCS 5 HE-NSS 2 HE-GI 0 HE-DCM 0
    tx bitrate: 648.5 MBit/s 80MHz HE-MCS 6 HE-NSS 2 HE-GI 0 HE-DCM 0
[aep@aep-haswell ~]$ iperf3 -c 192.168.10.1 -p 9999
Connecting to host 192.168.10.1, port 9999
[  5] local 192.168.12.161 port 58778 connected to 192.168.10.1 port 9999
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  34.6 MBytes   290 Mbits/sec    4    305 KBytes       
[  5]   1.00-2.00   sec  32.2 MBytes   270 Mbits/sec    0    375 KBytes       
[  5]   2.00-3.00   sec  31.9 MBytes   267 Mbits/sec    1    313 KBytes       
[  5]   3.00-4.00   sec  33.5 MBytes   281 Mbits/sec    0    385 KBytes       
[  5]   4.00-5.00   sec  35.0 MBytes   294 Mbits/sec    0    452 KBytes       
[  5]   5.00-6.00   sec  32.2 MBytes   271 Mbits/sec    1    366 KBytes       
[  5]   6.00-7.00   sec  31.0 MBytes   260 Mbits/sec    1    324 KBytes       
[  5]   7.00-8.00   sec  31.8 MBytes   266 Mbits/sec    6    127 KBytes       
[  5]   8.00-9.00   sec  25.1 MBytes   211 Mbits/sec    4    143 KBytes       
[  5]   9.00-10.00  sec  29.8 MBytes   249 Mbits/sec    1    218 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   317 MBytes   266 Mbits/sec   18             sender
[  5]   0.00-10.01  sec   314 MBytes   264 Mbits/sec                  receiver

iperf Done.
[aep@aep-haswell ~]$ iperf3 -c 192.168.10.1 -p 9999 -R
Connecting to host 192.168.10.1, port 9999
Reverse mode, remote host 192.168.10.1 is sending
[  5] local 192.168.12.161 port 38920 connected to 192.168.10.1 port 9999
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  43.5 MBytes   365 Mbits/sec                  
[  5]   1.00-2.00   sec  48.1 MBytes   403 Mbits/sec                  
[  5]   2.00-3.00   sec  41.0 MBytes   344 Mbits/sec                  
[  5]   3.00-4.00   sec  48.5 MBytes   407 Mbits/sec                  
[  5]   4.00-5.00   sec  36.6 MBytes   307 Mbits/sec                  
[  5]   5.00-6.00   sec  43.2 MBytes   363 Mbits/sec                  
[  5]   6.00-7.00   sec  44.9 MBytes   376 Mbits/sec                  
[  5]   7.00-8.00   sec  40.8 MBytes   342 Mbits/sec                  
[  5]   8.00-9.00   sec  44.2 MBytes   371 Mbits/sec                  
[  5]   9.00-10.00  sec  40.1 MBytes   337 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   434 MBytes   364 Mbits/sec    0             sender
[  5]   0.00-10.00  sec   431 MBytes   362 Mbits/sec                  receiver

iperf Done.

iperf3 test using ALFA Network AWUS036AXML in approximately the same location, for comparison (the card shows -69 dBm, the router says -77 dBm):

[aep@aep-haswell ~]$ iperf3 -c 192.168.10.1 -p 9999
Connecting to host 192.168.10.1, port 9999
[  5] local 192.168.12.244 port 40150 connected to 192.168.10.1 port 9999
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  11.6 MBytes  97.4 Mbits/sec    0    513 KBytes       
[  5]   1.00-2.00   sec  13.0 MBytes   109 Mbits/sec    0   1017 KBytes       
[  5]   2.00-3.00   sec  12.4 MBytes   104 Mbits/sec    0   1.21 MBytes       
[  5]   3.00-4.00   sec  12.5 MBytes   105 Mbits/sec    0   1.35 MBytes       
[  5]   4.00-5.00   sec  13.1 MBytes   110 Mbits/sec    0   1.50 MBytes       
[  5]   5.00-6.00   sec  11.1 MBytes  93.2 Mbits/sec    0   1.50 MBytes       
[  5]   6.00-7.00   sec  14.5 MBytes   122 Mbits/sec    0   1.65 MBytes       
[  5]   7.00-8.00   sec  20.8 MBytes   174 Mbits/sec    0   1.84 MBytes       
[  5]   8.00-9.00   sec  19.4 MBytes   163 Mbits/sec    0   1.84 MBytes       
[  5]   9.00-10.00  sec  19.4 MBytes   162 Mbits/sec    0   1.94 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   148 MBytes   124 Mbits/sec    0             sender
[  5]   0.00-10.02  sec   146 MBytes   122 Mbits/sec                  receiver

iperf Done.
[aep@aep-haswell ~]$ iperf3 -c 192.168.10.1 -p 9999 -R
Connecting to host 192.168.10.1, port 9999
Reverse mode, remote host 192.168.10.1 is sending
[  5] local 192.168.12.244 port 40498 connected to 192.168.10.1 port 9999
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-1.00   sec  26.2 MBytes   220 Mbits/sec                  
[  5]   1.00-2.00   sec  27.6 MBytes   232 Mbits/sec                  
[  5]   2.00-3.00   sec  28.4 MBytes   238 Mbits/sec                  
[  5]   3.00-4.00   sec  28.5 MBytes   239 Mbits/sec                  
[  5]   4.00-5.00   sec  28.2 MBytes   237 Mbits/sec                  
[  5]   5.00-6.00   sec  28.1 MBytes   236 Mbits/sec                  
[  5]   6.00-7.00   sec  28.5 MBytes   239 Mbits/sec                  
[  5]   7.00-8.00   sec  28.9 MBytes   242 Mbits/sec                  
[  5]   8.00-9.00   sec  28.9 MBytes   242 Mbits/sec                  
[  5]   9.00-10.00  sec  28.9 MBytes   242 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.01  sec   286 MBytes   240 Mbits/sec    0             sender
[  5]   0.00-10.00  sec   282 MBytes   237 Mbits/sec                  receiver

iperf Done.

This again confirms my negative recommendation against the bulkier but slower ALFA Network AWUS036AXML.

morrownr commented 6 months ago

Thanks for the heads up. This is exactly why I have not added the CF-952 to the Plug and Play List. That model number has been confusing since the beginning.

fakemanhk commented 6 months ago

Seller confuses this with CF953AX easily, actually this happened also when I ordered my CF953AX, CF952AX arrived instead.