Recenzja: karta WiFi TP-LINK Archer T4U

Spis treści

Ilość punktów dostępowych w paśmie 2,4 GHz rośnie bardzo szybko. Obecnie spora część użytkowników laptopów czy smartfonów zdolnych łączyć się bezprzewodowo korzysta z ruterów WiFi w swoim domowym zaciszu. W przypadku zatłoczonych blokowisk i innych większych skupisk ludzkich, transfer w paśmie 2,4 GHz może nie być za duży. By rozwiązać ten problem, wprowadzono urządzenia nadające w paśmie 5 GHz. Są one nieco droższe, bo i technologia jest nieco nowsza. Niemnie jednak, pasmo 5 GHz idealnie nadaje się do zastosowań miejskich. Chodzi generalnie o mniejszy zasięg punktu dostępowego, a co z tym się wiąże, mniejszą ilością zakłóceń, które osłabiają transfer w sieci bezprzewodowej. Sporo routerów WiFi ma już zaimplementowane dwa radia, po jednym dla każdego z w/w pasm i przydałoby się powoli postarać o zakup karty/adaptera pracującego w standardzie AC. Tak się składa, że mam na składzie dwuzakresowy adapter Archer T4U (czip Realtek RTL8812AU), który został mi sprezentowany przez firmę TP-LINK. Postaram go zatem opisać w tym artykule.

Zawartość opakowania

Pudełko jest trochę duże ale adapter Archer T4U również do najmniejszych nie należy. Poniżej znajduje się kilka fotek przedstawiających samo opakowanie jak i wszystkie jego elementy składowe.

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

karta-adapter-TP-LINK-Archer-T4U-linux

Jak widzimy, port USB tej karty jest niebieski, czyli jest to standard USB 3.0 . Karta ma wbudowany przycisk WPS, a zielona dioda sygnalizuje stan urządzenia (włączone, transfer danych). Do zestawu jest także dołączony dobrej jakości kabel USB 3.0 (przedłużka). Zabrakło tej karcie jedynie zewnętrznej anteny.

Sterowniki do Archer T4U

W kernelu linux'a 4.5 nie ma póki co odpowiedniego modułu, który by zapewniał wsparcie dla adaptera Archer T4U. Trzeba zatem ręcznie skompilować sobie moduł, by móc z tej karty korzystać po linux'em. Proces kompilacji modułu 8812au dla Archer T4U został opisany w osobnym artykule.

Parametry adaptera Archer T4U

Zakładając, że mamy już skompilowany moduł, to po podłączeniu adaptera do portu USB powinien on zostać rozpoznany przez system pod idVendor=2357 oraz idProduct=0101 :

kernel: usb 2-1.3: new high-speed USB device number 10 using ehci-pci
kernel: usb 2-1.3: New USB device found, idVendor=2357, idProduct=0101
kernel: usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
kernel: usb 2-1.3: Product: 802.11n NIC
kernel: usb 2-1.3: Manufacturer: Realtek
kernel: usb 2-1.3: SerialNumber: 123456
systemd-udevd[457]: Network interface NamePolicy= disabled on kernel command line, ignoring.
mtp-probe[15674]: checking bus 2, device 10: "/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3"
mtp-probe[15674]: bus: 2, device: 10 was not an MTP device
systemd[1]: Starting Load/Save RF Kill Switch Status...
kernel: usbcore: registered new interface driver rtl8812au
kernel: rtl8812au 2-1.3:1.0 wlan2: renamed from wlan1
systemd[1]: Started Load/Save RF Kill Switch Status.
kernel: brcmsmac bcma0:1: wl0: brcms_c_d11hdrs_mac80211:  txop exceeded phylen 153/256 dur 1730/1504
kernel: usb 2-1.3: USB disconnect, device number 10
systemd[1]: Starting Load/Save RF Kill Switch Status...
systemd[1]: Started Load/Save RF Kill Switch Status.

Poniżej jest trochę informacji na temat samego adaptera:

