FreedomNode
The FreedomNode is a wireless router which acts as an intermediary between the "neighborhood-scale" mesh network and a "building-scale" WiFi network.
The scope of the FreedomNode will overlap with the FreedomBox in some situations, in which case some hardware might be able to fill both roles.
Overview
TODO: clean and split up this prose?
The FreedomNode is the foundation of the Free Network technology stack – a device that will allow neighbors to communicate with one another directly, without need for a paid service provider. We think of it as the ultimate sharing machine, allowing you to privately store, selectively distribute and globally publish a wide range of materials, using a variety of connectivity options.
Lets start with the user experience, and from there we can seek to understand the technical aspects. For the time being, we’ll talk only about the experience of the node as a standalone device, and exclude the (likely) possibility that some users will boot the software on existing machines. The node presents a uniform interface across client devices using HTTP(S) – a collection of stylesheets allow the interface to adapt successfully to a wide array of different screen resolutions and input methods.
In simple terms, you interact with your node by opening a browser – any browser – and navigating to your node’s address. That address can be a global name such as a user-owned DNS entry, or a third-party subdomain such as username.fnf.tel, or, from the same local network, a local address, such as ‘https://mynode’. Alternatively, the node can be accessed from its unique IPv6 address.
Navigating to the address of a node prompts the user to authenticate. This is done using the F-Pass system. F-Pass is the key to trust and addressing on the Free Network – tying together x.509, PGP, IPv6, and secure, one time passwords.
Once authenticated, the user is presented with a main menu that provides access to all of the essential functions of the node. Icons exist for Blogging, Microblogging, Planning (like plans.txt on Unix or GrinnellPlans), Mail, and an A/V Center (photos, music, video, and files). An additional icon leads to a list of contacts, with a final icon leading to system settings.
Users can be organized into aspects, with a ‘Neighbor’ aspect generated automatically for those with whom you can communicate without need of an Internet Service Provider. From the contacts page, a user can access the blog, microblog, plan, or shared media of another user. Users have precise control over who can access each piece of media on their node. Sharing is encrypted by default, anonymized when desired, and opportunistically peer-to-peer – that means that we all cooperate to move each others’ messages, when it is possible, rather than paying a professional bit-mover
Design
TODO: clean and split up this prose?
Now that we’ve established what the node is designed to accomplish, let’s talk about its actual design. At the core of the FreedomNode is a small-form computer, designed to run continuously for years on end. The computer’s onboard capabilities can be expanded with USB mass storage, and miniPCI radio modules.
On bare metal, the node will run genode, a novel GPL operating system architecture that allows for true fault isolation and tolerance. On top of that, a lightweight debian install will be used to ensure long-term package support and stability. The user-facing services run on top of Debian, powered by a collection of existing open-source daemons and tools. These services benefit from the tight integration of a unified interface and a unified authentication and identity management system.
Add to that the ability to communicate without using the telco’s wires, and you’ve got a truly disruptive piece of tech. The Byzantium Project has built a solid foundation for mesh communications – their routing scheme (based on the babel protocol) will be integrated with nodal services so that local traffic never has to leave the neighborhood network. There is much to do, but we aim to have the FreedomNode ready to release in 18 months or less – join us now, and help us build the greatest tool in the liberation technology toolkit.
Software
For an operating system, FreedomNodes will probably run OpenWrt. If the hardware resources are available, pfSense might be preferable.
Possible Hardware
TP-Link TL-MR3020
Very small low power travel hotspot. Designed to share 3G uplink from a USB dongle. 400MHz Atheros AR7240, 802.11b/g/n, 4MB Flash, 32MB RAM, 1x ethernet port, 1x USB host port, powered by miniUSB port. Multiple almost-identical versions of this device exist. $40 (from amazon).
TP-Link TL-WR703N
Not to be confused with the TL-WR702N, which has insufficient Flash and RAM for most firmware
Very small USB-powered travel router, intended to be used as WiFi hotspot for multiple devices and/or sharing a 3G USB dongle's internet connection. Not yet FCC approved for the US and thus not yet as readily available as the cheaper 702 model? Price around $30 (overseas?)
32MB RAM, 4MB Flash, 1x USB 2.0 Host port, 1x USB device port (for power), 1x Ethernet port, Atheros AR9331 chipset.
- Village Telco mailing list thread
- WikiDevi page
- FNF mailing list thread on this hardware (June 2012)
Ubiquity RouterStation Pro
This device is End-of-Life and no longer in production
Reliable bare-board router. Does not come with wireless radios by default, has 3x (!) miniPCI slots (not PCIe). 128MB RAM, runs OpenWRT, Atheros chipset, 3x gigabit ethernet LAN ports, 1x ethernet WAN. Retailed for $80 (without radios).
Resources
- Chili project page
- SolderPad Project
- Mailing list discussion on hardware platform (June 9th, 2012)
- Blog post about the FreedomNode (December 2011)
Free Network Infrastructure Projects (edit) | |
---|---|
Box - Node - Tower - Tunnel - Link Network Operations Center - Lab - VoIP - Stack - Overview |