Blog Dicas
Instalar o CH340 no UBUNTU

1) Pré-requisitos

Instale ferramentas de compilação e cabeçalhos do kernel:

sudo apt update
sudo apt install -y git build-essential dkms \
  linux-headers-$(uname -r) kmod mokutil

O dkms é opcional, mas útil para recompilar o módulo após atualização de kernel.

2) Baixar o código-fonte

git clone -b ubuntu https://github.com/juliagoda/CH341SER.git
cd CH341SER

3) Compilar

make

Se tudo der certo, será gerado ./ch34x.ko.

4) (Opcional) Assinar o módulo para Secure Boot

Se o Secure Boot estiver ativado, o kernel só carrega módulos assinados.

4.1) Tentar assinar com MOK existente

Se seu sistema já possui uma chave MOK instalada (caminho padrão do Ubuntu):

sudo kmodsign sha512 \
  /var/lib/shim-signed/mok/MOK.priv \
  /var/lib/shim-signed/mok/MOK.der \
  ./ch34x.ko

4.2) Se não existir MOK (arquivos ausentes)

Crie e insira uma MOK (vai pedir senha e requer reboot para concluir o enrolment):

sudo mokutil --import /var/lib/shim-signed/mok/MOK.der
# ou gere uma nova chave:
# sudo update-secureboot-policy --new-key
sudo reboot

Depois do reboot (MOK enrolada), volte à pasta do projeto e rode a assinatura (4.1).


5) Carregar o módulo

sudo make load

Isso deve carregar ch34x (e usbserial como dependência).
Para descarregar depois: sudo make unload ou sudo rmmod ch34x usbserial.


6) Verificar se o dispositivo apareceu

  1. Conecte seu Arduino/dispositivo CH341 na USB.
  2. Verifique logs e dispositivos:
dmesg | tail -n 50
lsmod | grep ch34
ls -l /dev/ttyUSB*

Você espera ver algo como ttyUSB0 sendo criado.


7) Tornar persistente (opcional)

Alguns Makefiles têm alvo install. Se existir:

sudo make install
sudo depmod -a

Sem install, você pode copiar manualmente e carregar no boot:

sudo mkdir -p /lib/modules/$(uname -r)/extra
sudo cp ./ch34x.ko /lib/modules/$(uname -r)/extra/
sudo depmod -a
echo ch34x | sudo tee /etc/modules-load.d/ch34x.conf

Com DKMS (se suportado pelo repo), o módulo recompila após updates de kernel. Este projeto não traz dkms.conf oficial; dá para criar um, mas mantendo simples, o passo acima resolve.


Compatibilidade

  • Não é compatível com a placa Olimex ESP32-POE rev C.

Solução de Problemas

A) dmesg não mostra ttyUSB*, apenas:

usbserial: USB Serial support registered for ch34x
ch34x 3-2:1.0: ch34x converter detected

Possíveis causas e correções:

  1. Dependências ausentes (compilação incompleta)
    • Refaça os passos 1 e 3, garantindo build-essential e linux-headers-$(uname -r) instalados.
  2. Conflito de hardware (protoboard)
    • Se o Arduino está ligado a uma protoboard com jumpers, desconecte os fios (curto/conexão indevida pode impedir a enumeração correta). Conecte apenas via USB, teste novamente.
  3. Cabeçalhos do kernel faltando
    • Instale linux-headers-$(uname -r) e recompile: sudo apt install -y linux-headers-$(uname -r) make clean && make
  4. Secure Boot bloqueando o módulo
    • Assine o módulo (Seção 4) e recarregue: sudo make unload sudo kmodsign sha512 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der ./ch34x.ko sudo make load
  5. Kernel sem CONFIG_USB_SERIAL_CH341 (desativado/ausente)
    • Verifique a config do kernel: zcat /proc/config.gz | grep CH341 # ou grep CH341 /boot/config-$(uname -r)
    • Se estiver desabilitado, o módulo externo ch34x.ko deve suprir. Se ainda assim não carregar, revise mensagens do dmesg e confirme a versão do kernel/headers.
  6. Permissões/Regra udev
    • Adicione seu usuário ao grupo dialout e reconecte: sudo usermod -aG dialout $USER sudo reboot
    • Depois do reboot, teste novamente ls -l /dev/ttyUSB*.

B) Comando úteis de diagnóstico

modinfo ./ch34x.ko
sudo modprobe ch34x
dmesg | tail -n 100
journalctl -k -b | grep -i ch34

Dicas finais

  • Sempre teste com outro cabo USB e outra porta.
  • Evite hubs USB sem alimentação ao usar placas que consomem mais corrente.
  • Para Arduino: desconecte tudo da protoboard, conecte apenas USB, identifique ttyUSB*, e só então reconecte os periféricos.

