Envio de localização GPS com o TH-D74 através de hotspot

Esta versão, desenvolvida pelo G4KLX, possibilita entre muitas outras funcionalidades a partilha de geolocalização, utilizando o módulo mais recente do ircddbgateway no pi-star.

Se tem um TH-D74E e gostava que os seus dados de GPS fossem enviados para aprs.fi, apenas precisa de instalar e executar a versão mais recente do ircDDB Gateway disponível em https://github.com/g4klx/ircDDBGateway e configurar o rádio, menu 630 (GPS Info in Frame) para “On”. As opções “Sentence” (menu 631) devem ser as de origem – $GPGGA e $GPRMC. O menu 632 (Auto TX) deve ficar desligado, em “Off”.

Esta versão do gateway ircDDB, permite que o D-Star Repeater faça interface com o roteamento do indicativo através do ircDDB e de todos os diferentes tipos de refletores. Inclui muitas funcionalidades, tais como:

  • suporta Icom stacks
  • suporta repetidores de construção caseira
  • Icom DD mode em Linux através da internet
  • roteamento de indicativo de chamada via ircDDB
  • refletores D-Plus REF
  • refletores DExtra XRF
  • refletores DCS
  • refletores XLX
  • roteamento CCS7
  • transferências de dados D-RATS
  • gateway DPRS dados para APRS-IS
  • anúncios multi-idiomas de texto e voz
  • controle de chamada DTMF ou UR
  • interface de controle remoto
  • servidor StarNet

E a capacidade de definir políticas para o uso de refletores.

Faça o download em ZIP, descomprima por exemplo em /tmp, habilite o modo de leitura e escrita com “rpi-rw” e compile de acordo com as instruções na própria página. Se não necessitar de interface gráfico ignore as linhas referidas nestas instruções. Seja paciente, pois a compilação pode tardar entre 20 minutos a 3 horas no caso do raspberry pi zero.

Outras referências:
Facebook Kenwood TH-D74 group
https://www.f4fxl.org/compile-and-install-the-latest-ircddbgateway-in-pi-star/
https://www.f4fxl.org/compile-and-install-the-latest-dstarrepeater-in-pi-star/

packet iGate, BBS, node e DX cluster com Raspberry Pi

…ou, como montar uma estação de rádio packet com Raspberry Pi 3 e algum software.

Esta documentação é a síntese de diversos sites sobre o tema, referidos mais abaixo em Referências para este projecto.

Instale o Raspian Stretch no seu Raspberry Pi 3 ou superior.

Após a instalação do sistema operativo linux, vamos então instalar o “modem” Direwolf e o linBPQ responsável pelas aplicações de BBS, APRS, DX Cluster, Node, Chat entre outras…

Execute o conjunto de comandos a seguir descritos. “$” ou “#” indicam o tipo de utilizador, respectivamente um utilizador normal que poderá ser o “pi” ou o root. Não deverá transcrever estes símbolos ao copiar os comandos…
Sudo permite executar comando como root.

Devemos garantir que temos todas as actualizações necessárias:
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo reboot now

Depois de re-iniciar vamos instalar a livraria de som,
$ sudo apt-get install libasound2-dev

Em opção, se pretendermos utilizar o Direwolf para controlar o PTT (emissão do rádio), através do GPIO, instalamos também,
$ sudo apt-get install libudev-dev

Agora vamos compilar e instalar o Direwolf
$ cd ~
$ git clone https://www.github.com/wb2osz/direwolf
$ cd ~/direwolf
$ git tag
$ git checkout 1.5
$ make -j
$ sudo make install
$ make install-rpi
$ make install-conf

No meu caso ficou instalado em /usr/local/bin/direwolf/

Como o Raspberry Pi não tem qualquer entrada de som, temos de utilizar uma placa externa. O mais fácil e barato são as placas USB.
Pode encontrar facilmente no eBay diversas marcas e modelos,

Ligue a sua placa de som USB, abra um terminal e faça,
$ aplay -l (“L” minúsculo, não o número 1)

Se o Raspberry Pi tiver a saída de som onboard activa, deve de aparecer como Card 0, Device 0.
A nova placa de som USB deve ser reconhecida como Card 1, Device 0, uma segunda por Card 2, Devide 0 e por aí fora…

De notar que podemos correr várias instalações de Direwolf no caso de pretendermos estabelecer ligações ao BPQ em diversas velocidades, por exemplo 300 bauds para HF, 1200 para VHF e 9600 para UHF. Sim, o Direwolf faz comunicações a 9600 bauds com um transceptor preparado para tal!

