Hamradio/svxspot dashboard/it
Una guida per principianti alla SvxSpot Dashboard: una piccola pagina web che installi sul tuo nodo SvxLink (un hotspot Raspberry Pi o un ripetitore FM) che mostra cosa fa il nodo e ti permette di cambiare talkgroup, modificare la configurazione e altro — da telefono o PC. Un .deb configura per te l'intero stack web.
http://svxspot.local/ che mostra stato live / ultimi ascoltati / talkgroup corrente e ti dà cambio TG con un clic, un tastierino DTMF ed editor per svxlink.conf, EchoLink, RF e audio — più configurazione Wi-Fi e pulsanti di riavvio/spegnimento.
Mi serve?
- Gestisci un nodo SvxLink — un hotspot «SvxSpot» o un ripetitore FM — e vuoi vederlo e controllarlo da un browser invece che via SSH e un editor di testo.
- Si installa sulla stessa macchina di SvxLink (un Raspberry Pi o qualsiasi macchina Debian).
- Extra opzionale: lascia che un portale esterno cambi la tua talkgroup via MQTT (comodo per il pannello di controllo di un club). Disattivato di default — una semplice dashboard LAN non ne ha bisogno.
Cosa ti serve prima
- Un nodo SvxLink su Debian 12/13 o Raspberry Pi OS (bookworm/trixie), su un Pi 3/4/5, Pi Zero 2 W o qualsiasi macchina Debian.
- SvxLink installato e in esecuzione con
/etc/svxlink/svxlink.conf(pacchettosvxlink-server). - Per il controllo talkgroup / DTMF con un clic dal web, questa riga nella sezione logic della tua
svxlink.conf:
DTMF_CTRL_PTY=/var/lib/svxlink/dtmf_svx
- (Opzionale, solo MQTT) host del broker, porta (di solito 8883) e nome utente/password — solo se vuoi il controllo remoto via portale.
Non installi nginx o PHP da solo — il pacchetto li tira dentro e li configura per te.
Installazione
Il più facile — l'installer a una riga (scarica l'ultima release e la installa; apt tira nginx/PHP automaticamente):
curl -fsSL https://git.sa7aux.se/bjorne/svxspot-dashboard/raw/branch/main/install.sh | sudo bash
Oppure installa un .deb che hai copiato:
sudo apt install ./svxspot-dashboard_<version>_all.deb
svxspot-dashboard_1.0.1_all.deb). Il pacchetto è indipendente dall'architettura (_all) — lo stesso file va su un Pi e su x86-64.
Cosa chiede l'installer
Un'installazione normale pone alcune domande (debconf). Vengono proposti valori predefiniti sensati — di solito basta premere Invio:
| Domanda | Cosa inserire |
|---|---|
| Nominativo del nodo | Rilevato automaticamente da svxlink.conf. Accettalo.
|
| Utente admin della dashboard | Nome di accesso per le pagine di controllo. Default admin.
|
| Password admin | Inseriscine una, o lasciala vuota per generare una password casuale di 16 caratteri mostrata una volta alla fine — annotala. |
| Abilitare il controllo remoto MQTT? | Default no. Di' sì solo se un portale controllerà questo nodo; allora chiede host del broker / utente / password. |
Cosa configura per te
L'installer fa tutto l'impianto idraulico (e può essere rieseguito senza rischi con sudo dpkg-reconfigure svxspot-dashboard):
- installa e configura nginx (un sito sulla porta 80) e php-fpm;
- crea l'accesso admin (bcrypt
htpasswd); - installa regole sudo molto ristrette così l'utente web può salvare la configurazione e riavviare SvxLink — e nient'altro;
- aggiunge l'utente web ai gruppi
audio, tty, dialout, svxlink; - prepara l'agente MQTT opzionale (un servizio systemd) — attivato solo se hai acceso MQTT.
Alla fine stampa un banner con la tua URL della dashboard, l'utente admin e (se generata) la password.
Aprirla
- In un browser sulla stessa rete vai su
http://svxspot.local/(ohttp://<ip-del-nodo>/se il nome.localnon risolve). - La pagina di stato non richiede accesso. Le pagine di controllo (TG, editor di configurazione, power, Wi-Fi, …) chiedono l'utente/password admin che hai impostato.
svxspot / raspberry e dashboard admin / svxspot. Cambiali subito (vedi sotto).
Cosa c'è nella dashboard
| Pagina | Cosa fa |
|---|---|
| Start / Stato | Stato live, ultime stazioni ascoltate, talkgroup corrente, pulsanti rapidi. (Nessun accesso.) |
| TG + tastierino DTMF | Cambia talkgroup con un tocco; invia DTMF grezzo. |
| Configurazione | Modifica svxlink.conf nel browser con testo di aiuto; ogni salvataggio fa un backup con data e riavvia SvxLink.
|
| EchoLink · RF (SA818) · Audio | Editor per EchoLink, frequenza/squelch del modulo radio e livelli audio. |
| Wi-Fi / Rete | Unirsi a una Wi-Fi / impostare la rete. |
| Power | Riavviare, spegnere o riavviare SvxLink. |
| Controllo remoto (MQTT) | Accendere/spegnere l'agente MQTT opzionale e impostare il broker. |
| Info nodo · Mappa · Log | Metadati del nodo, mappa e il log di SvxLink. |
Come controlla SvxLink (versione semplice)
Non serve saperlo per usarla, ma aiuta nella diagnosi: la dashboard legge /etc/svxlink/svxlink.conf e /var/log/svxlink per mostrare lo stato, e controlla il nodo scrivendo stringhe DTMF (es. 91<tg># per cambiare TG) nella pipe di controllo /var/lib/svxlink/dtmf_svx. Le modifiche di configurazione vengono salvate e SvxLink riavviato tramite le regole sudo ristrette. Tutto qui — nessun database.
Opzionale: controllo remoto via MQTT
Se hai attivato MQTT, un piccolo agente systemd (svxnode-mqtt) stabilisce una connessione TLS in uscita al tuo broker sulla porta 8883 (niente da aprire nel router). Un portale esterno pubblica un comando talkgroup, e l'agente scrive lo stesso 91<tg># nella pipe DTMF — esattamente ciò che fa il pulsante TG del web. Accendilo/spegnilo dalla pagina Controllo remoto della dashboard, o con sudo dpkg-reconfigure svxspot-dashboard.
Cambiare la password admin
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.)
Risoluzione dei problemi
| Sintomo | Controlla |
|---|---|
| La pagina non carica | systemctl status nginx, sudo nginx -t e ls /etc/nginx/sites-enabled/ (deve elencare svxspot-dashboard). Ancora rotto → sudo dpkg-reconfigure svxspot-dashboard.
|
| 502 Bad Gateway | php-fpm giù → sudo systemctl restart php*-fpm (la tua versione reale, es. php8.4-fpm).
|
| Password rifiutata | sudo htpasswd -cB /etc/nginx/svxspot-dashboard.htpasswd admin (-c la ricrea).
|
| Pagina di stato vuota / nessun nominativo | SvxLink non è in esecuzione o senza configurazione → systemctl status svxlink, tail -n 30 /var/log/svxlink.
|
| I pulsanti TG non fanno nulla | Controlla grep DTMF_CTRL_PTY /etc/svxlink/svxlink.conf e che esista /var/lib/svxlink/dtmf_svx. Poi sudo dpkg-reconfigure svxspot-dashboard e riavvia php-fpm.
|
| Errore di permessi al «Salva» | sudo visudo -cf /etc/sudoers.d/svxspot-dashboard deve dire «parsed OK».
|
| MQTT resta inattivo | journalctl -u svxnode-mqtt -n 30 --no-pager — di solito password errata, host errato o porta 8883 bloccata.
|
php8.4-fpm ma la tua macchina potrebbe usare php8.2-fpm. Metti la tua: ls /run/php/php*-fpm.sock.
Rimuovere / ricominciare
- Conservare le impostazioni:
sudo apt remove svxspot-dashboard. - Cancellare tutto (incl. credenziali MQTT):
sudo apt purge svxspot-dashboard, poi reinstalla.
Vedi anche
- Hamradio — SvxLink e il resto delle guide di voce digitale.
- Autore: SA7AUX <bjorne@sa7aux.se>. GPL-3.0-or-later. Basato su SVXLink-Dashboard-V2 / Guru-RF.
