Skip to main content

SVXLink

Note for owners of SVXLink nodes running TetraLogic

  • Please use latest version of SVXLink software.

  • Please use the same CALLSIGN in [ReflectorLogic] and [TetraLogic] to make our bridges pass talker ISSI correctly.

Note for owners of SVXReflector servers for TETRA

  • Please use latest version of SVXReflector (at least 16082023) software.

  • Reflector to Reflector links does not pass originating ISSI.

Administrating SVXLink bridges

Disclaimer about information bellow

  • DockStation is only available on the same host as TetraPack Core, so the target of following information in this article is a server administrator.

  • DockLogic is an external Logic module is supplied outside SVXLInk.

Modules

  • DockLogic.so - SVXLink Logic module that implements our own Dock IPC protocol, uses our own library CodecPack.so
  • DockLogic.tcl - Supplementary script, required by SVXLink

Environment variables

svxlink.conf

[GLOBAL]
MODULE_PATH=/opt/SVXLink/lib/svxlink
CFG_DIR=/opt/SVXLink/etc/svxlink/svxlink.d
LOGICS=DockLogic,ReflectorLogic
LINKS=Link
TIMESTAMP_FORMAT="%c"

# Should be always 8 KHz!
CARD_SAMPLE_RATE=8000

[DockLogic]
TYPE=Dock
RX=Rx1
TX=Tx1
CALLSIGN=<Node call, should be completely the same as ReflectorLogic has>
EVENT_HANDLER=/opt/SVXLink/share/svxlink/events.tcl

# TetraPack Core IPC socket path
SOCKET=/tmp/Dock-<TetraPack Core ID>

# GSSI at TetraPack Core
GSSI=<GSSI of talk group at TetraPack>

# Default ISSI (used when ISSI is unknown)
ISSI=9999

# MNI for Qso:info messages (4 digits for MCC and 5 digits for MNC)
MNI=090116383

[Rx1]
TYPE=Dock

[Tx1]
TYPE=Dock

# Delay (in 60 ms frames) in bridged call start (SVXLink -> TetraPack), required for ISSI detection heuristics 
DELAY=5

# Preprocessing: Gain -> AGC -> Suppressor -> Normalizer

# Gain BEFORE preprocessing (0.1 .. 1.0, default is 1.0)
GAIN=0.75

# AGC, value is AGC target
# Comment or remove to disable
# AGC=8000

# Suppressor:
# 0 - Berouti spectral subtraction
# 1 - Wiener scalar filtering
# 2 - Two-step scalar filtering
# 3 - Two-step scaler filtering with gain
# 4 - Two-step phishing filtering
# 5 - Two-step phishing filtering with gain
# Comment or remove to disable
SUPPRESSOR=0

# Normalize audio, including dynamic compression and DC correction
NORMALIZER=1

[ReflectorLogic]
TYPE=Reflector
HOSTS=<SVXReflector's DNS/IP address>
CALLSIGN="<Node call>"
AUTH_KEY="<Key>"
UDP_HEARTBEAT_INTERVAL=5
DEFAULT_TG=<Bridged SVXReflector's TG>
MONITOR_TGS=<Bridged SVXReflector's TG>
EVENT_HANDLER=/opt/SVXLink/share/svxlink/events.tcl
MUTE_FIRST_TX_LOC=0
MUTE_FIRST_TX_REM=0

[Link]
CONNECT_LOGICS=DockLogic,ReflectorLogic
DEFAULT_ACTIVE=1
TIMEOUT=0