miércoles, 15 de junio de 2016

Como controlar OSMC “Kodi” y “OpenHab” desde un mando a distancia por infrarrojos. Cap. 2

Capítulo 2 - Obtención de los códigos
     

En este capítulo aprenderemos a capturar los códigos que emite nuestro mando a distancia. Como ya adelantamos en la introducción, se pueden obtener en la página de Lircd, pero como no los tiene todos inventariados, explicaremos como capturarlos desde la consola. Como medida alternativa, Juan me ha anotado que disponemos de un addon para Kodi que nos ayudará con esta captura, siendo la gestión más amigable, (y a mí me complica el manual :-)), que explicaré después de la obtención mediante consola. 


Personalmente me gusta utilizar la consola, ya que indirectamente se aprenden otras cosas con su práctica, además tomamos el control de lo que hacemos y entendemos él porque de su funcionamiento. No obstante entiendo que un entorno gráfico es más agradable para la mayoría de los usuarios. Por lo tanto explicaremos ambos casos ya que aquí estamos para compartir todos los conocimientos que podamos para el bien de la comunidad.


2.1 Opción 1 (Bajar los códigos de la red)

Acceder a la página de lircd para verificar si el mando que vamos a utilizar, está en la lista de las configuraciones ya predefinidas, y bajarlo para enviarlo posteriormente a la Raspberry, aprovecharemos para bajarlos el fichero con la foto del mando que posteriormente nos será mostrada en la pantalla de selección del OSMC. 





2.2 Opción 2 (Obtener los códigos mediante la consola)


Irrecord en OSMC


Primeo crearemos el fichero de configuración, de momento lo guardaremos en el directorio temporal:


nano /tmp/nombrearchivo.conf

Control + O, Enter, Control + X. (Para salir y grabar).


O directamente con:

touch  /tmp/nombrearchivo.conf


Nota: nombrearchivo.conf lo deberéis reemplazar  por el que corresponda a vuestro mando, en mi caso avermedia98.conf.



Antes de poder utilizar irrecord será necesario detener el servicio lircd que se está ejecutando, ya que mantiene / dev / lirc0 ocupado. Para ello introducir el terminal lo siguiente:

sudo systemctl stop eventlircd.service

Una vez que se detiene el servicio, se podrá utilizar irrecord,  para ello ejecutaremos la siguiente instrucción:
 
  
sudo irrecord -d /dev/lirc0 /etc/lirc/ nombrearchivo.conf

 
Seguidamente aparecerá un mensaje en el que se nos solicita que presionemos RETURN para continuar:
 
Press RETURN to continue.
 
Presionamos ENTER, y a continuación aparecerá otro mensaje.


Si es pal primera vez que editamos el fichero nos solicitará que mantengamos pulsada 
una tecla del mando, hasta que aparezca el siguiente indicador:


Encontrado longitud de hueco: 215947 (el número es un ejemplo).


"Now enter the names for the buttons"A continuación, introduzca los nombres de los botones.
 
"Please enter the name for the next button (press <ENTER> to finish recording)"
Por favor, introduzca el nombre para el botón siguiente (pulse <ENTER> para finalizar 
la grabación)
 
 
 
Ahora iniciaremos el proceso para capturar los códigos de cada botón.
Introduciremos un nombre y pulsaremos Intro, seguidamente mantendremos el botón pulsado 
que deseemos asignar a la función del nombre.
 
Los nombres a introducir ya están predefinidos, por lo que no pueden ser aleatorios, para 
obtener el listado los podéis hacer previamente mediante la instrucción: 
 
irrecord --list-namespace | less
 
 
O los obtenerlos directamente desde la dirección:
 
 
 
Así para apagar el equipo no utilizaremos como nombre Power sino que utilizaremos el ya definido KEY_POWER.
 
Una vez aceptado el código obtendremos el siguiente mensaje:
 
Please enter the name for the next button (press <ENTER> to finish recording) 
 
Con lo que procederemos de igual manera que en caso anterior, y así hasta finalizar de introducir todas las teclas 
de nuestro mando.
 
Cuando terminéis con la última tecla, presionar Enter. 
 
Si necesitais editar el fichero para realizar alguna modificación, podréis realizarlo mediante la siguiente orden:
 
sudo nano /etc/lirc/ nombrearchivo.conf
 
 
Una vez terminado el proceso con irrecord, será necesario volver a activar el servicio lircd, para ello introducir el 
siguiente comando en el terminal:
 
sudo systemctl start lircd_helper@lirc0

2 comentarios:

  1. Hola Pep Ventura, muy interesante todo esto para mi. Agradecido desde ya.
    Me preguntaba porque este tema del infrarrojo esta solo planteado para OSMC y no para raspbian. Estoy empezando a meterme en el tema y opte por raspbian en la primer instalación pero en estos momentos me pregunto cual de las dos opciones es mas conveniente. Me podrías orientar al respecto?

    ResponderEliminar
    Respuestas
    1. Buenas tardes Javier, las dos opciones son buenas y correctas. Con OSMC optimizamos la inversión de la compra de la Raspberry, y en Raspbian optimizamos el rendimiento. Estamos preparando un manual para aprovechar el mando en OH, y servirá para Raspbian y OH, pero estamos en temporada estival y todavía tardará algo en publicarse.

      Un saludo.

      Eliminar