Difference between revisions of "Mesh/Firmware"

1,174 bytes added ,  19:33, 31 May 2015
(→‎Compatible devices: Adding bits about target devices)
Line 3: Line 3:
= ToDo =
= ToDo =


Stuff we _need_ before beta launch:
Remaining issues for 0.2:
* basic notdhcp polishing
* finish firmware for extender node antennas (juul: nearly there, need to finalize hook scripts)
* finish firmware for extender node antennas  
* notdhcp polishing (needs protection from shell script injection, could use UDP checksum)
* Routerboard admin UI should be able to push settings changes to extender nodes
* Fix tunneldigger DNS churning (maxb/alex - may already be fixed?)
* Better interface and security for node database
* Documentation for new architecture (matt and juul made some illustrations)
* Deal with situations where internet is not shared or not present. (juul)
* '''This list is probably complete'''
* Implement remote password reset (via h.sudomesh.org)
 
* Implement error reporting in web admin interface
Remaining issues for 0.3:
* Set up a remote monitoring solution
* New home node web UI working (juul)
* Implement a remote logging/monitoring solution
* Deal with solitary node (no other nodes connected) by disabling the open network (including SSID broadcast)  
** Nodewatcher 2 looks like it's not going to be ready for test deployments
* Improve Web UI
** Right now we can probably just incorporate the Makenode db with some fairly simple cacti+graphite+icinga
** Extender nodes should be manageable from home node web UI (show visible peoplesopen.net nodes, set channel, set txpower)
* Select a wifi channel, both 2.4 ghz and 5 ghz.
** Implement node statistics and monthly bandwidth limit for web UI
** Allow switching of ethernet ports between extender node port, open port and private port.
* Update documentation with new features
* '''This list is probably incomplete. Talk to devs for more info.'''


Issues for later versions:
Issues for later versions:
* Remote updating
* Basic admin web UI for node database that let's you log in and list current nodes.
* Make analog hardware watchdog for old chipset and solder to devices.
* fake captive portal working
* Better flexibility for notdhcp ports  
* service browser working
* IPv6 support (possibly switching to IPv6 entirely)
* hardware watchdog working on ar71xx
* Figure out how to legally use lower 5 ghz frequencies
* support for manually configured non-openwrt extender nodes
* Set up OpenVPN on exit node.
** Allow user to switch ethernet ports into "extender node (manual)" mode
* Implement statistics for web admin interface.
** Only one network (either adhoc or open) can be extended using this mode. The user must be able to select which.
* Manual (or automatic?) speed and output power selection via web interface.
** Set up port forwarding from home node to each manually configured extender node for web UI access, e.g. 1443 to 443 on extender node 1, etc.
*** This can be always-on for e.g. up to 16 ports without causing problems since it is only for traffic destined for the home node IP.
*** There should be links to the extender node web UIs from the home node web UI.
* Apply for internet-routable IPv6 subnet and give each node their own subnet + hand out IPv6 addresses to clients
* extender node firmware working on old atheros chipset
* Remote firmware updates working
** Use either DNS-SD to list and pick an update server at random or IPv6 multi-homing?
* Remote automated root password reset (via h.sudomesh.org)
* IPv6 support for extender nodes
* Figure out how to legally use lower 5 ghz frequencies and ensure fancy back-off features are working
* Run OpenVPN on exit node.
 
In the future:
* Support TDMA on Linux (Adri is working on FreeBSD support, maybe we can port).
* Support TDMA on Linux (Adri is working on FreeBSD support, maybe we can port).