Kenya network installation, (17 – 27 March 2022)

8 June 2022

David Johnson

The purpose of this trip was to build the Kilifi wireless network, setup the iNethi platform in Kilifi, discuss integration of Community Inclusion Currencies with the iNethi (to purchase internet vouchers and digital services on the iNethi platform), and chew through some disaggregation and decentralization philosophy on Stand-Up Paddleboards, over fresh fish and wine and between some music jam sessions and chess. 

The wireless network

We arrived in Kilifi with a suitcase full of wireless routers (five newer generation ubiquity mesh AC lites and some old generation donated mesh gear). We have been working with Dirk van der Walt who built Radiusdesk – an open source project to run and manage a mesh-based ISP to integrate Radiusdesk into our suite of tools in iNethi. The beauty of radiusdesk is that the mesh firmware runs on any hardware that supports OpenWRT; this includes most of the modern networking equipment as well as old networking equipment (we don’t repurpose old electronics enough). This is a stark contrast to using the cloud controllers available from vendors like ubiquity that only operate with their own equipment. RadiusDesk allows you to make use of older equipment (1907 hardware devices at last count) that an ISP may donate when upgrading that may be perfectly suitable for the speeds required in a community network.

We programmed five Ubiquity mesh AC lite’s (two radio devices) with Radiusdesk firmware as well two CSIR High Performance Nodes (HPNs). HPNs are custom radios that make use of Gateworks Avilla boards with three 802.11a/b/g radios capable of speeds up to 54 Mbps in mesh or access point mode – 10-year-old equipment that still gets the job done. We also used a Ubiquity liteAP and Ubiquity powerbeams to build long-range point to point links.

The design of the network is shown in the figure below. The Internet backhaul comes from the DAPA tower at Grassroots Economics (GE) offices. The iNethi server is placed at GE office to spread free local iNethi services as well as voucher-based internet services to the mesh. Long range links from the DAPA tower to the GE office, a 20m high apartment building, as well as Will Rudick’s house are built with Ubiquity power beam client devices and a Ubiquity LiteAP access point. Three-radio High Performance Mesh nodes aka “bokkies” are placed on the apartment building as well as GE offices. 

These HPNs spread the mesh to smaller two-radio ubiquity mesh AC lites aka “white rabbits”. The “white rabbits” are ideal for shorter range mesh networks along a street or between houses, whereas the “bokkies” are ideal for building longer range mesh networks between high sites or cluster heads. 

 

 

By the end of the trip, we had managed to install the Ubiquity LiteAP on the DAPA tower, erect two masts on the GE office and apartment building and install a power beam on the GE office building and apartment building. To test the system, we initially placed the iNethi server setup at an apartment building where there was internet access. 

Setup iNethi in Kilifi

The philosophy of iNethi has always been to provide a combination of (1) high value curated free content from the Internet that is valuable to the local community, such as Kahn academy and Wikipedia in local languages, (2) tools to encourage local file sharing, communication and content creation, such as nextcloud – a file sharing system, and Jellyfin – a local video and music streaming service, and (3) tools to provide low cost internet, such as RadiusDesk – a local network management and internet voucher system.

We configured a localized iNethi splash menu (the menu that appears on your screen when you connect to the local WiFi network) for Kilifi that looks as follows:

The education-based services and content such as Wikipedia, TED talks and scratch (a tool that teaches you to program your own games using Lego-like building blocks), will be free for the community members to use at all times. Services like Nextcloud (to store and share files) and various games will be services within iNethi club that users need to pay for with community currency. Various packages will be available to have access to inethi club: (1) When buying internet vouchers, iNethi club services are automatically bolted on e.g. 1 day of internet access, provides 7 days of iNethi club services and 7 days of internet access provides 30 days of inethi club services. (2) iNethi club services can also be bought individually. A month’s access to iNethi club can be purchased with 10 SRF (Sarafu in Kenya) or 1 KRN (Krone in South Africa).

Discussions on integration of CIC with iNethi


The current Grassroots economics CIC system runs on USSD. This allows businesses to easily trade with each other in community currency by using any mobile phone; even an old feature phone. A user’s community currency account is identified by their phone number ¬– making it easy to remember – even though, unbeknownst to the user, this phone number is magically mapped to a blockchain wallet address on the backend.
When purchasing goods or services in a community currency, A user makes use of a USSD menu to send community currency from their own wallet to another user’s wallet.

