Cómo utilizar tarjetas de sonido para PC como módems para radio-paquete

N.T.: ¡Atención! Este documento describe la configuración y el funcionamiento de los controladores para tarjeta de sonido de PC/FLEXNET. No están descritos los pasos previos a la configuración del módulo AX>IP para uso del protocolo TCP/IP y programas asociados sobre AX-25. Para obtener una descripción paso a paso, haga un click AQUÍ.

Contenidos

Introducción

PC/FlexNet nos permite que las tarjetas de sonido puedan ser usadas como modems de Packet Radio. Los diferentes formatos de modulaciones son realizados desde el software.

Ventajas de la solución por Software

Flexibilidad
La Solución por sofware es muy flexible. Cambiar de protocolos y/o de formato de modulacion tan sólo requiere la instalación de una nueva versión del sofware. No se requieren cambios en hardware.
Precio
Utilizar una tarjeta de sonido significa aprovecharse de la fabricación en masa de componentes para PC y su consecuente caida de precios. Comparado a otras soluciones de bajo coste, la solución de la tarjeta de sonido como módem, no requiere grandes prestaciones de la máquina donde se instale.
Mobilidad
Los ordenadores portátiles actuales se encuentran equipados con tarjetas de sonido, lo que favorece la operación en radio paquete simplemente con tener un transceptor portátil a mano.
Diagnósticos
Las herramientas de diagnóstico pueden ser realizadas sin hardware adicional, completamente a través de sofware. Esto nos permite monitorizar la calidad del enlace sin problemas.
Pero también las desventajas han de ser mencionadas:

Características/Requerimientos


 
 

Preparando Windows '95/'98

Desgraciadamente los controladores de sonido estándar de Windows no sirven para nuestro propósito. Utilizar una tarjeta de sonido como modem de radio-paquete, requiere muy bajas latencias. Los datos no deben pasar a través de un búffer que retrasa su salida durante unos segundos. El algoritmo de acceso al canal sería inutil.

Los controladores de DirectSound (DirectX) han sido desarrollados para proveer baja latencia de salida en los juegos. Múltiples efectos de sonido suelen ser oídos al mismo tiempo durante el desarrollo del juego. Desafortunadamente, la entrada de voz o sonido no es común en el desarrollo de los juegos, por lo que DirectSound no soporta entrada de sonido.

La filosofía del diseño de PC/FlexNet fue la de que el usuario no notase la menor diferencia posible entre las versiones de DOS y las de Windows. Adicionalmente, casi todas las tarjetas de sonido son SoundBlaster o bien WSS o compatibles, y estas últimas se comportan de modo compatible, sólo después de cargar una aplicación propietaria (la casa que la fabrica) de la casa que fabricó esta tarjeta. Consideracions prácticas y legales evitan que el controlador de Flexnet incluya estas rutinas. Estas razones excluyen, por tanto el uso de un controlador Plug and Play.

Ambos controladores ( los del WSS y los de PC/Flexnet) acceden al mismo hardware. Para prevenir conflictos los drivers de windows deben ser desactivados cuando se pretenda hacer packet-radio. Una format conveniente es el uso de múltiples Perfiles de Hardware. La siguiente Lista muestra los pasos para crearlos:

  1. Inicie Windows 95. Abra el Panel de Control (Inicio-Configuración-Panel de Control).
  2. Haga doble click en el icono "Sistema".
  3. Cree un nuevo perfil de hardware: seleccione la solapa "Perfiles de Hardware". Seleccione el perfil de hardware de la lista y haga click en el botón "Copiar..." . En la nueva ventana, de un nombre diferente al nuevo perfil, p.ej., "Sin Tarjeta de Sonido".
  4. Reinicie Windows.
[Hardware profiles]


    La próxima vez que reinicie Windows, se le presentará el siguiente menú:
    Iniciando Windows 95 ...
    
    Windows no pudo determinar que configuración usa su computadora
    Seleccione una de las siguientes:
    
    1. Configuración Original
    2. Sin Tarjeta de Sonido
    3. Ninguna de las anteriores
    
    Entre su opción:2
  1. Una vez dentro de Windows, vuelva al Panel de Control y desactive cualquier controlador que pueda causar conflictos al controlador de Flexnet, esto es los controladores de sonido y el puerto paralelo o serie donde se prevee el uso del circuito PTT. El puerto MIDI de la tarjeta de sonido necesita ser desactivado si para fuese el puerto a conectar el circuito PTT.
[Deactivated drivers]


[Deactivation of the drivers]

El proceso de carga de PC/FlexNet

Un éxito en el diseño de PC/FlexNet fue el ocultar muchas de las diferencias entre las versiones de DOS y Windows al usuario. El proceso de carga de los controladores tiene lugar de la misma manera bajo DOS y Windows 95.

