Wireless Chipset and Driver Review : Realtek - ConnectBox/connectbox-pi GitHub Wiki

This page details the selection process for Realtek USB Wifi devices for the ConnectBox.

We will consider chipsets that meet the following criteria:

  1. Drivers in the current linux kernel (including the staging tree). We want to avoid building and maintaining drivers
  2. 802.11n support (not draft-n)
  3. 2T2R (2x2:2) MIMO
  4. USB form factor
  5. Driver supporting AP (Master mode)

tldr; chipsets support by the rtl8192cu driver meet these criteria

1. Driver support in the current kernel

Note: The driver and chipset generally share the same name.


~/linux-4.12-rc1 $ find . -name "*rtl*" -type d
./drivers/net/wireless/realtek/rtl818x
./drivers/net/wireless/realtek/rtl818x/rtl8180
./drivers/net/wireless/realtek/rtl818x/rtl8187
./drivers/net/wireless/realtek/rtl8xxxu
./drivers/net/wireless/realtek/rtlwifi
./drivers/net/wireless/realtek/rtlwifi/rtl8188ee
./drivers/net/wireless/realtek/rtlwifi/rtl8192c
./drivers/net/wireless/realtek/rtlwifi/rtl8192ce
./drivers/net/wireless/realtek/rtlwifi/rtl8192cu
./drivers/net/wireless/realtek/rtlwifi/rtl8192de
./drivers/net/wireless/realtek/rtlwifi/rtl8192ee
./drivers/net/wireless/realtek/rtlwifi/rtl8192se
./drivers/net/wireless/realtek/rtlwifi/rtl8723ae
./drivers/net/wireless/realtek/rtlwifi/rtl8723be
./drivers/net/wireless/realtek/rtlwifi/rtl8723com
./drivers/net/wireless/realtek/rtlwifi/rtl8821ae
./drivers/staging/rtl8188eu
./drivers/staging/rtl8192e
./drivers/staging/rtl8192e/rtl8192e
./drivers/staging/rtl8192u
./drivers/staging/rtl8712
./drivers/staging/rtl8723bs

Using info mostly from WikiDevi and Linux Wireless:

2/3/4. 802.11n, 2T2R MIMO, USB form factor

Kernel Drivers (Main Tree)

  • rtl8180: b only. Exclude
  • rtl8187: bg only. Exclude
  • rtl8xxxu. General driver, supporting many chipsets. Candidate
  • rtl8188ee: bgn. 1x1:1. Exclude
  • rtl8192c: (a family rather than specific chipset). Exclude.
  • rtl8192ce: bgn. 2x2:2. PCIe. Exclude
  • rtl8192cu: bgn. 2x2:2. USB. Candidate
  • rtl8192de: abgn. 2x2:2. PCIe. Exclude
  • rtl8192ee: bgn. 2x2:2. PCIe. Exclude
  • rtl8192se: bgn. 2x2:2. PCIe. Exclude
  • rtl8723ae: bgn. 1x1:1. Exclude.
  • rtl8723be: bgn. 1x1:1. Exclude
  • rtl8723com: (no devices. 1x1:1 anyway). Exclude
  • rtl8821ae: abgn. 1x1:1. Exclude.

Kernel Drivers (Staging Tree)

  • rtl8188eu: bgn. 1x1:1. Exclude
  • rtl8192e: bgn: 1x2:2. PCIe. Exclude
  • rtl8192u: bgn (draft n): 1x2:2. Exclude
  • rtl8712 aka RTL8192SU. bgn. 2x2:2. USB. Candidate
  • rtl8723bs: bgn. 1x1:1. Exclude.

5. Driver supports AP mode

Using some info from WikiDevi 802.11 driver page

rtl8712 (rtl8192su)

AP mode is unsupported

rtl8192cu

"rtl8192cu is a USB driver for RTL8192CU/RTL8188CU devices. It's going to be replaced by rtl8xxxu"

This driver is due to be replaced

It supports AP mode (established by testing)

rtl8xxxu

Does not appear to support AP mode (per [Jes Sorensen’s Nov 2016 preso](https://www.linuxplumbersconf.org/2016/ocw/system/presentations/4089/original/2016-11-02-rtl8xxxu-presentation.pdf and commits since the preso in Torvalds tree