While in Kenya, we discussed mechanisms to integrate this with the iNethi system, where users can purchase internet vouchers or iNethi-based services using community currency. At first, we explored the possibility of building a web application to allow users to send and receive community currency for physical goods and services or for businesses that were selling digital services on iNethi. After some initial investigation, we realized that would require some major security tweaks to allowing direct authentication with the CIC system. For the first Minimum Viable Product, we decided to make use of the existing USSD system to allow users to purchase iNethi services and internet vouchers as well as send community currency between each other; the design of this system is the topic of a separate blog.


There are unfortunately high costs to using a USSD system and evolving to a web-based system will be a high priority over the coming months to save on unnecessary costs.
For Africa’s Talking USSD service (the service used by grassroots economics), the cost of a USSD session is covered by the code owner or a combination of the code owner and the user and the charges in South Africa are ZAR 0.50 (per 20 seconds). For an outgoing SMS (used to send voucher codes), this is ZAR 0.20 per SMS. You are also required to pay a monthly maintenance fee of ZAR 1,000.


In Kenya USSD costs are more affordable, and cost between 1.25 KES (ZAR 0.17) and 1.5 KES (ZAR 0.20) per session, with no session limit. The monthly maintenance fee costs between KES 10,000 (ZAR 1,322) and KES 40,000 (ZAR 5,290) for a shared USSD code depending on the type of code used. For an outgoing SMS (used to send voucher codes), this ranges between KES 0.4 (ZAR 0.05) and KES 0.8 (ZAR 0.11) per SMS depending on bulk purchasing options chosen.

Philosophizing on decentralization and disaggregation


During our many meals, chess games, and glasses of wine, we pondered the world of decentralization. Will came up with this great piece of thinking - whether the topic is food, power, internet, or finance, the questions are the same: how the resource is managed, what protocols are used to manage the resource, how are risks mitigated, how are connections made, are there limits to sizes of clusters etc.


In a sense many of these utilities reflect how humans build connections, structures, and patterns either organically (bottom-up or community built) or hierarchically (top-down or government built). For bottom-up built connections, neighborhoods and communities can self-organize themselves into clusters using systems like community food markets, local currencies, micro grids, or self-built community mesh networks. Whereas Governments create more formalized structures like power and water utilities, education facilities that serve national or wider localized interests.


A mix of centralized and decentralized infrastructures can co-exist; A government can ensure that common spaces are protected and created where more community-based or decentralized facilities or services can exist, such as common spaces where community markets can trade, or government subsidized internet backhaul links which community networks can grow from. Government can also create regulation that allows decentralized infrastructure and services to flourish, such as regulation that creates low-cost or zero-cost spectrum or network licenses for community networks to be built, or regulation that allows community currencies to easily be created given a set of conditions that are there to protect citizens from fraud or abuse by scams or fraudsters.


There are some natural lower and upper bounds on decentralized systems that determine sizes that work. Several studies are helpful guides. Dunbar’s number (proposed in the 1990s by British anthropologist Robin Dunbar) provides a suggested cognitive limit to the number of people with whom one can maintain stable social relationships. Dunbar proposed that humans can comfortably maintain 150 stable relationships. As all decentralized systems are ultimately linked back to social relationships, these numbers provide guiding size limits. The “law of the few” by Gladwell also provides insights into how clustering around an idea can grow. He states that 80% of the work will be done by 20% of the people and that success of any kind relies on involvement of three key people: (1) Connectors who know large numbers of people and who are in the habit of making introductions, (2) mavens who connect people with new information, and (3) salespeople or persuaders who have powerful negotiation skills. These three key people will be in the group of 20% that move an idea to reality.


Given some of these parameters, one can see that cluster around a decentralized community currency, a community mesh network, or a cooperative neighbourhood food garden will likely not succeed with e.g., 50 people and will also become unwieldly and too large with 500,000 people; a typical neighbourhood of 1,000 to 20,000 could contain sufficient critical mass to maintain an 80/20 principle, connectors, mavens and salespeople, and below the cognitive limit of stable social relationships to continue sustaining the service. There are also some natural resource limits that may define cluster sizes – there may be geographical (e.g., how much land is available to grow a community garden), capacity (e.g., how much internet capacity can be brought into a community), or market-based (e.g., size of the market for the specific goods and services).


Below are some examples of various service layers (hierarchical and distributed) with the utility they provide, management requirement to sustain them, control of usage and access of the utility, protocols requirement to keep them functioning, systems to mitigate risk, mechanisms to bootstrap an initial topology, description of how connections are made and what limits cluster sizes.