04/12/2022

CP2130 Commander, versão 4.0

Já está disponível a versão 4.0 do CP2130 Commander. Esta nova versão introduz mais recursos e uma filosofia de funcionamento diferente das versões anteriores. Nomeadamente, é agora possível copiar para a área de transferência os bytes recebidos, ou então copiar os bytes a enviar de e para a mesma. Para além disso, o número de bytes transferidos é mostrado após transferências bem sucedidas. Certas caixas de diálogo deixaram de ser modais, por serem meramente informativas.

A versão 4.0 do CP2130 Commander em execução no Kubuntu 22.04 LTS.

A aplicação está disponível em diversos formatos, por via dos links abaixo. Embora seja possível compilar e instalar a aplicação através dos scripts incluídos no pacote que contem o código-fonte, sugiro que utilize o pacote Debian para fazer a instalação. A AppImage serve como alternativa, caso queira executar a aplicação sem a instalar primeiro. Porém, note que este último meio implica a criação de regras "udev" para acesso aos dispositivos.

Links importantes:
CP2130 Commander (4.0): Código-fontePacote DebianAppImage

26/11/2022

Novo canal no Rumble

Desde 8 de Outubro que o blogue assinala a sua presença no Rumble, uma plataforma alternativa ao YouTube. O novo canal está disponível em https://rumble.com/c/bloguetronica.

09/10/2022

Versão 3.1 do CP2130 Commander

Hoje disponibilizo a versão 3.1 do CP2130 Commander. Esta versão da aplicação apresenta algumas correcções comparativamente à versão anterior. Nomeadamente, as transferências SPI apresentam-se mais estáveis no geral. Porém, apesar da implementação de diversas medidas para mitigar a ocorrência de condições de corrida no CP2130, esse problema ainda persiste. Trata-se de um problema intrínseco ao próprio CP2130, impossível de suprimir.

A nova versão do CP2130 Commander pode ser descarregada através dos links no fundo. Como de costume, forneço o código-fonte, o pacote Debian e a AppImage. A instalação deve ser feita através do pacote Debian, embora também seja possível fazer a mesma compilando o código-fonte por via dos scripts incluídos no respectivo pacote. Caso não deseja instalar, poderá simplesmente executar a AppImage. Porém, esta última alternativa pressupõe a criação de regras "udev" para aceder aos dispositivos.

Links importantes:
CP2130 Commander (3.1): Código-fontePacote DebianAppImage

27/08/2022

CP2130 Commander, versão 3.0

Está disponível a versão 3.0 do CP2130 Commander, a qual introduz numerosas funcionalidades e corrige algumas lacunas que ainda estavam presentes na versão anterior. Das funcionalidades introduzidas, destaca-se a capacidade de ver e manipular o valor do divisor de relógio e do contador de eventos, quando a configuração do dispositivo o permite. Não menos importante, o utilizador pode ler e escrever até 256 KiB em cada transferência. No caso de uma transferência SPI mais demorada, aparece uma caixa de diálogo que mostra o progresso da operação e que permite ao utilizador abortar a mesma se necessário. Quanto aos erros corrigidos, a nova versão já mostra correctamente a informação do dispositivo, assim como as latências SPI para cada canal.

A versão 3.0 do CP2130 Commander a correr debaixo do Kubuntu 22.04 LTS.

Uma operação de escrita a decorrer. Em primeiro plano, é visível a caixa de diálogo que mostra o progresso da operação.

Contudo, tenho de deixar claro que esta nova versão exacerba algumas fragilidades do CP2130. As transferências SPI muito longas facilitam o despoletar de uma condição de corrida, o que resulta numa falha e torna o interface indisponível para novas transferências. Esse problema é conhecido, e actualmente estou a estudar maneiras de mitigar o mesmo. É possível que saia uma nova versão do CP2130 Commander nos próximos tempos.

Assim sendo, a versão 3.0 da aplicação pode ser transferida através dos links no fundo. O primeiro link aponta para o pacote contendo o código-fonte e os scripts de instalação. Embora seja possível instalar a aplicação por essa via, recomendo para tal o pacote Debian, incluso no pacote que está disponível através do segundo link. Como sempre, está disponível uma AppImage, que pode ser útil caso prefira executar a aplicação sem a instalar primeiro. Porém, a utilização da AppImage requer a criação das regras "udev" de acesso aos dispositivos.

Links importantes:
CP2130 Commander (3.0): Código-fontePacote DebianAppImage

15/08/2022

Versão 1.4 do CP2130 Configurator

