CT1EBQ World Watch HF — 100 frequências de onda curta para uma crise internacional

A Internet caiu. As redes móveis estão congestionadas, alguns serviços deixaram de responder e a informação que continua a circular chega-nos repetida pelas mesmas fontes.

Não é necessário imaginar o fim do mundo.

Pode tratar-se de uma guerra, um golpe de Estado, uma grande catástrofe natural, um ataque informático, uma falha prolongada de energia ou, simplesmente, de um país onde o acesso à informação foi condicionado.

Ainda temos um rádio de onda curta.

Que frequências gostaríamos de ter programadas?

Foi esta pergunta que deu origem à CT1EBQ World Watch HF: uma lista de memórias preparada para acompanhar acontecimentos internacionais através das emissões dos próprios países e das diferentes organizações que procuram fazer-se ouvir.

Não é uma lista da verdade.

É uma lista de vozes.

Da EiBi para o rádio

Em 2023 publiquei neste blog o artigo A lista mais completa de estações de onda-curta, apresentando a base de dados EiBi.

A EiBi continua a ser uma das melhores fontes para consultar frequências, horários, idiomas, estações e zonas de destino. A actual grelha A26 é válida entre 29 de Março e 25 de Outubro de 2026. A HFCC publica igualmente os horários operacionais coordenados pelos seus membros; a versão A26 disponível à data deste artigo foi actualizada em 30 de Julho de 2026.

Há, no entanto, um pequeno senão.

Estas bases de dados contêm milhares de emissões. São excelentes para pesquisa, identificação e trabalho de DX, mas pouco práticas quando pretendemos seleccionar uma centena de memórias para um receptor.

Quando tenho o rádio à minha frente, não quero percorrer três mil linhas para descobrir onde está a BBC, a China Radio International ou a Radio Romania International.

Quero escolher uma estação e experimentar as suas frequências até encontrar a que está a chegar melhor naquele momento.

Por esse motivo, o ficheiro está organizado por estação emissora, e não por frequência.

Quem preferir outra organização pode abrir o CSV numa folha de cálculo e ordená-lo por frequência, idioma, país, destino, prioridade ou qualidade estimada de recepção em Portugal.

Cada linha é autónoma e conserva toda a informação necessária.

Ouvir todas as partes

O objectivo desta lista não é determinar antecipadamente quais as estações credíveis e quais as que difundem propaganda.

Todas as emissoras internacionais representam, de uma forma ou de outra, uma perspectiva editorial, institucional, cultural ou política.

A BBC World Service permite-nos acompanhar a perspectiva britânica e uma ampla rede internacional de correspondentes. A Voice of America representa uma importante voz norte-americana. A China Radio International transmite a posição de Pequim. A Radio Russia permite acompanhar a narrativa russa. A IRIB apresenta a perspectiva oficial iraniana e a Voice of Türkiye a posição de Ancara.

Juntam-se a estas a NHK World Radio Japan, KBS World Radio, All India Radio, Radio France Internationale, Radio Exterior de España, Radio Romania International, RNZ Pacific, Vatican Radio, Radio Kuwait, Saudi Radio, Radio Algérienne Internationale, Radio Habana Cuba e outras vozes regionais.

Algumas eram também desconhecidas para mim.

Radio Farda é um serviço em língua persa dirigido ao Irão, associado à Radio Free Europe/Radio Liberty e financiado através da estrutura norte-americana USAGM. A Radio Martí é dirigida a Cuba e administrada pelo Office of Cuba Broadcasting. A Radio Free Asia transmite informação destinada a audiências asiáticas com acesso condicionado a meios de comunicação independentes.

Estas estações não foram incluídas para que aceitemos a sua versão dos acontecimentos.

Foram incluídas precisamente para que possamos compará-la com as versões difundidas pelos países a que se dirigem.

Por vezes, aquilo que uma estação omite é tão importante como aquilo que transmite.

Também interessa observar:

  • quem noticia primeiro determinado acontecimento;
  • que palavras utiliza para o descrever;
  • quando altera subitamente o tom;
  • quais os assuntos repetidos insistentemente;
  • e quais os acontecimentos que desaparecem por completo de uma emissão.

Uma lista única para todo o ano

