MMDVMHost: Arquitectura e Introducción
Una guía completa para entender cómo funciona el software que mueve la mayoría de hotspots y repetidores digitales del mundo: desde la señal de radio que entra por la antena hasta el paquete que viaja por Internet hacia un reflector.
1. ¿Qué es MMDVMHost?
MMDVMHost es el programa que actúa como «cerebro» de un sistema MMDVM (Multi-Mode Digital Voice Modem). Se ejecuta en un pequeño ordenador, normalmente una Raspberry Pi, y se comunica con un módem de radio para recibir, interpretar y retransmitir comunicaciones digitales de voz y datos en varios modos distintos con un único equipo.
Si alguna vez has usado un hotspot con Pi-Star o WPSD para conectarte a un reflector YSF o a un TalkGroup de BrandMeister, ya has utilizado MMDVMHost aunque no lo supieras: es el motor que funciona por debajo de esas interfaces web.
2. Origen y contexto histórico
Durante años, cada modo digital vivía en su propio mundo. D-Star dependía de repetidores Icom, System Fusion de equipos Yaesu y DMR de infraestructura comercial de Motorola o Hytera. Montar un repetidor multimodo significaba comprar varios equipos caros e incompatibles entre sí.
Hacia 2015, Jonathan Naylor (G4KLX), autor también de ircDDBGateway y de numerosas herramientas para D-Star, impulsó junto a otros radioaficionados el proyecto MMDVM. La idea era sencilla pero revolucionaria: usar un microcontrolador genérico para modular y demodular la señal, y dejar toda la lógica de los protocolos en un software abierto que se ejecutara en un ordenador.
El proyecto se publica bajo licencia GPL v2 en GitHub, lo que ha permitido que cientos de colaboradores añadan modos, corrijan errores y creen pasarelas y paneles de control alrededor del núcleo.
2015
Nace el proyecto MMDVM
C++
Lenguaje del núcleo
GPL v2
Código abierto
+8
Modos digitales
3. Una analogía para entenderlo
Imagina una oficina de correos internacional que recibe cartas escritas en distintos idiomas:
El cartero = el módem
Recoge las cartas (la señal de radio) y las entrega en la oficina. No las lee ni sabe en qué idioma están; solo las transporta con puntualidad.
El clasificador = MMDVMHost
Abre cada carta, reconoce el idioma (el modo digital), lee el remitente y el destinatario y decide a qué departamento enviarla.
Los mensajeros = las pasarelas
Cada departamento tiene un mensajero especializado que conoce las rutas internacionales de su idioma: YSFGateway para C4FM, DMRGateway para DMR, etc.
4. Arquitectura en tres capas
La estabilidad de MMDVMHost se basa en una separación clara de responsabilidades. Cada capa hace una sola cosa y la hace bien, lo que facilita el mantenimiento y permite sustituir piezas sin afectar al resto.
CAPA 3 · RED
Pasarelas (YSFGateway, DMRGateway, ircDDBGateway…) que hablan con reflectores y servidores de Internet mediante UDP.
CAPA 2 · LÓGICA (MMDVMHost)
Interpreta protocolos, valida cabeceras, aplica listas de acceso, gestiona temporizadores, controla la pantalla y escribe el registro de actividad.
CAPA 1 · FÍSICA (módem MMDVM)
Microcontrolador y transceptor que modulan y demodulan la señal en tiempo real (GMSK, 4FSK, C4FM) y entregan tramas digitales por el puerto serie.
Idea clave: MMDVMHost nunca toca la radiofrecuencia directamente. Todo lo que exige precisión de microsegundos lo resuelve el módem; el ordenador se encarga de la «inteligencia». Por eso funciona sin problemas en un hardware tan modesto como una Raspberry Pi Zero 2 W.
5. El módem MMDVM y su firmware
El módem es la pieza que convierte la radio en datos. Existen dos grandes familias, cada una con su propio firmware:
Firmware MMDVM
Pensado para conectarse a radios externas (por ejemplo, equipos Motorola o Kenwood reconvertidos) a través del discriminador y la entrada de modulación.
- Microcontroladores STM32, Arduino Due o Teensy.
- Procesa la señal de audio en banda base.
- Ideal para repetidores dúplex de media y alta potencia.
Firmware MMDVM_HS
Desarrollado por Andy Uribe (CA6JAU) para placas con transceptor integrado ADF7021, que incluyen la radio en la propia placa.
- Placas tipo ZUMspot, MMDVM_HS_Hat o similares.
- Potencia de pocos milivatios, uso personal.
- Versiones simplex (un transceptor) y dúplex (dos).
Consejo práctico: mantén el firmware del módem actualizado y en una versión compatible con tu MMDVMHost. Muchos problemas de «no transmite» o «BER alto» se resuelven actualizando el firmware y calibrando el desplazamiento de frecuencia (RXOffset y TXOffset).
6. El ecosistema de pasarelas
MMDVMHost no se conecta directamente a todas las redes. Delega esa tarea en programas auxiliares llamados pasarelas (gateways), que se comunican con él mediante UDP dentro del propio ordenador. Este diseño permite actualizar o reiniciar una pasarela sin detener el núcleo.
| Pasarela | Modo | Función |
|---|---|---|
| YSFGateway | C4FM | Conexión a reflectores YSF y FCS. |
| DGIdGateway | C4FM | Asigna destinos distintos a cada DG-ID del equipo Yaesu. |
| DMRGateway | DMR | Conexión simultánea a varias redes (BrandMeister, TGIF, DMR+…) y reescritura de TalkGroups. |
| ircDDBGateway | D-Star | Enrutamiento por indicativo y enlace a reflectores DPlus, DExtra y DCS. |
| P25Gateway / NXDNGateway | P25 / NXDN | Acceso a los reflectores de cada modo. |
| DAPNETGateway | POCSAG | Recepción de mensajes de la red de buscapersonas DAPNET. |
7. Recorrido de una transmisión paso a paso
Sigamos una llamada real: un operador pulsa el PTT de su Yaesu FT5D en modo digital, con su hotspot enlazado a un reflector YSF.
Emisión: el transceptor modula la voz codificada en C4FM y la emite en la frecuencia del hotspot.
Demodulación: el módem detecta la sincronización, recupera los bits y envía la trama al ordenador por el puerto serie.
Análisis: MMDVMHost identifica el modo System Fusion, lee el indicativo de origen, comprueba los permisos y calcula la calidad de la señal (BER).
Entrega local: la trama pasa por UDP a YSFGateway, que mantiene abierta la conexión con el reflector.
Internet: el reflector recibe el paquete y lo reenvía a todos los nodos conectados, que repiten el proceso a la inversa y lo emiten por radio.
Todo este recorrido ocurre en una fracción de segundo. El retardo total depende sobre todo de la conexión a Internet y de la distancia al reflector, no del hotspot.
8. Modos digitales soportados
C4FM / System Fusion
El modo de Yaesu, muy extendido en Mallorca. Soporta voz en banda estrecha (DN) y voz de alta calidad (VW), además de DG-ID para separar grupos.
DMR
Basado en TDMA con dos ranuras de tiempo (Time Slots), código de color y TalkGroups. Muy utilizado gracias a sus equipos asequibles.
D-Star
El pionero, creado por la JARL. Modulación GMSK, enrutamiento por indicativo y canal de datos lento para mensajes y posición GPS.
P25, NXDN, M17, POCSAG y FM
Protocolos de origen profesional, el modo abierto M17 en versiones recientes, mensajería POCSAG y FM analógica para repetidores.
Multimodo no significa simultáneo: un hotspot simplex escucha todos los modos activos por turnos (mode hang), pero solo puede atender una transmisión a la vez. Si activas un único modo, la respuesta es más rápida.
9. El archivo de configuración MMDVM.ini
Todo el comportamiento de MMDVMHost se define en un archivo de texto organizado en secciones entre corchetes. Las interfaces web como Pi-Star o WPSD simplemente editan este archivo por ti. Este es un extracto simplificado para un hotspot C4FM:
[General]
Callsign=EA6XXX
Id=214600100
Duplex=0
[Info]
RXFrequency=430137500
TXFrequency=430137500
Location=Palma de Mallorca
[Modem]
Protocol=uart
UARTPort=/dev/ttyAMA0
RXOffset=0
TXOffset=0
[System Fusion]
Enable=1
[System Fusion Network]
Enable=1
LocalPort=3200
GatewayPort=4200
| Sección | Para qué sirve |
|---|---|
| [General] | Indicativo, identificador DMR y modo simplex o dúplex. |
| [Info] | Frecuencias, potencia y ubicación que se publican en las redes. |
| [Modem] | Puerto de conexión, niveles de audio y ajustes de calibración. |
| [Modo] | Activa o desactiva cada modo digital en radio. |
| [Modo Network] | Puertos UDP para hablar con la pasarela correspondiente. |
Nota: las frecuencias se indican en hercios y deben estar dentro del segmento permitido por tu licencia y el plan de bandas de la IARU Región 1.
10. Hardware anfitrión
RECOMENDADOS
- Raspberry Pi Zero 2 W: perfecta para hotspots portátiles, con muy bajo consumo.
- Raspberry Pi 3B+, 4 y 5: para repetidores, varios servicios o paneles con mucho tráfico.
- Mini PC de bajo consumo: opción robusta para nodos fijos con módem USB.
A EVITAR
- Pi Zero original y Pi 1: demasiado lentas para las distribuciones actuales.
- Fuentes de alimentación baratas: provocan reinicios y corrupción de la tarjeta SD.
- Tarjetas microSD de baja calidad: la causa más frecuente de fallos a largo plazo.
11. Distribuciones listas para usar
Compilar y configurar MMDVMHost a mano es una gran experiencia de aprendizaje, pero la mayoría de operadores utiliza una distribución que lo incluye todo preconfigurado:
Pi-Star
La distribución clásica creada por Andy Taylor (MW0MWZ). Panel web sencillo, enorme base de usuarios y abundante documentación.
WPSD
Una evolución moderna con desarrollo activo, panel renovado, soporte para hardware reciente como la Raspberry Pi 5 y modos nuevos como M17.
12. Buenas prácticas y errores comunes
Haz esto
- Calibra el desplazamiento de frecuencia hasta lograr un BER inferior al 1 %.
- Elige una frecuencia de hotspot libre y respeta el plan de bandas.
- Haz una copia de seguridad de la configuración tras cada cambio importante.
- Cambia la contraseña por defecto del panel web.
Evita esto
- Usar frecuencias de repetidores, satélites o de entrada a otros sistemas.
- Activar modos que no utilizas: ralentizan la detección.
- Exponer el panel web directamente a Internet.
- Mezclar versiones de firmware y software muy distantes.
13. Glosario esencial
- Hotspot
- Nodo personal de muy baja potencia que conecta tu radio con las redes digitales por Internet.
- Reflector
- Servidor que recibe el audio de un nodo y lo redistribuye a todos los conectados.
- BER
- Tasa de error de bit. Indica la calidad de la señal recibida; cuanto más baja, mejor.
- Simplex / Dúplex
- Simplex usa una sola frecuencia para transmitir y recibir; dúplex usa dos y permite repetir en tiempo real.
- DG-ID
- Identificador de grupo digital de C4FM que permite separar conversaciones en la misma frecuencia.
- TalkGroup
- Grupo de conversación DMR al que se dirigen las llamadas, por ejemplo por región o temática.
// CONCLUSIÓN
MMDVMHost demuestra que el código abierto puede unir tecnologías que nacieron enfrentadas. Comprender su arquitectura en capas, el papel del módem y de las pasarelas te permitirá configurar, diagnosticar y aprovechar al máximo tu hotspot o repetidor. En próximos artículos veremos la instalación y la calibración paso a paso.