This guide will help demonstrate the process to get a remote functioning properly.

Plug in your reciever and test out your remote. Two things may happen. Your remote doesn't do anything or your remote works, but you want to be able to change what the keys do.

You will need to have SSH access to your box.

When you log in via SSH type the command irw. This will show nothing but a blinking cursor. Press buttons on the remote and you should get an output like below.

root ~ # irw
17b 0 KEY_C devinput
17b 0 KEY_C_UP devinput

Where KEY_C is the key name, and devinput is the device name.

Make sure you have a proper remote.xml in your keymaps folder which is inside your userdata SMB share (or located at /storage/.xbmc/userdata/keymaps/remote.xml) It will look something like this

 <keymap>
   <global>
     <remote>
       <play>Play</play>
       <pause>Pause</pause>
       <stop>Stop</stop>
       <title>ContextMenu</title>
       ...
     </remote>
   </global>
 </keymap>

Next we will create a file call Lircmap.xml inside the userdata SMB share (/storage/.xbmc/userdata/Lircmap.xml) We will combine these two things from above to make the lircmap.

The lircmap format is as follows

 <lircmap>
   <remote device="devicename">
     <XBMC_button>LIRC_button</XBMC_button>
   </remote>
 </lircmap>

You need to replace "devicename" with what we found earlier (devinput), XBMC_button with the button name from remote.xml, and LIRC_button with the key name we found earlier (KEY_C) It will look like the following

 <lircmap>
   <remote device="devinput">
     <title>KEY_C</title>
   </remote>
 </lircmap>

And do this for any keys you want to remap. Just make sure to refer to the xbmc button names in the remote.xml.