A system and method for creating a controlling device. In response to a
user specifying one or more operating criteria for the controlling device,
the system selects executable instructions from a library of executable
instructions and command code sets from a library of command code sets
that are to be stored in the memory of the controlling device. In
addition, the system uses the criteria to suggest command key/command code
mappings for use within the controlling device. The user may interact with
the system to modify the selected executable instructions, command code
sets, and command key/command code mappings. When stored in the memory of
the controlling device, the executable instructions are to be used to
perform various operations and functions within the controlling device and
the command codes are to be transmitted from the controlling device to
command the operation of controllable devices in response to activation of
one or more of the command keys.