As emissões internacionais de HF estão organizadas em duas épocas.

A época A decorre, de forma geral, desde o último domingo de Março até ao último domingo de Outubro. A época B cobre o período restante, correspondente ao inverno no hemisfério Norte. As frequências, horários, locais de transmissão e azimutes podem mudar entre as duas grelhas.

A primeira ideia foi publicar dois ficheiros: A26 e B26.

Na prática, isso obrigaria a substituir as memórias do rádio duas vezes por ano, podendo ainda apagar alterações pessoais feitas pelo utilizador.

Optei por outro caminho.

A edição CT1EBQ World Watch HF 2026.1 reúne frequências da época A26 e frequências recorrentes da anterior época B25. As estações mais importantes aparecem em várias bandas, permitindo acompanhar as mudanças de propagação ao longo do dia e das estações do ano.

Não se procura uma única frequência perfeita para cada rádio.

Procura-se redundância.

Quando uma emissão deixa de chegar nos 49 metros, pode estar disponível nos 31, 25, 19 ou 16 metros.

A grelha B26 ainda estava em fase de preparação quando esta edição foi criada. A HFCC abriu o envio de dados B26 em Junho de 2026, mas uma futura edição poderá incorporar a grelha operacional definitiva quando esta estiver disponível.

Cem memórias, cem frequências diferentes

A edição compacta foi preparada para um banco com um limite exacto de 100 memórias.

Inicialmente, algumas frequências apareciam mais de uma vez porque podiam transportar diferentes idiomas ou até diferentes estações em horários distintos.

Por exemplo, a Vatican Radio utiliza 7.305 MHz para emissões em português e espanhol. Não faria sentido ocupar duas memórias do rádio com a mesma frequência.

A lista foi por isso consolidada.

Cada frequência aparece apenas uma vez.

Quando uma frequência é utilizada por mais de uma estação ou em vários idiomas, essa informação fica reunida nos campos NameCommentStationLanguage e UTC.

A edição alargada passou igualmente pelo mesmo processo e contém 194 frequências únicas, em vez das 246 linhas de emissão que lhe deram origem.

Como interpretar o nome da memória

O campo Name foi limitado a 16 caracteres, para ser compatível com o espaço disponível nas memórias de diversos rádios.

A estrutura utilizada é:

ESTAÇÃO DESTINO IDIOMA PRIORIDADE

Por exemplo:

BBC AF EN 5*
REE SA ES 5*
CRI EU PT 5*
IRIB ME AR 4*
RNZ OC EN 5*

Em BBC AF EN 5*:

  • BBC identifica a estação;
  • AF indica que a emissão se destina a África;
  • EN identifica o idioma inglês;
  • 5* indica a prioridade atribuída à escuta.

Quando uma frequência é partilhada, podem aparecer nomes como:

VOA/FARDA XX 5*
TRT/KBS EU EN 4*
CRI/RUS XX XX 5*

O código XX indica que existe mais do que um destino, idioma ou serviço associado à memória. A informação completa permanece nas restantes colunas.

Destinos

CódigoRegião
EUEuropa
AFÁfrica
ASÁsia
MEMédio Oriente
NAAmérica do Norte
SAAmérica do Sul
OCOceânia e Pacífico
GLCobertura global
XXMais do que um destino

Idiomas mais utilizados

CódigoIdioma
PTPortuguês
ESEspanhol
ENInglês
FRFrancês
DEAlemão
ITItaliano
RURusso
ARÁrabe
FAPersa ou Dari
ZHMandarim
JAJaponês
KOCoreano
XXMais do que um idioma

O significado das estrelas

A classificação não avalia a veracidade ou a independência editorial da estação.

Representa a sua prioridade de escuta nesta lista.

ClassificaçãoSignificado
5*Fonte essencial ou actor geopolítico de primeira importância
4*Fonte internacional ou regional muito relevante
3*Fonte complementar, regional ou de recepção mais difícil

Uma estação oficial chinesa, russa, iraniana ou norte-americana pode ter 5 estrelas sem que isso constitua um selo de credibilidade.

Significa apenas que a sua narrativa é importante para compreender determinado acontecimento.

Informação contida no CSV

O ficheiro não contém apenas os quatro campos importados pelo software de programação.

