De lo que vengo a hablar tranquilamente en este post se puede ver en acción en la siguiente web: mywopr.net:8080/
Básicamente es poder geoposicionar los aviones comerciales que están surcando el aire por tu zona. En Madrid he llegado a pillar aviones sobrevolando la zona de El Prat (Barcelona).
Del Dongle USB (RTL2838 DVB-T) se ha hablado en 56k anteriormente, concretamente aquí: RTL2838 – Escuchar radio con un dongle USB en GNU+Linux
La antena 1090 que se necesita para geoposicionar los aviones comerciales en tiempo real es esta:
La antena puede adquirirse aquí. Un filtro 1090Mhz (sma F a sma M) aquí.
Puedes construirla también lucsmall.com/2017/02/06/making-antennas-for-1090mhz-ads-b-aircraft-tracking/
Compilar dump1090
Aquí dejo la receta de como hacerlo en Debian (pero en otras distros cambia el apt y poco más):
$ git clone https://github.com/antirez/dump1090
$ ldconfig
$ cd dump1090/
# apt install librtlsdr-dev gcc make libsoxr-dev libhackrf-dev libairspy-dev git pkg-config cmake moreutils
$ make clean
$ make
Cuidado amigo/a. Si te peta lo mismo has de editar el archivo Makefile y comentar la línea que contiene la variable LDLIBS y poner una como la que dejo sin comentar aquí:
#LDLIBS+=$(shell pkg-config --libs librtlsdr) -lpthread -lm
LDLIBS+=$(shell pkg-config --libs librtlsdr) -lpthread -lm -lrtlsdr -lhackrf -lairspy -lsoxr
Una vez tenemos compilado dump1090 es el momento de ejecutarlo.
Ejecutar dump1090
$ ./dump1090 --interactive --net
Y eso mola. Se ven aviones pero queremos verlos moviéndose sobre un mapa.
Por desgracia el dump1090 que hemos clonado y compilado usaba google maps.
Google acotó google maps y si vamos a localhost:8080 veremos que no termina de cargar el mapa.
La solución es usar un fork que en vez de usar google maps utiliza openstreetmap .
A compilar de nuevo:
$ git clone https://github.com/mutability/dump1090
$ cd dump1090
$ make
Si peta cambia la línea que dejo aquí comentada por la no comentada en el Makefile:
#LIBS=-lpthread -lm
LIBS=-lpthread -lm -lrtlsdr -lhackrf -lairspy -lsoxr
¿Es esa la última versión?
NO. Ni dump1090, ni dump1090 mutability. Lo recomendable es compilar dump1090-fa
Vamos con ello.
# apt install librtlsdr-dev gcc make libsoxr-dev libhackrf-dev libairspy-dev git pkg-config cmake moreutils libbladerf-dev help2man pandoc libtecla-dev
$ git clone https://github.com/Nuand/bladeRF.git
$ cd bladeRF
$ mkdir build
$ cd build
$ cmake ..
$ make
# make install
$ git clone https://github.com/flightaware/dump1090
$ cd dump1090
$ make BLADERF=no
# apt install nginx
# cp -pRv public_html/* /var/www/html/
Si peta entonces en el Makefile:
LIBS = -lpthread -lm -lrt -lhackrf -lairspy -lsoxr -pthread
Y luego al navegador y escribimos en la url localhost.
Y eso es más o menos lo que quería dejar comentado por aquí.
Saludos cordiales.