# lsusb -v -d 2357:0101

Bus 002 Device 013: ID 2357:0101
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x2357
  idProduct          0x0101
  bcdDevice            0.00
  iManufacturer           1 Realtek
  iProduct                2 802.11n NIC
  iSerial                 3 123456
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           53
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           5
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 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     0x02  EP 2 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     0x03  EP 3 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     0x04  EP 4 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     0x85  EP 5 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0002
  (Bus Powered)
  Remote Wakeup Enabled

# iw list
Wiphy phy3
        max # scan SSIDs: 9
        max scan IEs length: 2304 bytes
        Retry short limit: 7
        Retry long limit: 4
        Coverage class: 0 (up to 0m)
        Supported Ciphers:
                * WEP40 (00-0f-ac:1)
                * WEP104 (00-0f-ac:5)
                * TKIP (00-0f-ac:2)
                * CCMP (00-0f-ac:4)
        Available Antennas: TX 0 RX 0
        Supported interface modes:
                 * IBSS
                 * managed
                 * AP
                 * monitor
                 * P2P-client
                 * P2P-GO
        Band 1:
                Bitrates (non-HT):
                        * 1.0 Mbps
                        * 2.0 Mbps
                        * 5.5 Mbps
                        * 11.0 Mbps
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
                Frequencies:
                        * 2412 MHz [1] (20.0 dBm)
                        * 2417 MHz [2] (20.0 dBm)
                        * 2422 MHz [3] (20.0 dBm)
                        * 2427 MHz [4] (20.0 dBm)
                        * 2432 MHz [5] (20.0 dBm)
                        * 2437 MHz [6] (20.0 dBm)
                        * 2442 MHz [7] (20.0 dBm)
                        * 2447 MHz [8] (20.0 dBm)
                        * 2452 MHz [9] (20.0 dBm)
                        * 2457 MHz [10] (20.0 dBm)
                        * 2462 MHz [11] (20.0 dBm)
                        * 2467 MHz [12] (20.0 dBm)
                        * 2472 MHz [13] (20.0 dBm)
                        * 2484 MHz [14] (disabled)
        Band 2:
                Bitrates (non-HT):
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
                Frequencies:
                        * 5170 MHz [34] (disabled)
                        * 5180 MHz [36] (20.0 dBm)
                        * 5190 MHz [38] (20.0 dBm)
                        * 5200 MHz [40] (20.0 dBm)
                        * 5210 MHz [42] (20.0 dBm)
                        * 5220 MHz [44] (20.0 dBm)
                        * 5230 MHz [46] (20.0 dBm)
                        * 5240 MHz [48] (20.0 dBm)
                        * 5260 MHz [52] (20.0 dBm) (radar detection)
                          DFS state: usable (for 136 sec)
                          DFS CAC time: 60000 ms
                        * 5280 MHz [56] (20.0 dBm) (radar detection)
                          DFS state: usable (for 136 sec)
                          DFS CAC time: 60000 ms
                        * 5300 MHz [60] (20.0 dBm) (radar detection)
                          DFS state: usable (for 136 sec)
                          DFS CAC time: 60000 ms
                        * 5320 MHz [64] (20.0 dBm) (radar detection)
                          DFS state: usable (for 136 sec)
                          DFS CAC time: 60000 ms
                        * 5500 MHz [100] (disabled)
                        * 5520 MHz [104] (disabled)
                        * 5540 MHz [108] (disabled)
                        * 5560 MHz [112] (disabled)
                        * 5580 MHz [116] (disabled)
                        * 5600 MHz [120] (disabled)
                        * 5620 MHz [124] (disabled)
                        * 5640 MHz [128] (disabled)
                        * 5660 MHz [132] (disabled)
                        * 5680 MHz [136] (disabled)
                        * 5700 MHz [140] (disabled)
                        * 5745 MHz [149] (disabled)
                        * 5765 MHz [153] (disabled)
                        * 5785 MHz [157] (disabled)
                        * 5805 MHz [161] (disabled)
                        * 5825 MHz [165] (disabled)
                        * 5920 MHz [184] (disabled)
                        * 5940 MHz [188] (disabled)
                        * 5960 MHz [192] (disabled)
                        * 5980 MHz [196] (disabled)
                        * 6000 MHz [200] (disabled)
                        * 6020 MHz [204] (disabled)
                        * 6040 MHz [208] (disabled)
                        * 6060 MHz [212] (disabled)
                        * 6080 MHz [216] (disabled)
        Supported commands:
                 * new_interface
                 * set_interface
                 * new_key
                 * start_ap
                 * new_station
                 * set_bss
                 * join_ibss
                 * set_pmksa
                 * del_pmksa
                 * flush_pmksa
                 * remain_on_channel
                 * frame
                 * set_channel
                 * connect
                 * disconnect
        Supported TX frame types:
                 * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        Supported RX frame types:
                 * IBSS: 0xd0
                 * managed: 0x40 0xd0
                 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * P2P-client: 0x40 0xd0
                 * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
        software interface modes (can always be added):
                 * monitor
        interface combinations are not supported
        Device supports scan flush.

