Hi Brian,
I had evaluated babel,
OLSR, and Batman-adv two years ago on a test network of 5
beaglebones to demonstrate
wifi mesh networking. I concluded Batman-adv was the one to explore further. I was using Robert Nelson's
ubuntu (3.2 kernel) on
beaglebone white then. I had tried three different long range
wifi dongles from Alpha. The black one (
http://www.amazon.com/Alfa-AWUS036NHA-Wireless-Adaptor-Compatible/
dp/B004Y6MIXS) has
Atheros ar9271
chipset and has the best kernel support on
Beaglebone. The more common model is based on
realtek rtl8192cu
chipset. Back then rtl8192cu driver on arm was not anywhere near ready. I would still strongly prefer AR9271 based
wifi dongle today. I had to use a
USB Y-cable to make sure there is sufficient current during boot time to power up the
wifi dongle. BB only has a
USB host port, so this was a bit inconvenient. I resorted to tie the 5V and
GND lines of the
USB to a 5V supply to ensure smooth boot.
With a 14" omnidirectional antenna and tx-power cranked up full, I was able to sustain decent connectivity at ~300 meter per hop during field demonstration.
For batman-adv, I configured every node's bat0 interface on 192.168.50.x subnet. (wlan0 has its own static address assignment in /etc/network/interfaces)
When starting a mesh node, a startbatman.sh is called that has the following:
modprobe batman-adv
ifconfig wlan0 mtu 1528
batctl if add wlan0
ifconfig bat0 192.168.50.218 up
batctl gw client
ip route del default
ip route add default via 192.168.50.1
On the node serving as gateway through its eth0, I had the additional lines for Network Address Translation.
sysctl net.ipv4.ip_forward=1
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface bat0 -j ACCEPT
You could add an @reboot line in /etc/crontab that calls your startbatman.sh on reboot every time.
I have not updated this since the switch to 3.8 kernel, but I am pretty sure it would work on the current Debian image. I would recommend you use the 3.14 kernel to benefit from the more reliable USB.
George