[Commotion-discuss] Some pre-experimentation mesh hardware inquiries

Ben West ben at gowasabi.net
Wed Feb 27 20:02:42 UTC 2013


Hi Josh,

Sorry for being unclear.  By 'uhttpd binding' I had mean using uhttpd as
the ultra-small HTTP server that it is, to respond to requests sent to
ports 80 and 443, but have commotiond serve a collection of HTML forms for
the mesh admin UI.

Indeed, since the OpenWRT build process already offers the option to
pre-compile luci/lua scripts into bytecode for reduced flash and CPU load,
I'm curious if more dramatic pre-compiling / stripping of luci could be
possible to produce to *just* the bare essentials needed for commotiond,
and possibly *less* than what OpenWRT considers a minimal luci
installation.  See below for reference:
http://wiki.openwrt.org/doc/howto/luci.essentials#minimalistic.offline.installation
http://trac.fonosfera.org/fon-ng/wiki/lua

Furthermore, I'm still assuming zram will also be handy to optimize RAM
usage on 16MB memory devices.  (Maybe 32MB devices too?)

If these methods are effective in pruning down the image size, a neat goal
would be to retain openssl support for tunnelling, etc.  A recent update to
trunk and AA now offloads some of the SSL computation to hardware on ath9k
24kc platform.
https://dev.openwrt.org/changeset/33531/trunk/package/openssl

Independent of all this, Fabfi looks pretty cool:
http://fabfi.fabfolk.com/techsummary/
http://code.google.com/p/fabfi/wiki/HowToMake

On Wed, Feb 27, 2013 at 12:51 PM, Josh King <jking at chambana.net> wrote:

> I'm reluctant to incorporate an http server into the daemon directly;
> seems to be adding a lot of complexity for not much benefit. I'm not
> sure what you mean by uhttpd bindings, if by that you mean some
> mechanism that will further reduce the size. I am currently working on
> ubus bindings, through which the daemon could potentially communicate
> with uhttpd.
>
> On Wed 27 Feb 2013 01:46:39 PM EST, Ben West wrote:
> > This is exactly the approach Open Mesh has taken with their proprietary
> NG
> > firmware, i.e. a closed-source daemon to do all the mesh/dashboard
> > housekeeping stuff.  The NG images hardly weigh in at 2MB now.
> >
> > I've taken several stabs at trying to prune down previous iterations of
> > Commotion (i.e. pre DR1) to 4MB, while retaining the luci web UI, by
> having
> > the luci sources compressed or pre-compiled, by removing IPv6 support,
> and
> > by lots of other little snips and cuts to extraneous packages, but so far
> > no luck.
> >
> > Both luci and openssl support seem to guarantee the images will be larger
> > than 4MB.  If you are to the point of writing a daemon in C, it may also
> > become worthwhile to either incorporate a very basic HTTP server into
> that
> > daemon (which is what coovachilli does) or incorporate bindings to
> uhttpd.
> > Probably the latter could be done with reasonable effort.
> >
> > On Wed, Feb 27, 2013 at 12:04 PM, Josh King <jking at chambana.net> wrote:
> >
> >> Yes, and even the Fonera 2100 still has 8MB of flash. The image would
> >> actually have to pruned down to something significantly less than 4MB
> >> in order to accomodate the JFFS2 partition in additon to the squashfs
> >> one. So we're actually looking at something closer to 2-3MB. We'll see
> >> how small we can get it, and having so much more of it as C binaries
> >> should hopefully make it more compact, but my feeling is that it will
> >> probably turn out that 4MB of flash is just too small to be able to
> >> support. Anyway, we'll see how it turns out once we have AA-based
> >> testing images.
> >>
> >> On Wed 27 Feb 2013 12:44:20 PM EST, Ben West wrote:
> >>> I don't have any current versions of the 'minimal' ath5k-based
> Commotion
> >>> images, besides those listed below:
> >>>
> >>>
> >>
> http://info.gowasabi.net/commotion-openwrt/openwrt/bin/atheros-ar2315-minimal/
> >>> Circa OpenWRT r31693, from Summer last year
> >>>
> >>>
> >>
> http://info.gowasabi.net/commotion-openwrt-new/openwrt/bin/atheros-ar2315-minimal/
> >>> Like above, but with a newer kernel and compat-wireless library
> >> backported
> >>>
> >>> All of these imageshould have the root pwd pre-set to r0ot56c0MM0t10N .
> >>>
> >>> The only image I tested successfully were the older of the two version
> >>> listed above, on a FONera 2100.  Still, I have posted the config file I
> >>> used to build both versions, so that you can try building your own.
> >>>
> >>>
> >>
> http://info.gowasabi.net/commotion-openwrt/openwrt/atheros-ar2315.minimal.config
> >>>
> >>
> http://info.gowasabi.net/commotion-openwrt-new/openwrt/atheros-ar2315.minimal.config
> >>>
> >>> Please note the ath5k (aka atheros) images will not run on a WRT54G
> >>> (brcm47xx-based) or on the TP-Link (ath9k-based).
> >>>
> >>> It should be straightforward (although tedious) to prune down the
> current
> >>> package set for DR1 Commotion to get a ~4MB sized image in squashfs.
> >>> Although, you would likely have to axe potentially useful features,
> e.g.
> >>> IPV6 support or Luci web UI.
> >>>
> >>> Also, do be mindful of the RAM limitation for older devices like a
> >> WRT54G,
> >>> which has only 16MB of memory.  The recent incorporation of the zram
> >>> package into OpenWRT trunk may allow operation on such RAM-bound
> devices,
> >>> but to date I have *not* been able to run the v3.x kernel reliably on
> >> these
> >>> units.  And the OpenWRT dev team also doesn't expect it to,
> >> unfortunately.
> >>>
> >>> On Wed, Feb 27, 2013 at 10:40 AM, Chris Ritzo <chris.ritzo at gmail.com>
> >> wrote:
> >>>
> >>>> This post in the commotion-dev archives has info about minimal images
> >> that
> >>>> Ben West compiled. This might be useful for the TP Link routers or
> >> others
> >>>> with lower system resources.
> >>>>
> >>>>
> >>
> https://lists.chambana.net/pipermail/commotion-dev/2013-January/001001.html
> >>>>
> >>>>
> >>>
> >>>
> >>>
> >>> _______________________________________________
> >>> Commotion-discuss mailing list
> >>> Commotion-discuss at lists.chambana.net
> >>> https://lists.chambana.net/mailman/listinfo/commotion-discuss
> >>
> >> --
> >> Josh King
> >>
> >> "I am an Anarchist not because I believe Anarchism is the final goal,
> >> but because there is no such thing as a final goal." -Rudolf Rocker
> >>
> >>
> >
> >
>
> --
> Josh King
>
> "I am an Anarchist not because I believe Anarchism is the final goal,
> but because there is no such thing as a final goal." -Rudolf Rocker
>
>


-- 
Ben West
http://gowasabi.net
ben at gowasabi.net
314-246-9434
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.chambana.net/pipermail/commotion-discuss/attachments/20130227/872fffce/attachment.html>


More information about the Commotion-discuss mailing list