aircrack-ng / rtl8812au

RTL8812AU/21AU and RTL8814AU driver with monitor mode and frame injection
GNU General Public License v2.0
3.55k stars 773 forks source link

[ASUS USB-AC68 / RTL8814AU] 3 Mbps connection speed #452

Closed slavafomin closed 3 years ago

slavafomin commented 5 years ago

Hello!

First of all I want to thank you for your effort and your hard work on this driver.

However, I've tried to use it for my newly bought ASUS USB-AC68 and I've got a terrible connection speed. The network, where I was testing it supported around 30 Mbps (on my built-in wireless adapter), but this adapter gave me only 2-3 Mbps.

I was hoping that you will be able to help me in resolving this issue.

$ cat /etc/issue
Ubuntu 18.04.3 LTS
$ uname -a
Linux interpid 5.0.0-32-generic #34~18.04.2-Ubuntu SMP Thu Oct 10 10:36:02 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
$ lsusb

Bus 003 Device 005: ID 0b05:1853 ASUSTek Computer, Inc.

When connecting the adapter via USB with driver already installed:

$ dmesg

[ +10,199574] usb 3-2: new high-speed USB device number 6 using xhci_hcd
[  +0,148407] usb 3-2: New USB device found, idVendor=0b05, idProduct=1853, bcdDevice= 0.00
[  +0,000004] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  +0,000003] usb 3-2: Product: 802.11ac NIC
[  +0,000002] usb 3-2: Manufacturer: Realtek
[  +0,000002] usb 3-2: SerialNumber: 123456
[  +0,036396] PKCS#7 signature not signed with a trusted key
[  +0,128377] usbcore: registered new interface driver rtl88xxau
[  +0,015077] rtl88xxau 3-2:1.0 wlx04d9f513015c: renamed from wlan0
[  +3,921847] ------------[ cut here ]------------
[  +0,000051] WARNING: CPU: 5 PID: 8949 at /build/linux-hwe-iAAoxd/linux-hwe-5.0.0/net/wireless/nl80211.c:15676 cfg80211_ch_switch_notify+0x113/0x120 [cfg80211]
[  +0,000001] Modules linked in: 88XXau(OE) xt_conntrack ipt_MASQUERADE nf_conntrack_netlink nfnetlink xfrm_user xfrm_algo xt_addrtype iptable_filter iptable_nat nf_nat_ipv4 nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c bpfilter br_netfilter bridge stp llc ccm aufs overlay nls_iso8859_1 snd_hda_codec_hdmi intel_rapl snd_hda_codec_realtek snd_hda_codec_generic x86_pkg_temp_thermal arc4 ledtrig_audio intel_powerclamp snd_hda_intel snd_hda_codec coretemp snd_hda_core iwldvm snd_hwdep uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 snd_pcm mac80211 kvm_intel videobuf2_common snd_seq_midi snd_seq_midi_event videodev intel_cstate snd_rawmidi joydev intel_rapl_perf asus_nb_wmi snd_seq media input_leds iwlwifi serio_raw asus_wmi snd_seq_device mxm_wmi sparse_keymap snd_timer wmi_bmof mei_me snd lpc_ich cfg80211 mei soundcore nvidia_uvm(POE) mac_hid asus_wireless sch_fq_codel parport_pc ppdev lp parport ip_tables x_tables autofs4 algif_skcipher af_alg dm_crypt
[  +0,000019]  hid_logitech_hidpp hid_logitech_dj hid_generic usbhid hid i915 nvidia_drm(POE) nvidia_modeset(POE) crct10dif_pclmul kvmgt vfio_mdev crc32_pclmul mdev vfio_iommu_type1 ghash_clmulni_intel nvidia(POE) vfio kvm aesni_intel irqbypass i2c_algo_bit drm_kms_helper aes_x86_64 syscopyarea sysfillrect crypto_simd sysimgblt cryptd fb_sys_fops glue_helper drm psmouse ahci alx ipmi_devintf libahci mdio ipmi_msghandler wmi video
[  +0,000013] CPU: 5 PID: 8949 Comm: RTW_CMD_THREAD Tainted: P           OE     5.0.0-32-generic #34~18.04.2-Ubuntu
[  +0,000001] Hardware name: ASUSTeK COMPUTER INC. N76VB/N76VB, BIOS N76VB.205 05/24/2013
[  +0,000013] RIP: 0010:cfg80211_ch_switch_notify+0x113/0x120 [cfg80211]
[  +0,000001] Code: e4 e9 49 ff ff ff 49 8b 84 24 f0 00 00 00 48 85 c0 74 0b 48 8b 13 48 89 50 68 eb 81 0f 0b 48 c7 c7 80 59 5c c1 e8 60 3c 78 d0 <0f> 0b e9 6c ff ff ff 66 0f 1f 44 00 00 0f 1f 44 00 00 55 48 89 e5
[  +0,000001] RSP: 0018:ffffbc78c3187db8 EFLAGS: 00010286
[  +0,000001] RAX: 0000000000000024 RBX: ffffbc78c3187df8 RCX: 0000000000000000
[  +0,000000] RDX: 0000000000000000 RSI: ffff96ce9ed56448 RDI: ffff96ce9ed56448
[  +0,000001] RBP: ffffbc78c3187de0 R08: 00000000000004a7 R09: 0000000000000004
[  +0,000000] R10: ffffbc78c3187e00 R11: 0000000000000001 R12: ffff96ce1b49f400
[  +0,000001] R13: 000000000000099e R14: ffff96cdfb246000 R15: ffff96ce99ecc000
[  +0,000001] FS:  0000000000000000(0000) GS:ffff96ce9ed40000(0000) knlGS:0000000000000000
[  +0,000001] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  +0,000000] CR2: 000055723ebb14c0 CR3: 00000003cec0e002 CR4: 00000000001606e0
[  +0,000001] Call Trace:
[  +0,000040]  rtw_cfg80211_ch_switch_notify+0xd4/0x123 [88XXau]
[  +0,000025]  rtw_chk_start_clnt_join+0x5c/0x90 [88XXau]
[  +0,000023]  join_cmd_hdl+0x26d/0x36e [88XXau]
[  +0,000014]  rtw_cmd_thread+0x191/0x3c1 [88XXau]
[  +0,000022]  ? rtw_chk_start_clnt_join+0x90/0x90 [88XXau]
[  +0,000003]  kthread+0x121/0x140
[  +0,000015]  ? rtw_stop_cmd_thread+0x3f/0x3f [88XXau]
[  +0,000002]  ? kthread_park+0xb0/0xb0
[  +0,000002]  ret_from_fork+0x35/0x40
[  +0,000001] ---[ end trace 2a995d9636bce2e9 ]---
[  +0,209707] IPv6: ADDRCONF(NETDEV_CHANGE): wlx04d9f513015c: link becomes ready
$ ifconfig -a

