SVXReflector – Connections between SVXLink installations

SVXServer developed by Adi Bier DL1HRC used the existing inbuilt logic of RemoteTrx within SVXLink. RemoteTrx was designed for for exactly what it says, for feeding remote installations to a central repeater using the voting strategy in the RepeaterLogic, so whilst it worked, it was hungry on resources.

Tobias SM0SVX has revisited the concept and has completely changed how independent repeaters or another nodal systems can communicate with each other. By creating a new logic module to make the possible connection, it makes a change in the way it works. This new SvxReflectorLogic is not referenced like the other logic modules in SvxLink, but requires a complete reload of all the software in the repeaters and the server that is to be used for the connection.

In any machine that has the current installation running the following instructions need to be followed.

In the current build on the computers in use (Raspberry, Linux etc) it will first be necessary to cd svxlink to enter the existing build. Then sudo git fetch to install the most up-to-date package. Then cd to the src/build folder and carry out a sudo make install the updated packages.

Next we need to introduce the new software build to a Linux PC intended for use on the chosen network. You will need to watch the svxlink.org on github.com as while the build is in development, there may be changes taking place on a daily basis.

In a linux terminal window on the PC type:

sudo git clone –branch svxreflector –single-branch https://github.com/sm0svx/svxlink.git

which will create a new svxlink folder in our computer.

We need to go to the source folder to start. So we cd svxlink/src, and then we follow the instructions from the INSTALL.adoc folder from this page – https://github.com/sm0svx/svxlink/tree/svxreflector that lists exactly the commands for the compilation. Always use the sudo command before each of the lines to allow correct permissions in file creation and this command for the cmake.

sudo cmake -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc \
      -DLOCAL_STATE_DIR=/var ..

If you have an installation already then this compilation will only create updated files and not overwrite any config files that exist already.

We will need to add a section to the etc/svxlink/svxlink.conf in each of the  repeaters to communicate to the server also installed and compiled with the same software, and in the server we will also need to modify its /etc/svxlink/svxreflector.conf to permit the sever to communicate with the other nodes in the network.

So first we edit this in sudo nano /etc/svxlink/svxlink.conf and add this:

[GLOBAL]
LOGICS=RepeaterLogic,ReflectorLogic
LINKS=ReflectorLink

[RepeaterLogic]
...

[ReflectorLogic]
TYPE=Reflector
HOST=reflector.example.com
CALLSIGN=MYCALL
AUTH_KEY="The password"
AUDIO_CODEC=OPUS

[ReflectorLink]
CONNECT_LOGICS=RepeaterLogic:99:REF,ReflectorLogic
DEFAULT_ACTIVE=1
TIMEOUT=10

In the server sudo nano /etc/svxlink/svxreflector.conf

[GLOBAL]
TIMESTAMP_FORMAT=”%c”
LISTEN_PORT=5300
AUTH_KEY=”Change this key now!”

is what you will see. You need to syncronise the passwords in the server and the repeaters.

We will all find the problems together at this point.

The one problem discovered was that compiling a new installation over an existing one fails to write the new library files over the old in the make install.

The solution is simple.

sudo cp -r -i svxlink/src/build/lib/* /usr/lib/arm-linux-gnueabihf (on the raspberry pi)

sudo cp -r -i svxlink/src/build/lib/* /usr/lib/i386-linux-gnu (on the pc server)
F5ZGM-R and F5ZJE can communicate with each other using Svxreflector on a pc on the same network.

Advertisements

Published by

f5vmr

Radio Amateur and Professional radio operator and IT professional for 40 years so don't say I know little of what I say.

4 thoughts on “SVXReflector – Connections between SVXLink installations”

  1. Hi, doesn’t work:
    Starting logic: ReflectorLogic
    *** ERROR: Unknown logic type “Reflector” specified for logic ReflectorLogic.
    *** WARNING: Logic ReflectorLogic has been specified in logic link ReflectorLink but that logic is missing. Removing logic from link.
    Activating link ReflectorLink
    73 Marco IW0RED

    Like

    1. Sorry for the late reply. IN updating any installation of SVXLink with this model, som eo fthe libraries do not get overwritten. Read all the posts on svxlink.org issue #254 WIP SvxReflector to see the solution. I could explain here but it would take a little long. I have written the fix on my svxlink facebook page.

      Like

    2. Hello!
      Did you solve you problem?
      I installed svxlink on new server. And have the same error:

      *** ERROR: Unknown logic type “Reflector” specified for logic ReflectorLogic.
      *** WARNING: Logic ReflectorLogic has been specified in logic link ReflectorLink but that logic is missing. Removing logic from link.

      Like

    3. Marco, I believe that something has failed in the compilation, as my settings are as I describe. Perhaps the library settings are not in the same place. I recomment sudo apt install locate, then sudo find *.so to locate the libraries. Then check the date/time by typing ls -l /usr/lib/ to see if they are been overwritten correctly.

      Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.