General Notes
Remote Master (aka RM) was originally designed and developed primarily by Greg Bush, with significant contributions from John S Fine, Nils Ekberg, and others.
RM is a Java application. That means that in order to run RM, you must have either the Java Developer Kit or the Java Runtime Environemt installed, version 1.4.1 or later. Either of these can be downloaded from the J2SE Downloads page.
The Remote Master user interface makes extensive use of context menus. On most platforms, context menus are accessed by clicking the right mouse button in an area when you want to do something. RemoteMaster also often provides multiple ways to accomplish the same task.
Take, for example, the Layout panel, which shows an image of the remote being used on the left, and a list of the available functions on the right. There are 3 different ways to assign a function to a button:
- Drag and drop the desired function onto the desired button.
- Right-click on a button and select the desired function from the context menu
- Highlight a button by clicking on it. Then double-click on the function you want assigned to it.
Getting Started
- If you haven't already, download and install Java, version 1.4.1 or later. You can download it from the J2SE Download page. Either the Java Developer Kit (JDK) or the Java Runtime Environment (JRE) will do.
- Download the latest version of Remote Master from SourceForge, and unzip it to the directory of your choice, preserving directory names.
- If you are using a version of Windows (95/98/NT/XP), double-click on the Setup.bat and then click Yes.
- If you haven't already, download the lastest version of the Remote Definition Files (RDFs) from the JP1 Yahoo Group.
- Unzip it to the directory of your choice. It is recommended that you do NOT place it in the same directory as you placed Remote Master.
That's it, Remote Master is now ready for your use! There are a few different ways to start Remote Master:
- Double-click on RemoteMaster.jar.
- Double-click on rmaster.bat.
- Double-click on a Remote Master Device Upgrade file (*.rmdu).
- In Internet Explorer, click on a link to a Remote Master Device Upgade file (*.rmdu).
Using Remote Master
Remote Master was loosely based on Keymap Master, so there are many similarities between the two. Anyone familiar with Keymap Master will have no trouble using Remote Master.
However, because Remote Master is a true application, while Keymap Master is a spreadsheet that behaves like an application, the Remote Master user interface does have some significant differences from Keymap Master.
The Menu Bar
The Remote Master menu bar provides access to general functions and options.
The File Menu
The File menu provides ways to load and save Device Upgrade files. Below are the menu items available, and what they do:
| New | Set all upgrade information to default values, as though starting from scratch. |
|---|---|
| Open... | Bring up a file dialog allowing you to load an existing RemoteMaster Device Upgrade file (*.rmdu). To load a KeymapMaster Device Upgrade file (*.txt), change the Files of type: field to KeyMapMaster device upgrade files. |
| Save | This menu will save the device upgrade to a file. This item will be diabled unless a RemoteMaster Device Upgrade file was loaded, or the "Save as..." item has been used. |
| Save as... | Save the device upgrade to a different file name. The default file name will be the name of the file loaded, or the name used for "Save as...", or the contents of the Description field. |
| Import from Clipboard | Imports a device upgrade from the clipboard. This is useful if you click on a link to a device upgrade (either KM or RM), and your browser simply displays the text of the upgrade. Simply use the context-menu (right-click) to Select All and then Copy the entire upgrade to the clipboard. |
| Recent | Lists up to the 10 most recently opened, or saved, RM device upgrade files. |
| Exit | Exit Remote Master |
The Options Menu
The Options menu provides ways to customize Remote Master
| Look and Feel | Allows you to select the over all look and feel used by RemoteMaster. Most of the time this should be left to the default value, but you might want to experiment to see how RemoteMaster would look on other platforms. | ||||||
|---|---|---|---|---|---|---|---|
| Prompt to Save | Allows you to specify when Remote Master will prompt you to save your Device Upgrade. The valid values are:
|
||||||
| Remotes | Allows you to choose the set of remotes that RemoteMaster will display. Your choices are All, meaning all remotes for which RemoteMaster can find Remote Definition Files (RDFs), or Preferred, meaning only those remotes that are in your preferred list. You can manage the list of preferred remotes using Edit Preferred. |
Basic Information
Some of basic information about the current Device Upgrade is always visible:
| Description | Enter a brief descriptive name for your upgrade. Something as simple as "My Cable Box" will work, but since we encourage sharing upgrades with the group, a more descriptive entry like "General Instruments Digital Cable CBL/0476" is best. The Description will be used as the default proposed filename when the Device Upgrade is saved using Save As.... |
|---|---|
| Remote | Use the drop-down list to select the desired remote you want to build an upgrade for. A Device Upgrade for one model remote will NOT work on another. Selecting the proper remote here is important. |
| Device Type | Use the drop-down list to select the desired type of device. Note that an upgrade can utilize ANY device regardless of what device button it will be assigned to on the remote. Also, different device types use different key maps. If you'd like to see what buttons are available in a given device mode for the selected remote, view the Layout panel, which shows a picture of the remote with the buttons that are in the key map outlined in orange. |
The Setup Panel
Use the Setup panel to enter key information about the device upgrade:
| Setup Code | Enter a 4-digit number between 0000 and 2047. If creating an upgrade of an existing code, the JP1 convention is to add 1000 to the existing number. For example, if you're creating an upgrade for Cable/0476, you might use 1476 as the Setup Code. It's acceptable to use the same number as a built-in code, however, this precludes using the built-in code on the remote itself, since upgrades in EEPROM are used before those built-in. |
|---|---|
| Upgrade Notes | You can use this area to more accurately describe what your upgrade is, what it does, how it does it, etc. Again, this is useful as we share these files with others. Want to leave it blank? Go ahead, that's ok, too. |
| Protocol | Use the drop-down list to select the desired protocol to be used by the upgrade. If a protocol has been recognized, it's probably available in Remote Master (the vast majority of devices use only a handful of protocols). |
| Protocol ID | Shows the Protocol ID (PID) of the protocol selected above. This value cannot be changed directly. |
| Protocol Parameters | Protocols generally require some device level parameters (some don't require any). These are the codes sent at the start of every IR (infrared) data stream, sort of like a "header". RM will provide hints as to what needs to be entered for a given protocol. These hints will appear as fly-over help when the mouse pointer is held over the input area for a short period of time. |
| Protocol Notes | Provides a brief description and help notes for certain selected protocols. |
At this point, you're ready to proceed to the Functions panel.
The Functions Panel
Use this panel to define all the functions available for the device you are going to control. This is where you can enter the EFCs, OBCs, and other parameters specific to each command. Note that some of the command parameters are protocol specific, so not all of the columns available in each protocol will be documented here, only the ones that are used by all protocols.
The command parameter columns are often interdependent, so that entering a value in one column will often cause changes in other columns.
You can sort the table by any of the columns by clicking on the column header. This is useful for seeing if there are any missing EFCs or OBCs that you might want to try if you are searching for discrete codes. Click on the "#" column to restore the table to its natural order.
You can reorder the columns by simply dragging a column header to the desired location. Note, however that this reordering will not be preserved if you switch to another panel.
You can do some limited resizing of the columns by dragging the dividers between column headers. Note, however, that the resizing will not be preserved if you swtich to another panel.
| # | This is the function number, which is the order the functions have been defined. You cannot edit this value, however, you can drag the number up or down to change the functions's position in the list. |
|---|---|
| Name | This column contains some pre-defined function names. These can be used as is, or you can rename them to something more appropriate. |
| EFC | Enter the EFC (usually a 3-digit number from 000-255) for the corresponding function. |
| OBC | Enter the OBC usually a 3-digit number from 000-255) for he corresponding function. |
| Hex | Enter the raw hex for the command, as groups of 2 hex digits separated by spaces. For examaple "0C A9". You usually won't edit this field, you will let RM compute the value based on information entered in the other columns. |
| Description | Here, you can enter a brief description of the corresponding function for more clarity (and to help others who may use the file) |
In addition to entering data in the various cells of the table, you can manipulate the table using the buttons at the bottom, or by using the context menu.
| New | Add a new empty function. If no function is currently selected, the new function will be added at the bottom. If a function is selected, the new function will be inserted above the selected function. This can also be accomplished by using the context menu. Just right click where you want to add the new function, and select New. |
|---|---|
| Delete | Delete the currently selected function(s). Functions that have been assigned to buttons cannot be deleted. You can select multile functions. This can also be accomplished using the context menu. Simply right-click on the function you want to delete and select Delete. If the function you right-clicked on is one of many selected functions, all the functions will be deleted. |
| Move up | Move the selected function one position up the list. This can also be accomplished by dragging the function number. Only one function can be moved at a time. |
| Move down | Move the selected function one position down the list. This can also be accomplished by dragging the function number. Only one function can be moved at a time. |
| Copy | Copy the contents of the selected cells to the clipboard. This can also be accomplished using the context menu, by right-clicking on a groups of selected cells and selecting Copy |
| Paste | Paste the contents of the clipboard into the selected cell. This can also be accomplished using the context menu, by right-clicking on the cell in which you want to pasted, and selecting Paste. This can be useful for copying columns of information from KM to RM. |
The External Functions Panel
NOTE: This feature requires IR v3.12 or later. Key Moves will not be bound properly with earlier versions.
You may define functions that are actually commands from another Setup Code. For example, if you're creating an upgrade for TV/1000 and need a function or two from VCR/2000, you can specify the function parameters on the External Functions panel.
Other than the differnce in the data required to define an external function, the External Function panel is used in exactly the same way as the Functions panel. Refer to the Functions Panel for more information.
You can also import functions from an RM or KM device upgrade file. Use the Import button or the Import item on the context menu.
| Name | Enter a name for the function you are defining | ||||
|---|---|---|---|---|---|
| Device Type | Choose the device type of the setup code you want to use. | ||||
| Setup Code | Enter the 4-digit decimal Setup Code for the setup code you want to use | ||||
| Type | Choose the type of data you are going to use to enter the command for the function.
|
||||
| EFC/Hex | Enter the command data. The format is determined by the Type value.
|
||||
| Notes | Enter a description of the function, if desired. |
The Buttons Panel
The last step (in theory anyway) to building a Device Upgrade is to assign the defined Functions to specific Buttons. You do this on the Buttons panel.
The Buttons panel is split in two parts. On the left is a table listing the buttons available on the remote. This table consists of 3 columns:
| Button | The name of the button. If the name is displayed in red, it means that no functions have been assigned to it. If the name has an asterisk (*) at the end, it means that the button is NOT in the keymap for the current device type, and any function assigned to the button will generate a keymove. |
|---|---|
| Function | The name of the function assigned to the normal state of the button. If the cell for a particular button is grey, assignment in not allowed. |
| Shift | The name of the function assgined to the shifted state of the button. If the cell for a particular button is grey, assignment in not allowed. Functions assigned to shifted buttons are almost always turned into keymoves, since very few keymaps have shifted buttons in them. |
| XShift | The name of the function assgined to the XShifted state of the button. If the cell for a particular button is grey, assignment in not allowed. This column is only shown for this remotes that support it, and it may have a different name, depending on the remote. |
On the right is the list of functions (normal or external) that are available. Functions with red names have not been assigned to any button.
There are 4 different ways to assign functions to buttons. Use whichever you like better:
- Use the Auto assign button to automatically match functions to buttons by name. Buttons that already have functions assigned will not get reassigned.
- Use the context menu (right-click) in a cell where you want to assign a function, then click the desired function in the context menu.
- Drag-n-drop a function onto the desired cell.
- Highlight the cell where you want to assing a function by clicking on it, then double-click the function you want to assign to it.
The Layout Panel
The Layout panel works very much like the Buttons panel, except that instead of presenting the buttons in a table, the Layout panel presents them visually, using an image of the selected remote. Rather than indicate the buttons that are NOT in the keymap for the current device type using an asterisk, the Layout panel shows you than buttons that ARE in the keymap by outlining them in orange. Since there aren't multiple physical buttons to represent the shift states of the buttons, you choose the shift state by selecting one of the Mode radio buttons.
The Layout panel shows information about the buttons in various ways:
- Buttons will display their names in a fly-over window when you hold the mouse pointer over them.
- Buttons with functions assigned will be drawn in yellow.
- Buttons in the keymap for the current device type will be outlined in orange.
- The selected button will be outlined in white. The Button: field will show the name of the selected button, and the Function: field will show the name of the assigned function.
There are 4 different ways to assign functions to buttons. Use whichever you like:
- Use the Auto assign button to automatically match functions to buttons by name. Buttons that already have functions assigned will not get reassigned.
- Use the context menu (right-click) in a cell where you want to assign a function, then click the desired function in the context menu.
- Drag-n-drop a function onto the desired cell.
- Highlight the cell where you want to assing a function by clicking on it, then double-click the function you want to assign to it.
The Key Map Panel
The Key Map panel is designed to be printed as a hard copy reference for the current device upgrade. It lists all the buttons that have functions assigned in the Normal, Shifted, and XShifted (if supported by the remote) states.
The Output Panel
This panel contains the upgrade code to be pasted into IR.
| Device Upgrade Code | This text area doesn't allow any
data entry, and for good reason. It's where the calculated
Device Upgrade Code is displayed. Once you've entered all the
necessary information on the Setup, Functions, and Buttons
panels, this will
be the code that you copy and paste into IR's Devices tab.
The Key Move feature of RM can combine Key Move code as part of the Device Upgrade Code. This occurs when buttons that are not part of the selected device's "key map" are assigned functions on the Buttons or Layout panels. To copy the Device Upgrade Code to the Windows clipboard for pasting into the IR Devices tab, press the Copy button or use the context menu (right-click and select Copy). |
|---|---|
| Upgrade Protocol Code | Again, no data entry is allowed here. As RM works its
magic, if it determines that the selected remote also requires a
protocol upgrade, it will display the necessary code here. In
that case, you will see a highlighted prompt that says
Upgrade Protocol Code *** REQUIRED *** This is a reminder to copy and paste this code into IR's Protocols tab. If you create a Device Upgrade that requires Protocol Code as well, and don't add it into IR, your upgrade most likely won't work. To copy the Protocol Code to the Windows clipboard for pasting into the IR Protocols tab, press the Copy button or use the the context menu (right-click and select Copy). |