Siguiendo la ya probada, y presente en muchas instalaciones, versión inicial de pYSFReflector, descargable desde este enlace,un software escrito en python3 por Antonio IU5JAE del Grupo Radio Firenze para la gestión de un reflector C4FM YSF,presentamos la nueva versión 2.

Qué hay de nuevo, características principales:

  • Decodificación de flujo C4FM con extracción de toda la información presente en el FICH (tipo de flujo, ID de radio, DG-ID transmitido, tipo de desviación utilizada del lado de RF, etc.);
  • decodifica los datos de ubicación GPS transmitidos y los envía (si están habilitados en el archivo .ini) a través de APRS;
  • bloquea el reenvío de todas las consultas repetidoras a la red (conexión, desconexión, estado, búsquedas) para evitar el tráfico innecesario de inhibidores;
  • enviar datos en formato Json a través de socket/UDP para un sistema externo de gestión/visualización (consulte el panel collector.py)

La configuración del reflector siempre tiene lugar en el archivo pysfreflector.ini; en particular, hay una nueva sección de red con la gestión del puerto Json y la sección APRS donde no solo es posible habilitar o no las funciones relacionadas, sino también configurar un SSID específico a través del cual se enviarán los datos desde el reflector al servidor APRS indicado,para el mapeo de las posiciones detectadas, en el sitio aprs.fi Se pueden ver configuraciones adicionales e información de instalación en la documentación de la versión anterior de pYSFReflector, en github. Es importante especificar que pYSF2 necesita la biblioteca de python «aprslib»,que se puede instalar como de costumbre con el comando «pip install aprslib». Para obtener más información sobre el uso de python y la gestión de paquetes, en Internet puede encontrar guías completas.

pYSFReflector versión 2 cuenta con un potente gestor de accesos,ampliando lo que ya está presente en la versión inicial. De hecho, además de las comprobaciones habituales sobre la validez formal de los nombres intransito, nombre de bloque y/o pasarela, etc. pYSF2 permite limitar el acceso a los nombres con sufijos como -RPT, -GW, -ND,etc. (generalmente provocadores de tráfico de datos innecesario a la red) y a dispositivos serie específicos (por el momento prerrogativa exclusiva de solo sistemas Wires X Yaesu), todo administrado en el archivo denegado.db

El envío de datos en tránsito sobre pYSF2 a un puerto UDP ha permitido la creación de un segundo software llamado collector, un dashboard siempre escrito en python (por IK5XMK del Grupo Radio Firenze) que opera íntegramente en memoria a través de su propio servidor web integrado sin necesidad de páginas html/php escritas en disco. El recopilador se configura editando directamente el archivo collector.py, en la SECCIÓN CONFIG relativa. Se debe indicar la dirección/puerto Json de pYSFReflector2 (el dashboard también puede residir en otro servidor…), la dirección del servidor que mostrará las páginas html y su puerto (para operar sin conflictos también con otros dashboards ya presentes en el sistema).

El recopilador es altamente configurable y se puede decidir qué mostrar como información, ya que algunos valores son exquisitamente para los iniciados. Collector requiere la presencia de algunas bibliotecas que no están presentes de forma predeterminada; necesitas instalarlos manualmente con «pip install uvicorn» (o pip3) y «pip install starlette«. Recuerde actualizar su sistema al comienzo de la instalación. Después de hacerlo ejecutable, el programa se puede iniciar fácilmente con el comando«./collector.py &«.

Para ver un ejemplo de pYSFReflector2 con su colector:

El software se puede recoger de esta carpeta en Google Drive.

Para obtener ayuda e información, escriba en el Foro del Grupo Radio Firenze 

Estos software son solo para uso de radioaficionados, creados de forma experimental y sin ninguna garantía y soporte. También son el resultado de elaboraciones de programas (o partes de ellos) ya existentes y tienen la finalidad de conocer en plena forma el protocolo digital de radioaficionados denominado C4FM, no limitándose al único uso. Estos programas son de código abierto, ver licencia relativa dentro de los códigos.

Antonio IU5JAE

David IK5XMK

info@grupporadiofirenze.net

Por EA7IYR

Deja una respuesta