Sincronize a hora do seu Icom 7300

Hoje percebi que o relógio do Icom 7300 não mostrava a hora certa!
Ao contrário do IC-9700 que se liga a um servidor NTP, o 7300 não tem acesso à Internet e por isso não sincroniza o relógio.

O relógio nestes modelos permite não só saber a hora mas também registar QSO's em log, gravações de audio e contactos feitos em RTTY.

Uma rápida pesquisa mostrou-me que já existia solução! Um pequeno código em python que permite utilizar os comandos CAT de controlo remoto do rádio (CI-V/USB) descrita na secção 19 do manual avançado.

Este script de python está disponível no github, projecto de Kevin Loughin, KB9RLW, desde Junho de 2019.

Copie e edite as variáveis de baudrate e serialport. Se necessário instale as livrarias utilizadas por este pequeno script.

No meu raspberry pi, tenho uma pasta em /home/pi/bin que se encontra na variável $PATH, onde coloco todos os meus scripts. Substitua "pi" por "pi-star" se estiver a acompanhar o meu projecto all-in-one!

Como fazer

Recorde que, nestes posts, o caracter "$" não deve ser copiado e escrito na linha de comandos. Indica apenas que nos encontramos no modo de utilizador. "#" indica o modo de root.

Abra uma janela terminal e escreva os seguintes comandos, um de cada vez,

Agora copie e cole o código de https://github.com/loughkb/IC-7300-time-sync/blob/master/Set_IC7300_time.py
Grave, CTRL + s, e saia CTRL + x.

Atribua permissões de execução ao ficheiro,

e execute,

Aguarde até que o relógio do seu raspberry pi chegue a :00 e as horas no IC-7300 são sincronizadas.
Para o testar, altere previamente a hora do 7300 e corra o último comando. Ao minuto zero, eis que o rádio actualizou a hora!

Para que este sincronismo possa ser feito de forma automática e sempre que o 7300 está ligado, adicionei uma linha no meu crontab que chama este comando todas as horas. Em algum momento coincidirá o comando correr com o rádio ligado 🙂

Edite o seu crontab,

e cole as seguintes linhas no final do ficheiro,

Grave, CTRL + s, e saia CTRL + x.
Note que o linux é sensível a maiúsculas e minúsculas. Utilize pi ou pi-star de acordo com o seu user no raspberry pi.

Obrigado Kevin Loughin, KB9RLW!

Referências
https://github.com/loughkb/IC-7300-time-sync
https://youtu.be/GhuI-vrCBhs