Amateur Radio, Freedom and Privacy, Mesh Networks, Technology, Tutorial, Ubuntu

HOW TO GET STARTED WITH RETICULUM ON UBUNTU MACHINE

What is this all about?

I discovered Reticulum and wanted to simply quickly test it with two laptops (to start) to get a quick feel. I decided I would also use the Sideband app as the GUI interface for it because it works on Android and I assumed that would be my second test.

I based this tutorial on the Getting Started Fast with Reticulum page and a few things I’ve learned on my own.

So that’s what this all about if you want to join me.

1. Setting up RNS so that Reticulum can do something on your ubuntu machine

  1. Set up a Project Directory

I did this in my Home directory. Do it where you want. Do it by creating a folder in your favourite way. I called it ‘Reticulum’ because mama said I’m creative.

  1. Set up Python PIP

PIP is a python packaging manager. You will need it to install the Open Webui stuff (the front-facing software to interact with the AI)

Run this command in your terminal if it’s not installed:

sudo apt install python3-pip

  1. Install Python Virtual Environment tool

Run this command so that your computer has capability to create a virtual environment:

sudo apt install python3.12-venv

(you may need to adjust that number / command as this blog ages over time, keep in mind)

  1. Create your Virtual Environment in your Project Directory

Navigate to your project directory that you created in Step 1 above using the terminal’s cd command

Run this command to create the virtual environment, once you’ve navigated inside it:

python3 -m venv .venv

You should now have the hidden .venv directory inside your directory. You can check by running this command while inside: ls -al

  1. Activate the virtual environment adjusting the following code to match whatever you set up:

source Reticulum/.venv/bin/activate

You should now see your terminal switch things up and show (.venv) before your username showing the virtual environment is working.

Pro Tip! If you want to get out of this activated virtual environment mode, just run deactivate in your terminal and it gets you back to normal-land.

  1. Download and Install Open WebUi in the virtual Environment

Instead of the command listed in the blog navigate into your project directory and run:

.venv/bin/pip install rns

You should start to see progress in your terminal.

  1. Test if it’s working by firing up the rnsd command (starts up Reticulum engine):

rnsd

It should search for, fail to find, and then create your config file, and, if all is working, you should see ‘Started rnsd version 1.0.0`’ on the screen

That concludes the section of setting up RNS so that Reticulum ‘can work on your machine’ (in theory)

Getting Sideband Reticulum App going on Ubuntu

  1. Go here and choose Linux
  2. Read all the instructions including:
    a) installing dependencies
    b) installing the app and
    c) the ‘ensurepath’ command (yes, this seems mandatory, see below for more…)
    c) some useful points

It’s pretty self explanatory and well done.

  1. Do some pipx command to ensure some path with this command:

pipx ensurepath

  1. Exit your terminal and re-open it.
  2. Start the app as per the instructions, in the terminal, with this command:

sideband

It should open. If not, meh. No idea. Re-read above? 🙂

Repeat the same rodeo on your second ubuntu machine…

Now that you have your first ubuntu machine going, all you have to do is repeat this whole thing one more time on another ubuntu machine and then try a connection (see next section)! Have fun – and don’t shoot the mailman… ain’t my fault…

Get it on an android device

I just went to the same Sideband install page. I downloaded the .apk file from the Github page and gave my browser the right to install this unauthorized app from source. Once I gave the permission, the app installed without issue and I was able to open it.

Making your first reticulum connections

Now you have ubuntu machine 1 and 2 both with Reticulum installed and both with Sideband app installed. Now it’s time to see if this whole thing was worth it!

See my notes below about trying to add an address that you have already communicated with and a few other learning notes below, but otherwise here’s what you do:

  • Have access to a wifi router. Doesn’t matter if it has internet connected or not – just need all your devices to connect to it so they are on the same network. Maybe for your test bed you can disable the password entirely and set up a household Reticulum network? 🙂
  • Connect to the wifi network on all the devices with Reticulum / Sideband
  • Each device ‘should’ auto broadcast the device to the network, but if not, you can push ‘broadcast’ button which will do the same thing manually
  • Go into ‘announce stream’ where you should see your devices
  • Once you see the device, select ‘converse’
  • Chat away

That’s it. You’re a hero and don’t let anyone tell you otherwise.

Some random learning I made to save you some time

In no particular order, some bullet point learning to save you some wasted time:

  • If you have connected with a device by means of automatically connecting (normal way) and then you try to add them by means of ‘add a contact’ it won’t work until you delete the contact in your conversation screen and then manually add them again. I guess it won’t allow a duplicate address to be added.. software bug I will eventually report to devs
  • To connect to someone, go into ‘preferences’ in the Sideband app. In there you will find your long LXMF address with numbers and letters. That’s what you share with others so they can add you…
  • If you make changes in the app, it’s smart to shut the app completely and re-open.
  • For some reason, my work wifi network would NOT allow these connections. As soon as I disconnected from this network, reconnected to my personal wifi router with zero internet – it worked awesome. ha. Love it…

Conclusions

Super impressive. Although the Sideband app is not super dialed in in terms of being intuitive – it’s also very nice. I wish I could write code as I would put this on Ubuntu Touch right away!

Further, from my understanding, you can connect to LoRa devices (like Meshtastic) so this is truly outstanding. I will be focusing on this project now that I’ve seen it in action.

Excellent work devs!!

Tagged , , , ,

Leave a Reply

Your email address will not be published. Required fields are marked *