My CW calling.

jueves, 16 de septiembre de 2021

Enlazando AllStarLink con DMR

Como radioexperimentadores que somos, siempre queremos llevar al límite de las posibilidades todos nuestros sistemas.

Llevo ya algunas semanas usando el nodo de AllStarLink de forma satisfactoria, enlazando a otros nodos y haciendo uno que otro QSO cuando el trabajo me lo permite, además de tenerlo al aire a través de RF en el área metropolitana en la frecuencia de 434.750 Mhz.

Por otro lado, los ùltimos años y meses he visto como han ido ganando terreno los sistemas digitales en el àmbito de la radioafición y particularmente el DMR, con la promesa de ofrecer una comunicación más confiable y eficiente.

Habida cuenta de las divergentes opiniones que cada quien tiene al respecto, DMR es un campo vàlido de experimentación y cada vez más radioaficionados instalan sus hotspots y se enlazan en TGs alrededor del globo.

Me surgió entonces la inquietud de cómo enlazarme localmente al mundo digital de manera simple y sencilla, con los recursos disponibles, empleando el nodo AllStarLink que ya tengo en línea y así no atiborrar la repisa de gadgets; eventualmente es un gasto en un hotspot, que no tendré que hacer ;-). Estaba particularmete animado además porque otros colegas ya lo han hecho, en especial el colega EA8EE con cuyos nodos suelo estar enlazado para aprovechar de uno que otro QSO con el viejo continente en habla hispana.

Fué así que encontré el proyecto DVSwitch que consiste en una serie de herramientas de software libre que nos permite interconectar diferentes sistemas de radioaficionados y enrutar el tráfico entre ellos. A decir verdad un trabajo impresionante por parte de los miembros de este equipo. Me dí a la tarea de implementarlo. Me tomó alrededor de 3 horas tenerlo completamente operativo; mucho menos de lo que me tomó escribir este artículo.

En éste artículo quiero compartir los pasos que seguí para implementar un sistema que interconecta mi nodo de ASL con un talkgroup DMR en la red de Brandmeister, y ya que no hay mucha literatura en español al respecto talves pueda animar a alguien más.

 Prerequistos:

  1. Pasión por la radioexperimentación.
  2. Tener instalado y operativo un nodo de AllStarLink. (Yo uso Raspberry pi 3B, tengo un artículo anterior si se anima).
  3. Tener el ID de DMR y estar registrado en  Brandmeister Network.

Parte 1. Ajustar la configuración del nodo ASL.

Lo primero es hacer algunos ajustes de configuración en los archivos de AllStarLink.

1. Modifique el archivo rpt.conf y coloque las siguientes líneas antes de la sección de su nodo, justo despues de la linea de ; :

[9999]
rxchannel = USRP/127.0.0.1:34001:32001
duplex = 0
hangtime = 0
althangtime = 0
holdofftelem = 1
telemdefault = 0
telemdynamic = 0
linktolink = no
nounkeyct = 1
totime = 180000
idrecording = |ie
idtalkover = |ie 

La primera línea (9999) corresponde a un número de nodo privado que usted puede elegir; es un nodo interno que usará para enrutar el tráfico hacia y desde otros sistemas (DMR en este caso), coloque un número de 4 dígitos.

La segunda línea  especifica el driver del canal, el host y los puertos a donde habla y escucha.

La sexta línea es importante para evitar que la telemetría del nodo ASL se filtre a las salas del talkgroup conectado, toda vez que eso resulta molesto e innecesario en este tipo de enlaces; es necesario si no quieres que te pongan en listas negras.

Posteriormente añada la siguiente línea en el bloque  [nodes] inmediatemente despues de las de su nodo particular:

9999 = radio@127.0.0.1:4569/9999,NONE

2. Abra el archivo modules.conf y ubique la línea que hace referencia al módulo chan_usrp.so; si esta comentado descomentelo y asegurese que quede con el paràmetro load. Debería quedar así:

 load => chan_usrp.so                         ;GNU Radio interface USRP Channel Driver