Inclui também informação para consulta, impressão ou reorganização:

  • identificador numérico;
  • frequência em MHz e kHz;
  • nome abreviado para a memória;
  • modo de recepção;
  • comentário limitado a 80 caracteres;
  • nome completo da estação;
  • país;
  • continente ou região de destino;
  • idioma;
  • tipo de serviço;
  • prioridade;
  • recepção estimada em Portugal;
  • época;
  • horário UTC;
  • banda;
  • fonte utilizada;
  • racional para a inclusão da memória.

No RT Systems serão importados apenas os campos reconhecidos pelo programa. As restantes colunas permanecem no CSV e podem ser utilizadas numa folha de cálculo ou impressas para acompanhar o rádio.

A estimativa RX PT é apenas uma indicação. A recepção efectiva depende da localização, antena, ruído local, hora, época do ano, actividade solar e condições da ionosfera.

AM, para poder ser ouvida por todos

Esta primeira edição privilegia emissões em AM.

O objectivo é que a lista possa ser utilizada num Tecsun PL-990X, num receptor portátil simples, num SDR ou em transceptores como o IC-705 e o IC-7300.

Existem emissões em DRM — Digital Radio Mondiale — com melhor qualidade de áudio e possibilidade de transmitir dados. No entanto, exigem um receptor ou software capaz de descodificar o sinal.

Numa lista destinada a uma situação anormal, a compatibilidade pareceu-me mais importante do que a qualidade digital.

Ficheiros para download

CT1EBQ World Watch HF 2026.1 — Compact 100 Unique

100 memórias e 100 frequências únicas, preparadas para um banco limitado a 100 posições.

Ficheiro: CT1EBQ_World_Watch_HF_2026_1_Compact_100_Unique.csv

CT1EBQ World Watch HF 2026.1 — Unique 194

Edição alargada com 194 frequências únicas, mantendo maior redundância de bandas, idiomas e zonas de destino.

Ficheiro: CT1EBQ_World_Watch_HF_2026_1_Unique_194.csv

Como utilizar

Antes de importar, sugiro que abra o CSV numa folha de cálculo.

Pode:

  • eliminar idiomas que não compreenda;
  • favorecer português, espanhol ou inglês;
  • retirar estações com baixa probabilidade de recepção no seu QTH;
  • ordenar por frequência;
  • reorganizar por país ou região;
  • adaptar os nomes ao limite do seu receptor;
  • ou criar o seu próprio banco a partir desta selecção.

Os horários e idiomas devem ser confirmados na EiBi, HFCC ou noutra base actualizada, sobretudo quando não se ouve a estação esperada.

Uma frequência internacional pode ser utilizada por serviços diferentes ao longo do dia, sofrer interferência intencional, mudar temporariamente de transmissor ou deixar de estar activa sem aviso.

Esta lista não substitui as bases de dados de broadcasting.

Torna-as utilizáveis no rádio.

Uma lista para ouvir antes de formar opinião

A onda curta não nos garante acesso à verdade.

Dá-nos, contudo, acesso directo a versões dos acontecimentos que muitas vezes não chegam pelos canais que consultamos habitualmente.

Num conflito internacional, ouvir apenas uma das partes é confortável.

Ouvir várias exige mais atenção, algum espírito crítico e a disponibilidade para aceitar que a realidade pode não caber inteiramente em nenhuma das narrativas.

Esta lista nasceu com esse objectivo:

Ter no rádio um conjunto de vozes suficientemente diverso para escutar o mundo antes de formar opinião.

A selecção, critérios e estrutura foram desenvolvidos por Ricardo Oitavén, CT1EBQ, em colaboração com a Eyla, a partir das bases de dados e fontes indicadas em cada linha do ficheiro.

Referências

Como ligar o IC-7300 a Amplificadores Lineares não Icom

De modo a proteger o transceptor IC-7300, quando queremos usar Amplificadores Lineares não Icom esta sugere, no capítulo 2-5 do manual básico, utilizar-se um relé directamente na ficha SEND. Ou com um cabo único ligado à ficha de ACC que pode levar também a informação de ALC (verifique as especificações, de 0 a -4V)

O circuito que aqui partilho permite substituir o relé por semi-conductores evitando o ruído audível de comutação do relé, que poderá incomodar sobre tudo quando estamos em CW.

