// community mesh

Een community mesh opzetten

Een community mesh bouw je zodra het netwerk groter wordt dan een persoon of een enkel board. Denk aan een wijk, een campus of een stad, met meerdere operators, gedeelde radio-instellingen en een of meer gateways naar de backbone.

Hoe het eruit ziet

Een community mesh is een mix van node types:

Node type Wat het doet
Edge nodes RNodes, Ratdecks, laptops met een LoRa radio. Spreken alleen via de ether en zijn afhankelijk van de rest van het mesh om verder te komen dan hun radiohorizon.
Transport routers Altijd-aan nodes, meestal een Raspberry Pi of SBC met een RNode. Sturen packets door tussen LoRa buren en announcen paden namens edge devices die komen en gaan.
IP gateways Een subset van transport routers met ook een internet verbinding. Bruggen het lokale LoRa segment naar breder Reticulum over TCP. Zonder minstens een gateway is het mesh beperkt tot zijn radio-bereik.

Mik op meer dan een gateway en meer dan een operator. Dan is niemand eigenaar van het netwerk en hangt het niet van een persoon af.

Afstemmen van radio-instellingen

Twee RNodes op dezelfde frequentie maar met een andere spreading factor zien elkaar niet. Voordat iemand deployt, moeten de operators het eens zijn over vier getallen:

Parameter ReticulumNet standaard Toelichting
Frequentie869.463 MHzEU band, 869.463 (EU sub-band met hogere toegestane TX power)
Bandbreedte125 kHzBreder is sneller maar korter bereik
Spreading FactorSF8Compromis bereik/doorvoer
Coding Rate5Hoger vangt meer fouten op maar kost meer airtime

Leg de parameters vast en zorg dat elke operator ze overneemt. Wijkt een node af, dan valt hij zonder melding uit het mesh.

Een gateway node opzetten

Een gateway is een transport node met zowel een LoRa interface als een internet interface:

# Gateway config: LoRa + internet

[reticulum]

enable_transport = yes

[interfaces]

[[LoRa]]

type = RNodeInterface

port = /dev/ttyUSB0

frequency = 869463000

bandwidth = 125000

spreadingfactor = 8

codingrate = 5

[[Internet]]

type = TCPClientInterface

target_host = voorbeeld.nl

target_port = 4242

Gebruik /dev/serial/by-id/... paden voor USB radio's. Device nummers zijn niet stabiel na reboots. Draai als systemd service voor automatische herstart. Zie node opzetten.

Schalen

Elke operator die een transport node toevoegt, vergroot het bereik. Elke extra gateway is een tweede route naar internet als er een uitvalt.

Wanneer het mesh groot genoeg is voor meerdere LoRa segmenten die elkaar niet direct bereiken, verbinden gateways de segmenten via internet. Zo is ReticulumNet opgezet: lokale LoRa segmenten, verbonden via een backbone van transport nodes op internet.

Voeg een propagation node toe (lxmd -p) als je berichten wilt bewaren voor offline leden. Zonder propagation node is berichtbezorging best-effort en synchroon.