[ArborMesh] Arbormesh Hackathon: What needs doing?

Ryan Hughes ryan at iheartryan.com
Thu Apr 21 16:16:01 CDT 2011


> Having the clinic at the beginning of the hackathon would be ideal. Then the
> info is all fresh and immediately applicable.

Yeah, that'll happen no matter what.  I just thought that if anyone wanted 
to get a head start and do a little playing, I'd be happy to show them the 
ropes.

> There is a lot of talk here about modifying existing protocols to work for
> us. Are there any packages out there already that do *most* of what we want
> that we can implement more off-shelf and *then* modify as needed? Strikes me
> that we are sort of front-loading the development cycle before having
> test/implementation data.

True.  I've been thinking that way because I've been trying to learn 
everything in depth, so I'm in mega-tinker mode.

But there are two good starting points:
* The Freifunk Firmware
   http://wiki.freifunk.net/Freifunk_Firmware_%28English%29

* ROBIN
   http://dev.cloudtrax.com/

Also, maybe:
* The stuff from wlan-si.net?
   They told me that Nodewatcher spits out firmware images that can be
   flashed.  We could take a look at what's on there.

I've mostly been looking at the Freifunk Firmware, because I was mainly 
hanging out with Freifunk people when I was in Spain.  ROBIN people were 
there, but I don't think I knew that at the time.

I believe that any one of these starting points we use will take at least 
a little modification before it can be used here:

* Freifunk has some Freifunk-specific stuff.  Like, a configuration wizard
   that asks you what German neighborhood you're in.

* ROBIN assumes you're using the Atheros proprietary wireless driver, and
   that your wireless interfaces will be named things like ath0, rather
   than wlan0 or wl0. (Ben, is that correct?  I haven't looked at ROBIN
   very much - I just glanced at their website; you've been deploying it in
   Detroit.)  Anyway, this would be a small change.

* If the wlan-si stuff is what I think it is (I haven't looked at it at
   all), then it probably has some wlan-si-specific stuff in there.


Freifunk and the wlan-si firmware use OLSR.  ROBIN uses Batman.


I think the problem with a lot of the mesh organizations is that they've 
got a very homebrew mentality, and they forget to share their work.  Even 
the ones that do forget to make it generally-applicable.  I'm sure we 
could ask ninux.org, or guifi.net (for example) for their firmwares, but 
they would also need customization before we could put it up.


Most of the software that has to run on the routers is available in some 
form, through one of those firmwares.

The big problem is the control panel.  These are very homebrew.  Freifunk 
is using a Django app whose maintainer has disappeared, so it's 
unmaintained.  They're looking to switch to Nodewatcher.  The Nodewatcher 
guys are seeing this problem, of everybody being all homebrew and not 
communicating, and they're trying to stop it.

They started a wiki to get all the organizations say what they're 
doing, and agree to some standards and stuff, but there's not much written 
there yet.
 	http://interop.wlan-si.net/


Ben, what are you guys doing in Detroit for handing out IP addresses? 
What about for making a geographical map of the network?  What about live 
updates on whether nodes are up or down?
Was I wrong?  Does ROBIN have a batman topology viewer?  Is there more 
batman gui than I thought?


Also, I got the idea for the content-heavy captive portal thing from Ben 
West of Wasabinet.  Here's their page on that topic:
 	http://sites.google.com/site/wasabinetwifi/Home/outreach/portal

Unfortunately, it looks like they're implementing this by using a Service 
Provider's product.  I'll ask around and see what sort of open-source 
stuff is in this realm.

--Ryan


