Printer friendly version
Support This Project

Remapping Tutorial for N00bs:

Step by step buttons remapping tutorial:
Like the title says, this tutorial will help you remap your remote buttons in no time. Created with n00bs in mind so I hope this will be very easy to follow.

Tools we will be using:

I- XML Marker For editing .xml Files.

II- MCE Remote key Mapper to change what buttons send. I'll always refer to it here as "MRM"

III- Showkey to identify what key your remote sends when pressing on a button.

Section R1 "Remaping using MCE Remote Key Mapper":

This section will help you understand how to read a function from Keyboard.xml and use that key to map it to one of your remote buttons, {button swapping}:

MceRemoteMapper can read you registry settings so it is very easy to swap what buttons do very quickly or just remap a button to a completely new combination.

A- I guess by now you know what you want to remap. So now for example we will try to remap the button "Live TV". If you open MCERemoteMapper you will find out that "Live TV" sends "T", then If you check keyboard.xml you will know that its a command that triggers <t>ShowSubtitles</t> in XBMC/Kodi, which acts as a toggle for Subtitles ON/OFF.

You can also check with Showkey. Open showkey and press the "Live TV" button on your remote, then you will see this:

The KeyID shows: VK_T "ignore the numbers and VK"! So cool we have "T".

and in the field you can use <t>Notification(Key, t, 3)</t> as <t>ShowSubtitles</t> what we already have in Keyboard.xml, the part "Notification(Key,t,3)" just means insert whatever code you want from here or here so you can put it back in keyboard.xml for good use. We'll get back in to detail about this in "Section R2".

B- Say we want "Live TV" to open shutdown menu instead. If you look at Keyboard.xml you'll find the action for shutdown menu as follows <s>ActivateWindow(shutdownmenu)</s> , the <S> is what XBMC/Kodi receives from your remote and the "ActivateWindow(shutdownmenu)" is the command that XBMC/Kodi will activate when receiving "S" from the remote.

1- Open MRM and look for the Live TV button, in the "Key" column you will see it sends "T", from the drop drown menu just select "S". Note that you can make more than one change before restarting, its perfectly fine.

2- Apply Exit and restart.

DONE :-)

From the picture below you can see the final result.

Note: For example if you want the guide button to send "Shift-S" just tick the shift square, if you want to send "Alt-Shift-S" just tick "Shift, Alt" boxes it does not matter which box you tick first it will always send the correct combination for you. etc.


Section R2 "Remaping using Keyboard.xml":

So this section will teach you how to remap a button to Keyboard.xml function or make it send another action of your choosing:

In this example say we want to change what Button "T - Teletext" do in XBMC/Kodi, currently in my latest config Button "T - Teletext" sends "Ctrl-S" which is incidentally set to take ScreenShots, and now we want it to "Randomly Change XBMC/Kodi's Visualisation effects" when playing music and visulasations are active. Different set of commands can be found (here and here). Just imagine for now that "Ctrl-S" does nothing. Well in real life if we would want to use "Ctrl-S" for another command then we will have to change "ScreenShot" to another button as per "Section R1" or just disable "ScreenShot" by deleting the full command.

1- You can either use "MRM" or "Showkey to find out what is your button sending but in this example we will open Showkey.exe and hit the "T - Teletext" button.

2- It will show you the key its receiveing, which is an "S" with a mod "Ctrl". That means the button is sending "Ctrl-S". Now copy the code <s mod="ctrl">Notification(Key, s, 3)</s> opposite the copy button and paste it in notepad for now.

3- To find out the right command check the "Actions available during a music visualisation" heading and in the table you will find what we want "RandomPreset".

4- Just insert "RandomPreset" in the script in step 2 to look like this:-

<s mod="ctrl">RandomPreset</s>

5- Edit Keyboard.xml and put the above result anywhere in the <Global> section, as shown below.

6- Save and Exit.

Note: Some commands will not work by just putting them in the <global> section, you will need to apply some logic to figure out where you should put the command in question or just ask for help in the forum and I will gladly be able to help you.


Now Enjoy XBMC/Kodi!