Heya folks,
Over the weekend a team consisting of Tatenda Chipeperekwa, Veenesh Jeena, Zaheer Abrahams from the UCT Honors program as well as YoursTruly succeeded in writing an App which allows anyone with a rooted Android handset to connect to a B.A.T.M.A.N. mesh network.
Work began on Saturday morning by bringing up a simple mesh testbed consisting of a Mesh Potato, an Ubiquity NS2 and a Linksys WRT54GL. The rest of the day was spent manually configuring the test phones into AdHoc mode and bringing the batmand mesh routing daemon up on both a HTC Magic & a HTC Legend.
After working our way through the traditional hacker supper of pizza and soft drinks we started the hard work that would consume us for the rest of the weekend, namely writing an App which could:
a) reliably b) on any Android handset
...take the phone in&out of AdHoc mode and start&stop the B.A.T.M.A.N. mesh routing daemon.
What complicates this is that by default the Android software distribution does not support AdHoc WiFi mode, to further complicate matters is that the process to force the phones into AdHoc mode differs for almost every different handset model!
OhNoes!!!
Fortunately the team of pure stupendous at http://code.google.com/p/android-wifi-tether/, by releasing their work under GPL3, have saved the collective posteriors of the community by having done a staggering amount of work developing the scripts & code which take away 99% of the pain from this process. If anyone is in a position to call shots on this, please do consider contributing a cash donation, filing some bugs or a bit of hacking time to the android-wifi-tether project because their work has been absolutely key to the team being able to bring B.A.T.M.A.N. up on Android in only a weekend instead of a month of hacking followed by months and months of testing and refinement.
The rest of the evening and the next day was spent writing the App front-end integrating the batmand daemon with the android-wifi-tether code, banging on user interface design, conspicuous caffeine consumption and general wizardry until, some time round eight'o'clock on Sunday evening all the pieces finally came together and the team were able to demonstrate a running B.A.T.D.R.O.I.D. on the mesh testbed!
The code from the weekend is available at:
http://code.google.com/p/android-batdroid/
Downloadable binaries to follow.
There are also some photos from the weekend up at:
http://www.flickr.com/photos/45478359@N06/sets/72157624433728942/
Finally, mad props to:
Neels from the Open Innovation Studio (http://www.bym.co.za/projects/open-innovation-studio/) for creating a beautiful space with stunning energy, amazing coffee and generously sharing it with us for the weekend.
Steve Song from VillageTelco (http://www.villagetelco.org) & Shuttleworth Fondation (http://www.shuttleworthfoundation.org) for the support that made the weekend possible.
- antoine
-- http://7degrees.co.za "Libré software for human education"
Hey all,
Over the weekend a team consisting of Tatenda Chipeperekwa, Veenesh Jeena, Zaheer Abrahams from the UCT Honors program as well as YoursTruly succeeded in writing an App which allows anyone with a rooted Android handset to connect to a B.A.T.M.A.N. mesh network.
Work began on Saturday morning by bringing up a simple mesh testbed consisting of a Mesh Potato, an Ubiquity NS2 and a Linksys WRT54GL. The rest of the day was spent manually configuring the test phones into AdHoc mode and bringing the batmand mesh routing daemon up on both a HTC Magic & a HTC Legend.
congratulations to all involved for the success of this project! It makes me happy seeing people coming together to work on a project, especially when it is about batman. ;)
I experimented with mesh on the phones / mobile devices myself not so long ago and noticed that the energy consumption is pretty high. Even if we had no mesh the ad-hoc mode does not allow to save as much energy as the managed mode. Did you notice the same thing ? How long does the battery last ?
In an environment which provides a "backbone" network (e.g. routers) batman- adv might be more suitable, since the clients do not need any mesh software nor ad-hoc mode and still can roam around. Did you give it a try ?
Regards, Marek
On 06 Jul 2010, at 23:42 , Marek Lindner wrote:
Work began on Saturday morning by bringing up a simple mesh testbed consisting of a Mesh Potato, an Ubiquity NS2 and a Linksys WRT54GL. The rest of the day was spent manually configuring the test phones into AdHoc mode and bringing the batmand mesh routing daemon up on both a HTC Magic & a HTC Legend.
congratulations to all involved for the success of this project! It makes me happy seeing people coming together to work on a project, especially when it is about batman. ;)
Tx Marek :-)
I experimented with mesh on the phones / mobile devices myself not so long ago and noticed that the energy consumption is pretty high. Even if we had no mesh the ad-hoc mode does not allow to save as much energy as the managed mode. Did you notice the same thing ? How long does the battery last ?
I've noticed that uniformly power-saving modes for Android hardware have utterly borked drivers.
I'm lucky if I get 2 hours WiFi out of my phone on any mode.
:-/
In an environment which provides a "backbone" network (e.g. routers) batman- adv might be more suitable, since the clients do not need any mesh software nor ad-hoc mode and still can roam around. Did you give it a try ?
Not yet - development focus so has been focused exclusively on vanilla batmand - worth exploring though!
- antoine
-- http://7degrees.co.za "Libré software for human education"
b.a.t.m.a.n@lists.open-mesh.org