Abra o ficheiro de configuração do Direwolf, normalmente em /etc/direwolf.conf com um editor de texto à sua escolha: “nano” ou “vi” e, habilite a placa de som USB correcta removendo o caracter “#” no início da linha apropriada, por exemplo deixando,

ADEVICE plughw:1,0

desça algumas linhas e altere “NOCALL” para o seu indicativo,

MYCALL NOCALL

Defina a velocidade do modem, por exemplo 1200 bauds,

MODEM 1200

Avance algumas linhas e defina a opção de PTT que pretende utilizar. No meu caso utilizei o GPIO para o efeito.

Mais abaixo active e altere as opções AGWPORT e KISSPORT para as definições que irá utilizar no linBPQ.
Desactive as opções APRS, se pretende utilizá-las através do linBPQ.

Grave as alterações introduzidas e execute o Direwolf através do terminal,

cd ~ (ou cd /usr/local/bin/direwolf)
direwolf (ou direwolf -t 0 -p -c /etc/direwolf.conf)

Se já tiver os cabos preparados, ligados ao seu transceptor, e na frequência correcta, deverá ver de imediato a actividade de packet ou APRS a surgir no terminal.

Faça CTRL+C para fechar o Direwolf e, instale o pilinBPQ,

$ sudo mkdir linbpq
$ cd linbpq
$ sudo wget http://www.cantab.net/users/john.wiseman/Downloads/Beta/pilinbpq
$ sudo mv pilinbpq linbpq
$ sudo chmod +x linbpq

$ sudo su
$ setcap “CAP_NET_ADMIN=ep CAP_NET_RAW=ep CAP_NET_BIND_SERVICE=ep” linbpq
$ su pi

$ sudo mkdir HTML
$ cd HTML
$ sudo wget http://www.cantab.net/users/john.wiseman/Downloads/Beta/HTMLPages.zip
$ sudo unzip HTMLPages.zip

$ cd ~/linbpq
$ sudo mkdir BPQAPRS
$ cd BPQAPRS
$ sudo wget http://www.cantab.net/users/john.wiseman/Documents/Samples/APRSHTML.zip
$ sudo unzip APRSHTML.zip

$ cd ~
$ sudo chown -R pi:pi linbpq

Copie um outro ficheiro de configuração do linBPQ, com o nome de bpq32.cfg para o directório de instalação; no meu caso /usr/local/bin/linbpq/ e reproduza neste ficheiro as alterações necessárias à ligação do BPQ32 com o Direwolf. Veja o exemplo a seguir,

