Using RTL8812 Wi-Fi Adapter with Raspberry Pi
Connecting a Raspberry Pi to the WiFi network is easy for adapters that are supported by the Raspbian. Support for some adapters is not included, however and additional steps might be required to make them work.
The adapter that I've got is Edimax EW-7811UAC AC600 dual-band adapter. Enabling this adapter requires the rtl8812au module[1], which is not included in the Raspbian Lite. It is need to be compiled from sources.
Fortunately, there is a project on GitHub that makes it simple: rtl8812au[2].
Before compiling the necessary tools and Raspbian sources should be installed:
$ sudo apt-get install raspberrypi-kernel-headers build-essential
Now clone the adapter's repository and cd
to it:
$ git clone https://github.com/gnab/rtl8812au
$ cd rtl8812au
Update target:
$ sudo vi Makefile
CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ARM_RPI = y
CONFIG_POWER_SAVING = n
Build it and install:
$ sudo chmod +x install.sh
$ sudo ./install.sh
Check that new wlan interface appears:
$ ifconfig
...
$ iwconfig
...
I suppose the configuration steps will be different for you. But if you just want to connect to existing access point automatically, there are some tips:
And add the access point you want to connect:
$ wpa_passphrase ACCESS_POINT_NAME
type the password
Now copy the output and write it to the end of the /etc/wpa_supplicant/wpa_supplicant.conf
file.
If you have more than adapter, you can find which one is using the new driver by running this command:
$ readlink /sys/class/net/wlan0/device/driver
../../../../../../../../bus/usb/drivers/rtl8812au
Edit /etc/network/interfaces.d/wlan0
:
$ cd /etc/network/interfaces.d
$ sudo touch wlan0
$ sudo chmod 0600 wlan0
$ sudo vi wlan0
...
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid [put your access point name here]
wpa-psk [copy psk from wpa_supplicant.conf here]
...
If you have more than one wireless adapter, then you might need to replace wlan0 with the interface name.
RPI should connect to the available networks automatically after boot.