Eu tenho o mesmo problema no meu AW15R3 e resolvi isso
primeiro instale os seguintes pacotes no ubuntu
sudo apt install ghc libusb-1.0-0-dev cabal-install git pkg-config python-usb -y
, em seguida, obtenha o código de verificação de cada chave no seguinte comando:
dmesg | grep -i code
por exemplo, quando pressiono a tecla macro 4, a seguinte mensagem é impressa, indicando que o código de escaneamento é e015
[ 1737.342249] atkbd serio0: Unknown key released (translated set 2, code 0x95 on isa0060/serio0).
Agora, o "e015" é o código de verificação e você precisa mapeá-lo para um código de acesso gratuito no sistema. Isso pode acontecer executando sudo setkeycodes e011 204
Portanto, crie um script em /etc/init.d
para mapear os códigos de verificação para códigos de tecla gratuitos disponíveis para todas as chaves.
Por favor, note que você precisa executar os comandos abaixo no console Linux e não no servidor x ( Ctrl + Shift + F3 para mudar para o console Linux a partir do X). Use sudo vim /etc/init.d/keyremap
e
mapeie os códigos para os códigos de teclas:
sudo setkeycodes e011 146
sudo setkeycodes e012 148
sudo setkeycodes e013 149
sudo setkeycodes e014 203
sudo setkeycodes e015 204
sudo setkeycodes e016 184
Em seguida, torne o script executável por chmod +x keyremap
Finalmente, use o utilitário xmodmap
para mapear os códigos de teclas para keysym, para que o seu Xorg possa entender e capturar os principais eventos usando vim ~/.Xmodmap
:
keycode 154 = XF86Launch0
keycode 156 = XF86Launch1
keycode 157 = XF86Launch2
keycode 211 = XF86Launch3
keycode 212 = XF86Launch4
keycode 172 = XF86Launch5
Em seguida, execute sudo xmodmap ~/.Xmodmap
Agora você pode mapear o XF86Launchx
para qualquer ação usando os atalhos de teclado:
Você pode criar uma entrada em rc.local
para que esses scripts sejam executados automaticamente quando a máquina for inicializada.