# Poor wireless performance on RTL8188CE

## tel0s

Hi all,

I've been battling with my wireless for quite some number of weeks now, as it's very strange in behaviour.

Generally, when connecting to standard home AP's it works flawlessly, however when connecting to AP's used at my place of work, various things can happen with seemingly no pattern which might indicate a cause:

- Sometimes wont connect at all, and keeps presenting me with the password entry dialogue

- More often than not it connects flawlessly, then after a short period of time (ranging from minutes to a couple of hours) either remains connected but stops responding/slows to a halt

- random disconnects

- Poor network throughput to a point where it's unuseable.

- connects, but says "successfully connected to network (None)" - sometimes functionally, sometimes not.

I'm using NetworkManager, with the rtl8192ce driver.

I've read the following posts which indicated a few possible problems with my configuration: 

https://forums.gentoo.org/viewtopic-t-955672-highlight-rtl8188ce.html

https://forums.gentoo.org/viewtopic-t-939394-highlight-rtl8188ce.html

From my debugging I've attempted today, I've made some headway. until this morning I was unable to use iwlist to scan for networks, however, I determined that this was caused by a kernel misconfiguration as I did not have the wext compatibility layer for cfg80211 enabled. This allowed me to scan manually and identify networks. I've no idea what allowed NetworkManager to scan for them before this point.

Furthermore, I've modified my udev rules such that NetworkManager is now starting wpa_supplicant with nl80211 as a driver, rather than the default of wext.

The changes I've made dont seem to have had any effect on my connectivity problems whatsoever.

My colleagues using Linux are having the same problems  (Gentoo,Gentoo, and Debian respectively), however windows devices are unaffected. (all devices are using the same wireless chipset)

Again, the issues only seem to arise on networks which have multiple AP's per SSID.

Any ideas? It's imperative I get this fixed.

lspci -v

```
03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter (rev 01)

   Subsystem: Realtek Semiconductor Co., Ltd. Device 8195

   Flags: bus master, fast devsel, latency 0, IRQ 17

   I/O ports at 4000 [size=256]

   Memory at f4900000 (64-bit, non-prefetchable) [size=16K]

   Capabilities: [40] Power Management version 3

   Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+

   Capabilities: [70] Express Endpoint, MSI 00

   Capabilities: [100] Advanced Error Reporting

   Capabilities: [140] Virtual Channel

   Capabilities: [160] Device Serial Number 01-91-81-fe-ff-4c-e0-00

   Kernel driver in use: rtl8192ce

```

uname -a 

```
Linux Relentless 3.8.2 #12 SMP PREEMPT Wed May 8 10:38:09 BST 2013 x86_64 Intel(R) Core(TM) i7-3610QM CPU @ 2.30GHz GenuineIntel GNU/Linux 
```

relevant dmesg output:

