After an extremely long hack session I finally got RTL8192cu to run on Beaglebone Black A5C/A6 running Ubuntu 14.04. It was painful. But here is a log of my experience with it.
Step 1. Installing Ubuntu 14.04 (flashing eMMC)
This is the process. Download the image to your sd card and then burn it to the eMMC. Warning: You will need to connect to the internet first using eth over USB or the ethernet port.
Step 2. Update & Upgrade
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install build-essential git vim linux-headers-generic linux-headers-`uname -r`
Step 3. Build the realtek 8192cu kernel module
Clone the repo here.
$ git clone https://github.com/cmicali/rtl8192cu_beaglebone.git $ cd rtl8192cu_beaglebone $ make CROSS_COMPILE=""
Step 4. Put the module into the appropriate directory
This will build the module. Now you simply take it and put it in /lib/modules
$ sudo mv 8192cu.ko /lib/modules/`uname -r` $ sudo depmod -a $ sudo sudo vim /etc/modules
Add 8192cu to the list and the file is probably empty. Save the file.
# /etc/modules: kernel modules to load at boot time. # # This file contains the names of kernel modules that should be loaded # at boot time, one per line. Lines beginning with "#" are ignored. # Parameters can be specified after the module name. 8192cu
Now, it's time to blacklist the existing rtl8192cu module. It may not exist on 14.04 but there's no reason why you should take that chance
$ cd /etc/modprobe.d $ sudo echo "rtl8192cu" > /etc/wifi_blacklist.conf $ sudo echo "rtl8192c" >> /etc/wifi_blacklist.conf $ sudo echo "rtlwifi" >> /etc/wifi_blacklist.conf
Now that's done. You are good to go. Simply reboot. Once you log in again. You can check that the module is loaded by doing
Step 5. Configure the interface
will show you that wlan0 is now a registered interface. But it's not configured
$ vim /etc/network/interfaces Add this to the interfaces file
auto wlan0 iface wlan0 inet dhcp wpa-ssid "essid" wpa-psk "password"
That's it. Now simply bring up the interface using ifup
$ sudo ifup wlan0 $ iwconfig
Boom now you'll see it trying to connect. and the second command shows you the status of Wireless interface.