Utilizo aqui a ficha ACC, descrita no capítulo 12-1, por ter incluída a alimentação de 13,8V a 1A para o circuito. Este circuito consome poucos miliamperes e a carga do relé do Amplificador Linear depende da alimentação do próprio amplificador, já que o PTT é feito à massa (negativo) através do MOSFET IRF830.

O divisor de tensão com as resistências 3,3k e 1k permite manter uma tensão de threshold de cerca de 4V na gate do IRF830, indicada pelo fabricante.

Quando o sinal de entrada em SEND vai a zero, o Led acende e o IRF830 leva a sinal de PTT ao nível de ground.

Se quiser simular o esquema pode descarregar o iCircuit e testar este projecto.

As melhores modificações para o IC-7300

O radio-amadorismo é uma actividade de experimentação, com tantas disciplinas que é difícil alguém as dominar todas. Com esta intenção experimentalista, proponho estas modificações e fica à consideração de cada um fazê-las ou não, dependendo dos seus conhecimentos e destreza, pois estamos a lidar com circuitos SMD e, material para o fazer…

Sugiro no entanto que não o façam com o equipamento no período de garantia!

1. Protecção contra sobretensão

O IC-7300 carece de uma protecção contra sobre-tensão como o seu irmão IC-9700 no circuito de alimentação do rádio, depois do fusível de 5A, na placa do andar de potência final. O IC-9700, se observarem no esquema tem um diodo de protecção imediatamente a seguir ao fusível.

Esta protecção é feita com um díodo zener unidireccional TVS (supressão de tensão transiente), por exemplo o 5KP15A-DIO de 15V com potência instantânea que chega aos 5kW e 400A a 10/1000us com um duty cycle de 0,01%

A modificação é simples e o diodo axial pode ser montado sobre os componentes já existentes…

Se a tensão de alimentação ultrapassar os 15V o fusível de 5A abre e terá de ser substituído. Mas, protegeu o rádio!

2. Redução de ruído dos relés do tuner interno e ventoínha de TX


O IC-7300 para quem gosta de silêncio é um pouco ruídoso. O ruído vem sobre tudo dos relés quando se liga o tuner no processo de sintonia da antena e da ventoínha de arrefecimento quando em transmissão.

Relés
No caso dos relés são 2 aqueles que mais ligam e desligam durante a sintonia e é com estes que nos devemos preocupar.
Uma ideia, que não é minha, é envolver com massa adesiva patafix da UHU ambos os relés, por cima e a toda a volta moldando a massa à volta do relé.

Esta melhoria foi sugerida pelo colega Steve Ellington N4LQ, reduz o ruído em cerca de 10dB e o resultado pode ser visto aqui,


Ventoinha
A ventoinha pode ser substituída por uma com as mesmas dimensões mas mais silenciosa. Deve ter sensivelmente a mesma rotação, fluxo e pressão de ar.
Há quem sugira o modelo Noctua NF8-A PWM.
Apesar de se conseguir reduzir o ruído com técnicas na construção das pás, o método mais usual é reduzir a rotação e fluxo de ar…

Informações bem documentadas no blog do colega SP3RNZ

Mas a escolha é muita pois estas ventoinhas são utilizadas nos mais diversos computadores pessoais e aplicações de eletrónica.

3. Extensão do ajuste do tuner para SWR até 1:6 de estacionárias

Quem já teve uma antena multi-banda que tem ligeiramente mais de 3 de SWR (onda-estacionária) em alguma das bandas e não conseguiu ajustar o rádio?
Esta situação é comum em antenas de banda larga, multi-banda, end-fed's, e fios longos com baluns de 9:1…
A opção pode ser utilizar um tuner externo ou fazer esta pequena modificação.

A Icom limitou o ajuste a 3 de estacionárias para evitar possíveis alta tensões no circuito do tuner que podem danificar componentes como consensadores e relés durante o processo de ajuste, por isso não vamos abusar destes limites!

A técnica é sempre iniciar o ajuste do tuner com menos de 50W e só depois, aplicar toda a potência.
Não esquecer que o IC-7300 tem um modo de emergência, com potência limitada a 50W, e que pode lidar com situações de onda-estacionária de 1:10.

