Archivos de Tags: action @es

Añadir una acción personalizada a un keycode en XBMC

Existen unos mandos a distancia por infrarojos USB hecho especialmente para ser usados en media centers. Compré uno para poner una Raspberry Pi con todas las películas para mis padres.

usb-ir-remote

Parecía que todo funcionaba correctamente sin cambiar nada en XBMC pero entonces nos dimos cuenta de que el botón de bajar el volumen no hacía nada. Así que me dispuse a descubrir cuál era el keycode que se enviaba al pulsar ese botón para asociarlo a la acción apropiada en XBMC. Para poder ver esto hay que activar el debug en XBMC (Settings->System->Debugging) y luego pulsar unas cuantas veces el botón en cuestión. Una vez hecho esto hay que mirar el fichero de log (temp/xbmc.log en tu carpeta userdata, que en Linux es ~/.xbmc) y buscar algo similar a esto:

18:25:59 T3034951680   DEBUG: OnKey: f14 (0xf09d) pressed, action is ...

Puede usar cat y grep para encontrarlos:

$ cat ~/.xbmc/temp/xbmc.log | grep pressed

Y ahí tienes el keycode en formato hexadecimal. Tan solo hay que convertirlo a decimal, que en este caso es 65197, y luego saber cuál es el nombre de la acción a la que quieres asociarlo. La lista de keycodes se puede ver en ButtonTranslator.cpp:

        {"volumedown"        , ACTION_VOLUME_DOWN},

Por último hay que editar el fichero keymaps/keyboard.xml dentro de tu carpeta userdata indicando el keycode y la acción:

<keymap>
  <global>
    <keyboard>
      <key id="65197">volumedown</key>
    </keyboard>
  </global>
</keymap>

Ref: http://wiki.xbmc.org/index.php?title=keymap#Keyboards
http://wiki.xbmc.org/index.php?title=HOW-TO:Modify_keyboard.xml