Linux · 2 min de leitura

Como fazer o seu sistema Linux detectar o seu teclado da ZSA – 2021-03-06



Os teclados da ZSA podem receber as suas diversas modificações em suas configurações através de um software chamado Wally. Tal software envia o arquivo binário gerado no configurador Oryx para o teclado. Cada reinstalação envolverá os seguintes passos: 0. Compilar o layout desejado no configurador Oryx

  1. Abrir o Wally no terminal ou usá-lo através de sua interface gráfica
  2. Seguir os passos descritos pelo software (selecionar o arquivo binário, apertar o botão de redefinição, esperar a instalação do novo firmware)

Instalando as dependências do Wally no Linux

O Wally precisa de dependências relacionadas ao libusb e, adicionalmente, ao GTK3 se você quiser usar a sua interface gráfica. Segundo a documentação do Wally, estes são os nomes dos pacotes necessários nas distribuições mais populares:

  • Distribuições da família Arch: gtk3 webkit2gtk libusb
  • Distribuições da família Debian: libusb-dev
  • Distribuições da família RHEL: gtk3 webkit2gtk3 libusb

Criando uma regra udev para o seu teclado

Regras udev são criadas para que “eventos” relacionados a aparelhos conectados possam ser acessados sem que seja necessário conceder privilégios desnecessários a certas partes do sistema.

Para criar uma regra udev para o Wally, crie um arquivo chamado 50-wally.rules em /etc/udev/rules.d/ com privilégios de administrador.


sudo touch /etc/udev/rules.d/50-wally.rules

Neste arquivo, você deve inserir as seguintes linhas:

# ErgoDox EZ
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"

# Moonlander e Planck EZ
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", \
    MODE:="0666", \
    SYMLINK+="stm32_dfu"

Por fim, certifique-se que seu usuário faz parte do grupo plugdev:


sudo groupadd plugdev

sudo usermod -aG plugdev $USER