Wsparcie dla modułu 8812au , który obsługuję tę kartę, jest średnie ale ten Archer T4U działa raczej bez większych problemów. Jedyny mankament to tryb oszczędzania energii, który jest implementowany masowo w kartach WiFi. Jeśli obserwujemy wysoki ping w stanie spoczynku karty, oznacza to, że ten tryb powinien zostać wyłączony.

Konfiguracja karty Archer T4U na linux'ie

Generalnie rzecz biorąc, jeśli udało nam się skompilować moduł, to karta powinna działać po podaniu jej odpowiednich parametrów sieci WiFi. W różnych dystrybucjach linux'a używa się innych narzędzi do konfiguracji połączenia bezprzewodowego. Proces konfiguracji połączenia WiFi pod debianem został opisany w osobnym artykule. W tym podlinkowanym wpisie zostało to pokazane na przykładzie narzędzi zawartych w pakietach wpasupplicant oraz ifupdown .

Podsumowanie

Jako, że moduł do adaptera Archer T4U nie znajduje się w kernelu, to radziłbym unikać tej karty w przypadku, gdy zamierzamy używać jej głównie pod linux'em. Działa ona po samodzielnym skompilowaniu modułu, z tym, żę obsługa tego adaptera nie jest bezproblemowa. Weźmy przykładowo skanowanie pasma w poszukiwaniu innych sieci, które są w naszym zasięgu. Pod debianem mamy do tego celu kilka narzędzi, np. wpa_cli , wavemon i linssid . Poniżej są wyniki zwracane przez te aplikacje:

tp-link-archer-t4u-adapter-wifi-wavemon

tp-link-archer-t4u-adapter-wifi-linssid

tp-link-archer-t4u-adapter-wifi-wpa-cli

Widzimy wyraźnie, że nie ma co się opierać na tych wynikach. System zwyczajnie nie jest w stanie oszacować jakości sygnału. Ta z kolei jest stała i nie ulega zmianie. Jak dla mnie, to za wcześnie jest na tę kartę i lepiej dobrać jakąś sprawdzoną konstrukcję opartą o czipy firmy QUALCOMM ATHEROS, bo te akurat mają odpowiednie moduły w kernelu i działają bez zarzutu po linux'em.

Mikhail Morfikov avatar
Mikhail Morfikov
Po ponad 10 latach spędzonych z różnej maści linux'ami (Debian/Ubuntu, OpenWRT, Android) mogę śmiało powiedzieć, że nie ma rzeczy niemożliwych i problemów, których nie da się rozwiązać. Jedną umiejętność, którą ludzki umysł musi posiąść, by wybrnąć nawet z tej najbardziej nieprzyjemniej sytuacji, to zdolność logicznego rozumowania.