Diese Anleitung führt durch die notwendigen Schritte, um eine Reticulum-Node aufzubauen. Es wird die empfohlene Hardware verwendet, wie im Artikel Benötigte Hardware beschrieben.

Anmerkung: Diese Art, eine Reticulum-Node aufzubauen, ist nur eine Möglichkeit. Je nach verwendeter Hardware, Software (Betriebssystem etc.) und Wissensstand kann von dieser Anleitung natürlich abgewichen werden.

Falls Probleme auftreten: Die offizielle Dokumentation von Reticulum sowie Community-Ressourcen bieten weiterführende Hilfe.

Betriebssystem auf microSD-Karte flashen

Zunächst muss ein Betriebssystem für den Raspberry Pi vorbereitet werden. Dazu sollte man den offiziellen Raspberry Pi Imager herunterladen:

https://www.raspberrypi.com/software/

Nach der Installation des Imagers muss die microSD-Karte mit dem Rechner verbunden werden. Anschließend kann der Imager gestartet werden.

In der Imager-Software werden folgende Parameter eingestellt:

Raspberry Pi Device: Raspberry Pi Zero 2 W
Operating System: Raspberry Pi OS Lite (64-bit)
Storage: die angeschlossene microSD-Karte

Danach können mit "Next" weitere Einstellungen getätigt werden.

-- Hier folgen zwei Bilder der Einstellungen --

Hostname und Username können natürlich frei gewählt werden. Bei SSID muss der eigene Netzwerkname und das Passwort eingetragen werden. Dies ermöglicht, zusammen mit den gezeigten SSH-Einstellungen, eine sofortige Verbindung des Pi ins eigene Netzwerk und eine Remote-Steuerung via Secure Shell.

Danach kann die microSD-Karte beschrieben werden. Nach Fertigstellung ist die microSD-Karte bereit und es kann mit dem nächsten Schritt fortgefahren werden.

Raspberry Pi starten und per SSH verbinden

Die vorbereitete microSD-Karte wird in den Pi gesteckt und der Pi mit dem Netzteil verbunden. Es ist darauf zu achten, den korrekten Anschluss zu verwenden.

-- Bild --

Danach sollte etwa eine Minute gewartet werden, um den initialen Boot-Vorgang abzuschließen.

Nun kann via Terminal auf dem Rechner und dem Befehl ssh username@hostname.local auf den Pi zugegriffen werden, also:

ssh reticulum@node.local

Oder, falls das nicht funktioniert:

ssh reticulum@ip-adresse-pi

Die IP-Adresse kann beispielsweise in den Router-Einstellungen ausgelesen werden. Nun besteht eine sichere, kabellose Verbindung zum Raspberry Pi.

Anmerkung: Falls ein anderer Username als reticulum gewählt wurde, muss natürlich dieser verwendet werden.

Raspberry Pi aktualisieren

Als nächstes wird der Pi auf den neuesten Stand gebracht. Dazu werden folgende Befehle ausgeführt:

sudo apt update && sudo apt upgrade

Falls Eingaben verlangt werden, diese mit y oder j bestätigen, je nach Sprache.

pip, pipx, NomadNet und RNS installieren

Danach wird pip installiert ("Pip installs packages"):

sudo apt install python3-pip

Und dann pipx:

sudo apt install pipx

Nun kann die eigentliche Reticulum-Software installiert werden. Im Rahmen dieser Anleitung wird das Nomad Network-Packet verwendet. Installiert wird Nomad Network mit folgendem Befehl:

pipx install nomadnet

Um den Pfad zu korrigieren:

pipx ensurepath

Im Anschluss darauf die SSH-Verbindung trennen:

exit

Und danach wieder einsteigen:

ssh reticulum@node.local

Am Ende werden noch sämtliche Reticulum-Utilities installiert:

pipx install rns

Nun ist NomadNet mitsamt aller notwendiger Software für Reticulum installiert.

NomadNet einmal starten

NomadNet kann nun gestartet werden:

nomadnet

Beim ersten Start wird ein Konfigurationsfile generiert, und das Programm startet.

-- Bild von NomadNet --

Durch klicken auf "Quit" wird das Programm vorerst geschlossen. Vorrangig müssen noch einige weitere Einstellungen vorgenommen werden.

NomadNet als systemd-Service einrichten

Damit die Software NomadNet bei Neustart des Pi automatisch startet, wird ein Automatismus eingerichtet.

Dazu wird folgender Befehl ausgeführt, und ein leeres File wird generiert:

sudo nano /etc/systemd/system/nomadnet.service

In dieses File wird folgendes kopiert:

