SVXLink: Difference between revisions
Brian Wilson (talk | contribs) mNo edit summary |
Brian Wilson (talk | contribs) m →Events |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
https://github.com/sm0svx/svxlink | https://github.com/sm0svx/svxlink | ||
SvxLink is a project that develops software | SvxLink is a project that develops software for the ham radio community. It started out as an EchoLink application for Linux back in 2003 but has now evolved to be something much more advanced. | ||
See also RTLSDR https://www.rtl-sdr.com/svxlink-now-supports-the-rtl-sdr/ | See also RTLSDR https://www.rtl-sdr.com/svxlink-now-supports-the-rtl-sdr/ | ||
Line 7: | Line 7: | ||
== Set up on Bookworm on a Pi 5 == | == Set up on Bookworm on a Pi 5 == | ||
Install the | === Install from source === | ||
Install git and the pre-requisites, this works for a virtual machine on my laptop, | |||
<pre> | |||
git clone <nowiki>https://github.com/sm0svx/svxlink.git</nowiki | |||
sudo apt install build-essential cmake libsigc++-2.0-dev libgsm1-dev libpopt-dev tcl-dev libgcrypt-dev libspeex-dev libasound2-dev libopus-dev librtlsdr-dev alsa-utils vorbis-tools curl libjsoncpp-dev libcurl4-openssl-dev libssl-dev | |||
addgroup svxlink | |||
useradd -r svxlink | |||
addgroup svxlink daemon | |||
cd svxlink/src | |||
mkdir build | |||
cd build | |||
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DSYSCONF_INSTALL_DIR=/etc -DLOCAL_STATE_DIR=/var -DUSE_QT=no -S='..' | |||
make -j 4 | |||
sudo make install | |||
sudo ldconfig | |||
</pre> | |||
=== Install from packages === | |||
sudo apt-get install svxlink-server remotetrx svxlink-calibration-tools svxlink-gpio | sudo apt-get install svxlink-server remotetrx svxlink-calibration-tools svxlink-gpio | ||
Line 21: | Line 39: | ||
and be on wireguard for this. | and be on wireguard for this. | ||
=== Wireguard === | === Set up the Wireguard tunnel === | ||
sudo apt install wireguard | sudo apt install wireguard | ||
Line 29: | Line 47: | ||
sudo systemctl enable [email protected] | sudo systemctl enable [email protected] | ||
sudo systemctl start [email protected] | sudo systemctl start [email protected] | ||
=== Sound === | |||
See http://np2wj.com/echolink-node-on-raspberry-pi-using-svxlink-part-1/ | |||
==== Sound card ==== | |||
Using the built-in sound would be too easy so we use a USB sound card. Also it's a Pi 5 so no mini stereo jack anyway. | |||
I plugged in the card and rebooted and it was found as card 0 so I think I don't have to edit the alsa.conf file in /usr/share/alsa/. | |||
<pre> | |||
$ arecord -l # find the card, should be 0 | |||
**** List of CAPTURE Hardware Devices **** | |||
card 0: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] | |||
Subdevices: 0/1 | |||
Subdevice #0: subdevice #0 | |||
$ aplay -l | |||
**** List of PLAYBACK Hardware Devices **** | |||
card 0: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] | |||
Subdevices: 1/1 | |||
Subdevice #0: subdevice #0 | |||
card 1: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0] | |||
Subdevices: 1/1 | |||
Subdevice #0: subdevice #0 | |||
card 2: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0] | |||
Subdevices: 1/1 | |||
Subdevice #0: subdevice #0 | |||
</pre> | |||
==== Sounds ==== | |||
Not much point in having a sound card and no sounds, first let's install Heather's voice files. | |||
<pre> | |||
cd /usr/local/share/svxlink/sounds/ | |||
sudo wget https://github.com/sm0svx/svxlink-sounds-en_US-heather/releases/download/19.09/svxlink-sounds-en_US-heather-16k-19.09.tar.bz2 | |||
sudo tar xvjf svxlink-sounds-en_US-heather-16k-19.09.tar.bz2 | |||
sudo ln -s en_US-heather-16k en_US | |||
sudo rm svxlink-sounds-en_US-heather-16k-19.09.tar.bz2 | |||
</pre> | |||
=== Echolink === | |||
You are a licensed ham, so go to the echolink web site and sign up for an account. | |||
Edit the file /etc/svxlink/svxlink.d/ModuleEchoLink.conf to set up your account including | |||
call sign and password. | |||
=== No radio set up === | |||
I set up for testing with no radio attached. I can still set up sound and network and echolink connections. | |||
You can look at the svxlink.conf formatting here: https://www.svxlink.org/doc/man/man5/svxlink.conf.5.html | |||
I tell it that we're a repeater, otherwise it will never play sound files for ID. | |||
For receive section Rx1 I have to tell it not to care about GPIO lines. | |||
SQL_DET=VOX | |||
For transmit section Tx1 I need to tell it not to use any PTT, and to just open squelch on the non-existent radio. | |||
== TCL == | |||
Not fond of using this dead language but most of svxlink is written in it so I have no choice. | |||
==== Events ==== | |||
The announcements are handled by the events subsystem. | |||
In the main config file it is loaded by EVENT_HANDLER=/usr/local/share/svxlink/events.tcl. | |||
As far as I can tell, an "event" is just a time? | |||
==== ID announcements ==== | |||
The file to look at is Logic.tcl in /usr/local/share/svxlink/events.d/ | |||
== SVXPortal == | == SVXPortal == |
Latest revision as of 17:46, 7 January 2025
https://github.com/sm0svx/svxlink
SvxLink is a project that develops software for the ham radio community. It started out as an EchoLink application for Linux back in 2003 but has now evolved to be something much more advanced.
See also RTLSDR https://www.rtl-sdr.com/svxlink-now-supports-the-rtl-sdr/
Set up on Bookworm on a Pi 5
Install from source
Install git and the pre-requisites, this works for a virtual machine on my laptop,
git clone <nowiki>https://github.com/sm0svx/svxlink.git</nowiki sudo apt install build-essential cmake libsigc++-2.0-dev libgsm1-dev libpopt-dev tcl-dev libgcrypt-dev libspeex-dev libasound2-dev libopus-dev librtlsdr-dev alsa-utils vorbis-tools curl libjsoncpp-dev libcurl4-openssl-dev libssl-dev addgroup svxlink useradd -r svxlink addgroup svxlink daemon cd svxlink/src mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DSYSCONF_INSTALL_DIR=/etc -DLOCAL_STATE_DIR=/var -DUSE_QT=no -S='..' make -j 4 sudo make install sudo ldconfig
Install from packages
sudo apt-get install svxlink-server remotetrx svxlink-calibration-tools svxlink-gpio
Just installing will start up remotetrx, whether I need it or not. :-)
Starting svxlink requires a configuration in /etc/svxlink/, you have to set a few things in svxlink.conf. Call sign. W6GKD/L Enable echolink. US sound files are installed by default.
I wonder if I can get it to connect with TARRA reflector, I guess it has to identify as wickiup and be on wireguard for this.
Set up the Wireguard tunnel
sudo apt install wireguard
Copy and paste from TARRA to /etc/wireguard/wg0.conf
sudo systemctl enable [email protected] sudo systemctl start [email protected]
Sound
See http://np2wj.com/echolink-node-on-raspberry-pi-using-svxlink-part-1/
Sound card
Using the built-in sound would be too easy so we use a USB sound card. Also it's a Pi 5 so no mini stereo jack anyway. I plugged in the card and rebooted and it was found as card 0 so I think I don't have to edit the alsa.conf file in /usr/share/alsa/.
$ arecord -l # find the card, should be 0 **** List of CAPTURE Hardware Devices **** card 0: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] Subdevices: 0/1 Subdevice #0: subdevice #0 $ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Device [USB PnP Sound Device], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0] Subdevices: 1/1 Subdevice #0: subdevice #0
Sounds
Not much point in having a sound card and no sounds, first let's install Heather's voice files.
cd /usr/local/share/svxlink/sounds/ sudo wget https://github.com/sm0svx/svxlink-sounds-en_US-heather/releases/download/19.09/svxlink-sounds-en_US-heather-16k-19.09.tar.bz2 sudo tar xvjf svxlink-sounds-en_US-heather-16k-19.09.tar.bz2 sudo ln -s en_US-heather-16k en_US sudo rm svxlink-sounds-en_US-heather-16k-19.09.tar.bz2
Echolink
You are a licensed ham, so go to the echolink web site and sign up for an account. Edit the file /etc/svxlink/svxlink.d/ModuleEchoLink.conf to set up your account including call sign and password.
No radio set up
I set up for testing with no radio attached. I can still set up sound and network and echolink connections.
You can look at the svxlink.conf formatting here: https://www.svxlink.org/doc/man/man5/svxlink.conf.5.html
I tell it that we're a repeater, otherwise it will never play sound files for ID. For receive section Rx1 I have to tell it not to care about GPIO lines.
SQL_DET=VOX
For transmit section Tx1 I need to tell it not to use any PTT, and to just open squelch on the non-existent radio.
TCL
Not fond of using this dead language but most of svxlink is written in it so I have no choice.
Events
The announcements are handled by the events subsystem. In the main config file it is loaded by EVENT_HANDLER=/usr/local/share/svxlink/events.tcl.
As far as I can tell, an "event" is just a time?
ID announcements
The file to look at is Logic.tcl in /usr/local/share/svxlink/events.d/
SVXPortal
There's a web interface called "svxportal" that I am going to set up on Bellman following some instructions here: https://sk7rfl.se/doc/SvxPortal2.5.pdf