3.5 KiB
asl3-chan-svx
chan_svx is an Asterisk channel driver for AllStarLink 3 that connects directly to a SvxLink SVXReflector.
Unlike traditional solutions that rely on a USRP bridge, chan_svx speaks the SVXReflector protocol natively, providing:
- Lower latency
- Simpler system architecture
- A single Opus transcoding step
- Reduced CPU and memory usage
- Direct integration with
app_rpt
This allows SVXReflector talk groups to be used directly from AllStarLink without an intermediate USRP connection.
Features
- Native SVXReflector connectivity
- Direct integration with AllStarLink 3 (
app_rpt) - SVXReflector v2 protocol support (HMAC-SHA1)
- Configurable jitter buffer
- Adjustable RX/TX gain
- Optional RX/TX AGC
- Support for x86-64 and ARM64 (Raspberry Pi)
Source code is private.
Bug reports and support requests: bjorne@sa7aux.se
Requirements
- Debian 12 (Bookworm) or Debian 13 (Trixie)
- AllStarLink 3 (
asl3-asterisk) already installed - Access credentials for an SVXReflector
Download
Clone the repository:
git clone https://github.com/<your-repository>/asl3-chan-svx.git
cd asl3-chan-svx
Choose the Correct Package
Verify your Debian release:
. /etc/os-release
echo $VERSION_CODENAME
Verify your CPU architecture:
dpkg --print-architecture
| Platform | Package |
|---|---|
| Debian 13 (Trixie), x86-64 | debs/asl3-chan-svx_0.2.4~trixie_amd64.deb |
| Debian 13 (Trixie), ARM64 (Raspberry Pi OS Trixie) | debs/asl3-chan-svx_0.2.4~trixie_arm64.deb |
| Debian 12 (Bookworm), x86-64 | debs/asl3-chan-svx_0.2.4~bookworm_amd64.deb |
| Debian 12 (Bookworm), ARM64 (Raspberry Pi OS Bookworm) | debs/asl3-chan-svx_0.2.4~bookworm_arm64.deb |
Only 64-bit platforms are supported.
Installation
Install the package that matches your operating system and architecture:
sudo apt install ./debs/asl3-chan-svx_0.2.4~<os>_<arch>.deb
Required dependencies (asl3-asterisk, libopus0, and libssl3) will be installed automatically.
Configuration
1. Create svx.conf
Create /etc/asterisk/svx.conf and configure:
- Reflector hostname
- Port
- Callsign
- Password
- Talk group
Optional settings:
tx_holdjitterrx_gaintx_gainrx_agctx_agc
2. Enable the Channel Driver
Edit /etc/asterisk/modules.conf and enable the module:
load = chan_svx.so
If a line already exists as:
;load = chan_svx.so
remove the leading semicolon.
3. Configure app_rpt
Edit /etc/asterisk/rpt.conf and set:
rxchannel = SVX/<section>
where <section> matches the section name in svx.conf.
4. Restart Asterisk
sudo asterisk -rx "core restart now"
5. Verify Operation
Check the driver status:
sudo asterisk -rx "svx show"
A successful connection will display reflector and talk group information.
Documentation
A complete installation and configuration guide is included with the package:
/usr/share/doc/asl3-chan-svx/INSTALL.md
The package post-install script (postinst) also displays the required setup steps after installation.
Compatibility
chan_svx implements the SVXReflector v2 protocol (HMAC-SHA1).
Reflectors that provide v2 compatibility can be used even if their SvxLink nodes normally operate using v3/TLS.
Notes
- Reflector logins must use an upper-case callsign.
- SVXReflector validates callsigns case-sensitively.
- The package version should match the installed AllStarLink 3 release.