[Unit]
Description=NomadNet Daemon
After=network.target

[Service]
User=reticulum
ExecStart=/home/reticulum/.local/bin/nomadnet --daemon
Restart=always
RestartSec=5
WorkingDirectory=/home/reticulum
Environment="PATH=/home/reticulum/.local/bin:/usr/bin:/bin"

[Install]
WantedBy=multi-user.target

Anmerkung: Falls ein anderer Username als reticulum gewählt wurde, muss natürlich dieser verwendet werden.

Danach wird das File mit Strg+O gespeichert, mit Enter bestätigt und mit Strg+X geschlossen.

Nun werden die folgenden Befehle ausgeführt, um den Service zu aktivieren:

sudo systemctl daemon-reload
sudo systemctl enable nomadnet
sudo systemctl start nomadnet

Optionalen täglichen Neustart einrichten

Abschließend wird noch sichergestellt, dass der Pi einmal täglich automatisch neu gestartet wird. Dieser Schritt ist optional, wird aber empfohlen.

Dazu wird folgende Datei geöffnet:

sudo crontab -e

Beim erstmaligen Öffnen wird gefragt, welcher Editor verwendet werden soll. Empfohlen wird nano, daher 1 eingeben und bestätigen.

Am Ende der geöffneten Datei wird folgendes kopiert:

45 4 * * * /sbin/reboot

Danach wird das File mit Strg+O gespeichert, mit Enter bestätigt und mit Strg+X geschlossen.

Damit ist die Installation des Raspberry Pi abgeschlossen. Vor der Konfiguration der Software wird noch das LoRa-Board bereit gemacht.

LoRa-Board vorbereiten und RNode flashen

Zuerst wird die mitgelieferte Antenne an das Board geschraubt. Das LoRa-Board sollte niemals ohne Antenne an die Stromzufuhr angeschlossen werden. Dies könnte zur Beschädigung der Hardware führen.

Danach wird das Board via dem micro-USB-Kabel mit dem Pi verbunden, an dem verbleibenden Port.

Nun wird das LoRa-Board mit der Software RNode geflasht, damit sie optimal mit Reticulum verwendet werden kann. Dazu wird folgendes ausgeführt:

rnodeconf --autoinstall

Es wird zunächst der Port gewählt, im Regelfall /dev/ttyACM0. Daher 1 eingeben und bestätigen.

Anmerkung: /dev/ttyACM0 kann je nach System abweichen.

Danach wird das Board gewählt:

[3]  LilyGO LoRa32 v2.1 (aka T3 v1.6 / T3 v1.6.1)

Bei der Frequenz folgendes wählen:

[2] 868/915/923 MHz

Im Anschluss mit y bestätigen.

Nun sollte das LoRa-Board geflasht werden. Das Display des Boards sollte danach so aussehen:

-- Bild des Boards --

Reticulum konfigurieren

Um die korrekten Parameter der Software einzustellen, wird zuerst die Konfigurationsdatei von Reticulum geöffnet:

nano /home/reticulum/.reticulum/config

Folgende Parameter werden geändert:

enable_transport = True

Vorher stand dieser Wert auf false.

Am Ende der Datei wird folgendes eingefügt, um das LoRa-Board einzubinden:

[[RNode LoRa Interface]]
  type = RNodeInterface
  enabled = yes
  port = /dev/ttyACM0
  # Falls der Port ein anderer ist, hier aendern
  frequency = 868500000
  # Die Frequenz muss fuer das komplette Netzwerk die Gleiche sein, hier 868.5 MHz
  bandwidth = 125000
  # Sollte bei 125 kHz bleiben
  txpower = 14
  # Abhaengig von der verwendeten Antenne und dem Gesetz;
  # mit der mitgelieferten Antenne (2dbi) und Oesterreich ist TX 14 optimal
  spreadingfactor = 9
  # Guter Kompromiss zwischen Reichweite und Airtime;
  # alle Nodes im Netz muessen den gleichen Faktor nutzen
  codingrate = 5

Wichtig: Die Frequenz muss zum Netzwerk passen. Alle Nodes im Netz sollten die gleichen Radio-Parameter verwenden.

Danach wird das File mit Strg+O gespeichert, mit Enter bestätigt und mit Strg+X geschlossen.

Service neu starten

Um die Änderungen umzusetzen, muss nomadnet.service neu gestartet werden:

sudo systemctl restart nomadnet

Abschluss

Die Grundeinstellungen sind damit abgeschlossen und die Reticulum-Node ist einsatzbereit.

Weitere Einstellungsmöglichkeiten werden im Artikel Verwendung des Netzwerkes erläutert.