Hamradio/svxspot dashboard/de
Eine Einsteiger-Anleitung zum SvxSpot Dashboard: eine kleine Webseite, die du auf deinem SvxLink-Knoten installierst (einem Raspberry-Pi-Hotspot oder einem FM-Repeater), die zeigt, was der Knoten tut, und mit der du Talkgroup wechseln, die Konfiguration bearbeiten und mehr kannst — vom Handy oder PC aus. Ein .deb richtet den ganzen Web-Stack für dich ein.
http://svxspot.local/, die Live-Status / zuletzt gehört / aktuelle Talkgroup zeigt und dir TG-Wechsel per Klick, ein DTMF-Tastenfeld und Editoren für svxlink.conf, EchoLink, HF und Audio bietet — plus WLAN-Einrichtung und Neustart-/Abschalt-Buttons.
Brauche ich das?
- Du betreibst einen SvxLink-Knoten — einen „SvxSpot“-Hotspot oder einen FM-Repeater — und willst ihn aus dem Browser sehen und steuern statt per SSH und Texteditor.
- Er wird auf derselben Maschine wie SvxLink installiert (einem Raspberry Pi oder beliebigen Debian-Rechner).
- Optionaler Extra: lass ein externes Portal deine Talkgroup per MQTT wechseln (praktisch für das Bedienpult eines Vereins). Standardmäßig aus — ein reines LAN-Dashboard braucht nichts davon.
Was du zuerst brauchst
- Ein SvxLink-Knoten, der unter Debian 12/13 oder Raspberry Pi OS (bookworm/trixie) läuft, auf einem Pi 3/4/5, Pi Zero 2 W oder beliebigen Debian-Rechner.
- SvxLink installiert und laufend mit
/etc/svxlink/svxlink.conf(Paketsvxlink-server). - Für TG-/DTMF-Steuerung per Klick aus dem Web diese Zeile im Logic-Abschnitt deiner
svxlink.conf:
DTMF_CTRL_PTY=/var/lib/svxlink/dtmf_svx
- (Optional, nur MQTT) Broker-Host, Port (meist 8883) und ein Benutzername/Passwort — nur wenn du Fernsteuerung per Portal willst.
Du installierst nginx oder PHP nicht selbst — das Paket zieht sie und konfiguriert sie für dich.
Installation
Am einfachsten — das Einzeiler-Installationsskript (lädt das neueste Release und installiert es; apt holt nginx/PHP automatisch):
curl -fsSL https://git.sa7aux.se/bjorne/svxspot-dashboard/raw/branch/main/install.sh | sudo bash
Oder installiere ein .deb, das du herüberkopiert hast:
sudo apt install ./svxspot-dashboard_<version>_all.deb
svxspot-dashboard_1.0.1_all.deb). Das Paket ist architektur-unabhängig (_all) — dieselbe Datei läuft auf einem Pi und auf x86-64.
Was das Installationsskript fragt
Eine normale Installation stellt ein paar Fragen (debconf). Sinnvolle Standardwerte werden vorgeschlagen — du kannst meist einfach Enter drücken:
| Frage | Was eingeben |
|---|---|
| Rufzeichen des Knotens | Automatisch aus svxlink.conf erkannt. Übernimm es.
|
| Admin-Benutzer des Dashboards | Login-Name für die Steuerseiten. Standard admin.
|
| Admin-Passwort | Gib eines ein, oder lass es leer, damit ein zufälliges 16-Zeichen-Passwort erzeugt und am Ende einmal ausgegeben wird — schreib es auf. |
| MQTT-Fernsteuerung aktivieren? | Standard nein. Sag nur ja, wenn ein Portal diesen Knoten steuern soll; dann werden Broker-Host / Benutzername / Passwort abgefragt. |
Was es für dich einrichtet
Das Installationsskript erledigt die ganze Verkabelung (und kann gefahrlos mit sudo dpkg-reconfigure svxspot-dashboard erneut ausgeführt werden):
- installiert und konfiguriert nginx (eine Site auf Port 80) und php-fpm;
- legt das Admin-Login an (bcrypt
htpasswd); - installiert eng begrenzte sudo-Regeln, damit der Web-Benutzer die Konfiguration speichern und SvxLink neu starten kann — und nichts sonst;
- fügt den Web-Benutzer den Gruppen
audio, tty, dialout, svxlinkhinzu; - bereitet den optionalen MQTT-Agenten (einen systemd-Dienst) vor — aktiviert nur, wenn du MQTT eingeschaltet hast.
Am Ende gibt es einen Banner mit deiner Dashboard-URL, dem Admin-Benutzer und (falls erzeugt) dem Passwort aus.
Öffnen
- Gehe in einem Browser im selben Netzwerk auf
http://svxspot.local/(oderhttp://<knoten-ip>/, falls der.local-Name nicht auflöst). - Die Statusseite braucht kein Login. Die Steuerseiten (TG, Konfig-Editor, Power, WLAN, …) fragen nach dem Admin-Benutzer/Passwort, das du gesetzt hast.
svxspot / raspberry und Dashboard admin / svxspot. Ändere beide sofort (siehe unten).
Was auf dem Dashboard ist
| Seite | Was sie tut |
|---|---|
| Start / Status | Live-Status, zuletzt gehörte Stationen, aktuelle Talkgroup, Schnellwahl-Tasten. (Kein Login.) |
| TG + DTMF-Tastenfeld | Talkgroup per Tipp wechseln; rohes DTMF senden. |
| Konfig | svxlink.conf im Browser bearbeiten mit Hilfetext; jedes Speichern macht ein zeitgestempeltes Backup und startet SvxLink neu.
|
| EchoLink · HF (SA818) · Audio | Editoren für EchoLink, Frequenz/Squelch des Funkmoduls und Audiopegel. |
| WLAN / Netzwerk | Einem WLAN beitreten / Netzwerk einstellen. |
| Power | Neu starten, herunterfahren oder SvxLink neu starten. |
| Fernsteuerung (MQTT) | Den optionalen MQTT-Agenten ein-/ausschalten und den Broker einstellen. |
| Knoteninfo · Karte · Log | Knoten-Metadaten, Karte und das SvxLink-Log. |
Wie es SvxLink steuert (einfach erklärt)
Du musst das zur Nutzung nicht wissen, aber es hilft bei der Fehlersuche: das Dashboard liest /etc/svxlink/svxlink.conf und /var/log/svxlink, um den Status anzuzeigen, und steuert den Knoten, indem es DTMF-Strings (z. B. 91<tg># zum TG-Wechsel) in die Steuer-Pipe /var/lib/svxlink/dtmf_svx schreibt. Konfig-Änderungen werden gespeichert und SvxLink wird über die eng begrenzten sudo-Regeln neu gestartet. Das war's — keine Datenbank.
Optional: Fernsteuerung per MQTT
Wenn du MQTT aktiviert hast, baut ein kleiner systemd-Agent (svxnode-mqtt) eine ausgehende TLS-Verbindung zu deinem Broker auf Port 8883 auf (nichts im Router zu öffnen). Ein externes Portal veröffentlicht einen Talkgroup-Befehl, und der Agent schreibt dasselbe 91<tg># in die DTMF-Pipe — genau das, was der Web-TG-Button tut. Ein-/ausschalten auf der Fernsteuerung-Seite des Dashboards, oder mit sudo dpkg-reconfigure svxspot-dashboard.
Admin-Passwort ändern
No reconfigure needed — nginx re-reads the file on every request:
sudo htpasswd -B /etc/nginx/svxspot-dashboard.htpasswd admin
(Add -c to start a fresh file with only that user.)
Fehlerbehebung
| Symptom | Prüfen |
|---|---|
| Seite lädt nicht | systemctl status nginx, sudo nginx -t und ls /etc/nginx/sites-enabled/ (sollte svxspot-dashboard listen). Weiter kaputt → sudo dpkg-reconfigure svxspot-dashboard.
|
| 502 Bad Gateway | php-fpm ist aus → sudo systemctl restart php*-fpm (deine echte Version, z. B. php8.4-fpm).
|
| Passwort abgelehnt | sudo htpasswd -cB /etc/nginx/svxspot-dashboard.htpasswd admin (-c legt sie neu an).
|
| Statusseite leer / kein Rufzeichen | SvxLink läuft nicht oder hat keine Konfig → systemctl status svxlink, tail -n 30 /var/log/svxlink.
|
| TG-Buttons tun nichts | Prüfe grep DTMF_CTRL_PTY /etc/svxlink/svxlink.conf und dass /var/lib/svxlink/dtmf_svx existiert. Dann sudo dpkg-reconfigure svxspot-dashboard und php-fpm neu starten.
|
| „Speichern“-Rechtefehler | sudo visudo -cf /etc/sudoers.d/svxspot-dashboard muss „parsed OK“ sagen.
|
| MQTT bleibt inaktiv | journalctl -u svxnode-mqtt -n 30 --no-pager — meist falsches Passwort, falscher Host oder Port 8883 durch Firewall blockiert.
|
php8.4-fpm, aber dein Rechner kann php8.2-fpm fahren. Setze deine eigene ein: ls /run/php/php*-fpm.sock.
Entfernen / neu anfangen
- Einstellungen behalten:
sudo apt remove svxspot-dashboard. - Alles löschen (inkl. MQTT-Zugangsdaten):
sudo apt purge svxspot-dashboard, dann neu installieren.
Siehe auch
- Hamradio — SvxLink und der Rest der Digital-Voice-Anleitungen.
- Autor: SA7AUX <bjorne@sa7aux.se>. GPL-3.0-or-later. Basiert auf SVXLink-Dashboard-V2 / Guru-RF.