```
[ 1103.222433] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready

[ 1103.573454] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready

[ 1108.641935] wlan0: authenticate with 3c:ce:73:f6:00:78

[ 1108.650707] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1108.660933] wlan0: send auth to 3c:ce:73:f6:00:78 (try 1/3)

[ 1108.664829] wlan0: authenticated

[ 1108.665450] wlan0: associate with 3c:ce:73:f6:00:78 (try 1/3)

[ 1108.671250] wlan0: RX AssocResp from 3c:ce:73:f6:00:78 (capab=0x431 status=0 aid=22)

[ 1108.671425] wlan0: associated

[ 1108.671441] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready

[ 1130.440534] wlan0: authenticate with 3c:ce:73:c4:d6:98

[ 1130.440542] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1130.450760] wlan0: direct probe to 3c:ce:73:c4:d6:98 (try 1/3)

[ 1130.651169] wlan0: direct probe to 3c:ce:73:c4:d6:98 (try 2/3)

[ 1130.851993] wlan0: direct probe to 3c:ce:73:c4:d6:98 (try 3/3)

[ 1131.052941] wlan0: authentication with 3c:ce:73:c4:d6:98 timed out

[ 1131.712408] wlan0: authenticate with c8:f9:f9:29:ba:b8

[ 1131.721884] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1131.732112] wlan0: direct probe to c8:f9:f9:29:ba:b8 (try 1/3)

[ 1131.932479] wlan0: direct probe to c8:f9:f9:29:ba:b8 (try 2/3)

[ 1132.133379] wlan0: direct probe to c8:f9:f9:29:ba:b8 (try 3/3)

[ 1132.334232] wlan0: authentication with c8:f9:f9:29:ba:b8 timed out

[ 1132.994081] wlan0: authenticate with c8:f9:f9:29:c1:08

[ 1133.003229] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1133.013457] wlan0: send auth to c8:f9:f9:29:c1:08 (try 1/3)

[ 1133.017649] wlan0: authenticated

[ 1133.017894] wlan0: associate with c8:f9:f9:29:c1:08 (try 1/3)

[ 1133.218811] wlan0: associate with c8:f9:f9:29:c1:08 (try 2/3)

[ 1133.419726] wlan0: associate with c8:f9:f9:29:c1:08 (try 3/3)

[ 1133.620618] wlan0: association with c8:f9:f9:29:c1:08 timed out

[ 1133.941740] wlan0: authenticate with 3c:ce:73:94:38:98

[ 1133.950726] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1133.960953] wlan0: send auth to 3c:ce:73:94:38:98 (try 1/3)

[ 1134.161357] wlan0: send auth to 3c:ce:73:94:38:98 (try 2/3)

[ 1134.170509] wlan0: authenticated

[ 1134.171391] wlan0: associate with 3c:ce:73:94:38:98 (try 1/3)

[ 1134.372188] wlan0: associate with 3c:ce:73:94:38:98 (try 2/3)

[ 1134.573114] wlan0: associate with 3c:ce:73:94:38:98 (try 3/3)

[ 1134.774013] wlan0: association with 3c:ce:73:94:38:98 timed out

[ 1135.024965] wlan0: authenticate with 3c:ce:73:c6:c8:68

[ 1135.034197] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1135.044414] wlan0: direct probe to 3c:ce:73:c6:c8:68 (try 1/3)

[ 1135.244740] wlan0: direct probe to 3c:ce:73:c6:c8:68 (try 2/3)

[ 1135.445637] wlan0: direct probe to 3c:ce:73:c6:c8:68 (try 3/3)

[ 1135.646603] wlan0: authentication with 3c:ce:73:c6:c8:68 timed out

[ 1135.897201] wlan0: authenticate with 3c:ce:73:c7:41:f8

[ 1135.906686] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1135.916915] wlan0: send auth to 3c:ce:73:c7:41:f8 (try 1/3)

[ 1135.921267] wlan0: authenticated

[ 1135.922414] wlan0: associate with 3c:ce:73:c7:41:f8 (try 1/3)

[ 1135.928569] wlan0: RX AssocResp from 3c:ce:73:c7:41:f8 (capab=0x431 status=0 aid=113)

[ 1135.928723] wlan0: associated

[ 1175.101647] wlan0: authenticate with c8:f9:f9:29:bf:08

[ 1175.101656] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1175.111886] wlan0: direct probe to c8:f9:f9:29:bf:08 (try 1/3)

[ 1175.312225] wlan0: direct probe to c8:f9:f9:29:bf:08 (try 2/3)

[ 1175.513086] wlan0: direct probe to c8:f9:f9:29:bf:08 (try 3/3)

[ 1175.714045] wlan0: authentication with c8:f9:f9:29:bf:08 timed out

[ 1176.303575] wlan0: authenticate with 3c:ce:73:c7:41:f8

[ 1176.313005] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1176.323229] wlan0: direct probe to 3c:ce:73:c7:41:f8 (try 1/3)

[ 1176.523597] wlan0: direct probe to 3c:ce:73:c7:41:f8 (try 2/3)

[ 1176.724495] wlan0: direct probe to 3c:ce:73:c7:41:f8 (try 3/3)

[ 1176.925398] wlan0: authentication with 3c:ce:73:c7:41:f8 timed out

[ 1177.514947] wlan0: authenticate with 3c:ce:73:c7:b0:d8

[ 1177.524343] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1177.534571] wlan0: send auth to 3c:ce:73:c7:b0:d8 (try 1/3)

[ 1177.539900] wlan0: authenticated

[ 1177.540076] wlan0: associate with 3c:ce:73:c7:b0:d8 (try 1/3)

[ 1177.544444] wlan0: RX AssocResp from 3c:ce:73:c7:b0:d8 (capab=0x431 status=0 aid=22)

[ 1177.544588] wlan0: associated

[ 1280.834276] wlan0: deauthenticating from 3c:ce:73:c7:b0:d8 by local choice (reason=3)

[ 1281.449675] wlan0: authenticate with 70:aa:b2:45:4d:e1

[ 1281.459079] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1281.459173] wlan0: direct probe to 70:aa:b2:45:4d:e1 (try 1/3)

[ 1281.659704] wlan0: send auth to 70:aa:b2:45:4d:e1 (try 2/3)

[ 1281.680452] wlan0: authenticated

[ 1281.680636] rtl8192ce 0000:03:00.0 wlan0: disabling HT as WMM/QoS is not supported by the AP

[ 1281.680643] rtl8192ce 0000:03:00.0 wlan0: disabling VHT as WMM/QoS is not supported by the AP

[ 1281.681659] wlan0: associate with 70:aa:b2:45:4d:e1 (try 1/3)

[ 1281.690239] wlan0: RX AssocResp from 70:aa:b2:45:4d:e1 (capab=0x431 status=0 aid=1)

[ 1281.690370] wlan0: associated

[ 1311.716479] wlan0: deauthenticating from 70:aa:b2:45:4d:e1 by local choice (reason=3)

[ 1322.858568] wlan0: authenticate with 70:aa:b2:45:4d:e1

[ 1322.867833] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1322.867926] wlan0: send auth to 70:aa:b2:45:4d:e1 (try 1/3)

[ 1322.874704] wlan0: authenticated

[ 1322.874890] rtl8192ce 0000:03:00.0 wlan0: disabling HT as WMM/QoS is not supported by the AP

[ 1322.874894] rtl8192ce 0000:03:00.0 wlan0: disabling VHT as WMM/QoS is not supported by the AP

[ 1322.875581] wlan0: associate with 70:aa:b2:45:4d:e1 (try 1/3)

[ 1322.913473] wlan0: RX AssocResp from 70:aa:b2:45:4d:e1 (capab=0x431 status=0 aid=1)

[ 1322.913632] wlan0: associated

[ 1352.929332] wlan0: deauthenticating from 70:aa:b2:45:4d:e1 by local choice (reason=3)

[ 1357.594787] wlan0: authenticate with c8:f9:f9:29:bf:08

[ 1357.603984] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1357.614209] wlan0: direct probe to c8:f9:f9:29:bf:08 (try 1/3)

[ 1357.814610] wlan0: direct probe to c8:f9:f9:29:bf:08 (try 2/3)

[ 1358.015480] wlan0: direct probe to c8:f9:f9:29:bf:08 (try 3/3)

[ 1358.216404] wlan0: authentication with c8:f9:f9:29:bf:08 timed out

[ 1358.696029] wlan0: authenticate with c8:f9:f9:29:ba:b8

[ 1358.696039] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1358.706277] wlan0: send auth to c8:f9:f9:29:ba:b8 (try 1/3)

[ 1358.710628] wlan0: authenticated

[ 1358.711188] wlan0: associate with c8:f9:f9:29:ba:b8 (try 1/3)

[ 1358.714802] wlan0: RX AssocResp from c8:f9:f9:29:ba:b8 (capab=0x431 status=0 aid=22)

[ 1358.714960] wlan0: associated

[ 1362.552263] wlan0: deauthenticating from c8:f9:f9:29:ba:b8 by local choice (reason=3)

[ 1363.054677] wlan0: authenticate with 70:aa:b2:45:4d:e1

[ 1363.054687] wlan0: capabilities/regulatory prevented using AP HT/VHT configuration, downgraded

[ 1363.064918] wlan0: send auth to 70:aa:b2:45:4d:e1 (try 1/3)

[ 1363.069163] wlan0: authenticated

[ 1363.069295] rtl8192ce 0000:03:00.0 wlan0: disabling HT as WMM/QoS is not supported by the AP

[ 1363.069298] rtl8192ce 0000:03:00.0 wlan0: disabling VHT as WMM/QoS is not supported by the AP

[ 1363.069902] wlan0: associate with 70:aa:b2:45:4d:e1 (try 1/3)

[ 1363.076869] wlan0: RX AssocResp from 70:aa:b2:45:4d:e1 (capab=0x431 status=0 aid=1)

[ 1363.077005] wlan0: associated

```

