e.g. Tetra, ASL3 (Allstarlink), DVSwitch

The integrability of SvxLink is inevitable, being such an enviable system with its talkgroup capability and management.

Adrian (Adi) DL1HRC is foremost of the introducers of one of SvxLink’s extra components, the UsrpLogic module, and the TetraLogic. These component parts are essential for connection from one system to another, using UDP ports within the operating systems in play.

Because they are not in the main SvxLink package as authored by Tobias SM0SVX, they become a little more difficult to introduce to a working environment, although not beyond the capability of most users of svxlink. However they should be used with due diligence, as without proper set-up, there are risks to cause interference bi-directionally on the connected systems.

What is meant by connected systems?

At this present time Svxlink is capable of connection to DVSwitch, All-Star and Tetra networks.

Allstarlink/SvxLink nodes are currently used in the UK Svxlink Network, to offer fixed talkgroups to the following networks. Freedom Net, The Boredom Network, The EastCoast Reflector, The Rochester-NewYork community, HamRadio2.0, North West Allstar Group, Anglo Scottish, OnLine Amateur Radio Community. This later group is also bridged to DMR on BrandMeister Talkgroup 2348479. There are other bridges too, including the DVSPh multimodal group, and to other talkgroup assets. But in all cases the use of the UsrpLogic module is key.

What is important, is that unless there is an open invitation to connect or bridge to another node type, or digital network, then you must seek permission. There will be a requirement to adhere to preconditions. Careful consideration had been given to all the current connections to the UK SvxReflectors. Several have been tried and rejected due to repetetive kerchunks, poor operating procedures or breaches of amateur radio regulations.

At this time, I am working to provide a pre-complied version of SvxLink-Usrp, but there is still some developmental changes that make it a little unpredictable at the moment, but it looks possible that I will be able to provide a .deb package, that makes the installation process very simple. Otherwise the compilation route is a little more fraught.

Because the changes are fluid, you will need to get in touch with me to see the current state of development, so that I can help you directly. However for the moment the packages for svxlink-usrp and TetraLogic are available by following exactly the directions below.

Also if you are looking at adding a particular mode to work alongside svxlink, you will have to be conversant with bash scripting for most of your project, as there is no way of using an image of one or the other that will work effectively, unless it has been completely prepared.

I have experience with the three components above when used with svxlink, so I know the pitfalls, but there are no short cuts.

** Instructions **

Prepare your environment using Debian 12 (Bookworm) as for the moment I am unsure of the predictability of Debian 13 (Trixie). The environment could be a Raspberry Pi or a Virtual Machine running Debian 12. Many of the bridging environments in the UK SvxReflectors are virtual machines running Debian 12 in ProxMox also on Debian 12.

Once prepared, enter the terminal of your environment, preferably as a user. Using root for any application is inadvisable for any reason.

This prepares the installation of the .deb package to follow.

sudo update && sudo upgrade -y  so the OS is fresh.
sudo useradd -rG audio,plugdev,gpio,dialout svxlink

If you anticipate the use of web sockets in the future then install nodejs and npm.

cd /tmp/
sudo wget https://github.com/f5vmr/svxlink-usrp/releases/download/25.5.5/svxlink-25.5-Linux.deb && sudo apt install /tmp/svxlink-25.5-Linux.deb

This will install svxlink with UsrpLogic and all the necessary dependencies that SvxLink requires.

Below is an example DVSwitch configuration for the svxlink.conf file. Only the most important parameters and configuration sections are given. I am not providing the method for installing dvswitch, other than to say it is relativity simple and directions are readily available at dvswitch.org.


