Jump to content

Hamradio/svxspot dashboard/sv

From MediaWiki For Hamradio Analog/Digital and Debian v13 software/Raspberry PI v3/4/5 howto
This page is a translated version of the page Hamradio/svxspot dashboard and the translation is 97% complete.

En nybörjarguide till SvxSpot Dashboard: en liten webbsida du installerar på din SvxLink-nod (en Raspberry Pi-hotspot eller en FM-repeater) som visar vad noden gör och låter dig byta talgrupp, redigera konfigurationen och mer — från mobil eller dator. Ett .deb sätter upp hela webb-stacken åt dig.

💡 I en mening: installera ett paket på noden och du får en webbsida på http://svxspot.local/ som visar livestatus / senast hörda / aktuell talgrupp och ger dig TG-byte med ett klick, en DTMF-knappsats och redigerare för svxlink.conf, EchoLink, RF och ljud — plus Wi-Fi-inställning och knappar för omstart/avstängning.
Webbläsaren pratar HTTP med nginx på noden, som kör php-fpm och PHP-dashboarden; den läser svxlink.conf och loggen och skriver TG/DTMF till SvxLinks styr-pipe. En valfri MQTT-agent låter en extern portal byta TG också.

Behöver jag det här?

  • Du kör en SvxLink-nod — en "SvxSpot"-hotspot eller en FM-repeater — och vill se och styra den från en webbläsare i stället för SSH och en textredigerare.
  • Den installeras på samma box som SvxLink (en Raspberry Pi eller valfri Debian-maskin).
  • Valfritt tillägg: låt en extern portal byta din talgrupp via MQTT (bra för en klubbs kontrollpanel). Avstängt som standard — en vanlig LAN-dashboard behöver inget av det.

Vad du behöver först

💡 Dashboarden styr SvxLink — den ersätter det inte. SvxLink måste redan vara installerat och igång på noden.
  • En SvxLink-nod på Debian 12/13 eller Raspberry Pi OS (bookworm/trixie), på en Pi 3/4/5, Pi Zero 2 W, eller valfri Debian-box.
  • SvxLink installerat och igång med /etc/svxlink/svxlink.conf (paketet svxlink-server).
  • För talgrupps-/DTMF-styrning från webben: den här raden i logic-sektionen i svxlink.conf:
DTMF_CTRL_PTY=/var/lib/svxlink/dtmf_svx
  • (Valfritt, endast MQTT) broker-host, port (oftast 8883) och användarnamn/lösenord — bara om du vill ha fjärrstyrning via portal.

Du installerar inte nginx eller PHP själv — paketet drar in och konfigurerar dem åt dig.

Installera

Enklast — enradsinstalleraren (laddar ner senaste releasen och installerar den; apt hämtar nginx/PHP automatiskt):

curl -fsSL https://git.sa7aux.se/bjorne/svxspot-dashboard/raw/branch/main/install.sh | sudo bash

Eller installera ett .deb du kopierat över:

sudo apt install ./svxspot-dashboard_<version>_all.deb
💡 Använd den version som release-sidan visar i filnamnet (t.ex. svxspot-dashboard_1.0.1_all.deb). Paketet är arkitektur-oberoende (_all) — samma fil fungerar på en Pi och på x86-64.

Vad installeraren frågar

En vanlig installation ställer några frågor (debconf). Vettiga standardval föreslås — du kan oftast bara trycka Enter:

Fråga Vad du anger
Nodens anropssignal Autodetekteras från svxlink.conf. Godta den.
Admin-användare Inloggningsnamn för styrsidorna. Standard admin.
Admin-lösenord Skriv ett, eller lämna tomt för att få ett slumpat 16-teckens lösenord som skrivs ut en gång på slutet — skriv ner det.
Aktivera MQTT-fjärrstyrning? Standard nej. Säg ja bara om en portal ska styra noden; då frågas broker-host / användarnamn / lösenord.

Vad den sätter upp åt dig

Installeraren gör allt rörmokeri (och går att köra om med sudo dpkg-reconfigure svxspot-dashboard):

  • installerar och konfigurerar nginx (en sajt på port 80) och php-fpm;
  • skapar admin-inloggningen (bcrypt htpasswd);
  • installerar snävt avgränsade sudo-regler så webb-användaren kan spara config och starta om SvxLink — och inget annat;
  • lägger webb-användaren i grupperna audio, tty, dialout, svxlink;
  • förbereder den valfria MQTT-agenten (en systemd-tjänst) — aktiveras bara om du slog på MQTT.

På slutet skrivs en banner ut med dashboardens URL, admin-användare och (om genererat) lösenordet.