----------

## khayyam

 *tel0s wrote:*   

> Again, the issues only seem to arise on networks which have multiple AP's per SSID. Any ideas? It's imperative I get this fixed.

 

tel0s ... so this is WDS? If so the AP's will have different BSSID's and no doubt different signal strengths dependent on where the sta is in relation to the AP's, so you may be getting disassoc due to a failure to select the best signal. You might try selecting via BSSID:

```
network={

    ssid="APAPAP"

    bssid=3C:CE:73:F6:00:78 

    scan_freq=2422 # channel 3

    scan_ssid=0

    proto=RSN

    auth_alg=OPEN

    key_mgmt=WPA-PSK

    group=TKIP CCMP

    pairwise=TKIP CCMP

    psk=foo

}
```

Its also possible to have wpa_supplicant not scan using ap_scan=2 but not all drivers will work as expected.

best ... khay

----------

## tel0s

 *khayyam wrote:*   

>  *tel0s wrote:*   Again, the issues only seem to arise on networks which have multiple AP's per SSID. Any ideas? It's imperative I get this fixed. 
> 
> tel0s ... so this is WDS? If so the AP's will have different BSSID's and no doubt different signal strengths dependent on where the sta is in relation to the AP's, so you may be getting disassoc due to a failure to select the best signal. You might try selecting via BSSID:
> 
> ```
> ...

 

Thanks khay,

I tried what you suggested, initially I had issues with networkmanager overwriting any changes I made to wpa_supplicant.conf, however I used nm-applet to modify it via NM, and it seemed to  connect to the specified AP. 

For a few minutes, things looked more responsive and much better, however the connection issues continued after a little while. I think it's still bouncing between APs, is there a way i can verify this?  ifconfig doesnt seem to tell me what AP I'm currently authenticated with.

----------

## khayyam

tel0s ...

sorry, I completely missed you were using NetworkManager ... can't help ITR.

best ... khay

----------

## consus

```
$ cat /etc/modprobe.d/rtl8192ce.conf 