Deixo hoje disponível a versão 1.4 do CP2130 Configurator. Comparativamente à versão anterior, esta nova versão introduz algumas pequenas correcções e melhorias que facilitam o uso da aplicação. A título de exemplo, a navegação com o Tab é feita agora na ordem correcta. O código-fonte também foi optimizado, embora isso não se reflicta no desempenho da aplicação.

Posto isto, a nova versão da aplicação pode ser descarregada através dos links abaixo. Como anteriormente, foi disponibilizado um pacote contendo o código-fonte e os scripts de instalação. Embora seja possível instalar a aplicação por este método, deverá utilizar o pacote Debian para tal. Também existe uma AppImage caso prefira correr a aplicação sem a instalar primeiro. Porém, a utilização da AppImage requer a criação de regras "udev" para acesso aos dispositivos.

Links importantes:
CP2130 Configurator (1.4): Código-fontePacote DebianAppImage

30/06/2022

Versão 2.1 do CP2130 Commander

Hoje disponibilizo a versão 2.1 do CP2130 Commander. Esta aplicação foi inicialmente apresentada no post de 28 de Março. Entretanto, já foram lançadas oficiosamente mais duas iterações: as versões 1.1 e 2.0. Porém, optei por não anunciar as mesmas no blogue, por ter sido introduzido um erro na versão 1.1, o qual passou despercebido na versão 2.0. Este erro afectava as operações de transferência SPI de escrita com leitura em simultâneo. O problema foi corrigido com o lançamento desta nova versão.

Para além da correcção acima mencionada, a versão 2.1 permite alterar os estados dos pinos de chip select do CP2130. Esses pinos aparecem marcados a vermelho, como se pode ver na imagem. A nova versão também possibilita transferências de até 4096 bytes em cada sentido, uma melhoria relativamente às versões 1.0 e 1.1, que só permitia transferir 1024 bytes na mesma métrica. Para além disso, as cadeias de caracteres que representam os dados em hexadecimal são agora apresentadas com os bytes discriminados, para uma leitura mais fácil. Convém salientar que todas estas melhorias já haviam sido implementadas na versão 2.0.

A versão 2.1 do CP2130 Commander a correr debaixo do Kubuntu 22.04 LTS.

A aplicação está disponível através dos links abaixo. Como é habitual, foi disponibilizado um pacote contendo o código-fonte e os scripts de instalação. Embora seja possível instalar a aplicação por esta via, recomendo que utilize o pacote Debian para esse fim. Por último, também está disponível uma AppImage caso prefira correr a aplicação sem a instalar primeiro. Contudo é importante frisar que, caso opte por utilizar a AppImage, deverá criar regras “udev” de modo a que possa aceder a qualquer dispositivo da Silicon Labs.

Links importantes:
CP2130 Commander (2.1): Código-fontePacote DebianAppImage

25/06/2022

Último software para o interruptor de teste ITUSB2

Disponibilizo aqui o último software para o interruptor de teste ITUSB2. Tal como acontece com o ITUSB1, este dispositivo vai deixar de ter suporte. Convém salientar que o ITUSB2 também emprega o CP2130 da Silicon Labs, um integrado que passou recentemente à obsolescência. Assim sendo, deixo disponível a versão 2.2 dos comandos de controlo, assim como a versão 1.4 da aplicação gráfica.

Detalhando acerca das modificações feitas, o código-fonte dos comandos de controlo foi convertido para C++ na versão 2.0, e posteriormente adaptado na versão 2.1 para gerar um pacote Debian. Também foi adicionado um novo comando na versão 2.0, o itusb2-info, cujo propósito é mostrar informações acerca de um dado dispositivo. A aplicação gráfica também foi alvo de melhorias assinaláveis, não só no que concerne ao código-fonte como também relativamente à navegação na aplicação. Foi ainda corrigido um problema com o script de instalação que impedia a compilação e instalação em distribuições baseadas no Ubuntu a partir da versão 21.04.

Aplicação gráfica, e evidência de alguns comandos executados anteriormente no terminal em segundo plano.

O software em epígrafe pode ser transferido através dos links abaixo. Encontram-se disponíveis pacotes contendo código-fonte e pacotes Debian para os comandos de controlo e para a aplicação gráfica. Em ambos os casos, embora a instalação possa ser feita a partir do código-fonte, recomendo que essa acção seja feita por via dos pacotes Debian. A aplicação gráfica também está disponível como uma AppImage, um formato executável que não precisa de ser instalado. Porém, caso opte por utilizar a AppImage, deverá criar manualmente as regras "udev" para acesso ao dispositivo.

