Jump to content
Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Reticulum in Scotland: free, encrypted, run by the community

Reticulum over MeshCore and Meshtastic

From ScotMesh Wiki
Revision as of 11:48, 17 September 2026 by ScotMesh (talk | contribs) (New page: reaching Reticulum through a MeshCore or Meshtastic radio via the gateway at The Pole)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page is for people who already have a MeshCore or Meshtastic radio and want to use it to reach Reticulum, with no internet connection and no RNode. If you have never heard of Reticulum, start with what Reticulum is and come back.

What you are actually doing

Reticulum runs on your computer as usual. Normally it reaches the network over the internet (Connecting to ScotMesh) or over an RNode. Here it uses your MeshCore or Meshtastic radio as its link instead.

Reticulum's traffic is cut into small pieces and sent on a separate, private channel on your radio. A ScotMesh gateway on the same channel puts the pieces back together and passes them on to the backbone. That gateway is at The Pole in Cadham, and it is listed on node maps as ScotMesh RNode Cadham.

Your radio keeps working for its own network at the same time. MeshCore or Meshtastic users around you never see the tunnel, because it runs on its own channel with its own key.

Is this for you?

If you have… Use
An internet connection, even a slow one Connecting to ScotMesh. It is faster and costs no airtime.
An RNode, or a board you could flash as one RNode. Reticulum runs natively on it and is many times faster.
Only a MeshCore or Meshtastic radio, within reach of the gateway This page.

Expect it to be slow. It is fine for messages (LXMF), the chat room and small Nomad Network pages. It is no good for files or voice.

The two routes

Over MeshCore Over Meshtastic
Status Working — gateway live at The Pole Working — gateway live at The Pole since 17 September 2026. New, so tell us how it goes.
Your radio MeshCore companion firmware v1.17 or later, over USB, Bluetooth or WiFi Any Meshtastic node, over USB, Bluetooth or WiFi
Radio settings UK/EU Narrow: 869.618 MHz, 62.5 kHz, SF8, CR 4/8 EU_868, LongFast
Region sco
Software MeshCore_Raw_Interface.py from ScotMesh/RNS_Over_Meshcore Meshtastic_Interface.py from ScotMesh/RNS_Over_Meshtastic
Speed At best a few hundred bytes a second Slower: one piece of up to 155 bytes every 8 seconds on LongFast

Before you start

  • Reticulum installed on a computer (Installing Reticulum), or MeshChatX (Choosing a client).
  • Your radio, connected to that computer.
  • A path to the gateway: in range of The Pole, or reaching it through MeshCore repeaters that relay the sco region.
  • The tunnel channel details, in the table below.

Tunnel details

These are shared on purpose, so anyone can join the tunnel. The channel key only keeps the tunnel's traffic separate from ordinary channels; it is not what keeps you private. Reticulum encrypts everything you send end to end, whatever it travels over.

MeshCore Meshtastic
Channel name RNSTunnel RNS
Secret 38a46b4349a14b05c70328f444932033 in the link below
Add it with Reticulum sets it on your radio for you (step 3) this channel link — opens in the Meshtastic app and adds the channel next to your own
Region sco

Over MeshCore

Diagram: Reticulum on your computer talks to your MeshCore companion radio over USB, Bluetooth or WiFi. The radio carries the tunnel on the RNSTunnel channel, directly or through MeshCore repeaters in region sco, to The Pole at Cadham, where the openHop repeater hands it to the RNSBridge companion and rnsd, which connects to the ScotMesh backbone over TCP. Broadcasts go as flooded channel datagrams of up to 148 bytes; traffic to a known peer goes as raw packets of up to 140 bytes along the repeater path.
How Reticulum travels over MeshCore to the ScotMesh backbone

1. Set up the radio

  1. Flash companion firmware, v1.17 or later. Earlier versions lack the two commands the tunnel uses. Repeater or room server firmware will not work.
  2. Set the radio to UK/EU Narrow: 869.618 MHz, 62.5 kHz, SF8, coding rate 4/8.
  3. Pick a spare channel slot for the tunnel, such as 7. Reticulum writes its channel into that slot when it connects, so do not use 0: on most radios that is your Public channel, and it would be replaced.

A companion radio talks to one app at a time. While Reticulum is using it, your phone's MeshCore app cannot connect, and the other way round.

2. Get the interface

Download Interface/MeshCore_Raw_Interface.py from ScotMesh/RNS_Over_Meshcore and put it in Reticulum's interfaces folder:

System Folder
Linux, macOS ~/.reticulum/interfaces/
Windows C:\Users\<you>\.reticulum\interfaces\

Create the folder if it is not there. The interface needs nothing beyond Reticulum itself, plus one library for your connection:

pip install pyserial   # USB
pip install bleak      # Bluetooth

Use ~/reticulum/bin/pip instead if you installed Reticulum in a virtual environment. WiFi (TCP) needs nothing extra.

3. Add it to your config

