Pergunta

O que eu gostaria de tomar posse de um dispositivo HID que já pode ter sido ligado, consumi-lo de saída, evitando outros (X11 ou terminal) de consumi-la.

Se eu puder ajudar, eu não quero fingir ser um terminal, mas sim para monopolizar um determinado HID ou personagem dispositivo. A ideia é que alguns dispositivos HID pode ser reconhecida como ratos / teclados por x / terminal, mas um segundo mouse ou o teclado pode ser usado para outra coisa, mas para fazer isso você precisa ter certeza de que eles não estão enviando entrada falsa em um terminal aberto.

Alguém tem alguma idéia de como isso pode ser feito?

Foi útil?

Solução

Eu tenho feito isso - a minha aplicação específica era um daemon que ler eventos a partir de um leitor HID USB código de barras (que se apresenta como um dispositivo USB teclado HID)

.

Para fazer isso eu usei a interface do dispositivo evento, abrindo o dispositivo /dev/input/event* correspondente ao dispositivo eu estava depois. Você pode então emitir o ioctl EVIOCGRAB no dispositivo, que agarra-lo para uso exclusivo, e ler eventos (que representam teclas pressionadas, movimentos do mouse, etc.) a partir do dispositivo assim que estiverem disponíveis.

(Quando o dispositivo é agarrado para uso exclusivo, apenas a sua aplicação vai ver os eventos a partir dele).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top