Este software se conecta a reflectores M17, Fusion (compatibles con los modos YSF/FCS, DN y VW), DMR, P25, NXDN, D-STAR (REF/XRF/DCS) y nodos AllStar (como cliente IAX2 o modo Web Transceiver WT) a través de UDP. Es compatible con todos los dispositivos USB AMBE existentes (ThumbDV, DVstick 30, DVSI, etc.). También es compatible con módems MMDVM y se puede utilizar como punto de acceso o como transceptor independiente a través del modo directo al dispositivo MMDVM. Este software es de código abierto y utiliza la biblioteca C++ multiplataforma denominada Qt. Se compilará y ejecutará en Linux, Windows, MacOS, Android e iOS. Sin embargo, no es compatible con dispositivos USB para iOS (vocoder AMBE o MMDVM). También debería compilarse y ejecutarse en cualquier otra plataforma posix que tenga Qt disponible (xxxBSD, Solaris, etc.). Este software se proporciona tal cual y no hay soporte disponible.
Este software utiliza software de varios otros proyectos de software de código abierto, incluidos MMDVMHost, MMDVM_CM, mvoice y otros. No solo se utiliza directamente el software de estos proyectos, sino que aprender sobre los diversos protocolos de red y la codificación/decodificación de los diversos protocolos solo fue posible gracias a los autores de todos estos proyectos de software.
DudeStar, DroidStar y Qt
La aplicación DudeStar utilizó la interfaz de usuario de Qt Widgets, mientras que DroidStar utiliza la interfaz de usuario de Qt Quick. Todo el código fuente C/C++ de back-end para ambos proyectos siempre ha sido idéntico, pero debido a las diferentes API de interfaz de usuario, se tuvieron que mantener dos repositorios para el mismo proyecto. Aunque prefiero la interfaz de usuario de Qt Widgets a la interfaz de usuario de Qt Quick para aplicaciones de escritorio, he combinado ambos proyectos en una sola entidad que ahora se llama simplemente “DroidStar”. Mi repositorio de dudestar ha sido eliminado de github, pero hay muchas bifurcaciones de este en github, en caso de que alguien desee continuar con el desarrollo de esa versión.
Compatibilidad con M17
La biblioteca de vocoder Codec2 es de código abierto y se incluye como una implementación en C++ de la biblioteca C original tomada del proyecto mvoice. Puede encontrar más información sobre M17 aquí: https://m17project.org/
Compatibilidad con MMDVM: trabajo en progreso
DroidStar es compatible con módems MMDVM y MMDVM_HS (punto de acceso), con compatibilidad básica (posiblemente con errores) para M17, D-STAR, Fusion y DMR. Próximamente será compatible con P25 y NXDN. Al conectarse a un servidor DMR/reflector de modo digital y seleccionar un dispositivo MMDVM en Módems, DroidStar actúa como un punto de acceso/repetidor. Cuando se selecciona ‘MMDVM Direct’ (actualmente solo M17) como host, DroidStar se convierte en un transceptor independiente.
API de complemento de vocoder de software
Hay una API de complemento de vocoder disponible para cargar el software de vocoder. Cualquier complemento de vocoder utilizado con DroidStar debe tener la licencia correspondiente del usuario si se aplican patentes de derechos de autor. No utilice ningún complemento de vocoder patentado para el que no tenga licencia. No tengo información sobre cómo adquirir un vocoder de software.
Carga de un complemento de vocoder
Se puede descargar un complemento de vocoder desde una URL, que colocará el vocoder en la ubicación correcta para la plataforma. Agregue una URL http completa, incluido el nombre del archivo, a la opción URL de vocoder en la pestaña de configuración y haga clic en el botón Descargar vocoder.
Para dispositivos Android e iOS, el método de descarga de URL de vocoder es la única forma de cargar un complemento de vocoder. Para Linux/MacOS/Windows, también se puede colocar un vocoder manualmente. Copie el complemento en la ubicación del archivo de configuración del sistema. En Linux, es ~/.config/dudetronics. Es el mismo lugar donde se encuentran los archivos de host e id (DMRHosts.txt, DMRIDs.data, etc.).
El nombre del archivo del complemento vocoder debe ser vocoder_plugin.platform.arch, donde plataforma y arquitectura pueden ser cualquiera de los siguientes: plataforma: linux, darwin, winnt, android, ios arquitectura: x86_64, arm, arm64
La plataforma y la arquitectura de su dispositivo se identifican en la pestaña Acerca de.
No hay complementos de vocoder de software disponibles en este repositorio y no tengo información sobre cómo obtener uno. ¡NO PREGUNTE!
Compilación opcional de texto a voz FLite
Agregué la capacidad de transmisión de texto a voz de Flite para no tener que hablar conmigo mismo todo el tiempo durante el desarrollo y las pruebas. Para compilar DroidStar con soporte de texto a voz de Flite, descomente la línea ‘DEFINES += USE_FLITE’ de la parte superior de DroidStar.pro (y ejecute/vuelva a ejecutar qmake). Necesitará la biblioteca Flite y los archivos de encabezado de desarrollo instalados en su sistema. Cuando se crea con soporte Flite, 3 opciones de TTS y una opción de entrada de micrófono estarán disponibles en la parte inferior de la ventana. TTS1-TTS3 son 3 opciones de voz, y la entrada de micrófono desactiva el TTS y utiliza el micrófono para la entrada. El texto que se convertirá a voz y se transmitirá va en el cuadro de texto debajo de las opciones de TTS.
Uso
Los usuarios de Linux con dispositivos USB AMBE y/o MMDVM deberán asegurarse de tener permiso para usar el dispositivo serial USB y deshabilitar el arcaico servicio ModeManager que aún existe en muchos sistemas Linux. En la mayoría de los sistemas, esto significa agregar su usuario al grupo ‘dialout’ y ejecutar ‘sudo systemctl deshabilitar ModemManager.service’ y reiniciar. Este es un requisito para acceder a cualquier dispositivo serial.
Host/Mod: Seleccione el host y módulo deseados (para D-STAR y M17) de las selecciones.
Indicativo: Ingrese su indicativo de radioaficionado. Se requiere una licencia válida para usar este software.
DMRID: Se requiere un ID DMR válido para conectarse a servidores DMR. Latitud/Longitud/Ubicación/Descripción: Estas son opciones de configuración DMR, enviadas al servidor DMR durante la conexión. Algunos servidores requieren valores específicos aquí, otros no. Esto es específico del servidor al que se está conectando, así que no pregunte cuáles deberían ser estos valores.
Hosts DMR+ IPSC2: El formato de la cadena de opciones DMR+ es la cadena completa que incluye ‘Options=’. Cree su cadena de opciones y marque ‘Enviar opciones DMR+ al conectar’ antes de conectarse. Puede encontrar una descripción de la cadena de opciones DMR+ aquí: https://github.com/g4klx/MMDVMHost/blob/master/DMRplus_startup_options.md .
Grupo de conversación: Para DMR, ingrese el número de identificación del grupo de conversación. Un grupo de conversación muy activo para probar la funcionalidad en Brandmeister es 91 (Brandmeister Worldwide). Debe transmitir con un grupo de conversación ingresado para vincularse a ese grupo de conversación, al igual que una radio real. Cualquier estática que haya definido en el autocuidado de BM funcionará de la misma manera que si estuviera usando un punto de acceso/radio.
MYCALL/URCALL/RPTR1/RPTR2 son para los modos Dstar REF/DCS/XRF. Estos campos deben ingresarse correctamente antes de intentar transmitir en cualquier reflector DSTAR. Todos los campos se completan con valores sugeridos al conectarse, pero aún se pueden modificar para usuarios avanzados. RPT2 siempre se sobrescribe con el reflector actual al conectarse.
Cliente IAX para AllStar
DroidStar puede conectarse a un nodo AllStar como cliente IAX(2). Consulte la wiki de AllStar y otros sitios web relacionados con el protocolo AllStar, Asterisk e IAX2 para obtener los detalles técnicos de IAX2 para AllStar. Este es un cliente básico y actualmente solo se admite el códec de audio uLaw. Este es el códec predeterminado en la mayoría de los nodos AllStar.
Todos los nodos IAX ahora se definen en la pestaña Hosts. El ejemplo muestra el formato. Una vez que haya uno o más nodos IAX definidos en la pestaña Hosts, estarán disponibles para seleccionar cuando se seleccione el modo IAX en la pestaña Principal. Este cambio permite definir varios nodos IAX.
Agregue comandos DTMF como *3node, *1node, *70, etc. en el cuadro DTMF IAX y presione enviar para enviar la cadena DTMF. Los detalles sobre los distintos comandos se pueden encontrar en la wiki de AllStar y en otros sitios.
Cuando se utiliza “wt” en lugar de una dirección IP, wt se reemplazará por XXXXX.nodes.allstarlink.org, donde XXXXX es el número none especificado. Luego, debe agregar la contraseña del portal web de ASL a la contraseña de ASL en la configuración. Esta NO es la contraseña de su nodo, es la contraseña que creó para iniciar sesión en el sitio web de ASL.
Compatibilidad con el transceptor web AllStar
Para conectarse a un nodo AllStar a través del portal ASL WT, agregue una línea en la pestaña Host de la siguiente manera:
IAX 12345 wt 4569 allstar-public allstar
DroidStar para Android
DroidStar está disponible para su descarga e instalación en la PlaySore. Para su configuración y uso refiérase a la seción de Uso de este documento.
DroidStar para iOS
DroidStar solía estar disponible para iOS a través del programa TestFlight. Me harté de Apple y sus políticas para desarrolladores (sin mencionar el costo), así que cancelé mi cuenta de desarrollador paga. Ahora DroidStar se puede instalar en un dispositivo iOS mediante un programa maravilloso llamado Sideloadly:
Las instrucciones que se incluyen aquí son bastante completas. Es importante leer la sección de preguntas frecuentes del sitio web para comprender cómo funciona la instalación lateral. Sugiero habilitar el desarrollo Wifi en el dispositivo iOS, como se explica en el sitio web. Esto le permite cargar/recargar DroidStar sin conectarse a USB.
Fuente: https://github.com/nostar/DroidStar