A modificação que proponho, e está mais do que descrita noutros posts sobre o tema, é subir o limite a uma relação de 1:6 (impedância da antena entre 8 e 300Ω), isto é, o seu rádio consegue agora ajustar até 6 de onda estacionária. Com 6 de estacionárias a eficiência da antena é apenas metade! Mais do que 6, mude de antena!

Para o conseguir, solde uma resistência de 100kΩ em paralelo com a R1507 de 180kΩ.
Atenção que esta é uma zona de componentes SMD. Assegure-se que tem ferro de soldar de ponta fina e destreza para o fazer!

No meu caso, o resultado foi este.

4. Melhoria da potência de saída em SSB

Em comparação com outros equipamentos a Icom tem um ALC com resposta muito agressiva, onde um pico de voz limita a potencia de saída e só recupera depois de 2 a 3 segundos.
A Icom defende-se dizendo que assim se consegue melhor fidelidade de voz, evitando possíveis distorções… daí este ser um tema muito controverso e haver quem defenda esta modificação e outros que não a aconselham.

Esta modificação leva a um maior stress do andar final, já que incrementa a potência em cerca de 30% a 40%, ou seja mais 2.4dB o que nem chega a ser meio ponto de sinal na recepção de quem nos escuta!

Outros referem que se consegue o mesmo resultado ligando o compressor entre 3 e 5.

Seja como for, eu quis experimentar e o resultado foi o esperado. Picos de 40W passaram para 70W. A potência máxima subiu ligeiramente para 110W e não notei qualquer distorção da modelação…

Esta modificação é simples e basta soldar um pequeno condensador de 2µF a 4,7µF. Eu utilizei um de 3,3µF conforme as instruções de PC5E.

Fica ao vosso critério… boas experiências e muito cuidado para não danificar este excelente rádio!

Os créditos deste artigo não são meus, mas sim dos autores aqui descritos.

Outros links de interesse:
https://www.ab4oj.com/icom/ic7300/7300notes.pdf
https://www.mancuso.net.au/ic_7300.html
https://www.pc5e.nl/downloads/ic7300/Mods/IC-7300-Antenna-tuner-wider-range-modification-by-SP9SOY.pdf
https://klop.solutions/alc-and-the-ic-7300-about-talk-power-and-modifications/
https://www.ad5gg.com/2017/11/01/ic-7300-average-ssb-power-modification/
http://thestingyham.blogspot.com/2018/01/does-your-icom-7300-suffer-from-low.html

Como atribuir nomes a placas de som em linux (parte 2)

No post anterior tratámos da atribuição de nomes a devices série ttyUSB para identificar a ligação a rádios ou portas série.
Neste post vamos atribuir nomes a devices de audio, muito útil quando queremos configurar devices de som e nos aparecem listas de 30 e mais periféricos de som a configurar no software, por exemplo, para modos digitais como JS8Call, FT8, SSTV, ou direwolf em AX.25 e tudo nos parece uma confusão…

Confusão maior porque de cada vez que reiniciamos o computador ou o raspberry pi estes devices de som arrancam por ordem aleatória!

O método descrito tem uma condição - os devices de som USB têm de estar ligados sempre na mesma porta USB, seja directamente ou através de um HUB USB, isto se utilizarmos devices com o mesmo idVendor, idProduct e número de série.

Pode parecer estranho o porquê deste artigo! Mas neste projecto eu tenho a saída de audio do raspberry para os auscultadores, a saída do monitor, os 2 rádios Icom, um FT-817, e 5 placas de som alsa para AX.25 através do modem por software direwolf ligadas cada uma a seu rádio! De cada vez que reinicio o raspberry é uma trapalhada acertar todos os devices pela ordem com que foram configurados inicialmente! Já faz sentido?

Em linux existem diferentes camadas para a utilização de som: alsa e pulse audio. Há software que utiliza alsa outros que utilizam pulse audio…
Este é um artigo prático, consulte as referências bibliográfica para compreender a teoria por detrás dos devices de som em linux.

Atribuir nomes aos devices Alsa e Pulse Audio