3. Para finalizar en el archivo extensions.conf añada las siguientes líneas: En el bloque [general] añada la línea:

NODE1 = 9999

Y en el bloque [radio-secure] añada la línea:

exten => ${NODE1},1,rpt,${NODE1}

Llegados a este punto ya tenemos los ajustes necesarios en los archivos de configuración, puede reiniciar su nodo de ASL y debería poder conectar el nodo privado 9999 de la forma como lo hace con otros nodos.

Parte 2. Instalar y configurar DVSwitch.

 1. Si no los tiene ya, instale los repositorios de DvSwitch. A la fecha en que yo hice esta instalación emplee los siguiente comandos para hacer dicha instalación:

: wget http://dvswitch.org/buster
: chmod +x buster
: ./buster
: apt-get update -y

2. Instale ahora DVSwitch usando:

apt-get install dvswitch-server -y

o

apt-get install dvswitch

3. Cambiese al direcrorio /opt/MMDVM_Bridge y edite el archivo MMDVM_Bridge.ini para hacer los siguientes ajustes:

  • Bajo el bloque [general] cambie el valor por el que corresponda con su indicativo de llamada en el parámetro callsign y en el paràmetro id use su DMR ID añadiendo al final dos digitos; por ejemplo añada el número 10.
  • En el bloque [info] puede modificar la información con la suya propia.
  • En el bloque [DMR] cambie el parámetro Enable a 1.
  • En el bloque [DMR_Network] cambie el parámetro Enable a 1, y cambie el paràmetro Address colocando la IP o URL de su servidor DMR (yo estoy usando el servidor de la red de brandmeister 3108.repeater.net) ; verifique si su servidor requiere un password personalizado y cambielo de acuerdo a su caso.

En este punto usted puede reiniciar su nodo o ejecutar el comando  ./MMDVM_Bridge MMDVM_Bridge.ini; y si accede a su cuenta en https://brandmeister.network, podrá ver su hotspot activo.

Haciendo clic en el enlace de su hotspot usted accede a la información del mismo y allí encontrará un recuadro con el título Static Talkgroups; añada el número del TG de DMR al que quiere enlazar su nodo.

4. Volviendo a los ajustes en su nodo; cambiese a la carpeta /opt/Analog_Bridge y edite el archivo Analog_Bridge.ini para hacer los siguientes ajustes:

  • Bajo el bloque [General] cambie el valor del parámetro decoderFallBack a true.
  • En el bloque [AMBE_AUDIO] cambie el valor del paràmetro gatewayDMRId a su DMR ID, y el valor del parámetro repeaterID a su DMR ID añadiendo al final dos dígitos adicionales; esto se corresponde con su SSID (tenga cuidado de usar los mismos que usò en el paso 3; en mi caso yo uso el número 10). En el paràmetro txTg debe colocar el DMR TG que haya usado en la seccion Static Talkgroups de su hotspot en su consola de  https://brandmeister.network brandmeister.network.
  • NOTA: En el bloque [USRP] tenga en cuenta los paràmetros txPort y rxPort ya que estos son los puertos por los que fluyen las tramas de audio de ida y venida entre su nodo ASL y el TG de DMR y deben corresponderse con los establecidos en el paràmetro  rxchannel de su nodo, que vimos arriba en la parte 1.

5. Para finalizar esta parte y habiendo hecho los anteriores ajustes configure los servicios para que inicien el momento de arrancar el sistema con los siguientes comandos y reinicie el nodo:

systemctl enable analog_bridge
systemctl enable md380-emu
systemctl enable mmdvm_bridge

En éste punto tiene el sistema preparado para enlazar y enrutar tràfico entre su nodo y el TG de DMR que haya configurado. Simplemente enlace el nodo privado y listo.

Para mayor detalle puede encontrar ésta formula originalmente haciendo click en éste enlace.

 

Y nuevamente como una imágen vale más que mil palabras aquí les comparto un video clip del cacharreo!

73s