LIRC

From Official Kodi Wiki
Revision as of 10:26, 19 April 2009 by >Loto Bak (→‎File Format)
Jump to navigation Jump to search

Lircmap.xml

Definition

A custom Lircmap.xml is stored in the userdata directory. The function of the file is to map LIRC buttons to XBMC's internal button titles. This file merely defines the translation. Each button's actual function is defined in Keymap.xml.

File Format

Lircmap.xml format is as follows:

  <lircmap>
       <remote device="devicename">
               <buttonname>LIRC_BUTTON_NAME</buttonname>
               ...
       </remote>
  </lircmap>

Device Name

The device name is defined in your lircd.conf file in the "name" field. This information can be had using the test application "irw"

Button Names

There are two type of remote buttons in XBMC.

  • Predefined Buttons are labeled using their button title such as:
  <left>
  <right>
  <title>
  <menu>

These buttons are predefined in keymap.xml and handle all functions needed for a working system. For a complete list of buttons see keymap.xml.

  • Customized buttons are for people who require more buttons than are defined by default. For example;
  <obc1>BUTTON1</obc1>
  ...
  <obc254>BUTTON254</obc254>
Note : These obc buttons must be defined in keymap.xml under the [[<universalremote>]] heading
FYI : obc stands for original button code and is a legacy of the old xbox IR remote system

Lirc Configuration

Information

A complete Lirc configuration document is currently beyond the scope of this manual. More information on LIRC is available on the offical website www.lirc.org

Testing Lirc Output

use the command 'irw' to test your LIRC configuration

  xbmc@xbmclinux:~$ irw
  0000000000040004 00 ARROW_UP Cyp_Se_WitheHome
  0000000000040004 00 VOLUME_UP Cyp_Se_WitheHome
  0000000000040004 00 NUMPAD_6 Cyp_Se_WitheHome
  0000000000040004 00 INFO Cyp_Se_WitheHome

In this example Cyp_Se_WitheHome is the device name ARROW_UP, VOLUME_UP, NUMPAD_6, INFO are button names

If you wish to redefine the button names it can be done in /etc/lircd.conf