PLEASE NOTE: This site is no longer being actively maintained. For frequently updated BeagleBone resources please visit Beaglebone.org.

Friday, July 18, 2014

On 10:00 AM by Anonymous


BeagleBone Black Debian WiFi Installation and Troubleshooting Guide

Getting a WiFi adapter installed on the BeagleBone Black can be a challenging project. The popularity of WiFi has led to multiple manufacturers creating adapters for the BeagleBone. That, combined with several operating systems and the security needs, means that there are many parameters and variables to consider.

Finding the right adapter from a reliable supplier is half the battle. The UWN100 and UWN200 adapters have been tested and verified to work with Linux Debian on the BeagleBone Black. This tutorial will guide you through the installation and troubleshooting steps for the MT7601 WiFi adapter (MT7601 is the chipset contained inside both the UWN100 and UWN200 adapters).

IMPORTANT NOTES:

(1) WiFi adapters draw more current when operating (transmitting and receiving) and require a reliable power source. The USB power alone may not be sufficient to power the BeagleBone and the USB WiFi adapter and under-powering can cause a number of unpredictable problems. The use of a PW5V-2A high current ac-adapter is highly recommended.

(2) The Ethernet (RJ45) network cable must be removed when using the USB WiFi adapter.
      The USB WiFi Adapter MUST be present BEFORE booting the BeagleBone.

(3) This tutorial is for Debian Linux distribution. Look here for the latest images.

(verified on 3.8.13-bone50) BeagleBoard.org BeagleBone Debian Image 2014-05-14.

To view your version:

uname -a

You can view the revision in the ID.txt file in the removable drive that appears when you connect to the BeagleBone.

UPDATE: (for debian 3.8.13 BONE70 from R C Nelson)


The 3rd party source is located here: https://github.com/rcn-ee/mt7601u

mkdir -p /etc/Wireless/RT2870STA/ 
cd /etc/Wireless/RT2870STA/ 
wget https://raw.githubusercontent.com/rcn-ee/mt7601u/master/src/RT2870STA.dat 

echo "mt7601Usta" > /etc/modules-load.d/mt7601.conf 

What You Will Need

STEP 1 - Verify That The WiFi Driver Is Loaded

The RCN Debian Linux distribution includes the MT7601 driver. This can be verified by booting the BeagleBone with the UWN100 or UWN200 USB Wifi adapter installed and the Ethernet cable removed. (Do Not Hot-Plug, USB WiFi module must be present during boot to be recognized)

Power the BeagleBone with the ac-adapter.
Connect to the BeagleBone using SSH(putty) or Serial Cable.
Log in as root.
To view the loaded driver, type:

lsmod


All is good, the driver is located and installed.  (driver is included in RCN Debian distribution).
If you don't see the driver - verify that you are using a supported Debian Linux distribution.

Also you can verify the USB interface

lsusb



STEP 2 - Verify That the Interface is Present

ifconfig -a



The "ra0" section indicates the device status. The presence of this "ra0"section indicates that the device and drivers are both working correctly. "ra0" means Ralink adapter 0. The USB WiFi module must be present before booting up.

STEP 3 - Text-Based Interface

The Debian distribution has a great utility called "wicd".  This utility will help you see available networks and establish a connection. You can run the text-based or graphical versions. First we will look at connecting to an open (un-encrypted network).

To start the console-mode interface:
wicd-curses
To view the wireless settings enter "P" (as directed from the bottom line menu).
With the ra0 wireless adapter selected, you can hit "F10" to go back to the Wireless Network. Press "R" to refresh if you don't see your network.  Finally press "C" to connect to the network you wish to connect to. If you have completed STEP 3, you can skip Step 4 (graphical version of "wicd")

STEP 4 - Graphical-Based Interface

You can start "wicd" using the graphical desktop environment.  Note the location of the launcher at the bottom right of the workspace.  You can access the desktop using a direct connection or a VNC session. The preference must be set to Interface: ra0 to view wireless networks. If you don't see your network, verify that it is operational using another computer, or check that you are within radio range.

STEP 5 - Open Network with Guest Sign-In (applies to some networks only)

To connect to an open (unsecured) connection, click the connect button. Open a web browser. Some networks (eg:visitor WiFi) may require 'guest login', this is accomplished by opening a web browser on the BeagleBone to access any webpage, and entering the guest ID and password.

STEP 6 - WPA2 Encrypted Access (Console Mode Interface)

From the Wireless Networks panel access the Config menu (note the -> symbol is the cursor arrow keys)
Now you can select 'Use Encryption" and enter your security key.

STEP 7 - WPA2 Encrypted Access (Graphics Mode Wicd Interface)

To access your WPA2 encrypted network, select "properties".
Now Select "use Encryption", enter your key, and select OK. Finally, select Connect to start the encrypted connection.
Select Connect to access your encrypted network.  Finally you can access the network. (Ping test)

STEP 7

Securely access the network. (Web Browser)
This should look familiar. Congratulations!

Wicd Configuration Settings

The Wireless settings for Wicd are store here.
more /etc/wicd/manager-settings.conf

Troubleshooting Guide

  • Is the Wifi driver present (Step 1)?
    MT7601 WiFi driver is built-in to RCN Debian. Use supported Debian Linux distribution.
  • Are you using an (MT7601) UWN100 or UWN200 USB WiFi adapter?
  • Is the WiFi adapter running (Step 2)?
    USB WiFi module must present before booting the BeagleBone,
    Ethernet cable must be unplugged
    Use external ac-power adapter (5V,2A)
  • Do you see Wireless Networks (Step 3,4)?
    Wifi Module installed (in range).
    Ethernet cable must be removed.
    Verify "ra0" selected as wireless Interface.
  • See Wireless Networks but can't access (Step 5,6,7)?
    Select network to connect to.
    Supply password as required by security in place for that network (Open, guest, encrypted-WPA2).