Add this block under [interfaces] in your Reticulum config file (where to find it: Connecting to ScotMesh). Keep exactly one of the three connection blocks.

  [[ScotMesh over MeshCore]]
    type = MeshCore_Raw_Interface
    interface_enabled = yes

    # USB
    transport = serial
    port = /dev/ttyUSB0          # Windows: COM3 or similar
    baudrate = 115200

    # Bluetooth - instead of the USB lines
    # transport = ble
    # ble_name = MeshCore        # part of the radio's Bluetooth name

    # WiFi - instead of the USB lines
    # transport = tcp
    # host = 192.168.1.50        # the radio's address
    # tcp_port = 5000

    # The ScotMesh tunnel
    channel_idx = 7              # a spare slot, never 0
    channel_name = RNSTunnel
    channel_secret = 38a46b4349a14b05c70328f444932033
    flood_scope = sco

    # You are an end user, not a relay
    can_route = no

Leave mode out: the default is right for an end user.

4. Start it and check

  1. Start Reticulum: rnsd, or restart it if it was already running.
  2. Run rnstatus. ScotMesh over MeshCore should be listed as Up.
  3. Look for the ScotMesh node. The first answer can take a minute or two over radio.
rnpath 10a839df2c50635bcb0c8a299b9ca0f8

A reply such as Path found … via … on MeshCore_Raw_Interface means you are through. From here everything in Services and addresses works, just slowly.

With MeshChatX instead

  1. Open Settings, then Interfaces, and install a custom interface module. Upload MeshCore_Raw_Interface.py.
  2. Add an interface of type MeshCore_Raw_Interface with the same settings as the block above.
  3. Restart when asked.

MeshChatX already includes the USB and Bluetooth libraries.

On an Android phone, Sideband can only use the WiFi (TCP) connection. See the fork's README for its service plugin.


Over Meshtastic

Diagram: Reticulum on your computer talks to your Meshtastic node over USB, Bluetooth or WiFi. The node carries the tunnel on its RNS channel, on EU_868 LongFast, directly or through other Meshtastic nodes, to The Pole at Cadham, where RepeaterTastic's radio hands it to the hosted node RSN Bridge and rnsd, which connects to the ScotMesh backbone over TCP. Each Reticulum packet is cut into pieces of up to 155 bytes, sent one every 8 seconds, and missing pieces are asked for again.
How Reticulum travels over Meshtastic to the ScotMesh backbone

1. Set up the radio

  1. Any Meshtastic node on EU_868 with the LongFast preset, which is the default in the UK.
  2. Open the channel link on the phone or computer your node is paired with. It adds a channel called RNS next to your own.
  3. In the Meshtastic app's channel list, note which slot RNS landed in. It is usually 1, the first slot after your primary channel.

Your normal channels keep working. The node can stay paired with your phone while Reticulum uses it over USB or WiFi.

2. Get the Meshtastic interface

Download Interface/Meshtastic_Interface.py from ScotMesh/RNS_Over_Meshtastic into Reticulum's interfaces folder (the same folder as for MeshCore). It needs the Meshtastic library:

pip install meshtastic

Use ScotMesh's copy, not the original. The original can only use your primary channel, and it sends pieces too big for the gateway.

3. Add the Meshtastic block to your config

Keep exactly one of the three connection lines.

  [[ScotMesh over Meshtastic]]
    type = Meshtastic_Interface
    enabled = yes

    port = /dev/ttyUSB0            # USB (Windows: COM3 or similar)
    # tcp_port = 192.168.1.60      # WiFi: the node's address
    # ble_port = Meshtastic_1234   # Bluetooth: the node's name

    data_speed = 0                 # LongFast
    channel_index = 1              # the slot RNS landed in
    hop_limit = 3

Leave mode out, as for MeshCore.

4. Start it and check it

As for MeshCore:

  1. Start rnsd.
  2. Check that ScotMesh over Meshtastic is Up in rnstatus.
  3. Run rnpath 10a839df2c50635bcb0c8a299b9ca0f8.

Allow a few minutes: Meshtastic sends only one piece every 8 seconds.


Keeping the air clear

The UK band these radios use allows each transmitter only 10% of the time, and everyone shares it.

  • Do not set mode = gateway on your end. A gateway pushes every route it knows onto the radio and can flood the channel.
  • Do not turn on enable_transport just for this. Your machine does not need to relay for others.
  • Send messages, not files. A single photo can hold the channel for many minutes.
  • Keep can_route = no unless ScotMesh has asked you to run a relay.

If it does not work

What you see Try
The interface is not listed in rnstatus The file is not in the interfaces folder, or type is misspelt. Check the Reticulum log.
Listed, but Down Wrong port or address, or another app (your phone) is connected to the radio.
unsupported command in the log The radio's firmware is older than v1.17. Update the companion firmware.
Up, but rnpath never finds anything Wrong channel secret, wrong radio settings, or no path to The Pole. Check the secret against Tunnel details first, then the radio settings, then ask in the chat room whether anyone can hear you.
Your Public channel disappeared channel_idx was 0. Pick a spare slot, then add the Public channel back in the MeshCore app.
Meshtastic: Up, but nothing arrives channel_index doesn't match the slot the RNS channel is in, or the node isn't on EU_868 LongFast.

See also