Este tutorial foi baseado na seguinte referencia.

https://github.com/juliagoda/CH341SER?tab=readme-ov-file#tutorial-on-ubuntu

Dicas
Instalar o USB VGA no Ubuntu

Nota o Fresco Logic FL200/FL2000DX VGA/DVI/HDMI Adapter não funciona com este procedimento.

É possível instalar um monitor adicional no linux, usando um adaptador USB/VGA conforme o da foto.

O DisplayLink permite utilizar monitores adicionais através de conexões USB em docks, adaptadores e monitores compatíveis. No Ubuntu, há duas formas de instalar o driver:

  1. Repositório APT da Synaptics (recomendado, pois permite atualizações automáticas junto com o sistema).
  2. Instalador Standalone (instalação manual).

O procedimento abaixo descreve como instalar em uma maquina linux ubuntu.


✅ Método 1: Instalação via Repositório APT da Synaptics (Recomendado)

Esse método facilita atualizações e integração com o sistema.

Passo 1 – Baixar o pacote do repositório

Faça o download do pacote synaptics-repository-keyring.deb no site oficial da Synaptics.

https://www.synaptics.com/sites/default/files/Ubuntu/pool/stable/main/all/synaptics-repository-keyring.deb

O arquivo geralmente será salvo na pasta Downloads.

Passo 2 – Instalar o repositório

No terminal, execute (ajuste o caminho se necessário):

sudo apt install ./Downloads/synaptics-repository-keyring.deb

Passo 3 – Atualizar o cache do APT

Depois de adicionar o repositório, atualize os pacotes:


sudo apt update

Passo 4 – Instalar o driver DisplayLink

Agora instale o driver:

sudo apt install displaylink-driver

Pronto! O driver será instalado e integrado ao sistema.

⚠️ Atenção: se você já instalou a versão standalone anteriormente, desinstale-a primeiro antes de usar esse método.


✅ Método 2: Instalação com o Standalone Installer

Se preferir instalar manualmente:

Passo 1 – Baixar o instalador

Baixe o pacote mais recente do DisplayLink para Ubuntu diretamente no site oficial.

Passo 2 – Instalar o driver

No terminal, acesse a pasta onde está o arquivo e execute:

sudo apt install ./displaylink-driver-x.x.xx-xubuntu-x.deb

(Substitua o nome do arquivo pelo que você baixou.)


ℹ️ Observações Importantes

Alguns fabricantes podem não oferecer suporte técnico caso você use o driver genérico.

Esse é um driver genérico de referência. O fabricante do seu dock, monitor ou adaptador USB pode fornecer drivers específicos no site deles.

A DisplayLink recomenda sempre verificar primeiro com o fabricante do equipamento se há um driver atualizado.

Este artigo foi baseado no artigo a baixo, e foi usado IA para auxiliar no preparo:

https://www.synaptics.com/products/displaylink-graphics/downloads/ubuntu

Dicas pentaho SQL Power Architect
SQL Power Architect Instalando e Configurando

O SQL Power Architect é uma ferramenta em java para criar banco de dados, modelando as tabelas e criando seus relacionamentos.

Site:

https://bestofbi.com/architect-download/

Github do projeto:

https://github.com/SQLPower/power-architect

Documentação do software:

https://8hi8a2.p3cdn1.secureserver.net/wp-content/uploads/2022/10/SQLPowerArchitectUserGuide-1.0.0.pdf

Pré Requisitos

Exige instalação do java 8 64 para instalação

Exige driver jar do jdbc mysql

Configuração

Para configurar o JDBC é bem simples.

Entre na aplicação, selecione Connections > Database Connection Manager

Selecione o banco mysql, em seguida ADD JAR, selecionando seu arquivo JAR, que vc baixou anteriormente.

Ao finalizar ele inclui o jar e permite a conexão.

Testando conexão

Volte na criação de conexão e adicione uma nova , conforme apresentado a seguir:

Para finalizar o teste click em Test Connection

Funcionamento

Com isso ele cria estruturas semelhantes a esta:

Dicas wordpress
Wordpres – Plugins úteis

Segue alguns plugins bem úteis.

1 – File Upload Types

Permite escolher as extensões que voce pode baixar.

Fornecedor: https://wpforms.com/

2 – MathML block

Permite incluir formulas matemáticas no wordpres

Fornecedor: http://tunedin.net/

3 – weDocs

Permite disponibilizar documentação dentro do wordpres.

Fornecedor: https://wedocs.co/?utm_source=wporg&utm_medium=banner&utm_campaign=author-uri

4 – WooCommerce

Permite vender produtos ou serviços no wordpres

Fornecedor: https://woocommerce.com/

5 – View STL

Permite visualizar modelos de peças 3D, criados para impressoras 3D.

