Ayuda con Control Remoto USB HID y/o adaptador infrarojo.

Franco Catrin L. fcatrin en tuxpan.com
Jue Jul 15 17:09:01 CLT 2010


El dom, 11-07-2010 a las 00:31 -0400, Alvaro Herrera escribió:
> Excerpts from Franco Catrin L.'s message of sáb jul 10 16:15:11 -0400 2010:
> 
> > Un antecedente que me dejó mas picado aún es que estando en GRUB, el
> > control remoto funciona perfectamente, todos los botones se reciben como
> > si provinieran del teclado, por lo tanto eso aclara más que Linux los
> > está filtrando o hace algo para que no le lleguen.
> 
> Hmm, sugerencia: inicia en modo single y ve hasta qué punto puedes
> hacerlo andar en un X mínimo (dear old startx), o incluso en mplayer sin
> X (-vo aa?).  Si funca, es hora de echar a andar servicios uno por uno,
> hasta encontrar el que bloquea los eventos.

Ya encontré la causa del problema, les cuento por si alguien se topa con
algo parecido:

Los eventos se propagan así:

dispositivo -> usbhid -> input layer

El problema es que por algún motivo, usbhid está descartando algunos
eventos que provienen del control y no los propaga a input layer.  Una
de las causas probables es que el descriptor USB HID del dispositivo
esté malo.  

En BIOS no se usa ese descriptor y probablemente Windows tampoco lo usa,
por lo que el dispositivo está OK para sus fabricantes.

usbhid prevee esos casos y tiene mecanismos para ignorar estos defectos,
pero no he logrado hacer que ignore lo que está malo en este control.

usbhid también prevee ese caso, y envía los eventos HID
por /dev/hidraw*.  Desde ese device si puedo leer los eventos y veo
todas las teclas.

Para no meter mano en el kernel, voy a hacer una solución ad-hoc en
userspace:

hidraw -> aplicacion -> /dev/lircd

De esta forma puedo mapear todas las teclas del control a lo que yo
quiera, y para las aplicaciones compatibles con lircd quedará oculta
esta complejidad (alguien dijo abstracción?).

Afortunadamente inputlirc es un buen punto de partida para implementar
esta solución.

Saludos
-- 
Franco Catrin L. http://www.tuxpan.com/fcatrin
TUXPAN Software S.A.



Más información sobre la lista de distribución Linux