Jump to content

Hamradio/svxspot dashboard/es

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 93% complete.

Una guía para principiantes del SvxSpot Dashboard: una pequeña página web que instalas en tu nodo SvxLink (un hotspot Raspberry Pi o un repetidor FM) que muestra lo que hace el nodo y te permite cambiar de talkgroup, editar la configuración y más — desde el móvil o el PC. Un .deb monta toda la pila web por ti.

💡 En una frase: instala un paquete en tu nodo y obtienes una página web en http://svxspot.local/ que muestra estado en vivo / últimos oídos / talkgroup actual y te da cambio de TG con un clic, un teclado DTMF y editores para svxlink.conf, EchoLink, RF y audio — además de configuración Wi-Fi y botones de reinicio/apagado.
Browser talks HTTP to nginx on the node, which runs php-fpm and the PHP dashboard; it reads svxlink.conf and the log, and writes TG/DTMF to the SvxLink control pipe. An optional MQTT agent lets an external portal switch TG too.

¿Necesito esto?

  • Operas un nodo SvxLink — un hotspot «SvxSpot» o un repetidor FM — y quieres verlo y controlarlo desde un navegador en vez de por SSH y un editor de texto.
  • Se instala en la misma máquina que SvxLink (una Raspberry Pi o cualquier equipo Debian).
  • Extra opcional: deja que un portal externo cambie tu talkgroup por MQTT (útil para el panel de control de un club). Desactivado por defecto — un panel LAN sencillo no necesita nada de eso.

Qué necesitas primero

💡 El panel controla SvxLink — no lo sustituye. SvxLink ya debe estar instalado y en ejecución en el nodo.
  • Un nodo SvxLink corriendo en Debian 12/13 o Raspberry Pi OS (bookworm/trixie), en una Pi 3/4/5, Pi Zero 2 W o cualquier equipo Debian.
  • SvxLink instalado y en ejecución con /etc/svxlink/svxlink.conf (paquete svxlink-server).
  • Para control de talkgroup / DTMF con un clic desde la web, esta línea en la sección logic de tu svxlink.conf:
DTMF_CTRL_PTY=/var/lib/svxlink/dtmf_svx
  • (Opcional, solo MQTT) host del broker, puerto (normalmente 8883) y usuario/contraseña — solo si quieres control remoto por portal.

No instalas nginx ni PHP tú mismo — el paquete los trae y los configura por ti.

Instalación

Lo más fácil — el instalador de una línea (descarga la última release y la instala; apt trae nginx/PHP automáticamente):

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

O instala un .deb que hayas copiado:

sudo apt install ./svxspot-dashboard_<version>_all.deb
💡 Usa la versión que muestre la página de releases en el nombre del archivo (p. ej. svxspot-dashboard_1.0.1_all.deb). El paquete es independiente de la arquitectura (_all) — el mismo archivo vale para una Pi y para x86-64.

Qué te pregunta el instalador

Una instalación normal lanza unas preguntas (debconf). Se ofrecen valores por defecto sensatos — normalmente basta con pulsar Enter:

Pregunta Qué introducir
Indicativo del nodo Autodetectado desde svxlink.conf. Acéptalo.
Usuario admin del panel Nombre de acceso para las páginas de control. Por defecto admin.
Contraseña admin Escribe una, o déjala vacía para que se genere una contraseña aleatoria de 16 caracteres y se muestre una vez al final — apúntala.
¿Activar control remoto MQTT? Por defecto no. Di sí solo si un portal va a controlar este nodo; entonces pide host del broker / usuario / contraseña.

Qué configura por ti

El instalador hace toda la fontanería (y puede volver a ejecutarse sin riesgo con sudo dpkg-reconfigure svxspot-dashboard):

  • instala y configura nginx (un sitio en el puerto 80) y php-fpm;
  • crea el acceso admin (bcrypt htpasswd);
  • instala reglas sudo muy acotadas para que el usuario web pueda guardar la configuración y reiniciar SvxLink — y nada más;
  • añade el usuario web a los grupos audio, tty, dialout, svxlink;
  • prepara el agente MQTT opcional (un servicio systemd) — activado solo si encendiste MQTT.

Al final imprime un banner con tu URL del panel, el usuario admin y (si se generó) la contraseña.

