Ya tengo mi EVM, y ahora ¿qué? 
(o como hacer packet con la "Motorola")

Eduardo Jacob, EA2BAJ jtpjatae@bi.ehu.es ea2baj@amsat.org
Jabi Aguirre, EA2ARU govier02@sarenet.es ea2aru@amsat.org

Indice

Interfaz
Configurando el módem y la EVM
Generando el módem y programando la Flash Eprom
Usando nuestro nuevo módem
Conclusiones

Introducción

Ya ha llegado, por fin está aquí. Tengo una flamante Motorola EVM DSP56002. Ha tardado en llegar, pero ha merecido la pena, también he conseguido una Flash Eprom Atmel 29C256 como me habían recomendado. Ya solo queda juntarlo todo y probarla...

Este es un escenario muy corriente últimamente. En este artículo, vamos a dar unos consejos básicos para utilizar la DSP en aplicaciones de packet 1200 o 9600, con aplicaciones para DOS o Windows.

Vamos por partes.

Interfaz

A estas alturas, es muy sencillo haber conseguido un interfaz para la EVM. Hay varios esquemas disponibles e incluso hay quien comercializa diseños probados. En realidad un interfaz para la EVM se compone de 4 partes diferenciadas:

Entrada de Audio

Dado que la entrada de que dispone la EVM es estéreo, se pueden realizar diversos montajes, en los que se utilice cada canal para un cometido. Una disposición muy corriente es tener un para una radio de U y la otra para una de V (podíamos suponer que las entradas pueden venir de la misma radio, pero una del varactor y otra de la salida de packet.). Otra opción es utilizar una entrada para una radio de U/V y la otra para la radio de HF. En este caso, podríamos controlar por medio de un relé de doble circuito la entrada y salida del discriminador y varactor respectivamente o de la salida de packet convencional. Tendríamos dos conectores, uno para cada radio. Los primeros diseños tenían los dos canales soldados entre sí, y lógicamente un solo conector. Las entradas suelen ir directamente al conector. Cómo, ¿sin potenciómetros?, si ya veremos porqué.

Salida de Audio

En principio hay dos salidas, una para cascos y otra de línea. En principio es recomendable usar la salida de cascos (que también es estéreo) para las aplicaciones de radio y utilizar la de línea para audio. La razón es el filtrado que tiene esta última. Hay sin embargo gente que indica que le funciona sin problemas la salida de línea. El conexionado podía ser el mismo que en el caso anterior. Hay software que está configurado para utilizar siempre la misma línea, y que dedica la otra a atacar un pequeño altavoz. La razón que se da es que dado que las implementaciones de módems existentes no son multitarea, basta con apagar la radio que no interesa. A mi no me gusta mucho esta solución, prefiero la primera. Hay mucha gente que tiene como en el caso anterior las salidas soldadas entre si. Tampoco se suelen poner potenciómetros.

Este es un ejemplo de conexión, que es usado por Doug. El además usa PTT independientes.

Esquema de conexion

Leds

Muestran información sobre el funcionamiento del sistema. Hay un par de señales ellos que se obtienen directamente de la placa, como son el PLL y el HeartBeat y que son una indicación de la EVM funciona. Las señales del resto de los LEDS obtienen la señal a partir de los bits del puerto B. Hay varias que se pueden considerar necesarias, como son la detección de portadora y para sateliteros el ‘click’ up y down empleados en los modems PSK. La estandarización es nula: cada uno pone el número de LED’s que le da la gana, les da el significado más variopinto y lo conecta a los pines del puerto B que quiere. Hay personas que han convertido su EVM en una auténtica verbena. Al fin y al cabo, para gustos están los colores. Suelen ir a través de un Darlington para proteger la EVM y con una resistencia para limitar el consumo.

PTT

