Installation
Reticulum is written in Python and installs easily via pip. Simply run: pip install rns. This installs the Reticulum Network Stack along with the core utilities.
Basic Concepts
Before diving in, understand these key concepts:
- Identity: A cryptographic key pair that represents you on the network
- Destination: An address derived from an identity, used for routing
- Interface: A transport medium (LoRa, TCP, serial, etc.)
- Transport Node: A node that routes traffic for other nodes
Step 1: Start the Daemon
Run the Reticulum daemon with the rnsd command. On first run, Reticulum creates a default configuration at ~/.reticulum/config. The daemon starts with a local UDP interface enabled by default, allowing auto-discovery of other nodes on the same LAN.
Step 2: Explore with rnstatus
Check your Reticulum status with the rnstatus command. This shows your active interfaces, known paths, and traffic statistics.
Step 3: Add a LoRa Interface (Optional)
If you have an RNode (a LoRa transceiver running RNode firmware), you can add it to your Reticulum config by defining an RNodeInterface section with parameters like port, frequency, bandwidth, spreading factor, coding rate, and transmit power. Restart rnsd to activate the new interface.
Step 4: Install LXMF and NomadNet
For messaging capabilities, install the LXMF stack: pip install lxmf, then pip install nomadnet.
Step 5: Launch NomadNet
Start the NomadNet terminal application with the nomadnet command. NomadNet provides a text-based interface for sending and receiving messages, hosting and browsing node pages, and managing your identity and contacts.
Step 6: Send Your First Message
In NomadNet:
The message is encrypted end-to-end using your identities. If the recipient is offline, the message is queued and delivered when they reconnect.
Adding TCP Transport
To connect Reticulum nodes over the internet, add a TCP interface to your config. On the server, define a TCPServerInterface with listen_ip and listen_port. On the client, define a TCPClientInterface pointing to the server IP and port.
Tips for Success
- Start simple: Begin with the default UDP interface on your LAN before adding LoRa or TCP
- Enable Transport: Set enable_transport = Yes in your config to make your node relay traffic
- Propagation Nodes: Set up LXMF propagation nodes for reliable message delivery in larger networks
- Multiple interfaces: Reticulum excels at bridging different transport media; experiment with combinations