Software:
Comandos de controlo (2.2): Código-fontePacote Debian
Aplicação gráfica (1.4): Código-fontePacote DebianAppImage

28/05/2022

Última versão dos comandos de controlo para o interruptor de teste ITUSB1

No post anterior, lancei aquele que pensava ser o derradeiro software para o interruptor de teste ITUSB1, nomeadamente os comandos de controlo e a aplicação gráfica. No entanto, verifiquei que a versão 2.1 dos comandos continha algumas incorrecções no que toca às mensagens de erro, que não eram apresentadas de forma muito evidente. Aliás, isso foi o resultado de uma decisão que tomei durante a concepção da versão 2.0, decisão essa que recentemente decidi reverter com o lançamento da versão 2.2.

Posto isto, esta nova versão dos comandos de controlo pode ser descarregada a partir dos links abaixo. Como já é costume, foi disponibilizado um pacote contendo o código-fonte, e também um pacote Debian. Embora os comandos possam ser compilados e instalados a partir do código-fonte, recomendo que utilize o pacote Debian para o efeito.

Software:
Comandos de controlo (2.2): Código-fontePacote Debian

14/05/2022

Último software para o interruptor de teste ITUSB1

Hoje disponibilizo o que será o último software para o interruptor de teste ITUSB1. Este dispositivo vai deixar de ter suporte dado que o CP2130, um integrado essencial à sua função, deixou de ser fabricado. No entanto, isso será assunto para outro post. Posto isto, fica aqui disponível a versão 2.1 dos comandos de controlo e a versão 3.4 da aplicação gráfica.

Passando a detalhar acerca das modificações feitas, o código-fonte dos comandos de controlo foi refeito em C++, já desde a versão 2.0, e posteriormente adaptado por forma a ser exportado facilmente para Debian. Também foi acrescentado um novo comando na versão anterior, o itusb1-info, que permite ver as informações acerca do dispositivo ligado. A aplicação gráfica também sofreu diversas melhorias, não só no que diz respeito ao código-fonte mas também relativamente à navegação na aplicação. Foi ainda corrigido um problema com o script de instalação, que impedia a compilação e instalação em distribuições baseadas no Ubuntu a partir da versão 21.04.

Aplicação gráfica, com evidência de alguns comandos executados anteriormente no terminal em segundo plano.

Todo o software pode ser transferido através dos links abaixo. Estão disponíveis pacotes contendo código-fonte e pacotes Debian, tanto para os comandos de controlo como para a aplicação gráfica. Embora a instalação possa ser feita a partir do código-fonte, recomendo vivamente que a mesma seja feita a partir dos pacotes Debian fornecidos para o efeito. A aplicação gráfica também está disponível como uma AppImage, se não desejar fazer a instalação. No entanto, deverá criar as regras "udev" para acesso ao dispositivo, caso opte por este método.

Software:
Comandos de controlo (2.1): Código-fontePacote Debian
Aplicação gráfica (3.4): Código-fontePacote DebianAppImage

30/04/2022

Pacotes Debian disponíveis

Já estão disponíveis pacotes Debian relativos ao CP2130 Configurator e ao CP2130 Commander. Os mesmos podem ser encontrados não só no repositório de ficheiros, como também nas páginas do GitHub e do GitLab, e existem para todas as versões das aplicações mencionadas. Ao contrário dos pacotes já existentes, os quais contêm código-fonte que precisa de ser compilado durante a instalação, estes novos pacotes já incluem binários pré-compilados, e podem ser instalados sem quaisquer problemas.

Aliás, devo referir que o que me motivou a criar estes pacotes Debian, foi o facto de me ter deparado com problemas de instalação debaixo do Ubuntu 21.04. Basicamente, das aplicações baseadas em Qt disponíveis no blogue, nenhuma delas instala a partir do código-fonte, quando a instalação é feita debaixo de uma distribuição mais recente. Tal acontece porque uma das dependências necessárias à compilação destas aplicações, mais concretamente o pacote "qt5-default", passou à obsolescência.

Posto isto, este esforço também irá abranger todo o software para os interruptores de teste ITUSB1 e ITUSB2, se bem que apenas para as versões mais recentes. Como estes dispositivos estão em fim de vida, não interessa alargar o trabalho a versões de software mais antigas, até porque seria necessário todo um trabalho de reconversão que não compensa.

Pacotes Debian:
CP2130 Configurator (1.3): https://app.box.com/s/hhn8...q45n
CP2130 Commander (1.0): https://app.box.com/s/qg0l...zfql