;****** PORT 1 Direwolf 1200-baud ****** PORT PORTNUM=1 ; Port number ID=HF Packet 300-baud ; PORTS command text TYPE=ASYNC ; RS232 connection IPADDR=127.0.0.1 ; DIREWOLF TCPPORT=8001 ; DIREWOLF SPEED=19200 CHANNEL=A ; TNC channel MAXFRAME=4 ; Max outstanding frames FRACK=5000 ; Level 2 timeout (ms) RESPTIME=200 ; Level 2 delayed ACK (ms) RETRIES=10 ; Level 2 max retries PACLEN=236 ; Max packet length (bytes) TXDELAY=300 ; Transmit keyup delay (ms) SLOTTIME=100 ; CMSA interval timer (ms) TXTAIL=30 PERSIST=63 ; Persistence (256/(# transmissions-1) DIGIFLAG=1 ; Allow Digipeat on this port ENDPORT

;****** PORT 2 Direwolf 1200-baud ****** PORT PORTNUM=2 ; Port number ID=VHF Packet 1200-baud ; PORTS command text TYPE=ASYNC ; RS232 connection IPADDR=127.0.0.1 ; DIREWOLF TCPPORT=8003 ; DIREWOLF SPEED=19200 CHANNEL=A ; TNC channel MAXFRAME=1 ; Max outstanding frames FRACK=5000 ; Level 2 timeout (ms) RESPTIME=40 ; Level 2 delayed ACK (ms) RETRIES=10 ; Level 2 max retries PACLEN=236 ; Max packet length (bytes) TXDELAY=100 ; Transmit keyup delay (ms) SLOTTIME=100 ; CMSA interval timer (ms) TXTAIL=30 PERSIST=63 ; Persistence (256/(# transmissions-1) DIGIFLAG=1 ; Allow Digipeat on this port ENDPORT

Guarde o ficheiro de configuração como bpq32.cfg no directório do linbpq.
Inicie o direwolf, como descrito anteriormente.
Abra uma nova janela de terminal e inicie o linbpq,
$ cd ~
$ sudo -u pi ./linbpq

Com o terminal aberto, após iniciar o linbpq se receber alguma mensagem deste tipo,

“audio level = 193(95/67)…
Audio input level is too high. Reduce so most stations are around 50.”

Ajuste a entrada e saída de som de cada um dos interfaces de som USB com o comando,
$ alsamixer

O linBPQ deve ligar-se ao Direwolf por localhost através da porta 8001 0 ou 8003 de acordo com as configurações que definiu.

Referências:
https://github.com/wb2osz/direwolf/blob/master/doc/Raspberry-Pi-APRS.pdf
https://raw.githubusercontent.com/wb2osz/direwolf/master/doc/User-Guide.pdf
https://github.com/wb2osz/direwolf/tree/master/doc

packet radio – onde estamos?

No final dos anos 80 contruí um TNC 2, para 1200 bauds e outro para 9600. Comprei os PCB a um colega e os componentes no mercado.

Pequenos computadores, equipados com o processador Z80, estes TNC (Terminal Node Controler), ligados a um transceptor de VHF/UHF, possibilitavam a comunicação em packet AX.25, para QSO entre estações, a transmissão de pequenas imagens e ficheiros, e dispunham de uma pBBS (personal BBS) que indicava quando era recebida uma mensagem!

O packet nos anos que se seguiram foi perdendo adeptos, para a recente Internet que se insurgiu com velocidades cada vez maiores… o princípio era o mesmo, o protocolo X.25, onde o cabeçalho dos pacotes em vez do indicativo de amador levava os endereços de ligação ponto a ponto.

No final dos anos 90, surgiram projectos como a FBB e o BPQ32 que podiam funcionar stand alone ou integrados com a própria Internet – apareceram as primeiras comunicações digitais de dados, para os mais familiarizados com o que se faz actualmente com o VoIP (voz sobre IP) nas tecnologias D-Star, DMR e recentemente com a Fusion.

O packet recebeu um impulso com o interesse da comunidade de rádio-amadores pelo APRS, um sistema inicialmente utilizado para dar a conhecer a geolocalização, permite hoje o envio de mensagens, informação da frequência de voz, comunicações de emergência, consultas ao QRZ, envio de e-mails e, que equipam já um conjunto de rádios móveis e portáteis pelas diversas marcas onde alguns incluiem também GPS.

Continua a ser amplamente utilizado em comunicações de amador via satélite, para receber dados de telemetria, a retransmição de pacotes por Digipeater ou APRS.

Muitos destes equipamentos oferecem o modo KISS, um terminal de packet simples, que pode ser utilizado por software terminal, são exemplos o linpac para linux, uma estação terminal completa em todo idêntica ao TNC 2 ou, sistemas como os que referi – FBB e BPQ32.

Para facilitar tudo isto, hoje é possível construir uma BBS com FBB ou o BPQ32 por menos de 40€ com recurso ao Raspberry Pi 3 (hardware), ao modem Dire Wolf que emula a placa de som, e ao sistema de packet radio com terminal, BBS, node, APRS, DX cluster, e chat (software) que integram com KISS… tema do próximo artigo.

Mensagens de texto e imagem em D-Star

Questionava-me se seria possível enviar e receber mensagens de texto e por que não imagem em D-Star?

Em texto percebi que sim, pela leitura das instruções do meu HT da Kenwood. Então imagem também faria sentido! Era uma questão da quantidade de bytes a transferir, já que o canal é digital!…

…e existe! Não é da Kenwood, mas da Icom, para transceptores Icom e compatíveis. Possível desde que seja possível ligar o seu dispositivo Android por cabo ou bluetooth, em modo data.

A aplicação chama-se RS-MS1A e está disponível na play store

O RS-MS1A é uma APP que permite que o dispositivo Android use remotamente as funções do modo D-STAR e DV e algumas funções DR em transceptores D-STAR.

Funcionalidades:

  • envio e recepção de mensagens de texto, voz e imagens
  • ver a localização de repetidores ou estações de amador através dos dados de posicionamento
  • listas de repetidores
  • ler e editar as informações de uma estação recebida
  • permite fazer o download de informações adicionais, como qrz.com ou aprs.fi
  • interagir com algumas das configurações to transceptor
  • exportar lista de repetidores, e o histórico de beacons recebidos

Notem que, nem todas estas funcionalidades estão disponíveis em todos os transceptores. No TH-D74 da Kenwood, aquelas que realmente me interessavam – transmissão de mensagens de texto e imagens funciona na perfeição!

Configurar um TNC para fazer de digipeater em APRS

Se tem um TNC em casa e pretende que este faça parte da rede de APRS, retransmitindo os pacotes que escuta, deve configurar o MYALIAS para WIDE1-1, e abandonar o termo RELAY. A variável UNPROTO por exemplo para “CQ VIA WIDE1-1,WIDE2-1” e DIGIPEAT ON.
Se o firmware do TNC estiver preparado para APRS e no pacote recebido o valor de “N” for maior que zero, o TNC decrementa “N” de 1 e retransmite o pacote.
Ver post “Digipeating em APRS com novos padrões“.

Não necessita de ter o TNC ligado a um GPS para que este se registe na rede de APRS.
Se estiver ao alcance rádio de uma iGate, ou através de outros digipeaters, altere o beacon do TNC para,

![latitude]/[longitude][tipo] [texto]

Onde,
! – indica que se inicia informação a ser interpretada pelo APRS

[latitude] – expressa até ao máximo de 8 caracteres, em graus e minutos com 2 decimais seguido de “N” para Norte ou “S” para Sul

/ – separador entre latitude e longitude

[longitude] – expressa até ao máximo de 9 caracteres, em graus e minutos com 2 decimais seguido de “E” para Este ou “W” para Oeste

[tipo] – símbolo da estação de rádio (ver página 102 a 104 do link em referência)

[texto] – texto livre

Exemplo para a minha estação,
BEACON !3612.34N/11518.95W- CT1EBQ, digi WIDE1-1, QRA Ricardo, Cascais PT

Glossário:
Digipeater – uma estação que retransmite pacotes de AX.25 identificada por um indicativo no máximo de 8 digitos

Referências:
APRS Protocol Reference

Digipeating de APRS com novos padrões

As convenções de APRS estabelecidas décadas atrás já não servem o número de utilizadores e o tráfego actualmente existente, gerado por digipeaters e equipamentos obsoletos que duplicam os pacotes enviados às iGates ocupando a banda desnecessariamente.

Não esquecer que o principal objectivo do APRS é informar os utilizadores da rede da geolocalização de cada estação de rádio ou dispositivo. É desnecessário por isso utilizar métodos que retransmitam o beacon diversas vezes sobre tudo quando o sinal já foi escutado por uma iGate e disponibilizado à rede.

No entanto, é importante a existência de digipeaters para garantir que os pacotes de dados de APRS cheguem à iGate. Apesar de utilizarem o AX.25, estes pacotes de APRS podem ser comparados a uma transmissão de broadcasting não havendo qualquer protocolo para garantia de uma boa recepção. Se forem escutados e chegarem correctamente são retransmitidos e, eventualmente chegam a uma iGate.

A rede de APRS na Europa funciona nos 144,800MHz a 1200 bauds, FM, em modo simplex e, em satélites adoptou-se os 145,825MHz à semelhança da ISS.

Normalmente a rede de APRS de RF é suportada por clubes de rádio-amadores, ou por equipamentos TNC, raspberry pi ou computadores a correrem FBB ou BPQ32 entre outros, em estações de amadores…

Para resolver este paradigma, de congestionamento da rede, eliminaram-se as nomenclaturas de RELAY e WIDE, alterando-se para caminhos do tipo WIDEn-N, onde o primeiro “n” representa o número de saltos desejados e o segundo “N” o número de saltos restantes, valor decrementado por cada digi que retransmite o pacote. Evita-se assim que o pacote de RF percorra o país gerando tráfego desnecessário!

Glossário:
Digipeater – uma estação que retransmite pacotes de AX.25 identificada por um indicativo no máximo de 8 digitos
iGate – gateway entre a rede de APRS de HF, VHF e UHF e a Internet

Referências:
APRS Protocol Reference

Manual de Packet

Demos mais um impulso na estação de packet instalada na ARLC, algo que mesmo à 20 anos atrás nunca tinha experimentado – o envio de uma mensagem em packet radio para outro país, para outro continente! Está descrito no manual no tópico “5.11.4. Envio de uma mensagem da sua pBBS para outro colega WW”

Entretanto o Renato, pelo seu envolvimento no projecto do novo satélite português, que deve ser colocado em órbita já para o ano que vem, tem vindo a estudar e melhorar as comunicações a 9600 bauds entre a sua estação CS5CEP e a ARLC – CQ0PCV.

Adicionámos, como já disse num post anterior, o registo de estações em APRS na área de cobertura da estação de packet, por agora em 144,900MHz e 432,500MHz, estendido também a Cascais pelo Digi de CT1EBQ, para pedidos WIDE1-1, WIDE2-1.

Está em fase de projecto, a partilhar mais tarde, um modem em AX.25 com Raspeberry Pi totalmente independente e operacional que poderá trabalhar em 300, 1200 e 9600 bauds.
Irei dando notícias…
73, de CT1EBQ