[GLOBAL]
LOGICS=RepeaterLogic,ReflectorLogic,UsrpLogic LINKS=UsrpLink
[RepeaterLogic]
TYPE=Repeater 
RX=Rx1 TX=Tx1 MODULES=ModuleParrot,ModuleTclVoiceMail,ModulePropagationMonitor,ModuleMetarInfo 
CALLSIGN=DB0ABC 
SHORT_IDENT_INTERVAL=30 
LONG_IDENT_INTERVAL=60 
EVENT_HANDLER=/usr/share/svxlink/events.tcl 
DEFAULT_LANG=de_DE 
RGR_SOUND_DELAY=200 
TX_CTCSS=SQL_OPEN,ANNOUNCEMENT 
FX_GAIN_NORMAL=0 
FX_GAIN_LOW=-12 
#NO_REPEAT=1 
IDLE_TIMEOUT=6 
OPEN_ON_DTMF=* 
OPEN_ON_SQL=1000 
OPEN_SQL_FLANK=OPEN
[UsrpLogic]
TYPE=Usrp 
USRP_HOST=127.0.0.1 
USRP_TX_PORT=44442 ←------------------------------------------------ USRP_RX_PORT=44441 ←--------------------------------------------- | CALL=DB0ABC  
DMRID=262123  
RPTID= 
DEFAULT_CC=1 
DEFAULT_TG=2629 
DEFAULT_TS=2 
#PREAMP=3  
#FILTER_FROM_USRP=HsBq2/0.01/-18/4000
FILTER_TO_USRP=BpBu1/650-3800 
#NET_PREAMP=3  
JITTER_BUFFER_DELAY=100
EVENT_HANDLER=/usr/share/svxlink/events.tcl
[ReflectorLogic] 
TYPE=Reflector (V2 if Reflector is Protocol 2 
HOST=10.8.0.1 --------→ to Analogue network, usually a
PORT=5302 -------------→ SvxReflector server 
AUTH_KEY="secret" 
CALLSIGN="DB0ABC" 
#JITTER_BUFFER_DELAY=0 
DEFAULT_TG=9
MONITOR_TGS=9
ANNOUNCE_REMOTE_MIN_INTERVAL=300 EVENT_HANDLER=/usr/share/svxlink/events.tcl NODE_INFO_FILE=/etc/svxlink/node_info.json 
MUTE_FIRST_TX_LOC=0  
MUTE_FIRST_TX_REM=0 
[UsrpLink]
Name=UsrpLink 
CONNECT_LOGICS=RepeaterLogic,UsrpLogic,ReflectorLogic
DEFAULT_ACTIVE=1 
---EOF 
2.2.) Analog_Bridge
Here we have an example for the Analog_Bridge.ini,
usually located in /opt/Analog_Bridge/Analog_Bridge.ini 
For details regarding the configuration paramaters  
refer to Analog_Bridge manual page.
include = dvsm.macro  
[GENERAL] 
logLevel = 2
exportMetadata = true 
transferRootDir = /tmp 
subscriberFile = /var/lib/dvswitch/subscriber_ids.csv  
decoderFallBack = true 
useEmulator = true 
emulatorAddress = 127.0.0.1:2460  
pcmPort = 2222 
[USRP]
address = 127.0.0.1 
txPort = 44441 ←------------------------------------------------- | 
rxPort = 44442 ←---------------------------------------------------- usrpAudio = AUDIO_UNITY 
usrpGain = 1.10 
usrpAGC = -20,10,100 
tlvAudio = AUDIO_UNITY 
tlvGain = 0.35

address = 127.0.0.1 
txPort = 31103 ←---------------------------------------------------- rxPort = 31100 ←------------------------------------------------- | ambeMode = DMR
minTxTimeMS = 2500
gatewayDmrId = 262123
repeaterID = 26200123
txTg = 2629
txTs = 2
colorCode = 1 
[MACROS] 
[DV3000] 
;address = 127.0.0.1 ------------------→ To 
;rxPort = 2460 ------------------------→ 
AMBEServer
address = /dev/ttyUSB4 ----------------→ To 
baud = 460800 -------------------------→ 
DV3k-stick 
serial = true 
---EOF 
2.3.) MMDVM_Bridge Usually located in /opt/MMDVM_Bridge/MMDVM_Bridge.ini  
Here is an example for the MMDVM_Bridge.ini  
Only the most important parameters and configuration 
sections are given 
[General] 
Callsign=DB0ABC
Id=262123 
Timeout=180  
Duplex=1
[Info] 
RXFrequency=431025000 
TXFrequency=438625000 
Power=15 
Latitude=51.000 
Longitude=12.000
Height=123 
Location=somewhere 
Description=FreeDMR_Germany 
URL=https://svxreflector.org 
[Log] 
DisplayLevel=1 
FileLevel=2 
FilePath=/var/log/mmdvm 
FileRoot=MMDVM_Bridge
[DMR Id Lookup] 
File=/var/lib/mmdvm/DMRIds.dat 
Time=24 
[DMR]  
Enable=1 
ColorCode=1 
EmbeddedLCOnly=1 
DumpTAData=0 
[DMR Network] 
Enable=1
Address=svxreflector.org --------------→ To DMR master server 
Port=62031 ----------------------------→ e.g. 
freeDMR  
Jitter=360
Local=62032
Password=passw0rd  
Slot1=0 
Slot2=1
Debug=1
---EOF 
2.4.) DV-Switch 
Usually located in /opt/MMDVM_Bridge/DVSwitch.ini 
Example of DVSwitch.ini
[DMR] 
address = 127.0.0.1
txPort = 31100 ←------------------------------------------------- | 
rxPort = 31103 ←---------------------------------------------------- 
slot = 2 
exportTG = 2629 
hangTimerInFrames = 0 
talkerAlias = %callsign %location %description 
---EOF

By publishing this does not mean that I advocate connecting SvxLink to DMR on any level. The software vocoder md380-emulator is not entirely successful. A DV3000 vocoder is the only other viable alternative. In my opinion D-Star at any level is very poor except to itself.

Connecting to ASL3 is significantly easier, but the configuration file of ASL3 is far from easy to read, unlike that of SVXLink. But the installation is painless.

sudo apt install asl3 allmon3

Connection to Tetra in SVXLink requires a further package, the details are as follows.

The same routine is to be used as at the top pf this page, but the instructions to install are:

sudo wget sudo wget https://github.com/f5vmr/svxlink-tetra/releases/download/V25.5.5/svxlink-master-Linux.deb && sudo apt install /tmp/svxlink-master-Linux.deb

This instance of Svxlink is designed to be used with radios such as a Motorola MTM5x00, MTM800E, MTM800FuG that are capable of operating as a repeater.