Script build for Raspberry Pi – Repeater or Hotspot with connection to SVXPortal-UK.

This package is for those who wish to construct an FM hotspot or Repeater with options for EchoLink, MetarInfo, SVXReflector, and several other options configurable after build time.

The SVXLink software was designed by Tobias SM0SVX with contributions from other sources. It is a superlative option for Repeater Control and Management, either as a stand-alone repeater or part of a larger enhanced network, as well as a Hotspot Controller for simplex use.

The instructions are detailed and you will need to follow them precisely to get it right first time. Any problems, go back to the previous step(s).

First Steps

Requirements: Raspberry Pi of any mark. USB Soundcard, and an interface card. One or two transceivers (3 or 4 if you are making a double repeater, for which you will need a second USB soundcard.) You do not need the interface card for the compilation.

There are few raspberry images that work succesfully for this type of build, where there is a potential for using the eventual application in several directions.

Whilst this in itself is not an image, it will take the hard work out of the physical compilation, although leaves a little work for the user to place the finishing touches to the final assembly.

There are a number of available interface boards that have a variety of uses, either as a hotspot or a repeater, or even a fill-in receiver/transceiver for an existing SVXLink repeater. The settings in this build are for a homebrew interface board using GPIO 23 for the Receive COS and GPIO 24 for the PTT controller. When using the GPIO Pins, an earth pin is also require, so using this combination, pins 14,16 and 18 are all adjacent and ideally placed for these functions. Pin 14 is the Earth, Pin 16 is GPIO 23 and Pin 18 is GPIO 24.

The simple interface schematic can be here found amongst the pages of this site

For a second set of transceivers, you can consider GPIO 17 and 18 as COS & PTT respectively.

However read the follwoing article for the CM108 Sound Card, they may negate the need for a separate interface.

The programming of the SDCard – Time required 60-90 minutes depending on device.

We start with a download of Raspberry OS Lite from onto a PC or MAC. Then use a 16 GB MicroSD Card and transfer the image to the card by one of the proprietary image writers. Prior to removing the card from the writing PC, add a blank file to the boot sector called ‘ssh’ without a file type. Also add a wpa_supplicant.conf file with the necessary WiFi details if the device is not to be connected on an ethernet network.

For a good wpa_supplicant builder go to this link courtesy of the author MW0MWW. For an ethernet connection, the wpa_supplicant.conf is not required.

Once complete, eject the card and install it in the raspberry pi and power it up. Enter the user as ‘pi’ and password ‘raspberry’ in lower case.

The compilation.

Enter the terminal program using an SSH application or plug in an HDMI Screen and USB Keyboard. The user name is ‘pi’ and the password ‘raspberry’ all in lower case.

The first step will be the following command: sudo apt install -y git

Now the following command: sudo git clone .

Once this is installed type the following command: sudo chmod +x svxlink_raspberry/*.sh

Now type sudo bash svxlink_raspberry/ and return followed by: sudo bash svxlink_raspberry/ and return.

The script will now update the operating system and add all the additional software. You will be required to add the callsign of the node prior to the compilation of the software so watch for the prompt.

At the end of the script the running configuration will be compiled with the given callsign. Then the fun begins. Go and have a coffee or even lunch as the compilation will take about an hour possibly longer. A Raspberry Pi 3 or 4 will take less time, and a Raspberry Pi zero possibly longer than 90 minutes. Hopefully there should be no reported error.

At the end of the compilation type sudo reboot if it hasn’t auto-rebooted, to restart the unit. If all is well the unit will be immediately functional.

You will need to understand the svxlink.conf file and how to make adjustments for Simplex or Repeater operation. In any case you may need to refer to the main page, or svxlink amateur radio users page on facebook, or contact me. For further information also consult the svxlink pages on

To stop svxlink running type in the terminal sudo systemctl stop svxlink.service and to restart it type sudo systemctl restart svxlink.service The next stage will be to modify the three files node_info.jsonsvxlink.conf, and ModuleEchoLink.conf.

To obtain information for the node_info.json go to a PC Browser and enter where you will find a dashboard. Click Register at the top, completing the information. This information is held only to enable you to complete the next stage. Log in with the information you have just supplied, and click on Generate node_info.json. Once complete, save the resulting file in your computer.

Open the terminal of the Raspberry Pi, and type cd /etc/svxlink followed by return. Then type sudo nano node_info.json and edit the information with the content of the file you have just saved on your PC. You can open the file with a text editor or notepad. When the editing is complete type cntrl-o and return at the keyboard for the terminal followed by cntrl-x.

The next stage is to check and edit where necessary the svxlink.conf file. type sudo nano svxlink.conf followed by return. Check the content and complete your location information near the bottom of the file. type cntrl-o and return then cntrl-x when finished to save your changes.

To modify the Echolink information type sudo nano svxlink.d/ModuleEchoLink.conf and return. Make your changes to your EchoLink access here. then save the file as you did above with svxlink.conf. If you have not yet enabled svxlink in the svxlink.conf to may need to do this now, and remove the # comment header from the relevant lines.

To incorporated the changes you will need to type sudo systemctl restart svxlink.service and return. If you need to make changes to the gpio.conf file for your own settings you will also need to restart the gpio service too, by sudo systemctl restart svxlink_gpio_setup.

Some examples

A full repeater : Options can be i. a repurposed commercial repeater with the original software controller removed or bypassed; ii two transceivers, one for transmit and the other for receive.

A fill-in repeater : Where there is an existing repeater, a second sub-repeater can be installed in a black spot to fill in the repeater coverage, by linking to the original Svxlink repeater, that has voting on the receiver to select the best input path. This fill-in repeater can in fact be a simplex Tx/Rx node, a receive only node, or a transmit only node dependent on configuration.

A double repeater : Where there are perhaps two legs VHF/UHF on both Receive and Transmit covering two different coverage areas.

A Simplex Node : Either as a non-NOV low power device or a single transceiver node. This can also be a parrot repeater.

SVXReflector : An SvxReflector is in operation with a dashboard viewable at providing interconnection across the network in a form of TalkGroups. Each Repeater remains stand-alone until TalkGroups are activated.

EchoLink (Linux version) : This module is fitted as standard, but can be omitted.

MetarInfo : This module provides airport weather from various airports selectable by DTMF.

Propagation Monitor : Using Live data, this module can transmit early warning on Enhanced Propagation Conditions.

If you need to add compatibility for the DJSpot, you will need to add the following packages and configurations to the build.

git clone
    cd WM8960-Audio-HAT
    sudo ./
sudo apt install minicom

Read this article in conjunction with the additional instructions for the installation of a CM108 USB Sound Card (the one with the exposed chip – something like the DollarTek without a case.) Installation with this card will need no additional interface, as the PTT can be operated from this sound card with the modifications.

Leave a Reply