Öppna den

  • Gå till http://svxspot.local/ i en webbläsare på samma nätverk (eller http://<nod-ip>/ om .local-namnet inte funkar).
  • Statussidan kräver ingen inloggning. Styrsidorna (TG, config-redigerare, power, Wi-Fi, …) frågar efter admin-användaren/lösenordet du satte.
⚠ Om du flashade den färdiga SvxSpot SD-kortsavbildningen är fabriksinloggningarna SSH svxspot / raspberry och dashboard admin / svxspot. Byt båda direkt (se nedan).

Vad finns på dashboarden

Sida Vad den gör
Start / Status Livestatus, senast hörda stationer, aktuell talgrupp, snabbknappar. (Ingen inloggning.)
TG + DTMF-knappsats Byt talgrupp med en tryckning; skicka rå DTMF.
Config Redigera svxlink.conf i webbläsaren med hjälptext; varje sparning gör en tidsstämplad backup och startar om SvxLink.
EchoLink · RF (SA818) · Ljud Redigerare för EchoLink, radiomodulens frekvens/squelch och ljudnivåer.
Wi-Fi / Nätverk Anslut till ett Wi-Fi / ställ in nätverk.
Power Starta om, stäng av eller starta om SvxLink.
Fjärrstyrning (MQTT) Slå på/av den valfria MQTT-agenten och ställ in brokern.
Nodinfo · Karta · Logg Nodens metadata, karta och SvxLink-loggen.

Du behöver inte veta det här för att använda den, men det hjälper vid felsökning: dashboarden läser /etc/svxlink/svxlink.conf och /var/log/svxlink för att visa status, och styr noden genom att skriva DTMF-strängar (t.ex. 91<tg># för att byta TG) till styr-pipen /var/lib/svxlink/dtmf_svx. Config-ändringar sparas och SvxLink startas om via de snäva sudo-reglerna. Det är allt — ingen databas.

Valfritt: fjärrstyrning via MQTT

Om du aktiverat MQTT gör en liten systemd-agent (svxnode-mqtt) en utgående TLS-anslutning till din broker på port 8883 (inget att öppna i routern). En extern portal publicerar ett talgruppskommando, och agenten skriver samma 91<tg># till DTMF-pipen — precis vad webbens TG-knapp gör. Slå på/av den från dashboardens Fjärrstyrning-sida, eller kör om sudo dpkg-reconfigure svxspot-dashboard.

Byt admin-lösenordet

Ingen omkonfigurering behövs — nginx läser om filen vid varje anrop:

sudo htpasswd -B /etc/nginx/svxspot-dashboard.htpasswd admin

(Lägg till -c för att börja om med en ny fil med bara den användaren.)

Felsökning

Symptom Kolla
Sidan laddar inte systemctl status nginx, sudo nginx -t, och ls /etc/nginx/sites-enabled/ (ska lista svxspot-dashboard). Fortfarande trasig → sudo dpkg-reconfigure svxspot-dashboard.
502 Bad Gateway php-fpm är nere → sudo systemctl restart php*-fpm (använd din faktiska version, t.ex. php8.4-fpm).
Lösenord nekas sudo htpasswd -cB /etc/nginx/svxspot-dashboard.htpasswd admin (-c återskapar filen).
Statussidan tom / ingen signal SvxLink är inte igång eller saknar config → systemctl status svxlink, tail -n 30 /var/log/svxlink.
TG-knapparna gör inget Kolla grep DTMF_CTRL_PTY /etc/svxlink/svxlink.conf och att /var/lib/svxlink/dtmf_svx finns. Sedan sudo dpkg-reconfigure svxspot-dashboard och starta om php-fpm.
"Spara"-rättighetsfel sudo visudo -cf /etc/sudoers.d/svxspot-dashboard ska säga "parsed OK".
MQTT förblir inaktiv journalctl -u svxnode-mqtt -n 30 --no-pager — oftast fel lösenord, fel host, eller port 8883 blockerad.
💡 Din installerade PHP-version är inte låst — exemplen här använder php8.4-fpm men din box kanske kör php8.2-fpm. Byt till din egen: ls /run/php/php*-fpm.sock.

Avinstallera / börja om

  • Behåll inställningarna: sudo apt remove svxspot-dashboard.
  • Rensa allt (inkl. MQTT-uppgifter): sudo apt purge svxspot-dashboard, installera sedan om.

Se även

  • Hamradio — SvxLink och resten av howto:erna för digital röst.
  • Författare: SA7AUX <bjorne@sa7aux.se>. GPL-3.0-or-later. Baserad på SVXLink-Dashboard-V2 / Guru-RF.