BeagleBoard xm and WLAN
I tried to connect an USB WLAN adapter to my board and thought it should work out-of-the-box like my cordless mouse (WLAN c'mon). But that was not the case. The good news is that it already works. The bad news is that it took hours to figure out how it works.
Maybe my requirements are too specific (I don't think so), but the documentation in the Internet about beagleboard stuff is not really good. I found a lot of old articles and most of them did not work or did not work with my software. It took hours to find information snippets for my requirements.
Are a fixed MAC address and WLAN support really too modern?
Anyway, I try to prepare my hardware before I start with development. I'm not totally happy at the moment because my touch screen does not work with JavaFX applications. It's an ELO touchscreen EL1725 connected via USB. I hope that this ticket solves my problem.
Some background information for my WLAN adapter
I read the manual before I bought an adapter and was suprised that only some specific adapters were supported (maybe the documentation is not up-to-date). I chose Trendnet TEW-648UBM Micro. It was not in the list, but I thought it could work...
After I plugged the adapter to my last free USB port I checked dmesg and saw no errors. The adapter was detected and I thought it should work. Typed
and got error messages. Checked dmesg and saw an information about missing firmware.
The adapter needs a firmware but it didn't find it on my SD card . I asked one of my best friends, google, and got a lot of results but no answer. So I tried
because dmesg showed me that my adapter has a realtek chip. I got results, but no firmware. The next try was:
I got too many results My next attempt:
I found my firmware and installed it:
Now the adapter was integrated but it was not configured. My WLAN is secured with a passphrase.
I tried to configure the wlan0 interface via /etc/network/interfaces and /etc/wpa_supplicant.conf but without success. So I asked google again and found some "useful" articles:
Beaglebone WiFi
connman
Beagleboard WiFi USB dongle
The second article was not bad but did not work. The last one was better but it did not work as described
Mabe I did not understand something that was written between the lines.
What I did:
I did nothing with /etc/network/interfaces because the connman has its own configuration! So I created a file with the name /var/lib/connman/wifi.config. To find out the SSID the following command was useful:
/usr/lib/connman/test/get-services
Set [WiFi] Enabled = true in /var/lib/connman/settings.
My wifi.config
Name = NetworkName
Description = Home WLAN
[service_networkname]
Type = wifi
ssid = 123456789
Passphrase = mypassword
Be sure that your Name is equal to the name in the service section. The ssid was taken from output of
mynetwork {wifi_<macaddr>_<sid>_managed_psk}
My /etc/network/interfaces
auto lo
iface lo inet loopback
# Wireless interfaces
#iface wlan0 inet dhcp
# wireless_mode managed
# wireless_essid any
# wpa-driver wext
# wpa-conf /etc/wpa_supplicant.conf
iface atml0 inet dhcp
# Wired or wireless interfaces
auto eth0
iface eth0 inet dhcp
iface eth1 inet dhcp
After rebooting the board the connection was established automatically. If you have problems, use gnome to check your network settings or try to establish a connection with your network.
Sometimes during startup it was not possible to load the firmware for the adapter, but normally it worked without problems. If you have problems, simply use dmesg and journalctl to find error details.