APRS: IGate construído con una Raspberry Pi y TNC Virtual

 

1. Instalación del Sistema Operativo en la Raspberry

Primero hay que instalar el sistema operativo en el cual va a funcionar la Raspberry Pi, preferentemente uno que esté basado en Linux, como Raspbian, el cuál puede ser descargado en el siguiente link:

https://www.raspberrypi.org/downloads/noobs/

Una vez instalado, es recomendable abrir una terminal y actualizar con la última versión (quizás este paso es redundante pero no está por demás realizarlo):

sudo apt-get update
sudo apt-get dist-upgrade sudo rpi-update
sudo reboot

Una vez hecho esto, hay que verificar que no exista PulseAudio en la versión de Raspbian descargada y actualizada, por lo que hay que escribir las siguientes líneas en la terminal:

sudo apt-get remove –purge pulseaudio
sudo apt-get autoremove
rm -rf /home/pi/.pulse

Y se deberá obtener lo siguiente:

Una vez hecho esto, hay que reiniciar la Raspberry con el comando: sudo reboot

 

2. Instalación del TNC Virtual: Dire Wolf

Primero hay que instalar la librería de audio (paquetería “libasound2-dev” y “libudev-dev”), escribiendo en la terminal los siguientes comandos:

sudo apt-get install libasound2-dev
sudo apt-get install libudev-dev

A continuación se instala el programa Dire Wolf:

cd ~
git clone https://www.github.com/wb2osz/direwolf
cd direwolf

Ahora se tendrá que compilar:

cd ~/direwolf
make -j
sudo make install
make install-rpi

make install-conf

Como primera prueba hay que ir al directorio home y correr el Dire Wolf:

cd ~
direwolf

Y se tendrá que desplegar en la pantalla de la terminal lo siguiente:

 

3. Interfaz Raspberry Pi – Radio

Como cualquier aplicación de packet, se necesita conectar el radio transceptor con la computadora (Raspberry Pi):

  • Audio recibido: Un cable conectado de la salida de audio del radio (SPK) a la entrada de micrófono (mic-in) o line-in de la computadora, mediante un circuito atenuador (un divisor de voltaje). Se puede agregar un transformador de audio 1:1 con impedancia de 600Ω para aislar el radio de la Raspberry (recomendado pero no indispensable).
  • Audio a transmitir: Un cable conectado de la salida de audio de la computadora a la entrada Mic-in del radio. Como en el caso anterior, se recomienda usar un circuito atenuador y un transformador de audio.
  • Señal de control para el PTT del radio: En el caso de la Raspberry se utilizará el puerto GPIO para controlar el PTT del radio.

La Raspberry tiene salida de audio (audífonos) pero no entrada de línea o micrófono, por lo que se utiliza un adaptador USB de audio, debido a que son baratos y fáciles de configurar.

Se puede visualizar en la terminal la lista de dispositivos de audio de reproducción (salida) mediante el comando “aplay -l” (esta última letra es una L minúscula!!!):

También se puede visualizar en la terminal los dispositivos de audio para grabación (entrada):

Y como se puede observar, no existe ninguno aún.

Ahora conecta el adaptador USB de audio en cualquier puerto USB de la Raspberry en ingresa nuevamente los comandos “aplay -l” y “arecord -l” y deberás ver en la terminal lo siguiente:

En Raspbian el adaptador USB de audio se muestra como Card0 en la parte superior de la lista y es ahora el dispositivo de audio por “default”.

Como se mencionó anteriormente, para controlar el PTT del radio se utilizará el puerto de propósito general (GPIO) de la Raspberry, utilizando un optoacoplador para aislar eléctricamente la Raspberry del radio y evitar algún daño al puerto GPIO. Este puerto coloca un voltaje de 3.3V cuando una señal se va a transmitir, de esta manera se controla cuándo el radio va a transmitir (3.3V) o va a estar en modo de receptor (0V). El pin a utilizar se puede configurar en el archivo “direwolf.conf” del Dire Wolf pero generalmente se utiliza el GPIO 25 (pin 22), el cual puede ser ubicado usando la siguiente imagen:

Imagen obtenida de: https://docs.microsoft.com/en-us/windows/iot-core/learn-about-hardware/pinmappings/pinmappingsrpi

 

4. Configuración del Dire Wolf como TNC virtual.

Se necesita modificar el archivo de configuración del Dire Wolf:

cd /home/pi

leafpad direwolf.conf

En este caso se usa el editor de texto “leafpad” de Raspbian para modificar el archivo de configuración del Dire Wolf, en el cuál todas las líneas están comentadas con el signo “#” antes de cada renglón. Para activar cada parámetro, hay que borrar el signo “#”, dependiendo de la opción deseada.

Primero hay que declarar el dispositivo de audio a utilizar:

A continuación se declara el indicativo del IGate con el cual va a operar (tu indicativo):

Lógicamente hay que cambiar “NOCALL” por tu indicativo, como lo menciona en el ejemplo en la misma imagen.