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 subidas de tensã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 ligar o microfone M-100 da Yaesu a rádios ICOM

De que interessa ter um bom rádio se não conseguirmos transmitir a nossa voz com a mesma qualidade, como se estivéssemos a ter uma conversa numa roda de amigos?

Apesar das minhas experiências com outros microfones, de desenhar esquemas com o mesmo conceito que o M-100, com um microfone de condensador e outro dinâmico, nenhum chegava ao volume, tonalidades e à excelente performance do microfone de mão HM-219 que equipam os rádios IC-7300 e IC-9700!

Como gostava de equipar o shack com um microfone de pé, mais cómodo para QSO's e DX, o investimento teria de ser outro e acabei por adquirir o M-100 da Yaesu… para mim, o microfone mais bonito, todo metálico e com excelentes características de voz e de estética, que fica bem em qualquer bancada ao lado destes dois rádios Icom!
Que me perdoem os que gostam mais do SM-30 e SM-50, mas esteticamente nada tem haver com o M-100... bom, este artigo não é para eles 😉

No entanto, enquanto que para o microfone HM-219 trabalho com o ganho de micro em qualquer dos rádios a cerca de 40%, com este para obter o mesmo volume preciso de subir o ganho a 100%. Mas é para isso que o ajuste de ganho lá está, nos rádios!…

Outra questão, foi a necessidade de alterar o cabo de ligação entre os rádios Icom e o microfone M-100.

Este post serve dois propósitos, tecer algumas considerações sobre a minha experiência com o microfone M-100, por comparação com o excelente HM-219 de mão, dificilmente substituível, e deixar-vos as alterações a fazer na ficha de microfone fêmea de 8 pinos.

O microfone M-100 vem com uma cabo para equipamentos Yaesu, onde nas extremidades tem uma ficha RJ-45 e na outra uma fêmea de 8 pinos. Mas, o pinout nesta ficha é diferente para os rádios Icom e é preciso trocar a ligação dos fios, assim como os rádios Icom disponibilizam 8V com cerca de 50mA (medidos, apesar de no manual referirem 10mA máximo) e o microfone M-100 é alimentado a 5V e 35mA de corrente típica, segundo as suas especificações.

Esquema de ligações

Temos de inserir no circuito um regulador de tensão 78L05 que transforme os 8V do rádio Icom para os 5V do microfone M-100. Coloquei-o dentro da própria ficha de 8 pinos...

O pinout das fichas é o seguinte,

Mic M-100 da Yaesurádio Icom

Pinout e cores na ficha original de 8 pinos do M-100 da Yaesu

1 - NC cor cinzenta;
2 - +5V cor branca;
3 - NC cor verde;
4 - NC cor azul;
5 - GND cor castanha;
6 - PTT cor amarela;
7 - Microphone ground (MIC GND) cor preta;
8 - Microphone cor vermelha.

Alterações na ficha de 8 pinos para rádios Icom

Muita atenção agora à ligação dos fios dentro da ficha de 8 pinos que liga ao Icom.
As cores dizem respeito aos fios do cabo original do Yaesu M-100.

Pino (na ficha de 8 pinos)
1 - fio do Microfone de cor vermelha;
2 - 8V, liga ao pino 3 do 78L05. O fio branco liga ao pino 1, saída de 5V do 78L05, e o 2 do 78L05 liga ao GND do pino 6 da ficha de 8 pinos;
5 - fio de PTT cor amarela;
6 - GND de cor castanha;
7 - GND (microfone) de cor preta.

Isole os restantes fios dentro da ficha, com fita isoladora ou manga termoretractil.

Protecção do Yaesu FT-817 contra sobre tensões

O FT-817 tem no circuito de alimentação um díodo em série que o protege de inversões de polaridade, mas não contra sobre-tensões.

À semelhança de outros equipamentos de rádio, que falarei em posts a seguir, são usados díodos TVS muito semelhantes a díodos zener, com tensões de disrupção inferiores a 16V.

