Obtenha scancodes de teclado em versões recentes do linux

3

Estou tentando descobrir os scancodes para um conjunto de pedais para que eu possa religá-los a chaves mais úteis. Em versões anteriores do Ubuntu, eu pude fazer isso usando /lib/udev/keymap como discutido aqui , mas o programa parece não existir mais! Felizmente, eu ainda sei o que são os scancodes para o meu hardware específico, então ainda posso fazer tudo funcionar, mas quero escrever um post sobre como configurar os pedais.

O wiki do arch-linux sugere usar showkey --scancodes , mas isso parece me dar os números errados (comparando com os scancodes de trabalho conhecidos que estou usando no meu arquivo /etc/udev/hwdb.d/90-custom-keyboard.hwdb ):

                           hex        decimal
scancode used in config   0x70004      458756
showkey -s output         0x5d             91
xev keycode                               191

como é semelhante ao código-chave do X, acho que o X11 está interferindo em algum lugar.

Existe uma maneira alternativa de encontrar os scancodes? De preferência, um que não envolva o uso de consoles virtuais.

    
por dshepherd 28.05.2014 / 15:53

1 resposta

6
sudo evtest

deve fornecer uma lista de dispositivos para os quais você pode obter scancodes. Um deles deve ter o nome do pedal, então insira o número do evento que você pode ver ao lado dele. Então, quando você usar o pedal, você verá o scancode na tela (depois de "(MSC_SCAN), valor"). Por exemplo, aqui:

Testing ... (interrupt to exit)
Event: time 1413649733.746534, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70005
Event: time 1413649733.746534, type 1 (EV_KEY), code 48 (KEY_B), value 1

É "70005".

    
por 18.10.2014 / 18:32