# Disable powersaving

options rtl8192ce ips=0

# WARNING! Do not enable this shit.

#          It causes bugs.

options rtl8192ce fwlps=0

# Use software control instead

options rtl8192ce swlps=1

```

Same shit, different driver. You can try something similar.

----------

## Drasica

I'm having extremely similar issues--my RTL8188CE device connects fine to many networks, but not to my work network (which has multiple APS). However, I have been able to connect to some of the multi-AP networks at my university so multi-AP is not a pure indicator. I also get presented the password entry dialog multiple times, and get connected to (None). Sometimes I actually do manage to get connected to the network I intend to (and assigned an IP/DNS), but as soon as anything tries to actually use the network (i.e. ping) it disconnects. 

When I look at message, I consistently get a "Deauthenticating by local choice (reason=3)" error.

If you have made any headway, please let me know! It has been extremely frustrating to have to boot up into windows to use the network in certain locations.

Note: this is on 3.8.13. I e-mailed the linux-wireless list who suggested I use backports (formerly known as wireless-compat). Using backports, my driver code went up to 3.11-r3 (and even a recent snapshot), but neither showed improvement.Last edited by Drasica on Tue Aug 13, 2013 12:42 am; edited 1 time in total

----------

## 666threesixes666

my rtl 8187L is doing this too...  i got around it by getting a wna 1100 ath9k_htc for 5 bucks.  (found by this list)

http://linux-wless.passys.nl/query_chipset.php?chipset=Atheros

possibly disable QoS support for your device in kernel & change channels.

(arch people have problems with this too...  https://bbs.archlinux.org/viewtopic.php?id=77844 & https://bugs.archlinux.org/task/10815)

----------