Si utiliza Windows95, necesitará iniciar en modo MS-DOS. Para hacer esto:

  1. Presione la tecla F8 cuando aparezca el mensaje "Iniciando Windows 95...". En ese momento Windows muestra el Menu de Inicio de Windows 95
  2. Seleccione la opción 6. Sólo símbolo del sistema.
Algunas tarjetas de sonido requieren alguna aplicación específica del fabricante para inicializar la tarjeta. Esta aplicación debe lanzarse antes de que PC/FlexNet lo haga. Las Tarjetas de sonido PnP deben tener localizadas sus recursos (hardware). Esto se consigue con aquella utilidad provista por el fabricante del hardware. Por ejemplo. Los chips de la Soundblaster 16 PnP y la Vibra 16 pueden ser configurados usando la utilidad DIAGNOSE.EXE /s o bien las tarjetas que contienen chisps Crystal CS423x se inicializan con el programa CS4232C.EXE .

Algunas BIOS modernas pueden configurar tarjetas ISA PnP. (N.T.: No tenemos documentación al respecto)

Una tercera posibilidad is usar una utilidad de configuración como la ICU de Intel. Sin embargo, estos programas son complicados de utilizar y configurarar, así que su uso esta justificado sólo si todo lo demás fallase.

N.T.: Durante las pruebas del driver, no me fue necesario utilizar ninguna de las aplicaciones arriba mencionadas, ya que el driver detecto la tarjeta sin ningún problema. Por supuesto la tarjeta estaba funcionando con las configuraciones por defecto de fábrica (Base 0x220, IRQ 5, DMA 1 y 5).

Los controladores del modem para la tarjeta de sonido de FlexNet consisten de diversos módulos. Los modulos SMSBC, SMSBCFDX, SMWSS y SMWSSFDX controlan la tarjeta de sonido, mientras que los módulos SMAFSK12 y SMFSK96 implementan el código del módem. Los controladores de la tarjeta deben ser cargados antes que FLEX, los módulos de módem, despues de FLEX.
 

Una secuencia de carga sería como sigue:
LH FLEXNET
LH SMSBC -tc:1
FLEX
LH SMAFSK12
FSET MODE 0 1200
FSET TXDELAY 0 20
SMMIXER -i:0 -o:0 -s:line

 

Esta secuencia inicia PC/FlexNet con el controlador para tarjetas Sound Blaster (y compatibles) y 1200 baudios AFSK. El modificador -tc:1 determina que puerto de salida (COM, PARALELO o MIDI) para la señal PTT  se utilizará. Para más información, consultar el archivo .doc apropiado (principalmente FLEXNET.DOC y SM.DOC incluidos en los archivos) para obtener una lista de los modificadores (switches) de los comandos. SMMIXER configura el la entrada/salida de audio y las fuentes de los mismos (N.T.:en nuestro ejemplo, la fuente de entrada/salida son los conectores LINE-IN y LINE-OUT).

Ahora PC/FlexNet esta configurado y cargado y podríamos ser capaces de verificarlo con un programa terminal como  bct y comprobar que todo funciona bien. ¡No ejecutar Windows si no funcionase apropiadamente!  Si no funcionase, chequearemos de nuevo todos los pasos, especialmente los números de IRQ y DMA. Intente pasar por alto los números de DMA si utilizamos un controlador full-duplex.

Una vez todo funcione correctamente iniciemos Windows95 desde la línea de comandos de MS-DOS utilizando el comando WIN. Los archivos FLEXNET.VXD y VSMD.VXD han de estar en el mismo directori así como el resto de archivos de Flexnet. FlexNet automáticamente detecta el inicio de Windows y se adapta al nuevo entorno. Una vez dentro de Windows 95 aparecera la aplicación de administración de FlexNet, lo que significará que el módulo esta funcionand correctamente y está operativo. Las programas SMMIXER y SMDIAG pueden ser usados de la misma manera que bajo entorno MS-DOS desde una ventana de DOS de Windows 95

Si accedemos de nuevo al Panel de Control, icono Sistema, bajo la Solapa Administrador de dispositivos, se encontrarán marcados con una cruz roja aquellos dispositivos que hemos desactivado (ver figura superior). Si nos hemos olvidado de desactivar el dispositivo este aparecerá con una marca de conflicto (Asterisco/Exclamación) como se muestra en el dibujo inferior. Estos dispositivos deben ser desactivados:
N.T.: Lo siento por los dibujos (están en alemán); sin embargo son bastante ilustrativos.
 
 



[Resource conflict]

[Driver error message]


 











Automatizando el arranque

