qual é a diferença entre usbtouchscreen e usbhid?

1

Estou tentando entender as telas sensíveis ao toque. E me deparei com esses dois módulos do kernel: usbtouchscreen e usbhid . Estou confuso como é exatamente a diferença? Vamos supor que eu tenho um touchscreen conectado ao meu hardware via USB, que entre os dois eu deveria estar usando? Eu sei que a resposta óbvia seria: tente instalar qualquer um e veja se funciona.

Mas o que estou procurando é:

quais são os dados enviados por esses dois drivers para uma tela de toque USB, no caso de USBHID e tela simples?

E como evdev converte esses dados / pacotes de dados diferentes em eventos de toque unificados?

    
por Monku 30.07.2016 / 20:51

1 resposta

1

Um HID (" dispositivo de interface humana ”) é um dispositivo que permite aos humanos interagir com o computador , como um teclado, um mouse, um monitor, um microfone, um alto-falante, etc.

O USB define várias classes de dispositivos padrão: tipos de dispositivos com algumas propriedades comuns. Um deles é o HID, que no contexto do USB abrange apenas dispositivos de baixa largura de banda: principalmente dispositivos de entrada, como teclados, mouses, joysticks, entrada de tela sensível ao toque, etc.

Uma tela sensível ao toque requer recursos que não estão no protocolo HID básico (pelo menos se ela suportar multitouch), portanto, as telas sensíveis ao toque não podem ser manipuladas por um driver HID puro. O Linux tem um módulo usbtouchscreen que suporta muitos modelos de tela sensível ao toque USB.

Em qualquer caso, os dispositivos USB se identificam e os drivers USB sabem qual a identificação de dispositivo que eles suportam. O Linux carrega automaticamente o driver correto para dispositivos USB. Veja Os módulos do driver são carregados e descarregados automaticamente? e O Debian não detecta PCI serial cartão após a reinicialização

    
por 31.07.2016 / 02:07