Depois de algum estudo sobre esta matéria, escolhi o díodo 5KP15A, com uma dissipação de potência de pico de 5kW isto é, cerca de 400A a 15V.

O díodo oferece ainda a vantagem de proteger o rádio contra inversão de polaridade.

Não esquecer em qualquer dos casos de utilizar um fusível na linha de alimentação!

Montei este díodo em paralelo e sobre a ficha de alimentação no painel de trás e ficou assim…

Referências:
https://www.tme.eu/Document/b0b8a7828c27d2573ec8fa50f5c0ad4f/5KP-ser.pdf

VOX com Timeout-Timer

Novo desafio - conseguir aproveitar um rádio antigo para comunicações digitais e que não dispõe de Rig Control para PTT, no meu caso o ASTRO B da Cubic Communications…

O som vem de uma placa USB com o IC CM108, simulado pelo gerador de 1KHz e o botão de pressão que estão ali apenas para testar o projecto.

Desenhei o circuito com ajuda da APP iCircuit para Mac OS X e depois montei tudo numa breadboard e funcionou conforme o esperado.

O circuito é composto por um OP-AMP pré-amplificador onde depois o sinal é retificado para fazer o sistema VOX. Em seguida o sinal é invertido e controlado por um temporizador com o 555 que desliga a PTT caso o sinal seja contínuo e por mais de cerca de 3 minutos.

O segundo OP-AMP serve de buffer pois a ligação "Radio Mic" vai ao microfone evitando assim accionar o sistema VOX.

Incluí alguns potenciómetros para controlar os níveis e penso agora utilizar este rádio para comunicações digitais em HF - packet, Ardop e VARA, com apenas um raspberry pi e uma placa de som!

Download do projecto para o iCircuit.

Referências:
https://eindhoven.space/radio-experiments/packet-radio/vara-ardop/raspberry-pi4-trifecta-tnc-bank-image-companion-documentation/

Microfone de construção caseira

Há muito que procurava o santo graal dos microfones!
Pesquisei esquemas dos melhores microfones no mercado para equipamentos de radio amador e, entre modelos da Icom e da Yaesu, cheguei às seguintes conclusões,

a) é importante dar um pouco de ênfase aos graves e agudos, para compensar a nossa perda de audição nas frequências mais baixas e nas frequências mais altas do espectro de som. Na verdade certos ditongos para serem bem compreendidos e se distiguirem em palavras semelhantes necessitamos dos tons altos e, os baixos dão uma presença e tonalidade de voz de broadcasting…
Preciso de adicionar um filtro que acentue estas frequências!

b) Pastilhas dinâmicas ou de condensador?
Há microfones que utilizam pastilhas de condensador! Mais baratos e com uma resposta de frequência muito boa. Mas, verifiquei que os mais caros utilizam microfones dinâmicos!
As minhas pesquisas levaram-me a conhecer 2 modelos de sonho para qualquer rádio amador: os M-1 e M-100 da Yaesu!
Estes microfones incluem não uma, mas duas pastilhas de micro de cada um destes modelos, que podem ser ligados ou desligados individualmente ou em simultâneo!
O efeito é simplesmente surpreendente!
Incluí ambos os tipos de microfone neste meu circuito.

O esquema é simples, um pré-amplificador seguido de um buffer tradicional, onde antecede um pequeno filtro que encontrei no microfone da Icom HM-219 que equipam os rádios IC-7300 e IC-9700, amplamente elogiados pelo seu audio…

Este circuito é apenas uma experiência e pode ser melhorado. Repare-se na mistura dos microfones e apesar do efeito ser bem conseguido deveria ter uma etapa pré-amplificadora independente para cada microfone, depois o filtro seguido do buffer.
Mas deixo esta experiência para ser concluída por vós!

Como identificar a sua RTL-SDR 2832U

RTL-SDR 2832U back