El proceso mostrado puede hacerse bastante largo. Por supuesto, hemos de introducir los comandos necesarios en un archivo .bat. Un método bastante práctico sería el de utilizar un menú de inicio en el CONFIG.SYS. El ejemplo de abajo nos muestra como funciona. La sección [menu] contiene las opciones del menu. El primer parámetro del comando menuitem especifica qué sección contiene el comando correspondiente a este menú, y el segundo parámetro muestra el nombre que aparecerá en el menú en pantalla. Si este nombre coincide el nombre del perfil de hardware y si este perfil es seleccionado, la opción del menú se selecciona automáticamente sin mostrar el menú. La sección [common] contiene los programas que serán cargados independientemente de la opción seleccionada. El contenido del CONFIG.SYS previo a su modificación deberán colocarse bajo esta sección.
[menu]
menuitem=std,Configuración Original
menuitem=pcfsm,Sin Tarjeta de sonido

[common]
rem contenido previo de CONFIG.SYS
rem por ejemplo:
device=c:\windows\himem.sys
dos=high,umb
country=034,850,c:\windows\command\country.sys
device=c:\windows\command\emm386.exe noems
rem fin de los contenidos previos de CONFIG.SYS (Esto es tan solo un ejemplo, no copiar a la ligera!!)

[std]

[pcfsm]
installhigh=C:\PCF\FLEXNET.EXE
installhigh=C:\PCF\SMSBC.EXE -b:0x220 -i:5 -d:1 -tc:1
installhigh=C:\PCF\FLEX.EXE
installhigh=C:\PCF\SMAFSK12.EXE
installhigh=C:\PCF\FSET.EXE MODE 0 1200
installhigh=C:\PCF\FSET.EXE TXDELAY 0 20
installhigh=C:\PCF\SMMIXER.EXE -i:0 -o:0 -s:line
La opción seleccionada también deber ser configurada en el AUTOEXEC.BAT. La variable de entorno CONFIG contiene el nombre (corto) de la configuración seleccionada. El ejemplo de abajo, se añade al  AUTOEXEC.BAT, inicia Windows automáticamente si el perfil de hardware "Sin tarjeta de sonido" fue el seleccionado.
rem ... previous contents of AUTOEXEC.BAT
if %config%==pcfsm goto :startwin
goto :end
:startwin
win
:end

Conexión al transceptor

Las tarjetas de sonido normalmente no contienen un circuito que pudiese servir como señal PTT. Por tanto, la conexión al PTT del transceptor no es tan sencillo. Aquí encontramos ciertos ejemplos en forma de esquemas que muestran como hacerlo:

El controlador de módem para tarjeta de sonido ofrece 4  posibilidades de como sacar señal PTT:

  1. usando un puerto COM
  2. usando un puerto LPT (impresora)
  3. usando el puerto GAME (joystick)
  4. usando un circuito VOX

PTT usando un puerto COM

[PTT keying circuitry for COM ports]

PTT usando un puerto LPT

PTT keying circuitry for LPT ports

PTT usando el puerto GAME/MIDI (Joystick)

Esta solución solo funciona con puertos MIDI MPU-401 compatibles. El puerto MIDI de las viejas SoundBlaster no puede ser usado.
 
PTT keying circuitry for game ports

PTT usando un circuito VOX

Esta solución no es recomendable para operar a 9600 bps. El circuito require altos niveles de audio que muchas tarjetas de sonido no son capaces de producir.
 
PTT keying VOX circuitry

Otro ejemplo de PTT usando un MOSFET IRF 510

N.T.: Aquí encontrareis una descripción (en inglés) del circuito. Si alguien está interesado puede mandarme un e-mail y lo traduciré. Este es un modelo más avanzado de señalización PTT según [email protected]

Notas del Traductor

  1. Dependiendo de su versión de Windows (95/OSR2/98), algunas de las figuras presentadas en este Tutorial pueden variar. Por ejemplo, en las ventanas de Propiedades del dispositivo de sonido, en el apartado Uso del dispositivo, bajo la Solapa General puede aparecer una caja de texto con los perfiles de Hardware donde se utilizara dicho dispositivo.
  2. La última descripción nos da una idea de como obtener las señales TX y RX desde los conectores LINE-OUT y LINE-IN a través de jacks monos.
  3. Es de suponer que a diferencia de los interfaces a 1200 bps, en 9600 bps  la conexión de la tarjeta no se puede realizar directamente del altavoz en RX o a la entrada de micrófono en TX. La señal de RX se debe tomar directamente del discrimador. La señal de TX se tiene que conectar directamente al varicap sin pasar por los circuitos de preamplificación del micrófono. Generalmente, muchos equipos bienen ya preparados de fábrica para trabajar a 9600, incluyendo un conector DATA a tal efecto.
  4. Todos las marcas, modelos o sofware mencionados en este documento son Propiedad de sus respectivos fabricantes.


Traducido por EB5HUG, Jordi [email protected]
Agradecimientos a Thomas Sailer -- [email protected] por la documentación.

Documento original en inglés: http://dl0td.afthd.tu-darmstadt.de/~flexnet/soundmodem.html
Flexnet HomePage: http://dl0td.afthd.th-darmstadt.de/~flexnet/