O ADS-B, abreviação para Automatic Dependent Surveillance Broadcast, é um sistema de transmissão de rádio entre aeronaves e também entre aeronaves e estações terrestres, cujo objetivo é enviar informações como por exemplo a posição, velocidade e altitude.
O sistema é automático, ou seja, não precisa da intervenção de um piloto ou controlador, mas depende das informações de outros equipamentos da aeronave, por exemplo o GPS.
Grande parte dos aviões utilizam este sistema, no entanto sua adoção varia de acordo com regulamentações específicas e categorias da aeronave. Só para exemplificar, na aviação comercial o ADS-B é obrigatório desde 2020 em muitos países.
A transmissão dos dados referentes à localização de aviões é pública e aberta, de modo que qualquer pessoa munida de um receptor capaz de sintonizar frequências ADS-B pode obter informações de aeronaves próximas.
Normalmente utiliza-se hardware voltado para SDR (Software Defined Radio) juntamente com algum software que decodifique e interprete os sinais enviados pelas aeronaves.
Devido ao baixo custo, o equipamento mais conhecido para esse propósito é o RTL-SDR ou dongles de TV DVB-T baseados no chip RTL-2838, no entanto, existem outros hardwares dedicados para essa função, porém mais caros.
Com relação ao software, existem várias opções sendo o Dump1090 o mais popular dentre elas com versões para Windows, Linux e Raspberry Pi
Assim sendo, no decorrer deste artigo veremos uma forma simples e relativamente barata de decodificar pacotes ADS-B. Através de um sistema composto por um Raspberry Pi com dongle DVB-T e o Dump1090, seremos capazes de visualizar em tempo real aviões próximos a nossa localização.
Além disso, opcionalmente, podemos enviar os dados coletados para o FlightRadar24 em troca de uma conta Business totalmente grátis.
Dispositivos SDR e a Rádio Frequência
Sintonizar frequências de rádio via SDR parece uma tarefa trivial, no entanto não é tão simples assim. Isso se deve ao fato de que a sintonia depende de uma antena e um equipamento voltado para determinada faixa de frequência.
Os dispositivos RTL-SDR e os dongles DVB-T possuem como principal característica um hardware capaz de sintonizar uma faixa bastante abrangente, tornando-os muito versáteis. Por outro lado, há uma certa perda de capacidade de sintonia frente a dispositivos voltados para faixas mais específicas.
O mesmo vale para as antenas, que precisam ter tamanho e formatos específicos de acordo com a frequência desejada para aumentar sua capacidade de sintonia.
Embora o hardware escolhido para nosso projeto de rastreamento de aeronaves não seja o mais adequado, ele funciona muito bem. Caso queira, existem receptores e antenas voltados apenas para esse propósito e, evidentemente, possuem desempenho muito superior.
Por fim, outro ponto importante a destacar é a localização da antena. Em ambientes fechados, a capacidade de capturar os dados dos aviões é bastante reduzida, portanto se houver possibilidade, deixe-a em ambiente externo.
Preparação do Raspberry PI
O Raspberry Pi é um computador do tamanho de um cartão usado para diversos fins, por exemplo educacionais, prototipagem, mini servidores e várias outras coisas.
Devido sua característica de baixo consumo energético, montaremos nele um mini servidor ADS-B que pode funcionar 24 horas por dia caso queira.
Por outro lado, nada impede que você monte esse servidor em um computador normal, bastando apenas instalar o dispositivo de captura ADS-B com o Dump1090.
Qualquer versão da placa serve para nosso projeto, portanto, caso ainda não tenha, escolha aquela que melhor se encaixa ao seu orçamento. Utilizei a versão 3 para a elaboração desse artigo.
Dito isto, primeiramente precisamos preparar uma cópia do sistema operacional Raspberry Pi OS em um cartão micro SD. O Raspberry Pi OS é um sistema operacional Linux feito inicialmente para o Raspberry Pi (ARM) e agora suportado por computadores tradicional (X86/X64).
No site do Raspberry existe disponível para download um pequeno software cuja função é gravar imagens de sistemas operacionais em dispositivos removíveis, como por exemplo cartões micro SD.
Dessa maneira, baixe e instale o programa (Raspberry Pi Imager) e selecione o dispositivo e armazenamento de acordo com o que tem em mãos.
O sistema operacional mais indicado para nosso caso é a versão Lite, já que não precisaremos de interface gráfica. Apesar de mais lento, você também pode utilizar a versão completa do sistema que dispõe do modo gráfico.

A versão Lite fica dentro da opção “Raspberry Pi OS (other)”. Após, clique em “Next” e clique em “Edit Settings” para configurar o usuário, nome do dispositivo, rede, etc.

Uma vez que nem sequer utilizaremos monitor ligado ao Raspberry, essas configurações são necessárias para acessarmos o dispositivo pela rede via SSH. Nesse sentido, verifique na aba “Services” se o SSH está habilitado:

Por fim, clique em “Save” e de volta à tela anterior clique em “Yes” para gravar a imagem customizada no cartão micro SD.
Após o término da gravação, basta inserir o cartão no Raspberry Pi, ligá-lo e aguardar alguns minutos para ele concluir a instalação do sistema e conectar-se à rede.
Instalação do software ADS-B
Primeiramente precisamos descobrir qual endereço IP nosso Raspberry Pi obteve na nossa rede interna. Para isso, você precisara acessar seu roteador e verificar nas configurações de rede local a lista de dispositivos conectados.
Como isso varia muito de acordo com o fabricante do roteador, é inviável adicionar aqui os passos para esse objetivo, infelizmente.
Uma vez descoberto o endereço IP, basta acessá-lo via SSH:
ssh nome_usuario@enderecoIP
Substitua “nome_usuario” pelo nome do usuário e “enderecoIP” pelo IP de seu Raspberry. Por exemplo, o comando ficaria desse jeito:
ssh mochileiroadsb@192.168.1.10
Possivelmente no primeiro acesso a seguinte mensagem aparecerá:

Basta digitar “yes” e logo após a senha do usuário, concluindo dessa maneira o processo de acesso via SSH.
Já no terminal remoto (indicado por “nome_usuario@nome_dipositivo:~$”), cole o seguinte comando para atualizar o sistema operacional:
sudo apt update && apt upgrade
Em seguida vamos instalar o Dump1090, responsável pela sintonização da frequência do ADS-B (1090Mhz) e decodificação dos dados enviados pelas aeronaves:
sudo apt install dump1090-mutability -y
É provável que durante o processo de instalação o dump1090 pergunte se deseja que ele inicialize automaticamente com o sistema. Recomendo que sim, uma vez que isso facilita o processo de reconexão ao reiniciar o Raspberry Pi por qualquer motivo.
Concluída a instalação, você já estará pronto para capturar as informações das aeronaves próximas e visualizá-las é muito simples: basta digitar o seguinte comando:
sudo dump1090-mutability --interactive
Certamente verá algo semelhante a isso:

Pronto! Seu mini servidor ADS-B está funcionando.
Embora seja fácil interpretar essas informações e jogá-las em um serviço de mapas, é muito mais empolgante vê-las graficamente e em tempo real com uma boa interface.
Dessa maneira, opcionalmente, você pode enviar seus dados para o FlightRadar24 de uma maneira muito simples.
Caso decida contribuir com eles, em troca você receberá gratuitamente o maior plano de acesso disponível – plano Business, que no momento da publicação deste artigo custa $499 dólares anuais.
Contribuindo com o FlightRadar24
Antes de tudo, você precisará de uma conta padrão do FlightRadar24, bastando para tanto acessar o site e realizar o cadastro.
Já de posse da conta, vamos baixar o script de instalação do aplicativo deles, executá-lo e seguir o passo a passo, respondendo as perguntas.
Assim sendo, digite o seguinte no terminal remoto do Raspberry Pi:
wget -qO- https://fr24.com/install.sh | sudo bash -s
Durante o processo de instalação você precisará informar:
- E-mail: precisa ser o mesmo e-mail utilizado para a criação da conta padrão do FLightRadar24
- Sharing Key: é uma chave fornecida para quem já é fornecedor de dados, como nesse caso é nossa primeira vez, basta dar Enter
- Participar do MLAT: MLAT é uma técnica usada para determinar a posição de aeronaves que não transmitem sua posição. Recomendo responder YES, mas é opcional sua participação.
- Latitude: você precisa fornecer sua latitude em decimais. Para tanto, apenas acesse o google maps e encontre sua localização no mapa. Clique com o botão direito e copie a primeira parte da localização. Atente-se para o formato DD.DDDD
- Longitude: é o mesmo procedimento da latitude, apenas pegue a segunda metade da informação do posicionamento do google e respeite o formato DDD.DDDD
- Altitude: para esta informação você precisará de um celular com aplicativo que forneça essa informação. Pode ser facilmente encontrado nas lojas de aplicativo. Eu sugiro um que se chama “Altímetro”. Atenção que o valor precisa ser em “Pés”, basta convertê-lo de metros para pés também pelo google.
- Confirmar configurações: após preencher todos os dados acima, o FlightRadar pedirá que confirme as informações. Apenas responda “yes” se tudo estiver de acordo.
- Receiver selection: selecione qual é o seu receptor. No maioria dos casos é a opção 1 (DVBT Stick), modelo que uso neste artigo.
- Additional dump1090 arguments: apenas deixar em branco e dar Enter
- Enable RAW data feed: responder “no”
- Enable Basestation: também responder “no”
As três últimas perguntas referem-se a opções mais avançadas do dump1090 voltadas para entusiastas, portanto não aprofundarei aqui sobre elas.
Após responder todas as perguntas, você já estará contribuindo com o FlightRadar24 e também terá sua conta Business habilitada.
Verificar o funcionamento do ADS-B com o mapa
Primeiramente vamos confirmar se tudo saiu conforme o planejado, acessando via navegador o endereço de IP do seu Raspberry na porta 8754:

A tela acima deverá aparecer indicando que você está conectado com o Flighradar24. Note que neste exemplo, 14 aeronaves estão sendo rastreadas e 6 delas estão sendo enviadas para o FlightRadar24.
Caso queira ver as aeronaves rastreadas apenas por você no mapa, acesse novamente o endereço IP de seu Raspberry Pi seguido de “/dump1090”:

Conclusão
Conforme demonstrado ao longo deste artigo, simplesmente capturar os dados de localização de aviões próximos e rastreá-los não exige muito investimento e conhecimento técnico.
Por outro lado, o aprofundamento neste tema exige sim um investimento considerável em receptores, antenas e consequentemente um estudo bem mais profundo em rádio frequência, ADS-B, softwares envolvidos e possivelmente em Linux.
Contribuir com sites como o FlightRadar24 em troca de uma conta sem restrições também pode ser uma motivação para colocar em prática esse projeto.
Caso este artigo tenha despertado sua curiosidade sobre aviação e/ou rádio, recomendo fortemente estudar mais a fundo estes temas! Você descobrirá uma infinidade de projetos envolvendo o RTL-SDR/DVB-T.
Nesse sentido, o artigo “Rádio Definido por Software com RTL2838” pode ajudar na iniciação de seus estudos.
Espero ter ajudado!
Até a próxima!