APRS é um sistema que faz uso de radioamadorismo e da Internet para troca de mensagens. De longe o principal uso do APRS é reportar posição. Foi para este caso de uso que o APRS foi criado, tanto que o 'P' significava 'Position'. Com o tempo o sistema foi acomodando outros tipos de informação, e 'P' passou a significar 'Packet'.
O APRS é uma mistura bastante interessante de "velha escola" com o que existe de mais moderno. E talvez seja a forma mais fácil de iniciar a exploração do lado digital do radioamadorismo.
A espinha dorsal do APRS é um conjunto de servidores na Internet, que dá ao serviço um alcance mundial, instantâneo e público. O servidor aprs.fi é o portal mais conhecido. Qualquer um pode consultar a posição de todas as estações APRS, mas o o envio de atualizações exige o prefixo de radioamador.
Além dos radioamadores, algumas outras estações como aeroportos e agentes de Defesa Civil também reportam sua posição via APRS. No caso de aeroportos e demais estações fixas, algum radioamador é responsável pela entrada manual dos dados. As estações capazes de reportar automaticamente usam APRS-IS (via Internet) ou então via rádio, que estende a cobertura a regiões sem Internet nem celular.
Uma estação móvel precisa possuir GPS para saber sua própria posição. Antigamente isto significava carregar um trambolho a mais. Hoje em dia todo celular tem GPS, e muitos rádios embutem GPS e APRS.
Cada país define uma ou mais freqüências para o APRS. No caso do Brasil é 145.570MHz, modulação AFSK 1200bps sobre FM. Se você possui um dongle SDR, pode sintonizar esta freqüência; o aplicativo GQRX embute um decodificador AFSK. As mensagens APRS são codificadas, mas são parcialmente legíveis por um humano.
O APRS via rádio depende de dois tipos especiais de estação para funcionar. Um o digipeater, que apenas retransmite as mensagens via rádio. Outro é o IGate, que faz a ponte entre rádio e Internet. Esta separação barateia a cobertura APRS. Um digipeater costuma ser instalado nos lugares onde já existem repetidores VHF de voz (altos, com excelente alcance, mas pouco acessíveis e sem conexão à Internet) enquanto um IGate pode ser montado em área urbana.
APRS via rádio é unidirecional: a estação transmite mensagens às cegas, sem saber se estão chegando à Internet. Para mitigar esta incerteza, o APRS prescreve transmissões repetidas e intervalos variáveis conforme a posição da estação muda mais ou menos rapidamente.
Uma forma simples e acessível de conhecer o APRS já foi sugerida acima: usar um dongle SDR e um software decodificador. Participar de forma ativa exige possuir prefixo de radioamador. E sim, cada serviço em que você fizer cadastro vai pedir uma cópia do certificado de operador e da licença do rádio; não há atalhos.
Doravante assumindo que você tem licença, talvez o meio mais popular de ingressar no APRS é usando um aplicativo de celular, com destaque para o APRSDroid. Nem mesmo é necessário possuir um rádio, pois o app reporta via APRS-IS, e você já vê seu prefixo no mapa do aprs.fi. Mas a graça é conseguir reportar a posição via rádio.
O kit "APRS rádio" mais barato é um celular (que você certamente já tem), um rádio portátil (HT) Baofeng UV-5R, e um cabo de áudio — que pode ser construído por você mesmo. Se for preguiçoso e tiver dinheiro sobrando, pode comprar um cabo BTech APRS-K1. Para transmitir, o setup funciona bem; consigo ser ouvido por digipeaters a 40km de distância. Já a recepção não é tão boa, o que prejudicaria uma troca bidirecional de mensagens.
Para quem quer usar APRS a sério, ou quer evitar o bolo de fios, existem radiocomunicadores com APRS embutido. Também há rádios do tamanho de uma caixa de fósforos que só transmitem APRS (estes últimos ainda um pouco caros, em torno de US$ 200, por serem produzidos em pequena escala).
Quem quiser dar uma colaboração mais efetiva ao APRS pode constituir um IGate. Tudo que é necessário é um rádio e um computador (e o cabo de áudio). Há software IGate para Windows, Linux e Mac. Como dito antes, o Baofeng não é particularmente bom no papel de receptor APRS, então um IGate deve exigir um rádio melhor e/ou uma antena realmente boa.
O desempenho dos "modems por software" atuais, via canal de áudio, é superior a qualquer solução de hardware. Mas é possível usar um modem de verdade. Também é possível usar um equipamento denominado TNC, uma espécie de modem inteligente que também implementa o protocolo AX.25 (no qual o APRS é baseado).
O TNC era uma solução mais popular quando o AX.25 era muito utilizado e os microcomputadores eram lentos. Ainda se usa o TNC para "isolar" o computador do rádio, embora hoje em dia o TNC seja simplesmente um computador dedicado (talvez um Raspberry Pi ou Arduino) com um "modem por software". O TNC moderno comunica-se com o computador via protocolo KISS. O próprio APRSDroid pode funcionar como TNC e aceita comandos KISS via Wi-Fi.
Embora o APRS tenha nascido para informar posição, o formato do pacote é extensível e acomoda qualquer tipo de mensagem. Informações de telemetria de repetidores VHF e de estações metereológicas são particularmente populares.
O APRS Messaging, permite enviar mensagens para um prefixo, com recebimento de confirmação, como se fosse um "SMS" entre radioamadores. Na prática é um recurso pouco utilizado, mas é bom saber que a tecnologia existe e poderia, por exemplo, ser usada em controle remoto de um dispositivo em local ermo.
Por conta da baixa velocidade, do rádio ser um "recurso escasso" (apenas um canal para todas as estações APRS) e pelas mazelas do AX.25 (vide a próxima seção), o APRS procura gerar pacotes pequenos. As informações são codificadas, mas o resultado final ainda é semi-legível por um humano.
Apenas caracteres ASCII legíveis são utilizados, apesar do AX.25 suportar tráfego binário. Isto pode ter a ver com o fato de outros modos digitais de radioamadorismo suportarem apenas caracteres legíveis ASCII, limitação compartilhada pelo SMS celular (poder-se-ia usar SMS para reportar posição APRS em áreas com cobertura 2G, sem dados).
Segue um exemplo de mensagem APRS, e a análise de cada parte:
PU5EPX-7>APDR14,WIDE1-1:=2618.4 S/04851.3 WM https://aprsdroid.org/
O formato da latitude e longitude da mensagem acima ainda é humanamente legível. Há um formato mais comprimido e "ilegível", que usa apenas 13 caracteres para reportar latitude, longitude e altitude (na mensagem acima, 17 caracteres foram consumidos, e não há altitude).
A mensagem acima é das mais simples. A especificação do APRS prescreve muitos outros tipos de dados, como altitude, timestamp, direção, velocidade, temperatura, etc. E nada impede que uma aplicação de propósito específico transmita mensagens em outros formatos, pois o APRS aceita transportar dados "opacos".
O formato de pacote APRS é derivado do AX.25, conhecido como "rádio pacote". A diferença mais importante é que o APRS não é confirmado, ou seja, não há um pacote de retorno confirmando que a mensagem chegou no destino, enquanto o AX.25 convencional é confirmado.
Nos tempos pré-Internet, o AX.25 (por sua vez derivado do X.25) era bastante utilizado, em moldes semelhantes aos BBS via telefone da época. Também é possível trafegar TCP/IP sobre AX.25, embora seja realmente lento para a maioria dos usos práticos. Em AX.25 VHF, o sinal digital é modulado em 1200bps AFSK (formato conhecido como Bell 202), ou mais raramente em 9600bps; o resultado é novamente modulado em FM, como se fosse áudio. Isto permite reutilizar equipamentos de voz com AX.25.
A rigor, é um uso extremamente ineficiente da banda; modulações digitais mais modernas conseguem velocidades muito maiores e/ou maior robustez frente a ruídos (porém exigem um rádio SSB no estágio final, que poucos têm). O pacote AX.25 possui detecção de erros (CRC de 16 bits), mas não possui correção de erros, o que põe mais sal na ferida do uso ineficiente da banda. Basta um bit errado e o pacote todo é perdido.
Apesar do APRS via rádio herdar todas estas limitações do AX.25, na prática considera-se que ele funciona "bem o suficiente".
Existe uma extensão que adiciona correção de erros ao AX.25 sem quebrar compatibilidade retroativa, denominada FX.25. O APRS também pode fazer uso dela. Na verdade, nada impede uma estação APRS de transmitir pacotes FX.25 desde já. Alguns softwares como APRSDroid e DireWolf (este último muito utilizado como IGate) já estudam implementá-lo. Esta pode ser a grande novidade no futuro próximo.