BEAGLEBONE BLACK: NETWORK AND WIFI
In order to do some useful stuff and have the ability to download applications, the BBB board must have direct access to the internet.
Decided to set up the Ethernet interface with a static IP address. Having a static address allows you to know how to access BBB all the tiem without the need to check the router for the assigned IP address. Choose a large address in order to avoid address conflict with existing assigned IP addresses. Choose and address that is easy to remember. You could also reserve this address in the router.
The way this is done in unix is to edit a configuration file. Since we don’t have the luxury of a GUI, everything is done through a terminal window on the command line. Learn to use “vi” or equivalent. vi is universally available in any UNIX/LINUX distribution. For the beginner, using vi is a bit of a pain, but it is easy to master the basics very quickly.
NETWORK SETUP IN DEBIAN
According to the Debian Wiki [link], this is the format:
Modify the entry in /etc/network/interfaces and follow the above format. In the command line type “vi /etc/network/interfaces”
This is how I modified the configuration. I use an Apple Extreme router which defaults to assigning a 10.0.1.x network
And indeed, it is accessible though “10.0.1.101” after connecting it to a wired network (see the address in upper left corner of the tty windows above). It remains also accessible though USB with an IP address of 192.168.7.2 as shown below:
Edit the /etc/resolv.conf file. Change nameserver to be the new gateway: 10.0.1.1.
Originally It was set to the factory nameserver (192.168.7.1). Without this fix, I was not able to resolve domain names through my WiFi connection.
Wanted to try a USB WIFI adapter on the Beaglebone Black board running the official Debian release. I got a hold of the TP-LINK TL-WN725N v2 adapter, a very popular device and retailing for under $10.
As it turned out, no drivers are available for the device from the manufacturer and the device might or might not be supported by the operating system distributed with the BBB board.
According to the Debian Wiki [link]
Currently there are only a few modern WiFi chipsets readily available that work with free software systems. For USB wifi devices this list includes the Realtek RTL8187B chipset (802.11G) and the Atheros AR9170 chipset (802.11N). For Mini PCIe all cards with an Atheros chipset are supported.
WiFi has always been a problem for free software users. USB WiFi cards are becoming less free. With the older 802.11G standard many USB WiFi cards had free drivers and did not require non-free firmware. With 802.11N there is only one chipset on the market from Atheros which is completely free.
This means that there are no assurances that the WiFi device would be supported by particular device and operating combo. This also means that as the technology evolves, it would become more and more difficult to find driver support for WiFi devices.
This particular WiFi device, “v2″ uses the Realtek RTL8188EUS [link] chipset (whereas the v1 uses the RTL8188CUS chipset [link]). It is important to know the exact model number and even the version number because different versions of the device might use different chipset and therefore requiring different drivers.
Fortunately, a driver is available in source (from the chipset manufacturer?) and users have been compiling the source for their particular environment. Here is an example for RPi Raspbian [link].
Unfortunately, I have not come across an installation or this driver for the official Debian on BBB and this (compiling the source) is beyond my skill set and have no real desire to learn it. Additionally, even if you can master these skills every time the operating system is updated, there is a chance that the driver may stop working requiring another round of s/w tweaking. This sounds like a real pain even for us diyers…
The right thing to do is to purchase a device that has ample support from the user community, the manufacturer or the retailer. Here is an example of well supported USB WiFi devices: [link], [link]. Check also the BeagleBone Black H/W info page for supported WiFi devices [link]. Or one can switch to a Rasberry Pi board :-) [link] which seems to have the widest support.
A BETTER APPROACH
Eventually, there might be a readily available driver for this WiFi device. However, support for wired network has always been included in all Linux OS releases and is trouble-free and rock solid. No need to hassle with wireless dongles with proprietary drivers that might potentially break with newer releases of the operating system.
The TP-Link TL-WR702N Wireless Router [link] is an excellent option to add wireless connectivity to the BBB (or any other device). This multi-mode WIFI device can be set to “client mode” an provide a wired connection to the BBB while connecting to the wireless router. The exact same configuration is used as with wired network.
Additionally, this device is externally powered so that low noise power supplies (the favorite tweak for audio diyers :-)) can be used.
Powering separately has the advantage of having the NANO continually maintain connection with the main router even while the BBB is being power cycled. Optionally, the NANO is a low power consumption device so that it can be powered through the BBB USB port.
Found these photos here [here]