Difference between revisions of "Mesh/Firmware"

1,189 bytes added ,  22:53, 6 July 2013
no edit summary
Line 2: Line 2:


= Stuff the firmware should have =
= Stuff the firmware should have =
== Location and status reporting ==
Something that reports location and status when polled.
== SSH server ==
The SSH server should be contactable from any interface. It should initially allow root access using a random generated password that the mesh group has and that the node owner can get and change if they are so inclined.


== BATMAN-adv ==
== BATMAN-adv ==
Line 21: Line 29:
A very simple one-page interface. It should do at least the following:
A very simple one-page interface. It should do at least the following:


*Status info: How many nodes is your node connected to. Is the internet link working.
*Set location, name, description.
*Let people select how much bandwidth they share.
*Let people select how much bandwidth they share.
:They always share 100% when they're not using the connection themselves.
:They always share 100% when they're not using the connection themselves.
Line 30: Line 38:
Nice to have:
Nice to have:


*Status info: How many nodes is your node connected to. Is the internet link working.
*An "I don't know what my internet bandwidth is, test it for me"-function.
*An "I don't know what my internet bandwidth is, test it for me"-function.
*Usage statistics (so people can see how many people they helped get internet!)
*Usage statistics (so people can see how many people they helped get internet!)
*Let people put up a bit of info about their node / house / co-op, on a simple web page that people can access only if they're connected to that node. It could be shown as part of the splash page.
*Let people put up a bit of info about their node / house / co-op, on a simple web page that people can access only if they're connected to that node. It could be shown as part of the splash page.
== DNS server ==
Each node _could_ run its own caching DNS server. Doing this would allow people to access the admin page by going to e.g. http://me.mesh/ from the private interface.


== QoS / bandwidth shaping ==
== QoS / bandwidth shaping ==
Line 59: Line 64:


Nodes with an internet connection should run DHCP and [http://www.open-mesh.org/projects/batman-adv/wiki/Gateways batman-adv gateway mode].
Nodes with an internet connection should run DHCP and [http://www.open-mesh.org/projects/batman-adv/wiki/Gateways batman-adv gateway mode].
= Stuff the firmware could have =
== DNS server ==
Each node could run its own (caching) DNS server. Doing this would allow people to access the admin interface for their node by going to e.g. http://me.mesh/ from the private interface.
== Caching web proxy ==
We could use [http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/ Polipo] to improve people's browsing experience. Not sure how much cpu and memory this would need. We may not be able to run it on the routers with less than 32 MB ram (e.g. the Bullet 2 HPs).
== Block ads and tracking ==
We could use e.g. [http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/ Polipo] with the sources from both adblock plus and ghostery. If we implement this, it should be an optional (default off) feature that you can select on the splash page, with a "remember this" that remembers either using a cookie or using your MAC (but then we'd be tracking people's MAC addresses :-S). The block should probably be time-limited (e.g. 30 days).


= Compatible devices =
= Compatible devices =