Fornecedor: https://falldeaf.com/

6 – Emb3D Model Viewer

Permite incluir modelos de peças 3D como visualização nos produtos vendidos no WooCommerce.

Fornecedor: https://www.netfarm.it/

7 – Desativar Comentários

Desativa os comentários que geralmente só atrapalham seus posts com um monte de propaganda inútil.

Fornecedor: https://wpdeveloper.com/

Blog Dicas Varejo
Competir ou Cooperar?

Outro dia, fui questionado por um entrevistador:

Voce tem uma empresa, voce desenvolve programas Open Source no meu segmento.

Porque deveria contratar um concorrente?

Naquele momento, percebi que minhas intensões não estavam sendo claras. E resolvi publicar este artigo.

Projeto Open Source nunca concorre com aplicações comerciais. Eu nunca ví, em meus 24 anos de carreira, uma empresa que faliu por conta de um software open source.

A única coisa que ví, foi a Microsoft, que depois de muito sofrimento, aderiu ao mundo open source. Hoje está ganhando dinheiro com Linux.

Então, se voce souber de alguma empresa que faliu por conta de um projeto open source, é bom falar agora, ou cale-se para sempre.

Software Open Source, são em sua essencia ferramentas de fomento e desenvolvimento.

Quando desenvolvemos um projeto Open source estável e seguro, este, cria um leque de possibilidades e serviços que qualquer empresa pode agregar.

De fato, projetos open source criam oportunidades, não as tira.

O Linux é o maior CASE do mundo open source, mas não é o unico.

Existem vários, como:

  • APACHE
  • Blender
  • Docker
  • GIT
  • KUBERNETES
  • R
  • SUGARCRM

Entre tantos outros.

O Apache mesmo, fomentou e desenvolveu diversos serviços e produtos. Sendo a base para produtos incriveis pagos.

VAREJO OPEN SOURCE

Poucas ações tem contríbuido mais com o varejo que o ACBR, projeto Open Source destinado a alavancar empresas no desenvolvimento de soluções para PDV e Self Checkout.

Conheço grandes player que trabalhei que a base de funcionamento do seu PDV é baseado no ACBR.

Apesar de termos um grande player, como o ACBR, existem poucas soluções Open Source destinadas ao Varejo.

Vamos falar de minhas soluções

Os projetos que desenvolvo, são sempre atrelados a Hardware, minha paixão.

Sempre que criei uma lib, ou desenvolvo conexão com um hardware, este pode e deve ser integrado, dentro de uma cadeia ou software house.

Vamos falar sobre alguns projetos:

O srvCP é um software (servidor) destinado a integrar com equipamentos de consulta de preço. Este por si só precisa de uma base de produtos, que deve ser integrada de um PDV ou CRM. Dificilmente um cliente entrega meu software sem ter um PDV ou CRM em sua loja.

Pois este precisa de uma base de produtos saneados.

Então, o srvCP não prejudica desenvolvedores de software, muito pelo contrário, agrega uma oportunidade, permitindo agregar o benefício de uso de leitores de preço sem a necessidade de desenvolvimento e manutenção deste equipamento.

Agora iremos falar sobre outro projeto o RFID, este projeto destinado a criar um leitor de RFID de mesa, não tem o objetivo de fornecer equipamentos para o varejo, ou atacadistas. Pois o seu desenvolvimento implica em assemblagem de equipamentos eletrônicos, bem como impressão. O que por fim acaba saindo mais caro que seus equipamentos industriais. Porem, este pode ser usado em ambientes de desenvolvimento, e equipes de TI, permitindo a simulação em seu PDV de cartões. Sem a real necessidade de compra de seus pares industrializados. O uso deste, permite aprimorar e desenvolver conceitos na indústria de software.

Outro exemplo, é o software de emissão de etiqueta, este projeto permite criar um serviço de impressão de etiquetas, permitindo a integração com o CRM, através de uma web api. Permitindo imprimir etiquetas de gondolas de forma fácil e transparente.

Por fim, iremos falar sobre o projeto Leitor Balança, este projeto visa criar um serviço de leitura de balança, que permite através de uma Web API ler o peso.

Vejam que os projetos Open Source são integrados e permitem integração, retirando das software houses a necessidade de desenvolvimento destes equipamentos, deixando elas se preocupar com seu real core business.

Vemos aqui, que projetos open source, são parceiros dos empreendedores, pois criam oportunidades de negócio, permitindo que estes foquem no que realmente é importante.

Com este texto, espero muito que as software house, percam o medo do desenvolvimento open source, e abracem a causa, pois este agrega oportunidades de negocio. Alavancando o negócio delas.

Grande abraço.

Marcelo Maurin Martins

Pai de 2 meninas, desenvolvedor

e apaixonado pelo Open Source.

en_USEnglish