Benutzer-Werkzeuge

Webseiten-Werkzeuge


svxlink:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
svxlink:start [28.03.2020 14:39] df2etsvxlink:start [20.04.2022 06:51] – [svxlink.conf] dl5bq
Zeile 22: Zeile 22:
      
   sudo useradd svxlink   sudo useradd svxlink
 +  
 +Weiterhin muss der User den Gruppen audio und gpio hinzugefügt werden.
 +
 +  sudo usermod -a -G gpio svxlink
 +  sudo usermod -a -G audio svxlink
      
 Dann wird das svxlink Repository von github geladen und vorbereitet, in dem ein Ordner angelegt wird, in dem die übersetzen Binaries landen: Dann wird das svxlink Repository von github geladen und vorbereitet, in dem ein Ordner angelegt wird, in dem die übersetzen Binaries landen:
Zeile 50: Zeile 55:
   sudo make install   sudo make install
   sudo ldconfig   sudo ldconfig
-  + 
 +Der svxlink-Installationsprozess legt /lib/system/systemd/svxlink.service an, man kann den Dienst also dann "out of the box" mit "systemctl start svxlink.service" starten bzw. dann auch mit "systemctl stop svxlink.service" beenden. Das svxlink-log findet man dann unter /var/log/svxlink. Vorerst sollte man zum Testen der Konfiguration svxlink noch händisch starten.
 ====== Konfiguration ====== ====== Konfiguration ======
  
Zeile 57: Zeile 63:
 ===== DingleBop ===== ===== DingleBop =====
  
-===== SVX HotSpot =====+GM3x0-APRS Platine "DingleBop" nach DB9MAT, DG1TAL und DF2ET
  
-SvxHotSpot Platine nach DF2ET.+==== svxlink.conf ==== 
 + 
 +  [Rx1] 
 +  AUDIO_DEV=alsa:plughw:
 +  AUDIO_CHANNEL=0 
 +  SQL_DET=HIDRAW 
 +  HID_DEVICE=/dev/hidraw0 
 +  HID_SQL_PIN=!VOL_DN 
 +   
 +  [Tx1] 
 +  AUDIO_DEV=alsa:plughw:
 +  AUDIO_CHANNEL=0 
 +  PTT_TYPE=Hidraw 
 +  HID_DEVICE=/dev/hidraw0 
 +  HID_PTT_PIN=GPIO3 
 + 
 +Zu editieren z.B. mit 
 + 
 +  sudo nano /etc/svxlink/svxlink.conf 
 +===== SVX HotSpot / SVX_Hat ===== 
 + 
 +SvxHotSpot oder SVX_Hat Platine nach DF2ET. Damit der entsprechende Treiber geladen wird, muss die /boot/config.txt angepasst werden. In dieser Konfiguration wird die onboard Karte deaktiviert und stattdessen der SVX_Hat genutzt. Das ALSA Device trägt dann den Namen plughw:0. 
 + 
 +Deaktivierung der onboard Karte: 
 + 
 +  # Enable audio (loads snd_bcm2835) 
 +  # dtparam=audio=on 
 + 
 +Aktivierung des device tree overlays für SVX_Hat bzw. SVXHotspot: 
 + 
 +  # Enable WM8731 codec 
 +  dtparam=i2c_arm=on 
 +  dtparam=i2s=on 
 +  dtoverlay=i2s-mmap 
 +  dtoverlay=rpi-proto 
 + 
 +Die Dateien können z.B. mittels des Editors nano editiert werden: 
 + 
 +  sudo nano /boot/config.txt 
 + 
 +Danach muss der Raspberry Pi einmal neugestartet werden. Danach sollte die Karte erkannt werden. Das kann mittels Ausgabe von /proc/asound/cards geprüft werden: 
 + 
 +  cat /proc/asound/cards  
 +   0 [sndrpiproto    ]: snd_rpi_proto - snd_rpi_proto 
 +                        snd_rpi_proto 
 + 
 +Außerdem muss für die GPIO-Steuerung unbedingt die serielle Console auf /dev/ttyAMA0 deaktivert werden. Dazu muss einerseits der Eintrag 'console=serial0,115200' entfernt und andererseits der geTTY vom Autostart ausgeschlossen werden. Das geht mittels: 
 + 
 +   $ sudo systemctl stop serial-getty@ttyAMA0.service 
 +   $ sudo systemctl disable serial-getty@ttyAMA0.service 
 + 
 +Auf einem RPi4 ist der Hardware Serial Port auf dem GPIO /dev/serial0 statt /dev/ttyAMA0. Die Steuerscripte für das SVX_Hotspot Modul müssen ggf. entsprechend angepasst werden. 
 + 
 +==== alsamixer ==== 
 + 
 +Für die Platinen mit WM8731 (SVX_Hat SVX-Hotpot) müssen folgende Regler im alsamixer angepasst werden. Für die Sound Ausgabe muss der Regler "Output Mixer Hifi" aktiviert bzw. ent-muted werden: 
 + 
 +{{ :svxlink:alsamixer_output.png?400 |Alsamixer Output}} 
 + 
 +Für den Eingang muss jeweils der Line-In Eingang auf der Aufnahmeseite selektiert bzw. geregelt werden (die Aktiviertung erfolgt mittels Leertaste): 
 + 
 +{{ :svxlink:alsamixer_input.png?400 |Alsamixer Input}} 
 + 
 +Damit sollte Soundausgabe und -aufnahme jeweils möglich sein.
  
 ==== svxlink.conf ==== ==== svxlink.conf ====
