Echolink възлова точка с Orange Pi PC и SvxLink
/kn34pc.com/статии/...
Този проект се забави много поради редица причини, но ето че най-накрая успях да го завърша.
Преди около 5 години си купих Orange Pi PC – микрокомпютър, състоящ се от една
платка. Привлече ме цената, която бе по-ниска от тази на популярния Raspberry Pi.
Неотдавна попаднах на статии за изграждане на SvxLink възлова точка с Orange Pi
Zero и отново се сетих за моето Пи, което си почиваше в един кашон.
След този кратък увод, нека да разясня накратко какво е SvxLink. Това е
софтуерна гласова платформа за ОС Линукс, която свързана с радиостанция, може да
изпълнява роля на контролер за репитер, а също така може да работи в симплекс
или дуплекс режим. Платформата съдържа различни модули, един от които е за
връзка с мрежата Echolink.
В тази статия ще представя инсталация и конфигуриране на Svxlink, а също така
интерфейс за управление на радиостанция "Лотос/Лен" за връзка с Echolink.
Нека първо да изтеглим имидж файла на операционната система оттук:
Orange Pi PC
Записваме изтегления имидж файл на микро-USB карта (мин. 8 Gb), като я правим
стартираща, за да може да се зареди операционната система.
Ако сме направили всичко както трябва, след стартиране на системата тя ни
приканва да зададем парола на root (администраторски акаунт). След това трябва
да създадем първия потребителски акаунт и парола за него. Избираме за име
svxlink и задаваме парола по избор.
Преди да започнем, обновяваме системата:
1. sudo apt-get update
2. sudo apt-get upgrade
За допълнителни настройка на операционната система – часова зона, жична мрежа и
др. извикваме контролния панел с командата armbian-config
Инсталираме Svxlink сървър: sudo apt-get install svxlink-server
Изтегляме и инсталираме звуковите файлове (на английски език):
1. cd /usr/share/svxlink/sounds/
2. 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
3. sudo tar xvjf svxlink-sounds-en_US-heather-16k-19.09.tar.bz2
4. sudo ln -s en_US-heather-16k en_US
Време е да свържем звуковата карта и да я зададем като главно звуково
устройство. Използвал съм най-евтината USB звукова карта.
Да проверим, като кой по ред номер звуково устройство е определена в системата и
да редактираме файла alsa.conf.
1. aplay -l
2. arecord -l
Резултатът от двете команди трябва да показва следните редове:
card 1: Device [USB Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
Използваме текстовия редактор nano, за да редактираме alsa.conf:
sudo nano /usr/share/alsa/alsa.conf
Редактираме редове default.ctl.card и default.pcm.card.
Променяме номера в края на реда от "0" на "1", както е определена картата - Card
1, Device 0.
default.ctl.card 1
default.pcm.card 1
Записваме промените с "ctrl + x", натискаме "y" за потвърждение и
"enter" за
излизане от nano. Накрая рестартираме с командата: sudo reboot
След рестартирането на системата проверяваме дали нашата карта е зададена, като
устройство по подразбиране: alsamixer
Преди да пристъпим към конфигуриране на Svxlink, ще представя интерфейса за
връзка между Orange Pi PC и радиостанция "Лотос/Лен". След обстоен преглед на
десетки схеми в интернет и сервизното описание на р/ст "Лотос" се оформи
следната схема показана по-надолу. Мисля, че по звуковата част всичко е ясно. По
желание тример-потенциометрите могат да се премахнат и на тяхно място да се сложи
мостче. За комутиране на режимите приемане/предаване използвам USB Serial
Converter.
Веригата за управление от шумоподавителя е дублирана от Блок У11 от сервизното
описание на р/ст "Лотос", като съм добавил стабилизатор за понижаване на
захранващото напрежение. При задействан шумоподавител и в режим "предаване" на
извод 7 има висок потенциал, а при "приемане" нисък потенциал. Изводите са
подредени спрямо десетщифтовия куплунг разположен на задната страна на приемо-предавателя.
За модула е разработена малка печатна платка.
![]() |
![]() |
|
Архив [spl7,lay6,gbr][37kb] |
|
Да проверим дали нашият USB Serial Converter е видим в системата с командата:
lsusb
А сега да видим на кой сериен порт отговаря: dmesg | grep tty
Дойде ред да редактираме файла svxlink.conf, който съдържа началните настройки
на програмата:
sudo nano /etc/svxlink/svxlink.conf
Променяме следните редове:
--------------------
в раздел [SimplexLogic]
CALLSIGN=Инициал
DEFAULT_LANG=en_US
в раздел [Rx1]
AUDIO_DEV=alsa:plughw:1 (USB звуковата карта, която бе определена като Card 1)
SQL_DET=SERIAL
SERIAL_PORT=/dev/ttyUSB0
SERIAL_PIN=!CTS
в раздел [Tx1]
AUDIO_DEV=alsa:plughw:1 (USB звуковата карта, която бе определена като Card 1)
PTT_TYPE=SerialPin
PTT_PORT=/dev/ttyUSB0
--------------------
Записваме промените с "ctrl + x", натискаме "y" за потвърждение и
"enter" за
излизане от nano.
Следващият файл, който ще редактираме е ModuleEchoLink.conf:
sudo nano /etc/svxlink/svxlink.d/ModuleEchoLink.conf
--------------------
CALLSIGN=Инициал-L
PASSWORD=Парола
SYSOPNAME=Име/Инициал
LOCATION=[Svx] честота, град/локатор
DEFAULT_LANG=en_US
--------------------
Записваме промените с "ctrl + x", натискаме "y" за потвърждение и
"enter" за
излизане от nano. Накрая рестартираме с командата: sudo reboot
Сега би трябвало да имаме инсталиран, конфигуриран и работещ Svxlink. Нека да
проверим:
tail -f /var/log/svxlink
Може да забележите, че се получава грешка свързана с DNS и нарушена връзка със
сървърите на Echolink. Така се случи при мен. След претърсване в интернет
попаднах на сходен проблем, описан
тук. Следното решение има за цел да забави
стартирането на Svxlink, до пълното зареждане на операционната система. За целта
спираме изпълнението на Svxlink:
sudo systemctl stop svxlink
Сега трябва да редактираме файла svxlink.service. Променяме/добавяме следните
редове в черно.
Редът ExecStartPre=/bin/sleep 30 трябва да бъде преди останалите редове
започващи с ExecStartPre.
sudo nano /lib/systemd/system/svxlink.service
--------------------
[Unit]
Description=SvxLink repeater control software
Documentation=man:svxlink(1)
Requires=svxlink_gpio_setup.service
After=network.online.target remote-fs.target time.target
After=svxlink_gpio_setup.service
[Service]
EnvironmentFile=/etc/default/svxlink
PIDFile=/run/svxlink.pid
ExecStartPre=/bin/sleep 30
ExecStartPre=-/bin/touch /var/log/svxlink
ExecStartPre=-/bin/chown $RUNASUSER /var/log/svxlink
ExecStart=/bin/sh -c ‘/usr/bin/svxlink –logfile=/var/log/svxlink –config=$CFG$
ExecReload=/bin/kill -s HUP $MAINPID
Restart=on-failure
TimeoutStartSec=60
#WatchdogSec=
#NotifyAccess=main
LimitCORE=infinity
WorkingDirectory=/etc/svxlink
[Install]
WantedBy=multi-user.target
--------------------
Записваме промените с "ctrl + x", натискаме "y" за потвърждение и
"enter" за
излизане от nano.
Накрая остава да изпълним следните команди, завършващи с рестартиране на
системата:
sudo systemctl daemon-reload
sudo systemctl start svxlink
sudo reboot
Използвани източници:
1. SvxLink by sm0svx
2. Echolink node on Raspberry Pi using SVXLink
3. Радиостанция "Лотос"
4. SQ9MDD PC-Radio-Interface
5. Koppel, N., DL1EBN: Zwei Soundinterfaces mit dem Mini-USB-Modul UM2102 von ELV. Funkamateur 6 (2014) H. 6, S. 645-649
LZ2XYZ, Силистра
6 март 2022 година, KN34PC