Primeros pasos SDR. ¿Qué puedo hacer?

Acabas de comprar tu primer equipo de SDR que posiblemente sea un decodificador de TDT (DVB-T) con un chip RTL2832 o similar conectado por USB. ¿Ahora que?

Vamos a revisar rápidamente que herramientas hay que aprender a usar con tu equipo SDR.

Comprobar que todo funciona

Lo primero es comprobar si esta correctamente conectado y las capacidades de tu dispositivo. Para ello podemos usar:

rtl_test

La salida de la aplicación te muestra los datos de los sintonizadores encontrados.

Explorar el espectro de radio

Para ello puedes usar la aplicación gqrx que te permite explorar todo el espectro de radio.

Lo primero que puedes hacer es buscar una lista de emisoras de radio, sintonizar su frecuencia y probar a escucharlas. Puedes ver cómo afecta cambiar el ancho de banda o el modo de decodificación. Luego con cierta práctica puedes ir recorriendo el espectro a ver qué “escuchas”. Por ejemplo puedes buscar en que frecuencia trabajan algunos equipos inalámbricos y analógicos para ver si alguien cerca usa alguno.

Cuando tengas más soltura y conocimiento del tema gqrx puede quedarse corto para ti y puede usar algun software con más opciones como SDR++

Otra herramienta imprescindible que hay que saber usar es rtl_sdr que te permite capturar la señal y guardarla en un fichero. Muchas herramientas trabajan con estas capturas.

rtl_sdr -f frecuencia -g ganancia -s samplerate -n numero_de_muestras archivo

También hay que saber usar rt_power que captura el espectro de la señal.

Vamos a “cazar” aviones. ADS-B

Otra cosa que podemos hacer es “espiar” que aviones pasan por encima nuestro. Para ellos podemos escuchar la señales del sistema ADS-B que los aviones emiten. Para leer estos datos puedes usar el comando:

rtl_adsb

Así lo único que consigues es montón de caracteres alfanuméricos con el parámetro -V la información se muestra de una forma más amigable

rtl_adsb -V

Hay que decir que no solo los aviones emiten este tipo de señales,

El resultado es algo más entendible aunque es difícil saber que significa. Aquí puedes tener una pista de que significa cada cosa. Haciendo un pequeño resumen.

El campo Type Code indica el tipo de mensaje:

Type CodeTipo de mensjae
1-4Identificación de la aeronave
5-8Posición
9-18Altitud (altimetro)
19Velocidad
20-22Altitud (GNSS)
23-27Reservado
28Estado de la aeronave
29Información de estado y estado de destino
31Estado operacional

El campo ICAO Address puede ayudarnos a identificar el avión y por tanto el vuelo. Para ello s epeuden suar webs como flightradar24.

Si lo que quiere es tener la información más clara puedes usar dump1090 (o dump109-mutability en el caso de mi distribución de Linux). Basta con lanzar lo con la opción –interactive y procesara esos datos por ti y te los mostrará de un forma más sencilla de entender.

dump1090 --interactive
dump1090-mutability --interactive

Es posible que te ocurra que rtl_adsb muestre un montón de resultados pero dump1090 no muestre ningún avión, se puede deber a estaciones emisoras en tierra. A menos que vivas cerca de un aeropuerto de una gran ciudad hay que tener paciencia para captar los datos de un avión.

Internet of Thing

Pasemos a capturar y decodificar mensajes de IoT. Para ellos puedes probar con el programa rtl_433.

rtl_433

Los datos son devueltos de una manera muy intuitiva donde cada paquete es decodificado y mostrado en pantalla.

Por defecto escucha la frecuencia 433 MHz pero usando el parámetro -f puedes probar con diferentes frecuencias a ver qué detectas, para probar puedes empezar con 315 MHz, 345 MHz, 868 MHz o 915 MHz. Por ejemplo:

rtl_433 -F F868M

Si deseas volcar los datos a un fichero con el parámeto -F puedes configurar que formato usar de la lista: kv|, json, csv, mqtt, |influx, syslog, |null.