Aqui o objectivo é, conhecer a identificação de cada um dos devices de som dos nossos Icom ou outro equipamento, adicioná-los ao ficheiro anterior /etc/udev/rules.d/99-hamlib.rules com um nome ou symlink que o designará mais facilmente…

Ligue à vez, a ficha USB do IC-7300, siga o procedimento abaixo descrito, desligue esta ficha e ligue agora a USB do IC-9700…

Para saber o id do device de som abra uma janela terminal e escreva,

ou, sem querer causar mais ruído, pode também conhecer o id de cada periférico fazendo, "udevadm monitor --subsystem=sound", desligando e voltando a ligar cada uma das fichas USB…

Bom, o primeiro comando devolverá uma série de linhas, das quais apenas nos interessa identificar algo semelhante a,

(para o IC-7300)
name: <alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.analog-stereo>
sysfs.path = "/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.3/1-1.2.3.4/1-1.2.3.4:1.0/sound/card2"

(para o IC-9700)
name: <alsa_input.usb-Burr-Brown_from_TI_USB_Audio_CODEC-00.analog-stereo.2>
sysfs.path = "/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.2/1-1.2.2.4/1-1.2.2.4:1.0/sound/card3"

Agora, no output gerado para o IC-7300, pegamos apenas na expressão,
"/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.3/1-1.2.3.4/1-1.2.3.4:1.0/sound/card"

e construímos o código a escrever no ficheiro 99-hamlib.rules
Note que, este é o resultado do meu exemplo… deverá substituir esta expressão de acordo com o resultado que obteve! Estes valores identificam a porta USB a que o device se encontra ligado e o próprio device.

Na janela terminal escreva como sudo ou root,

e, a seguir às regras da primeira parte do artigo, relativas aos devices ttyUSB adapte e copie o seguinte código,

# ALSA devices
# IC-7300 Sound Card
SUBSYSTEM!="sound", GOTO="ic7300_alsa_naming_end"
ACTION!="add", GOTO="ic7300_alsa_naming_end"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.3/1-1.2.3.4/1-1.2.3.4:1.0/sound/card?", ATTR{id}="IC-7300"
LABEL="ic7300_alsa_naming_end"

# IC-9700 Sound Card
SUBSYSTEM!="sound", GOTO="ic9700_alsa_naming_end"
ACTION!="add", GOTO="ic9700_alsa_naming_end"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.2/1-1.2.2.4/1-1.2.2.4:1.0/sound/card?", ATTR{id}="IC-9700"
LABEL="ic9700_alsa_naming_end"

# PulseAudio devices
# IC-7300  pulseaudio device
SUBSYSTEM!="sound", GOTO="ic7300_pa_naming_end"
ACTION!="change", GOTO="ic7300_pa_naming_end"
KERNEL!="card*", GOTO="ic7300_pa_naming_end"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.3/1-1.2.3.4/1-1.2.3.4:1.0/sound/card?", ENV{SOUND_DESCRIPTION}="IC-7300"
LABEL="ic7300_pa_naming_end"

# IC-9700 pulseaudio device
SUBSYSTEM!="sound", GOTO="ic9700_pa_naming_end"
ACTION!="change", GOTO="ic9700_pa_naming_end"
KERNEL!="card*", GOTO="ic9700_pa_naming_end"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.2/1-1.2.2.4/1-1.2.2.4:1.0/sound/card?", ENV{SOUND_DESCRIPTION}="IC-9700"
LABEL="ic9700_pa_naming_end"

Não se esqueça de ligar as fichas dos rádios sempre nos mesmos portos de ligação USB! Caso contrário este procedimento não servirá para nada!

Placas de som Alsa ligadas ao direwolf

Se for também o seu caso, proceda como anteriormente descrito, e ao meu ficheiro 99-hamlib.rules acrescentei ainda,

# CM108 ALSA devices for direwolf
# DEVPATH can be obtained by looking at `udevadm monitor --subsystem=sound` while pluging in the sound card.
# Do one card at a time, the "?" char on card should stay as it matches any card number that may pop on that USB port.
SUBSYSTEM!="sound", GOTO="alsa_naming_end"
ACTION!="add", GOTO="alsa_naming_end"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.1/1-1.2.4.1:1.0/sound/card?", ATTR{id}="UHFpacket"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.2/1-1.2.4.2:1.0/sound/card?", ATTR{id}="VHFpacket"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.0/sound/card?", ATTR{id}="VHFpacketSat"
DEVPATH=="/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.2/1-1.2.1/1-1.2.1.1/1-1.2.1.1:1.0/sound/card?", ATTR{id}="HFpacket"
LABEL="alsa_naming_end"