wlx04d9f513015c: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.23  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::8dea:628d:f54d:8aab  prefixlen 64  scopeid 0x20<link>
        ether 04:d9:f5:13:01:5c  txqueuelen 1000  (Ethernet)
        RX packets 96  bytes 16133 (16.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 44  bytes 6782 (6.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
$ sudo lshw -C network

*-network:0
       description: Wireless interface
       physical id: 1
       bus info: usb@3:2
       logical name: wlx04d9f513015c
       serial: 04:d9:f5:13:01:5c
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=rtl88xxau ip=192.168.1.23 multicast=yes wireless=IEEE 802.11bgn
$ modinfo rtl88xxau
modinfo: ERROR: Module rtl88xxau not found.

$ modinfo 88XXau
filename:       /lib/modules/5.0.0-32-generic/updates/dkms/88XXau.ko
version:        v5.6.4.1_33916.20190619
author:         Realtek Semiconductor Corp.
description:    Realtek Wireless Lan Driver
license:        GPL
srcversion:     2A3B9A5B0CDDED719F7A6F4
alias:          usb:v0846p9054d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v20F4p809Bd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v20F4p809Ad*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0106d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp8813d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pA833d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pA834d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v056Ep400Dd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v056Ep400Bd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0B05p1853d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0B05p1852d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0B05p1817d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p331Ad*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp8813d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p011Fd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0120d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0122d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p011Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v3823p6249d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDApA811d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v056Ep4007d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0411p029Bd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0846p9052d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2019pAB32d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0411p0242d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v056Ep400Fd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v056Ep400Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0E66p0023d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p3318d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p3314d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v04BBp0953d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pB611d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pA813d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pA812d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pA811d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp0823d*dc*dsc*dp*icFFiscFFipFFin*
alias:          usb:v0BDAp0820d*dc*dsc*dp*icFFiscFFipFFin*
alias:          usb:v0BDApA811d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp8822d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp0821d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp0811d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp881Ad*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2604p0012d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp8812d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v148Fp9097d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v050Dp1109d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0411p025Dd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v20F4p805Bd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0122d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p010Fd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p010Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0115d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p010Dd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0103d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2357p0101d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v13B1p003Fd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p3316d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p3315d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p3313d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p330Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0846p9051d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v07B8p8812d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2019pAB30d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v1740p0100d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v1058p0632d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p3313d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0586p3426d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0E66p0022d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0B05p17D2d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0409p0408d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0789p016Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v04BBp0952d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0DF6p0074d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v7392pA822d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v2001p330Ed*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v050Dp1106d*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp881Cd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp881Bd*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp881Ad*dc*dsc*dp*ic*isc*ip*in*
alias:          usb:v0BDAp8812d*dc*dsc*dp*ic*isc*ip*in*
depends:        cfg80211
retpoline:      Y
name:           88XXau
vermagic:       5.0.0-32-generic SMP mod_unload 
signat:         PKCS#7
signer:         
sig_key:        
sig_hashalgo:   md4
parm:           rtw_wireless_mode:int
parm:           rtw_ips_mode:The default IPS mode (int)
parm:           rtw_lps_level:The default LPS level (int)
parm:           rtw_lps_chk_by_tp:int
parm:           rtw_max_bss_cnt:int
parm:           rtw_usb_rxagg_mode:int
parm:           rtw_dynamic_agg_enable:int
parm:           rtw_tx_bw_mode:The max tx bw for 2.4G and 5G. format is the same as rtw_bw_mode (uint)
parm:           rtw_rx_ampdu_sz_limit_1ss:RX AMPDU size limit for 1SS link of each BW, 0xFF: no limitation (array of uint)
parm:           rtw_rx_ampdu_sz_limit_2ss:RX AMPDU size limit for 2SS link of each BW, 0xFF: no limitation (array of uint)
parm:           rtw_rx_ampdu_sz_limit_3ss:RX AMPDU size limit for 3SS link of each BW, 0xFF: no limitation (array of uint)
parm:           rtw_rx_ampdu_sz_limit_4ss:RX AMPDU size limit for 4SS link of each BW, 0xFF: no limitation (array of uint)
parm:           rtw_vht_enable:int
parm:           rtw_vht_rx_mcs_map:VHT RX MCS map (uint)
parm:           rtw_rf_config:int
parm:           rtw_country_code:The default country code (in alpha2) (charp)
parm:           rtw_channel_plan:The default chplan ID when rtw_alpha2 is not specified or valid (int)
parm:           rtw_excl_chs:exclusive channel array (array of uint)
parm:           rtw_qos_opt_enable:int
parm:           ifname:The default name to allocate for first interface (charp)
parm:           if2name:The default name to allocate for second interface (charp)
parm:           rtw_wowlan_sta_mix_mode:int
parm:           rtw_pwrtrim_enable:int
parm:           rtw_initmac:charp
parm:           rtw_special_rf_path:int
parm:           rtw_chip_version:int
parm:           rtw_rfintfs:int
parm:           rtw_lbkmode:int
parm:           rtw_network_mode:int
parm:           rtw_channel:int
parm:           rtw_mp_mode:int
parm:           rtw_wmm_enable:int
parm:           rtw_vrtl_carrier_sense:int
parm:           rtw_vcs_type:int
parm:           rtw_busy_thresh:int
parm:           rtw_ht_enable:int
parm:           rtw_bw_mode:int
parm:           rtw_ampdu_enable:int
parm:           rtw_rx_stbc:int
parm:           rtw_rx_ampdu_amsdu:int
parm:           rtw_tx_ampdu_amsdu:int
parm:           rtw_beamform_cap:int
parm:           rtw_lowrate_two_xmit:int
parm:           rtw_power_mgnt:int
parm:           rtw_smart_ps:int
parm:           rtw_low_power:int
parm:           rtw_wifi_spec:int
parm:           rtw_full_ch_in_p2p_handshake:int
parm:           rtw_antdiv_cfg:int
parm:           rtw_antdiv_type:int
parm:           rtw_drv_ant_band_switch:int
parm:           rtw_single_ant_path:int
parm:           rtw_switch_usb_mode:int
parm:           rtw_enusbss:int
parm:           rtw_hwpdn_mode:int
parm:           rtw_hwpwrp_detect:int
parm:           rtw_hw_wps_pbc:int
parm:           rtw_check_hw_status:int
parm:           rtw_max_roaming_times:The max roaming times to try (uint)
parm:           rtw_mc2u_disable:int
parm:           rtw_notch_filter:0:Disable, 1:Enable, 2:Enable only for P2P (uint)
parm:           rtw_hiq_filter:0:allow all, 1:allow special, 2:deny all (uint)
parm:           rtw_adaptivity_en:0:disable, 1:enable (uint)
parm:           rtw_adaptivity_mode:0:normal, 1:carrier sense (uint)
parm:           rtw_adaptivity_th_l2h_ini:th_l2h_ini for Adaptivity (int)
parm:           rtw_adaptivity_th_edcca_hl_diff:th_edcca_hl_diff for Adaptivity (int)
parm:           rtw_amplifier_type_2g:BIT3:2G ext-PA, BIT4:2G ext-LNA (uint)
parm:           rtw_amplifier_type_5g:BIT6:5G ext-PA, BIT7:5G ext-LNA (uint)
parm:           rtw_RFE_type:default init value:64 (uint)
parm:           rtw_powertracking_type:default init value:64 (uint)
parm:           rtw_GLNA_type:default init value:0 (uint)
parm:           rtw_TxBBSwing_2G:default init value:0xFF (uint)
parm:           rtw_TxBBSwing_5G:default init value:0xFF (uint)
parm:           rtw_OffEfuseMask:default open Efuse Mask value:0 (uint)
parm:           rtw_FileMaskEfuse:default drv Mask Efuse value:0 (uint)
parm:           rtw_rxgain_offset_2g:default RF Gain 2G Offset value:0 (uint)
parm:           rtw_rxgain_offset_5gl:default RF Gain 5GL Offset value:0 (uint)
parm:           rtw_rxgain_offset_5gh:uint
parm:           rtw_rxgain_offset_5gm:default RF Gain 5GM Offset value:0 (uint)
parm:           rtw_pll_ref_clk_sel:force pll_ref_clk_sel, 0xF:use autoload value (uint)
parm:           rtw_tx_pwr_by_rate:0:Disable, 1:Enable, 2: Depend on efuse (int)
parm:           rtw_tx_pwr_lmt_enable:0:Disable, 1:Enable, 2: Depend on efuse (int)
parm:           rtw_target_tx_pwr_2g_a:2.4G target tx power (unit:dBm) of RF path A for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_2g_b:2.4G target tx power (unit:dBm) of RF path B for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_2g_c:2.4G target tx power (unit:dBm) of RF path C for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_2g_d:2.4G target tx power (unit:dBm) of RF path D for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_5g_a:5G target tx power (unit:dBm) of RF path A for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_5g_b:5G target tx power (unit:dBm) of RF path B for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_5g_c:5G target tx power (unit:dBm) of RF path C for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_target_tx_pwr_5g_d:5G target tx power (unit:dBm) of RF path D for each rate section, should match the real calibrate power, -1: undefined (array of int)
parm:           rtw_tsf_update_pause_factor:num of bcn intervals to stay TSF update pause status (int)
parm:           rtw_tsf_update_restore_factor:num of bcn intervals to stay TSF update restore status (int)
parm:           rtw_en_napi:int
parm:           rtw_en_gro:int
parm:           rtw_iqk_fw_offload:int
parm:           rtw_ch_switch_offload:int

I've tried to use v5.1.5 branch as was suggested in some issues, but it didn't help.

I would be glad to provide more relevant information. Any help will be highly appreciated!

kimocoder commented 5 years ago

@slavafomin

v5.1.5 and v5.6.4.1 is basicly the same on the 8814au. the HAL is from v5.1.5 on that chipset, old and buggy. however, a new PR was just merged to fix the speed issues..

source https://github.com/aircrack-ng/rtl8812au/pull/454

could you do a git pull / build / install / restart and test again + report back?

slavafomin commented 5 years ago

@kimocoder oh, that's great to hear. I will try to do this on first occasion and will report back, thanks!

cedricbambooza commented 3 years ago

there's also a new package here https://github.com/aircrack-ng/rtl8814au

cedricbambooza commented 3 years ago

pls consider closing the issue, when it's solved by now :)

slavafomin commented 3 years ago

Thanks! I'm not using the adapter at the moment, so I won't be able to provide any more details on this. I think we can close the issue now.