Abrirlo

  • En un navegador de la misma red ve a http://svxspot.local/ (o http://<ip-del-nodo>/ si el nombre .local no resuelve).
  • La página de estado no necesita login. Las páginas de control (TG, editor de configuración, power, Wi-Fi, …) piden el usuario/contraseña admin que pusiste.
⚠ Si flasheaste la imagen de tarjeta SD de SvxSpot lista, los accesos de fábrica son SSH svxspot / raspberry y panel admin / svxspot. Cámbialos de inmediato (ver abajo).

Qué hay en el panel

Página Qué hace
Inicio / Estado Estado en vivo, últimas estaciones oídas, talkgroup actual, botones rápidos. (Sin login.)
TG + teclado DTMF Cambia de talkgroup con un toque; envía DTMF en bruto.
Configuración Edita svxlink.conf en el navegador con texto de ayuda; cada guardado hace una copia con fecha y reinicia SvxLink.
EchoLink · RF (SA818) · Audio Editores para EchoLink, frecuencia/squelch del módulo de radio y niveles de audio.
Wi-Fi / Red Conectarse a una Wi-Fi / configurar la red.
Power Reiniciar, apagar o reiniciar SvxLink.
Control remoto (MQTT) Encender/apagar el agente MQTT opcional y configurar el broker.
Info del nodo · Mapa · Log Metadatos del nodo, mapa y el log de SvxLink.

No necesitas saber esto para usarlo, pero ayuda al diagnosticar: el panel lee /etc/svxlink/svxlink.conf y /var/log/svxlink para mostrar el estado, y controla el nodo escribiendo cadenas DTMF (p. ej. 91<tg># para cambiar de TG) en la tubería de control /var/lib/svxlink/dtmf_svx. Los cambios de configuración se guardan y SvxLink se reinicia mediante las reglas sudo acotadas. Eso es todo — sin base de datos.

Opcional: control remoto por MQTT

Si activaste MQTT, un pequeño agente systemd (svxnode-mqtt) establece una conexión TLS saliente a tu broker en el puerto 8883 (nada que abrir en el router). Un portal externo publica una orden de talkgroup, y el agente escribe el mismo 91<tg># en la tubería DTMF — exactamente lo que hace el botón TG de la web. Enciéndelo/apágalo desde la página Control remoto del panel, o con sudo dpkg-reconfigure svxspot-dashboard.

Cambiar la contraseña 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.)

Resolución de problemas

Síntoma Comprobar
La página no carga systemctl status nginx, sudo nginx -t y ls /etc/nginx/sites-enabled/ (debe listar svxspot-dashboard). Sigue roto → sudo dpkg-reconfigure svxspot-dashboard.
502 Bad Gateway php-fpm caído → sudo systemctl restart php*-fpm (tu versión real, p. ej. php8.4-fpm).
Contraseña rechazada sudo htpasswd -cB /etc/nginx/svxspot-dashboard.htpasswd admin (-c la recrea).
Página de estado vacía / sin indicativo SvxLink no está en ejecución o sin configuración → systemctl status svxlink, tail -n 30 /var/log/svxlink.
Los botones TG no hacen nada Comprueba grep DTMF_CTRL_PTY /etc/svxlink/svxlink.conf y que exista /var/lib/svxlink/dtmf_svx. Luego sudo dpkg-reconfigure svxspot-dashboard y reinicia php-fpm.
Error de permisos al «Guardar» sudo visudo -cf /etc/sudoers.d/svxspot-dashboard debe decir «parsed OK».
MQTT sigue inactivo journalctl -u svxnode-mqtt -n 30 --no-pager — normalmente contraseña incorrecta, host incorrecto o puerto 8883 bloqueado.
💡 Tu versión de PHP instalada no es fija — los ejemplos usan php8.4-fpm pero tu máquina podría usar php8.2-fpm. Pon la tuya: ls /run/php/php*-fpm.sock.

Desinstalar / empezar de cero

  • Conservar la configuración: sudo apt remove svxspot-dashboard.
  • Borrar todo (incl. credenciales MQTT): sudo apt purge svxspot-dashboard, luego reinstala.

Véase también

  • Hamradio — SvxLink y el resto de las guías de voz digital.
  • Autor: SA7AUX <bjorne@sa7aux.se>. GPL-3.0-or-later. Basado en SVXLink-Dashboard-V2 / Guru-RF.