Zeile 68: Zeile 137:
   SQL_DET=GPIO   SQL_DET=GPIO
   GPIO_SQL_PIN=gpio17   GPIO_SQL_PIN=gpio17
 +  SQL_START_DELAY=1000 
 +  SQL_DELAY=150
   DEEMPHASIS=0   DEEMPHASIS=0
   PREAMP=18   PREAMP=18
Zeile 89: Zeile 160:
   GPIO_MODE="0664"   GPIO_MODE="0664"
  
- +Zu editieren mittels 
 + 
 +   sudo nano /etc/svxlink/gpio.conf 
 + 
 +Wenn Svxlink mit den systemd Addons installiert wurde, existiert ein systemd service Script, welches die GPIOs beim Boot entsprechend konfiguriert. Damit dieses beim Sytemstart ausgeführt wird, muss es mittels 
 + 
 +  sudo systemctl enable svxlink_gpio_setup 
 + 
 +aktiviert werden.
 ====== Dies und Das ====== ====== Dies und Das ======
  
Zeile 97: Zeile 176:
  
 Für deutsches Zahlenformat wird ein Ordner /usr/share/svxlink/events.d/local angelegt. Darin wird die Datei {{ :svxlink:locale.tcl|locale.tcl}} abgelegt. Danach svxlink neustarten und es sollten Zahlen und Uhrzeiten in deutschem Format ausgebeben werden. Für deutsches Zahlenformat wird ein Ordner /usr/share/svxlink/events.d/local angelegt. Darin wird die Datei {{ :svxlink:locale.tcl|locale.tcl}} abgelegt. Danach svxlink neustarten und es sollten Zahlen und Uhrzeiten in deutschem Format ausgebeben werden.
 +
 +===== SVX Reflektor =====
 +
 +Dafür braucht es einen Account für den Reflektor (-> [[mailto:df2et@df2et.de|DF2ET]]) und ein paar Einträge in der svxlink.conf:
 +
 +  [GLOBAL]
 +  LOGICS=SimplexLogic,ReflectorLogic
 +  LINKS=ReflectorLink
 +
 +  [ReflectorLogic]
 +  TYPE=Reflector
 +  HOST=svxreflector.n18.de
 +  CALLSIGN=N0CALL
 +  AUTH_KEY="Passwort"
 +  AUDIO_CODEC=OPUS
 +  JITTER_BUFFER_DELAY=0
 +  DEFAULT_TG=262
 +  MONITOR_TGS=262,2624
 +  TG_SELECT_TIMEOUT=600
 +  ANNOUNCE_REMOTE_MIN_INTERVAL=300
 +  EVENT_HANDLER=/usr/share/svxlink/events.tcl
 +  DEFAULT_LANG=de_DE
 +
 +  [ReflectorLink]
 +  CONNECT_LOGICS=SimplexLogic:9:REF,ReflectorLogic
 +  DEFAULT_ACTIVE=1
 +  TIMEOUT=0
 +  OPTIONS=DEFAULT_CONNECT,NO_DISCONNECT
 +
 +Das Dashboard des SVX Reflektors ist hier zu finden: [[https://svxreflector.n18.de/|https://svxreflector.n18.de/]]
 +
 +
 +===== ALSA Equalizer =====
 +
 +Zunächst muss das ALSA plugin installiert werden:
 +
 +  sudo apt install libasound2-plugin-equal
 +  
 +Dann wird für den User svxlink in dessen Heimatverzeichnis eine Datei .asoundrc mit folgendem Inhalt angelegt:
 +
 +  ctl.equal {
 +    type equal;
 +  }
 +  
 +  pcm.plugequal {
 +    type equal;
 +    # Modify the line below if you don't
 +    # want to use sound card 0.   
 +    slave.pcm "plughw:0,0";
 +  }
 +  
 +  pcm.equal {
 +    type plug;
 +    slave.pcm plugequal;
 +  }
 +  
 +  # Usage:
 +  # $ alsamixer -D equal
 +
 +Der Equalizer kann damit als user svxlink mit dem folgenden Kommando aufgerufen werden:
 +
 +  alsamixer -D equal
 +  
 +Oder unter Verwendung von sudo:
 +
 +  sudo su svxlink -c "alsamixer -D equal"
 +  
 +Damit svxlink als Output das Equalizer Device nutzt muss die Config entsprechend angepasst werden:
 +
 +  AUDIO_DEV=alsa:equal
 +  
 +Und wenn svxlink als systemd service läuft muss die service Datei /lib/systemd/system/svxlink.service angepasst werden:
 +
 +  [Service]
 +  EnvironmentFile=/etc/default/svxlink
 +  PIDFile=${PIDFILE}
 +  ExecStartPre=-/bin/touch ${LOGFILE}
 +  ExecStartPre=-/bin/chown ${RUNASUSER} ${LOGFILE}
 +  ExecStart=/usr/bin/svxlink --logfile=${LOGFILE} --config=${CFGFILE}
 +  ExecReload=/bin/kill -s HUP $MAINPID
 +  Restart=on-failure
 +  TimeoutStartSec=60
 +  TimeoutStopSec=10
 +  LimitCORE=infinity
 +  WorkingDirectory=/home/svxlink
 +  User=svxlink
 +  Group=audio
 +
 +Nicht zu vergessen, anschließend das service File neu zu laden mittels:
 +
 +  sudo systemctl daemon-reload
 +
 +Damit sollte der Audio Stream des svxlink Senders per Equalizer einstellbar sein.
 +
 +===== Fehler beim SVXlink Start =====
 +
 +Sollte Svxlink nicht starten wollen, weil angeblich das Capture Device belegt ist und folgende Meldungen im Log erscheinen:
 +
 +  Starting logic: RepeaterLogic
 +  Loading RX: Rx1
 +  *** ERROR: Open capture audio device failed: Device or resource busy
 +  *** ERROR: Could not open audio device for receiver "Rx1"
 +  *** ERROR: Could not initialize RX "Rx1"
 +  *** ERROR: Could not initialize Logic object "RepeaterLogic". Skipping...
 +  *** ERROR: No logics available. Bailing out...
 +
 +muss gepprüft werden, ob remotetrx im Hintergrund läuft und die Soundkarte belegt. Das geht z.B. mit
 +
 +  sudo ps ax | grep svxlink
 +
 +Wenn das der Fall sein sollte, kann remotetrx mittels
 +
 +  sudo service remotetrx stop
 +
 +angehalten werden. Um den Autostart beim Boot zu verhindern kann der Service mittels
 +
 +  sudo systemctl disable remotetrx
 +
 +deaktiviert werden.
 +
 +
 +
 +====== Tnx es vy73 ======
 +
 +Danke an folgende OM für das wertvolle Feedback und die Beiträge zum Wiki:
 +
 +  * Jürgen, DL2NJM
 +  * Jürgen, DH9YAP
 +  * Jan, DG3YJB
 +  * Danielo, DL7TA
svxlink/start.txt · Zuletzt geändert: 25.05.2022 08:58 von df2et