Este post resolve o problema de identificação quando temos diversas pen USB RTL-SDR 2832U e as precisamos de chamar pelos programas às quais se encontram ligadas para os diversos serviços e antenas, já que de fábrica vêm todas com o serial number 00000001 (8 digitos).

Saiba que, é possível re-escrever a memória da eeprom da RTL-SDR e atribuir-lhe um número de série à nossa escolha.

Assim é fácil identificar cada uma das suas RTL-SDR 2832U e ter várias instâncias do Gqrx, ou de Web-SDR, ou ainda como eu para receber telemetria de balões e satélites.

Ler o número de série

Para ler as diversas pen RTL-SDR abra uma janela terminal e escreva,

0x0bda é o código do vendedor e 0x2838 o código do produto. E o sistema devolve-lhe,

Bus 001 Device 009: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 007: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T

…e, se quiser saber em detalhe faça,

indicando -d vendor:[product] e -v para detalhes,

Mas, se instalou as livrarias necessárias pode utilizar o comando "rtl_eeprom" para ler e escrever em cada uma das suas RTL-SDR 2832U.

Experimente,

Found 2 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001
1: Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
[R82XX] PLL not locked!
Sampling at 2048000 S/s.
No E4000 tuner found, aborting.

Nota o sistema identificou 2 pen USB mas aborta na leitura do device 0...
Agora, identifique qual o device que pretende obter informações,

Found 2 device(s):
0: Generic RTL2832U OEM
1: Generic RTL2832U OEM

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner

Current configuration:

Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no

Idem para o device 1…

Gravar o número de série

Para mudar o número de série da segunda RTL-SDR #1 escreva,

Found 2 device(s):
0: Generic RTL2832U OEM
1: Generic RTL2832U OEM

Using device 1: Generic RTL2832U OEM
Found Rafael Micro R820T tuner

Current configuration:

Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000001
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no

New configuration:

Vendor ID: 0x0bda
Product ID: 0x2838
Manufacturer: Realtek
Product: RTL2838UHIDIR
Serial number: 00000002
Serial number enabled: yes
IR endpoint enabled: yes
Remote wakeup enabled: no

Write new configuration to device [y/n]? y

Configuration successfully written.
Please replug the device for changes to take effect.

Retire a pen USB e volte a liga-la! Repito as instruções do programa pois a mim passou-me despercebido!
Dicas de CT1EDG...

Como atribuir nomes a devices HidRaw (parte 3)

Este artigo conclui o tema sobre a atribuição de nomes a devices, referidos na parte 1 e parte 2, quando os fabricantes não atribuiem um número de série e 2 ou mais dispositivos parecem-nos iguais e impossíveis de identificar…
Os dispositivos HidRaw permitem aceder a interfaces USB e bluetooth sem alteração de dados ou protocolo. Significa em inglês original - Raw Access to USB and Bluetooth Human Interface Devices.

Por vezes os nossos projectos necessitam de chamar estes devices para comunicarem… dou como exemplo a utilização do controlo de PTT pelas placas de som CM108 e CM119, descrito no artigo packet/APRS iGate, BBS, node e DX cluster com Raspberry Pi (parte 2), onde o direwolf usa o pino 13 do GPIO para pôr o rádio em transmissão, através do comando "PTT CM108 3 /dev/hidraw3".

Como consegue imaginar, ao reiniciar o sistema operativo, estes devices mudam a ordem à medida que o kernel as lê e lhes atribui um número… este é o problema que aqui resolvo, a atribuição de um nome ou symlink a um device hidraw para que, independentemente da ordem atribuída pelo kernel, saibamos sempre como comunicar com ele!
Note, este procedimento só é válido (à semelhança dos procedimentos descritos nos artigos anteriores) se e só se o nosso device USB se encontrar sempre ligado à mesma porta USB, seja directamente à board ou através de um HUB USB!

Identificar o device