Desligue e volte a ligar estas placas de som e escreva no terminal, substituindo nomes ou wildcards... exemplo,

Artigo relacionado - Solução de problemas com a placa de som CM108

Outros comando utilizados para melhor compreender este projecto

Continua...

Referências:
https://x8x.net/2019/04/04/icom-ic-9700-and-ic-7300-coexisting-in-linux/
https://gist.github.com/Aishou/f39c2f970c6db20e1845925c5cc0890e
https://www.florian-wolters.de/posts/static-sound-device-names-ic9700-ic7300/
https://blog.habets.se/2021/12/Linux-Sound-devices-are-a-mess.html

Como atribuir nomes a devices e a placas de som em linux

Em linux, ou no projecto descrito nestes posts, quando tentamos ligar 2 ou mais rádios deixamos de saber que periféricos foram atribuidos a cada ligação USB, porta ou placa de som, seja para fazer modos digitais JS8Call, FT8, SSTV, AX.25 ou para controlar remotamente os rádios…

Qual a solução?

Para as portas série é relativemente fácil.
Quando listamos as portas ttyUSB* aparecem-me 3. Uma relativa ao IC-7300 e 2 do IC-9700.

crw-rw----+ 1 pi-star dialout 188, 0 Mar 9 18:01 /dev/ttyUSB0
crw-rw----+ 1 pi-star dialout 188, 1 Mar 9 17:39 /dev/ttyUSB1
crw-rw----+ 1 pi-star dialout 188, 2 Mar 9 17:39 /dev/ttyUSB2

Mas não sabemos a que rádio foi atribuído o ttyUSB0, ou o 1 ou o 2!
Para resolver este problema vamos dar nomes a cada ttyUSB, para que cada rádio seja reconhecido pelo sistema, independentemente da ordem de ligação dos rádios ao computador, ou raspberry pi…

Atribuir nomes a devices

1. Listamos os devices USB para conhecer as variáveis idVendor e idProduct.
Escreva na janela terminal,

Bus 001 Device 010: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]
Bus 001 Device 025: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]
Bus 001 Device 024: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]

Entre outros dispositivos identifique algo idêntico a,
Bus 001 Device 076: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP2102/CP2109 UART Bridge Controller [CP210x family]

Percebemos que para qualquer um dos rádios o idVendor="10c4" e o idProduct="ea60".

2. Agora pretende-se conhecer o serial number de cada rádio.
Numa janela terminal como sudo ou root escreva,

iSerial 3 IC-7300 06002344
iSerial 3 IC-9700 13005928 B
iSerial 3 IC-9700 13005928 A

Conhecendo estes valores, criamos uma regra para lhe atribuir um nome, ou melhor um symlink.

Crie então um ficheiro, escrevendo na janela terminal com sudo ou root e substitua os valores que obteve pelos que aqui mostro,

# IC-7300
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ATTRS{serial}=="IC-7300 06002344", SYMLINK+="ic7300"
# IC-9700
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ATTRS{serial}=="IC-9700 13005928 A", SYMLINK+="ic9700a"
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ATTRS{serial}=="IC-9700 13005928 B", SYMLINK+="ic9700b"

…e agora, se a aplicação o permitir podemos definir nas suas configurações, no separador de ligação aos rádios, por ic7300 ou ic9700a ou b em vez de ttyUSB...

Desligue e volte a ligar os cabos USB aos rádios e escreva no terminal,

e obtém agora os nomes dos rádios e os devices ttyUSB correspondentes,

lrwxrwxrwx 1 root root 7 Mar  9 17:35 /dev/ic7300 -> ttyUSB0
lrwxrwxrwx 1 root root 7 Mar  9 19:07 /dev/ic9700a -> ttyUSB1
lrwxrwxrwx 1 root root 7 Mar  9 19:07 /dev/ic9700b -> ttyUSB2

Continua...

Sincronizar 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