Hi Nick!
We've also started experimenting with batman-adv and a Linksys WRT54GL in our little project in December with Kamikaze 8.0.9. What we figured out, that with the kernel version provided in this firmware-build, it was not possible to create any useful setup as the broadcom-wifi-driver lost way too many packets in ad-hoc-mode and sometimes even crashed.
So, if you're really in a hurry, the quickest way would probably to get some Dlink DIR-300s for about 25€. We're succesfully using them here, the wifi seems way better and also more "advanced" configurations can be created because of the ability to splitting the atheros-wifi-device into several interfaces. We're currently mainting our firmware in our git-repository on http://krtek.asta.uni-luebeck.de:8080/repos/LuebeckFreifunkFirmware/. Some more additional information about our project itself can be found on http://luebeck.freifunk.net. So far, we're quite satisfied how it works so far. So we're going to add some more last-minute patches in the next couple of days, as we've scheduled a practical setup with this firmware for the weekend form the 14th to 16th of August.
If you still have your reasons for trying to setup the mesh network with Linksys routers, then you should probably plan some more time for this, as I'm not aware of anyone getting batman-adv + WRT54GL working so far. Nevertheless, I've been trying to catch up a little about the latest driver developments and according to http://linuxwireless.org the new bt43 driver sounds very useable, they're saying that adhoc should work now with the driver rewrite. From 2.6.25-kernels on, the bt43 driver has been included in the kernel-tree and has been updated frequently. Therefore I'd suggest, that you could give a self-compiled image from the OpenWRT-trunk a try. For details on how to do that, check out the OpenWRT-documentation or the ugly build-scripts in our projects repo. Furthermore, you might also wanna try the latest stable kernel release 2.6.30, the trunk is currently configured to use the 2.6.28-kernel version for broadcom firmwares. Anyway, it looks like the config-files for the 2.6.30 broadcom build have already been ported from the 2.6.28-kernel and installed, so that you'd only have to change 'LINUX_VERSION:=2.6.28.10' to 'LINUX_VERSION:=2.6.30.4' in 'trunk/target/linux/brcm47xx/Makefile' for trying the the (almost) latest 'n' greates broadcom-wifi-driver. I would also be very curious to get to know how those latest drivers work, I myself still have an unused Linksys WRT54GL here at home. So your contribution in testing that stuff would be highly appreciated :).
Thirdly you can still use an official release from OpenWRT (like the Kamikaze 8.0.9) with the 2.4-kernel, where the wifi should be working stable. Of course, as Marek already had pointed out, you wouldn't be able to use batman-adv there, you'd have to use the normal batmand which is "just" doing layer 3 routing. But as far as I know, the disadvantage of this option would be, that you'd either have to install the batmand on all machines using the mesh-network, so your laptops as well for instance, or by setting the 'entry'-routes manually on those clients, as they're otherwise not able to find the machines behind the other router on a different subnet/ip-range. Please might the experts correct me, if I'm saying anything wrong about batmand, I haven't been playing around with this one that much :).
Cheers, Linus
On Thu, Aug 06, 2009 at 03:47:26PM +0000, nick farrow wrote:
Hi Marek,
Thanks for clearing this up.
With no broadcom support in 2.6 then there is no kmod driver for batman.
It looks like its back to the earlier version of that did work (batman 0.2-rv478-1) just that it did not forward same subnet arps. I realise that performance is not going to be great with this but it will work
To do this do I basically setup one subnet for the batman nodes to run in, then further subnets for the hosts at each wrt batman mesh node, then just configure each batmand node to announce the host subnet?
So for a 3 node mesh, break the default bridge, assign a static network address to the eth0, assign a different subnet address to wl0
i.e
mesh node 1
eth0 172.16.1.1/24
wl0 192.168.1.1
run with batmand -a 172.16.1.0 wl0
mesh node 2
eth0 172.16.2.1/24
wl0 192.168.1.2
run with batmand -a 172.16.2.0 wl0
etc
Does this look correct to allow say 172.16.1.2 on the ethernet of mesh1 to ping 172.16.2.2 on the ethernet of mesh2?
Thanks again for sticking with this
nick
From: lindner_marek@yahoo.de To: b.a.t.m.a.n@lists.open-mesh.net Date: Thu, 6 Aug 2009 22:26:21 +0800 Subject: Re: [B.A.T.M.A.N.] Some handholding for batman-adv
Hi,
There seem to be 2 versions of advanced batman - batman-adv and kmod-batman-advanced, however for the k8.09.1/brcm 2.4 release there does not seem to be the kmod driver. So I have installed the batman-adv (batmand-adv_r1176-1_mipsel.ipk and battools) there is no batctl here.
batman-adv was the first attempt to write a layer 2 routing daemon. Unfortunately, due to the fact that it was written as user space application it came with a big performance penalty. We ported the code into kernel space by writing the batman-adv kernel module. Since the module is stable the daemon is deprecated. The OpenWRT package was removed - not sure why you still can install it.
batctl comes with the batman-adv kernel module as it has nothing to do with the user space daemon.
The kernel module requires linux 2.6 (nobody backported it to 2.4 yet). Unless you use the open source wifi drivers for the WRT you are stuck with the binary only wl driver which runs on linux 2.4 only. That is why you can't select kmod-batman-advanced.
Regards, Marek
B.A.T.M.A.N mailing list B.A.T.M.A.N@lists.open-mesh.net https://lists.open-mesh.net/mm/listinfo/b.a.t.m.a.n
Windows Live Messenger: Celebrate 10 amazing years with free winks and emoticons. http://clk.atdmt.com/UKM/go/157562755/direct/01/
B.A.T.M.A.N mailing list B.A.T.M.A.N@lists.open-mesh.net https://lists.open-mesh.net/mm/listinfo/b.a.t.m.a.n