Antes de ligar o seu dispositivo USB, execute o comando,

e obtém, por exemplo

crw------- 1 root root 243, 3 Mar 14 22:44 /dev/hidraw0
crw------- 1 root root 243, 4 Mar 15 09:25 /dev/hidraw1
crw-rw---- 1 root audio 243, 5 Mar 14 22:44 /dev/hidraw2

Agora ligue o seu dispositivo e execute o comando novamente… apareceu um novo device. Este é o nosso device, aquele que vamos configurar,

crw------- 1 root root 243, 3 Mar 14 22:44 /dev/hidraw0
crw------- 1 root root 243, 4 Mar 15 09:25 /dev/hidraw1
crw-rw---- 1 root audio 243, 5 Mar 14 22:44 /dev/hidraw2
crw-rw---- 1 root audio 243, 5 Mar 14 22:44 /dev/hidraw3

Agora que sabemos que ao nosso device lhe foi atribuido o número 3, como /dev/hidraw3, fazemos

de modo a obtermos toda a informação deste device,

De onde retiramos algumas das variáveis que nos permitem agora identificar o nosso dispositivo, uma vez mais, sempre que este se encontre ligado à mesma porta USB.

Criar o nome ou symlink

Escrevemos ACTION=="add", pois só queremos adicionar este dispositivo quando ele é ligado.
Apenas queremos identificar dispositivos hidraw, então escrevemos SUBSYSTEM=="hidraw", ver linha 9.
Se tiver vários dispositivos iguais repare na linha 32 que identifica pelo kernel a porta USB a que este dispositivo está ligado como, KERNELS=="1-1.2.1.1"
Comum aos nossos vários dispositivos, se existirem 2 ou mais, é o id do fabricante e o id do producto, respectivamente verificados nas linhas 38, ATTRS{idVendor}=="0d8c" e 57, ATTRS{idProduct}=="0012"
Agora é só atribuir-lhe um nome alternativo, com a instrução SYMLINK+="", que no meu caso se trata de uma placa de som CM108 que pretendo, como disse, controlar o PTT através do GPIO…

Construímos a linha a colocar no nosso ficheiro udev rules descrito nos artigos anteriores em /etc/udev/rules.d/99-hamlib.rules, na continuação das instruções que já escrevi…

Na janela terminal escreva, como sudo ou root,

Avance até à última linha, substitua as variáveis ao seu dispositivo e escreva, neste meu exemplo, e para cada uma das suas placas de som onde pretende controlar o PTT,

ACTION=="add", SUBSYSTEM=="hidraw", KERNELS=="1-1.2.1.1", ATTRS{idVendor}=="0d8c", ATTRS{idProduct}=="0012", SYMLINK+="hidHFpacket"

Cada vez que escreve no ficheiro rules aplique as configurações, com sudo ou root, o comando,

Agora, no direwolf o comando passará a ser,

PTT CM108 3 /dev/hidHFpacket

O nosso dispositivo é agora reconhecido pelo nome "hidHFpacket". Verifique, escrevendo no terminal,

crw------- 1 root root 243, 3 Mar 14 22:44 /dev/hidraw0
crw------- 1 root root 243, 4 Mar 15 09:25 /dev/hidraw1
crw-rw---- 1 root audio 243, 5 Mar 14 22:44 /dev/hidraw2
crw-rw---- 1 root audio 243, 5 Mar 14 22:44 /dev/hidraw3
lrwxrwxrwx 1 root root       7 Mar 14 22:44 /dev/hidHFpacket -> hidraw3

Quer ver agora todos os symlinks criados nestes artigos? Substitua as palavras de acordo com o nome que atribuiu e escreva,

Referências:
https://docs.kernel.org/hid/hidraw.html
https://github.com/nasa/IDF/wiki/Differentiating-Identical-Devices
http://reactivated.net/writing_udev_rules.html
https://github.com/nasa/IDF/wiki/Device-Permissions

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