Sólo nos queda este elemento. Se suele sacar también del puerto B y a través de un transistor polarizado en corte-saturación. Se ha venido empleando también darlingtons para este fin, pero este punto es objeto últimamente de controversia, ya que la tensión colector-emisor de los mismos en saturación es de 1 Voltio, por lo que algunas radios no activan el PTT correctamente. Se suele poner además un LED en paralelo para ver desde fuera que es lo que sucede. Sucede también el bit que emplea cada uno para este menester es tan variado como el número de posibilidades, pero veremos que tiene arreglo.

Esto es todo. Algún manitas en su tiempo instaló un MAX232 para poder utilizar las señales del puerto serie que por defecto no se usa.

He aquí un ejemplo con prácticamente todas las posibilidades:

Configurando el módem y la EVM

Vamos a poner en marcha nuestra EVM con los modems de 1200 que vienen en el paquete N1OWU_11.ZIP y que está disponible entre otros en ftp://det.bi.ehu.es/pub/ham

Lo primero que tendremos que hacer es comprobar la correspondencia de los pines empleados en nuestro interfaz con los que se emplean en el módem. En la EVM, la correspondencia es la siguiente con el conector J7:

El pin 16 es el que está conectado a masa.

Luego comprobaremos a que pin tenemos conectados los LED y sobre todo el PTT. Para ver esto, basta con mirar en el fuente con un editor de textos ascii (el Edit del MSDOS, o el Notepad de Windows) y buscar órdenes similares a esta:

DCDLED macro mode                 ;DCD LED clr/set/chg
       b\mode #13,X:$FFE4
       endm

Esta es una macro que define tres órdenes que nos vamos a encontrar más tarde en el programa. Las órdenes, serán:

DCDLED CLR ; Para apagar el LED
DCDLED SET ; Para encender el LED
DCDLED CHG ; Para cambiar el estado del LED

Aquí se define la posición del bit que controla la el LED correspondiente al DCD. La clave está en el valor después del #, ya que hace referencia al pin del puerto B, que se va a modificar, el valor X:$FFE4 es fijo y se refiere a la puerta B. Para variar el pin que va a gobernar esta orden, bastará con sustituir el #13 de este caso con el número del nuevo pin al que nosotros tenemos conectado el LED. En el caso de que el programador no haya usado macros, bastará con buscar órdenes que contengan la cadena ",X:$FFE4"

Un conexionado muy corriente es el siguiente que corresponde a lo primeros montajes de Johan KC7WW y Dannie ZS6AWK. Es el empleado también en el interfaz que ha desarrollado Jabi EA2ARU.

Portadora : #13
PTT : #0
DCD : #2

Una vez que hemos comprobado que las conexiones de nuestro interfaz coincide con lo que el autor del fuente espera, conviene comprobar donde espera éste encontrarse las conexiones de entrada y salida de audio, esto se ve estudiando las órdenes del tipo:

ctrlcd 1,r2,buflen,MIC,0.0,0.0,LINE|HEADP,0.0,0.0

Tal y como se ha visto en artículos anteriores, se definen entre otros la línea de entrada que se va a utilizar, las atenuaciones de los dos canales, las líneas de salida que se van a usar y la ganancia de los canales. Esta es la razón por la que no hay potenciómetros, cambiando los valores de las ganancias, podemos sacar los niveles de salida y de entrada deseados. Además los programas pueden gestionar por soft el valor de la ganancia de manera que sean los óptimos. En general podríamos ver en que canal el autor no espera audio, observando donde pone ganancia 0. En principio no bastaría con cambiar las ganancias para utilizar el otro canal, ya que habría que cambiar el programa para que lea los valores del nuevo canal.

Generando el módem y programando la Flash Eprom

Una vez chequeado todo lo anterior estamos listos para generar el módem y cargar la BIOS y el mismo en la Flash-Eprom.

La variante que se propone aquí es utilizar la versión de la BIOS y el programa DL de Doug N1OWU. Estos programas añaden una funcionalidad muy interesante que es que una vez programada la BIOS, se pueden cargar programas a través de la puerta serie, en vez de a través del puerto ONCE y con el programa de debug. Es decir, se puede automatizar el funcionamiento, pudiendo cargar diversos modems desde un fichero .bat. En principio, será necesario tal y como se ha visto en artículos anteriores, ensamblar la bios, el módem y la aplicación de carga con los comandos:

ASM56000 -a -b -g -l bios2.asm
ASM56000 -a -b -g -l fsk1200.asm
ASM56000 -a -b -g -l flshboot.asm

Si no hemos modificado el leonid estaremos configurando el módem a 19200.

Una vez hecho esto, ejecutaremos las órdenes siguientes:

force r
ch X:0#$3ff 0
ch Y:0#$3ff 0
ch P:0#$3ff 0
load bios2
load fsk1200
load flshboot
go FlashCopy

Siempre que reprogramemos la EEPROM, es recomendable inicializarla a 0 con los comandos CH tal como se muestra, ya que a veces, los modems no inicializan todas las variables y puede ser motivo de que no funcione correctamente.

En caso de utilizar modems con tamaño mayor, sería necesario, calcular el tamaño de los mismos, e incluirlo en el fichero flshboot.asm tal y como se describe en el mismo fichero.

Después de acabar de ejecutar la rutina de grabación, en un par de segundos tendremos nuestro flamante módem con interfaz kiss. Después de hacer un reset podemos empezar a usarlo. No olvidaros de cambiar el cable serie a la otra puerta.

Si quisiéramos emplear el DL.EXE para cargar programas, no tenemos más que ensamblar el programa (después de revisarlo) transformarlo a .LOD desde el .CLD nativo que se genera con el comando:

cldlod modem.cld > modem.lod

Y cargarlo con el comando:

dl -p 2 -g modem.lod

Si inicializamos el entorno con la variable DSPPORT=x, donde X es el número de la puerta serie que se utiliza, basta con usar el comando:

dl modem.lod

Además de sumamente cómodo da la posibilidad de cambiar el valor de variables en tiempo de carga, lo que evita tener que reensamblar los fuentes cada vez.

Usando nuestro nuevo módem

No nos olvidemos que nuestro módem, a pesar de todo es un poco "tonto", solo ofrece un interfaz kiss (como las mejores TNC cuando se las quiere poner a hacer algo útil). Por lo tanto habrá que emplear programas que sepan manejar directamente interfaces de tipo kiss, como el WinTNC, el WISP, el BPQ o un programa de Doug también que es una modificación del PMP (Poor Man’s Packet).

Para programas que se las entiendan con interfaces de tipo host, se puede emplear el TFKISS. Esto incluye a programas como el TSTHOST, o el Graphic Packet.

Un clásico que es un poco difícil de poner a funcionar es el Winpack con Windows 95. Para hacerlo funcionar hay que montar un BPQ, seguir las instrucciones respecto al driver de modo protegido, solo que teniendo en cuenta que hay que instalarlo obligatoriamente en un directorio llamado C:\WINDOWS\SYSTEM, no valen otros nombres ni otros discos. Hay que incluir en el autoexec.bat, una llamada al BPQCODE. El último paso, consiste en crear un perfil de hardware en Windows 95 que elimine el puerto COM que está usando el BPQ. Después de esto, se rearranca Windows seleccionando este perfil y se configura el Winpack para usar BPQ. Hay quien dice que este último paso (la creación del perfil no es necesario), la razón del mismo es impedir que programas de Windows que escanean puertos de comunicaciones automáticamente, lo hagan sobre el puerto que estamos empleando.

Conclusiones

Después de muchos sudores, puedo hacer funcionar la EVM. El módem de 1200 es muy apropiado para aprender la dinámica. El módem G3RUH es similar en cuanto a funcionamiento, puesta en marcha y empleo, aunque que el ajuste de la ganancia de salida es más crítico para no pasarnos en la desviación.

Los programas a los que se hace referencia en este artículo están disponibles como se ha mencionado en ftp://det.bi.ehu.es/pub/ham

Back to EA2BAJ's Ham Homepage