Weblog de Javier Arias

Posts Tagged ‘infrarred’

Hauppauge WinTV-NOVA-T-Stick y mando a distancia funcionando (¡por fin!)

Posted by javi en 1 \01\UTC julio 01UTC 2008

Hace un par de meses compré una Hauppauge WinTV-NOTA-T-Stick y me funciona a la perfección tras haber seguido las instrucciones de instalación de LinuxTV. Lo que nunca logré hacer funcionar fue el mando a distancia: miles de Mando a distancia Hauppauge modelo número DSR-0112pruebas que nunca funcionaron acabaron por desquiciarme, san Google no me ayudó y acabé por pasar del mando… hasta ayer por la tarde. Volví a entrar en las instrucciones de LinuxTV y vi que habían añadido una sección para el mando a distancia, pero esas instrucciones no funcionaban pues explican la instalación para dos modelos de mando diferentes al que viene con mi stick, cuyo número de modelo es DSR-0112 (lo podéis ver en la parte trasera), de 35 teclas, gris por la parte delantera y negro por la trasera; lo podéis ver en la foto de la izquierda (clic en ella para verla a tamaño completo). Total, que pongo a funcionar LIRC, intento capturar las teclas de mi mando usando irrecord para generar mi lircd.conf y me da los siguientes errores siempre:

$ irrecord H devinput d /dev/input/bypath/pci56eventir /tmp/lircd.conf
[...]
irrecord: gap not found, can't continue
irrecord: closing '/dev/input/by
path/pci56eventir'

Estos errores son debidos a que las pulsaciones en el mando a distancia no son detectadas por LIRC pese a que el sistema sí reconoce un receptor de infrarrojos incrustado en el receptor TDT/DVB. Para hacer que el LIRC reconozca las pulsaciones desde el mando se debe aplicar un parche al driver de la Hauppauge; explicaré el procedimiento que seguí en mi Mandriva 2008.0 (para otras distribuciones el proceso será el mismo con algún comando cambiado, como por ejemplo urpmi). Así, abrimos una consola de root y seguimos estas instrucciones:

$ urpmi mercurial
$ hg clone http://linuxtv.org/hg/v4l
dvb
$ cd v4l
dvb/linux/drivers/media/dvb/dvbusb/
$ wget http://cache.gmane.org/gmane/linux/drivers/dvb/42458
001.bin O dib0700_devices_ir_DSR0112.diff
$ patch
verbose dryrun < dib0700_devices_ir_DSR0112.diff
$ cd ../../../../..

Y luego ya seguimos con el procedimiento explicado en LinuxTV:

$ make && make install

Una vez hecho esto ya tenemos nuestro driver para la Hauppauge listo para funcionar y para reconocer las teclas pulsadas en el mando a distancia. Ahora reiniciamos el sistema (extrañamente hacer un reload de los módulos no me funcionó :-?) y lo que nos queda es configurar el mando a distancia; esto consiste en asignar al código enviado por cada tecla del mando un “nombre”. Esto se hace en el fichero lircd.conf y para configurarlo podemos hacerlo a mano (usando irrecord) o podemos usar un lircd.conf ya preparado para este mando. Para hacerlo de esta última manera abrimos otra consola como root y ejecutamos los siguientes comandos:

$ cd /etc/
$ wget http://cache.gmane.org//gmane/linux/drivers/dvb/42458-002.bin
O lircd.conf

Arrancamos el servicio LIRC:

$ service lircd restart
Deteniendo demonio de control remoto infrarrojo de Linux: [FALLÓ ]
Deteniendo demonio de Control Remoto Infrarrojo de Linux: [FALLÓ ]
Iniciando demonio de Control Remoto Infrarrojo de Linux: [ OK ]
Iniciando demonio del ratón para Control Remoto Infrarrojo de Li[ OK ]

Si todo va bien ahora deberían funcionar tanto el dispositivo de TDT como el mando a distancia. El primero lo podemos comprobar con el Kaffeine o mplayer por ejemplo y para probar el segundo ejecutamos el programa irw en una consola y pulsamos algunas teclas en el mando:

$ irw
0000000000010073 00 vol+ hauppauge
0000000000010073 00 vol+ hauppauge
000000000001008b 00 menu hauppauge
000000000001008b 00 menu hauppauge
000000000001009e 00 back hauppauge
000000000001009e 00 back hauppauge
00000000000100cf 00 play hauppauge
00000000000100cf 00 play hauppauge
0000000000010077 00 pause hauppauge
0000000000010077 00 pause hauppauge

Si os sale algo parecido a esto enhorabuena, ya podéis usar el mando a distancia de la Hauppauge WinTV-NOVA-T-Stick en vuestras aplicaciones favoritas. Únicamente tengo el problema de que el sistema reconoce cada pulsación como doble, de manera que si doy a la tecla bajar volumen me bajará “dos veces” de volumen, y si pulso la tecla 4 para ir al canal número 4 en realidad intenta ir al canal 44. Actualización: en los comentarios han pegado un parche que soluciona el problema de la doble pulsación.

Si usáis KDE os recomendaría echar un vistazo a IRKick (que básicamente es una manera de hacer más fácil la configuración de LIRC bajo KDE), que forma parte del paquete kdeutils-common. Quizás algún día escriba un post sobre IRKick, que éste ya es demasiado largo.

Fuentes:

Anuncios

Posted in General | Etiquetado: , , , , , , , , , , , | 17 Comments »