> Just my $0.02.
> 
> -X
> 
> On Wed, Apr 20, 2011 at 10:10 PM, Ryan Hughes <ryan at iheartryan.com> wrote:
>       Hi.  So I wanted to get the ball rolling on the discussion of
>       what should happen at the ArborMesh hackathon, Friday, May 6.
>
>       We could use a website!  Also, artwork, logo, and so forth!
>
>       There are things to be done on the firmware.
>
>       I got openwrt configured to speak OLSR and Batman-adv, both.  It
>       uses two different network prefixes (one for each protocol).  I
>       was wanting to do that so we could do tests/upgrades on one
>       routing protocol while the other makes the actual network
>       happen.  That sort of thing.
>
>       One thing that olsr does that batman-adv does not is this:  It
>       detects whether the router has access to the internet.  If it
>       does, it reports itself as a gateway.  It periodically pings a
>       set of hard-coded addresses to test whether it can get to the
>       internet.
>
>       I'd like us to implement a cron script that would do the
>       equivalent for batman.
>
>       Perhaps, before the hackathon, we should have a little "clinic"
>       on how to work with openwrt, and a more in-depth technical
>       introduction to the routing protocols.  I can show you what I've
>       been doing, and we can get y'all up to speed.  If anybody would
>       like to attend such a "clinic", tell me and we can arrange a
>       time.
>
>       We could also do this type of thing at the hackathon itself.  I
>       just thought that if anybody wanted a pre-introduction, they
>       could do a little tinkering before we got there, and then we
>       could get more work done at the hackathon.
>
>       I'm gonna try to convert what I've been doing into an "OpenWRT
>       ImageBuilder script".  Right now, I've got a .config file and so
>       forth, so you need a full OpenWRT source tree.  But an
>       imagebuilder script is a little easier to share and faster to
>       produce.
> 
>
>       Now, in addition to the router firmware, we will probably want a
>       web-app that can do some of the central management tasks.  I was
>       thinking we'd use "Nodewatcher" for this purpose.  The central
>       management tasks include such things as assigning IP addresses
>       and showing a cool map with our nodes and connections, to brag.
>        Nodewatcher is a django app.
>              http://dev.wlan-si.net/wiki/Podrobnosti/Nodewatcher
>
>       Here's a live sample of nodewatcher being run on wlan-slovenia.
>              https://nodes.wlan-si.net/
>
>       Nodewatcher needs to be installed and configured for us, but
>       it's also a pretty new software project.  Only recently has it
>       gained the ability to operate outside of wlan-slovenia.  We will
>       almost certainly have to add features.
> 
>
>       Also, we will probably want to add some stuff to the web-UI
>       that's on each router.  This would be done in OpenWRT's "LuCI"
>       environment.  LuCI is a web-app framework written in lua that
>       runs on each router.
>
>       Some of the things to add:  Maybe some kind of "configuration
>       wizard", like what Freifunk has.
>              http://wiki.freifunk.net/Freifunk_Firmware_%28English%29
>
>       Also, there is already a luci app to show a visualization of the
>       olsr topology, but I don't think there are any luci apps to deal
>       with batman at all.  It'd be nice if we could start one -- at
>       least as a topology visualizer, but also to see other status
>       information and do some configuration, maybe.
> 
>
>       Also, it'd be sweet if we had one of those "welcome screens".
>        Like, when you first log into the network and it's like "You
>       are about to use ArborMesh.  Plz to agree to our policies."
>        There are openwrt packages ready to use, but we'd have to
>       configure them, and put our own artwork and info inthere.
>       But this would also be cool if we could use that space to
>       advertise hyperlocal things, like "You are about to use
>       arbormesh.  Here's a cool irc channel and mailing list.  Y'know
>       what's cool?  AHA.  And other community organizations and stuff.
>        Oh, and look:  These are some network services being run on the
>       inside of the network!  Check out this website without even
>       going down to the copper at all!".
>
>       We could come up with some sort of broadcast mechanism that we
>       could use to push out changes to the welcome page.
> 
>
>       This is my brainstorm.  Anybody else got any ideas?  List 'em,
>       here.  When we get to the hackathon, we can prioritize.
>       --Ryan
>       _______________________________________________
>       ArborMesh mailing list
>       ArborMesh at iheartryan.com
>       https://iheartryan.com/cgi-bin/mailman/listinfo/arbormesh
> 
> 
> 
>


More information about the ArborMesh mailing list