WO2006029106A2 - Configurable controlling device having an associated editing program - Google Patents

Configurable controlling device having an associated editing program Download PDF

Info

Publication number
WO2006029106A2
WO2006029106A2 PCT/US2005/031598 US2005031598W WO2006029106A2 WO 2006029106 A2 WO2006029106 A2 WO 2006029106A2 US 2005031598 W US2005031598 W US 2005031598W WO 2006029106 A2 WO2006029106 A2 WO 2006029106A2
Authority
WO
WIPO (PCT)
Prior art keywords
controlling device
gui
user interface
recited
gui page
Prior art date
Application number
PCT/US2005/031598
Other languages
French (fr)
Other versions
WO2006029106A3 (en
Inventor
Wayne Scott
Christopher Alan Chambers
Cheryl Scott
Han-Sheng Yuh
Ramzi Ammari
Original Assignee
Universal Electronics Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universal Electronics Inc. filed Critical Universal Electronics Inc.
Publication of WO2006029106A2 publication Critical patent/WO2006029106A2/en
Publication of WO2006029106A3 publication Critical patent/WO2006029106A3/en

Links

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C23/00Non-electrical signal transmission systems, e.g. optical systems
    • G08C23/04Non-electrical signal transmission systems, e.g. optical systems using light waves, e.g. infrared
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • G08C17/02Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42226Reprogrammable remote control devices
    • H04N21/42227Reprogrammable remote control devices the keys being reprogrammable, e.g. soft keys
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/20Binding and programming of remote control devices
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/20Binding and programming of remote control devices
    • G08C2201/21Programming remote control devices via third means
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/30User interface
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C2201/00Transmission systems of control signals via wireless link
    • G08C2201/90Additional features
    • G08C2201/92Universal remote control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • H04N21/42206User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
    • H04N21/42224Touch pad or touch panel provided on the remote control
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/961Operator interface with visual structure or function dictated by intended use
    • Y10S715/965Operator interface with visual structure or function dictated by intended use for process control and configuration
    • Y10S715/966Computer process, e.g. operation of computer
    • Y10S715/967Visual or iconic programming

Definitions

  • the following relates generally to controlling devices and, more particularly, to a configurable controlling device having an associated editor program for use in configuring, among other things, the user interface of the controlling device.
  • Editor programs for configuring a cqntrolling device such as a hand held remote control, are known in the art.
  • U.S. Patent No. 6,211,870 illustrates and describes a controlling device which is programmable from a PC using an advanced, object-oriented user interface. More particularly, multiple user selectable screen objects may be created on the PC and transferred to the controlling device.
  • the screen objects include screen layout and descriptions of soft keys to be displayed on a graphic display of the controlling device, as well as commands associated with the screen object, the soft keys and/or the programmable keys on the remote control unit.
  • WO 00/39772 discloses a universal, programmable remote control device which has programming that enables an end-user to customize the remote control device through editing or programming of the control functionalities of the remote control device.
  • the programming is achieved via a PC.
  • the control configuration created via an editor on the PC can be downloaded into the device.
  • the PC has emulator software to test the configuration before downloading.
  • WO 00/39772 generally discloses the editor for the Philips' "Pronto" remote control. While these known controlling devices and associated editor programs do work for their intended purpose, a need remains for an improved controlling device having an improved, associated editor program for use in configuring the controlling device.
  • the following generally discloses an editor program for use in configuring a user interface of a controlling device, such as a hand-held remote control unit.
  • the editor program allows a consumer to create on a personal computer for downloading to a controlling device a graphical user interface comprised of user interface pages having icons which icons, when activated on the controlling device, cause the controlling device to perform a function, such as to transmit a command to an appliance, to change the user interface page being displayed, etc.
  • the editor program advantageously provides, among other things, for the visualization of links created between user interface pages, single step assigning of commands to logical groups of function keys (both iconic and hard keys), single step assigning of backgrounds to groups of user interface pages, and pre-rendering of user interface pages prior to downloading of the user interface to the controlling device.
  • Figure 1 illustrates an exemplary home entertainment system in which the exemplary controlling devices may be utilized
  • Figure 2 illustrates a block diagram of components of an exemplary controlling device
  • Figures 3a and 3b illustrate exemplary editing systems which may be used to configure and download the configuration, including a user interface, to an exemplary controlling device
  • FIG. 4 illustrates an exemplary home page graphical user interface ("GUI") for the touch screen of a controlling device
  • GUI home page graphical user interface
  • ngure D illustrates an exemplary device selection page GUI for the touch screen of a controlling device
  • Figure 6 illustrates an exemplary device control page GUI for the touch screen of a controlling device
  • Figure 7 illustrates another exemplary device control page GUI for the touch screen of a controlling device
  • Figure 8 illustrates yet another exemplary device control page GUI for the touch screen of a controlling device
  • Figure 9 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUI of Figure 4.
  • Figure 10 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUI of Figure 7;
  • Figure 11 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUI of Figure 8
  • Figure 12 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUT of Figure 5;
  • Figure 13 and 14 illustrate an exemplary site mapping feature of a PC-based editor used to create GUIs for a controlling device
  • Figure 15 provides an enlarged view of the site map panel shown in Fig 14;
  • Figures 16 and 17 illustrate an exemplary key function mapping method for a PC- based editor used to create GUIs for a controlling device;
  • Figure 18 illustrates a further, exemplary key function mapping method
  • Figure 19 illustrates an exemplary method for assigning a background graphic to GUI pages(s) of a controlling device
  • Figures 20 and 21 illustrate further, exemplary methods for assigning a background graphic to GUI pages(s) of a controlling device
  • Figure 22 illustrates an exemplary method of downloading project files created using the PC-based editor to the controlling device.
  • Figures 23 through 26 illustrate an exemplary container file and associated sets of data structures suitable for storing an editable GUI as a local file on a PC.
  • Fig. 1 illustrates an exemplary system including controllable appliances, such as a set top box ("STB") 104, a DVD player 106, an audio amplifier/receiver 108 and a television 102, as well as a controlling device 100.
  • the controlling device 100 is capable of transmitting commands to the appliances, using any convenient IR, RF, Point- to-Point, or networked protocol, to cause the appliances to perform operational functions.
  • controllable appliances can include, but are not limited to, televisions, VCRs, DVRs, DVD players, cable or satellite converter set-top boxes (STBs), amplifiers, CD players, game consoles, home lighting, drapery controls, fans, HVAC systems, thermostats, personal computers, etc., and, as such, the instant exemplary disclosures are not intended to be limiting as to type or quantity of controllable appliances or equipment.
  • the controlling device 100 of the exemplary system may include, as needed for a particular application, a processor 200 coupled to a memory device (such as ROM memory 204, RAM memory 202, and/or a non-volatile memory 206), a key matrix 216 (e.g., physical buttons, a touch sensitive display with soft keys, or a combination thereof), an internal clock and timer 222, an IR (or RF) transmitter 208 for issuing commands to controlled appliances, RF (or IR) wireless transmission and reception circuit(s) 210, 212 and/or a physical input/output interface 224 for use in transferring data between the controlling device and external computing devices such as a PC, a network interface, etc., a means 218 to provide visual feedback to the user (e.g., LCD display or the like, which may underlay all or part of a touch sensitive portion of key matrix 216), a means 220 to provide audio feedback (speaker,
  • a processor 200 coupled to a memory device (such as ROM memory 204
  • the non-volatile read/write memory 206 for example an EEPROM, battery- backed up RAM, Smart Card, memory stick, or the like, may be provided to store setup data and parameters as necessary. It is to be additionally understood that the memory devices may take the form of any type of readable media, such as, for example, ROM, RAM, SRAM, FLASH, EEPROM, Smart Card, memory stick, a chip, a hard disk, a magnetic disk, and/or an optical disk. Still further, it will be appreciated that some or all of the illustrated memory devices 202, 204, and 206 may be physically incorporated within the same IC chip as the microprocessor 200 (a so called "microcontroller") and, as such, they are shown separately in Fig. 2 only for the sake of clarity.
  • the microprocessor 200 a so called "microcontroller”
  • the controlling device 100 is adapted to be responsive to events, such as a sensed user interaction with the key matrix 216, receipt of a data or signal transmission, etc.
  • appropriate instructions within the memory may be executed. For example, when a command key is activated on the controlling device 100, the controlling device 100 may retrieve a command code corresponding to the activated command key from memory 204 or 206 and transmit the command code to a device in a format recognizable by the device.
  • the instructions within the memory can be used not only to cause the transmission of command codes and/or data to the appliances but also to perform local operations.
  • controlling device 100 While not limiting, other local operations that may be performed by the controlling device 100 include execution of pre-programmed macro command sequences, displaying information/data, manipulating the appearance of a graphical user interface presented on a local LCD display 218, etc.
  • U.S. Patent Application 10/288,727 entitled "User Interface for a Hand Held Remote Control Device,” which is hereby incorporated by reference in its entirety, provides further detail which will not be repeated herein for the sake of brevity.
  • the software programming of controlling device 100 may utilize an underlying operating system such as, for example, Microsoft's Windows CE product.
  • GUI graphical user interface
  • certain functionalities of controlling device 100 may be defined via a software based editing tool 300 which may be supplied as an application program to be installed on a PC 302 running an operating system, for example, Microsoft's Windows XP operating system, as generally illustrated in Figures 3a and 3b and described in further detail hereinafter.
  • an operating system for example, Microsoft's Windows XP operating system
  • Microsoft's basic building blocks may be used to support networking, messaging (including operating system related messaging), graphic elements, printing, file access, Web services, etc.
  • Syncfusion's suite may provide enhanced widgets such as tree control, docking panels, drag and drop handlers, Microsoft Office 2003 look and feel controls, etc.
  • Northwoods' library may provide diagram control which, for example, allows nodes and connectors to be depicted on a virtual drawing surface.
  • Editor application 300 may be offered by the manufacturer of the controlling device 100 on a CD ROM, for download from a Web site, etc., as appropriate for installation on a PC of the user's choice. Once the editor application is installed on the user' s PC 302, the controlling device GUI may be created or revised using the editor application, stored locally as a file 310 on PC 302 and/or caused to be downloaded into controlling device 100 via a hardwired docking station 304, a wireless link 306 (e.g., IEEE 802.11, Bluetooth, Zigbee, etc.) or any other convenient means.
  • a wireless link 306 e.g., IEEE 802.11, Bluetooth, Zigbee, etc.
  • the editor application 300 may also be adapted to access additional data items from remotely located servers via the Internet 308, from appliances linked to the PC 302 via a home network, etc.
  • additional data items may include, without limitation, IR command codes (e.g., to allow for support of new appliances), data which indicates operations supported by an appliance, device model number cross-references (e.g., for entering into the controlling device for set-up purposes as disclosed in, for example, U.S. Patent no. 6,587,067), operational software updates for controlling device 100, etc.
  • data may also be uploaded from PC 302 to a centralized repository, e.g., a remotely located, Internet accessible server.
  • uploaded information may include, for example, current user configurations, learned IR code data, etc., and may be comprised of or derived from data stored locally on PC 302 (for example, file 310) and/or data retrieved from controlling device 100 during the times controlling device 100 is coupled to PC 302.
  • Controlling device 100 may include both a touch activated LCD screen 218 with soft keys (or other form of touch panel) and several groups of hard buttons 414, 416, 418.
  • the hard button groups might comprise, for example, a volume control group 416 (e.g., volume up, down, and mute), a channel changing group 418 (e.g., channel up, down, and return), a navigation group embodied in disk 414 (e.g., for menu navigation and selection including up, down, left, right, and enter/select), and/or a row of programmable keys 420 (e.g., keys for supporting macros or other to-be-configured functions). Keys of the remote control having numerical labels (e.g., 0-9) may also be considered to be a logical group of keys that provide for digit entry operations.
  • a volume control group 416 e.g., volume up, down, and mute
  • a channel changing group 418 e.g., channel up, down, and return
  • a navigation group embodied in disk 414 e.g., for menu navigation and selection including up, down, left, right, and enter/select
  • an exemplary Home Page GUI 400 may be presented within the display.
  • the illustrated, exemplary home Page 400 includes six touch-activated keys.
  • touching icon 402 may be used to initiate the activity of watching cable TV by causing controlling device 100 to transmit the commands required to power on cable STB 104, power on TV 102, select the TV input to which the cable STB is connected, and then cause the controlling device GUI to transition to the page (e.g., display having soft keys, an EPG, or the like) from which cable STB channel selection may be input (for further tuning, retrieving related content information, etc.).
  • Touching icon 404 may be used to similarly cause the controlling device to place the entertainment system into a condition suitable for watching a DVD movie, while touching icon 406 may be used to cause the controlling device to place the system into a condition suitable for listening to music.
  • Touching icon 410 and 412 may be used to cause the controlling device to power on or off all (or a subset) of the system devices, respectively.
  • Touching icon 408 may be used to cause the controlling device to transition to another page 500 of the GUI, e.g., the GUI page illustrated in Figure 5, from where individual device control pages may be called up, i.e., navigated to, using icons 502 (cable STB), 504 (TV), 506 (DVR player) or 508 (audio receiver).
  • GUI page 600 having soft keys for use in controlling receiver input selection commands
  • Figure 7 GUI page 700 having soft keys for use in controlling DVD transport functions
  • Figure 8 GUI page 800 having soft keys for controlling DVD slow motion controls.
  • activation of the "Slow" icon 702 in the DVD transport control page 700 not only will cause the controlling device to transmit a "slow" command to the DVD player but may also automatically cause the controlling device to transition the GUI to the DVD slow motion control page 800 (Fig. 8) in connection with the transmitting of the command.
  • Page 400 in this illustration together with a representation 922 of the hard keys ( keys 414 through 420) available on target controlling device 100;
  • Project View panel 904 used to display all currently defined GUI pages in a tree structure form (which may, as depicted in the exemplary embodiment show, have collapse [-] and expand [+] functionality including selective expansion of individual nodes and/or a collapse all/expand all feature) where the GUI page to be edited may be selected (e.g., by clicking on a link) from within the tree structure list and wherein the GUI page being displayed in the Main project panel 902 may be indicated by a highlight 918 (the Home Page in the instant illustration);
  • Properties panel 906 used to display a list of (and allow editing of - for example by text entry, selection from drop down menus, etc.) the properties (such as the caption text and font attributes, symbol position, button type, etc.) associated with a presently selected GUI icon or hard key image within Main project panel 902 (GUI icon or soft key 404' with label "DVD Movie" in this illustration, as indicated by the highlight (dotted line) around icon 404' displayed in Main project panel 902);
  • Gallery panel 908 used to display graphic images which may be dragged and dropped onto the GUI pages being edited wherein the Gallery choices may include sets of icons for use as buttons, page backgrounds, symbols for labeling buttons, key groups (to allow a group of related key icons, e.g. a numeric pad, to be dragged into place in a single operation),or to allow pre-defined themes to be applied to single pages or groups of pages and wherein the Gallery in use (when multiple, organized Galleries are provided) is selected via tabs 914 according to the exemplary embodiment shown; and
  • Actions panel 910 used to display a list of (and allow editing of - for example by dragging and dropping to change the order, by deleting selected items, etc.) the actions to be performed by controlling device 100 when the currently selected icon (in the Main panel 902) is activated by a user when the user interface is provided to the controlling device (e.g., in the example presented, it can be seen that activating the "DVD Movie” icon 404' will: (1) transmit a "Power On" command to DVD player 106, (2) transmit a "Power On” command to TV set 102, (3) wait one second for the devices to stabilize, then (4) transmit a "Component 2" input selection command to TV 102, (5) transmit "DVD” input selection command to Audio Receiver 108, and finally (6) jump to GUI page 700 corresponding to the DVD transport controls (illustrated in Fig.
  • Devices panel 912 is preferably used to display a listing of all remote control commands available for each of the appliances setup to be controlled by controlling device 100 wherein the list of commandable functions for a given appliance to be displayed may be selected from a drop down list 916 (which in the illustrative example would comprise a TV 102, a cable STB 104, a DVD player 106, and an audio receiver 108) and wherein the commandable functions so displayed may be assigned to any icon displayed in main project panel 902 by simply clicking and dragging a commandable function icon to, for example, a desired location with a listing of functions displayed in the Actions panel 910 and/or over an icon displayed in the Main panel (where it would be added, for example, to the top or bottom of the listing of commands within the Action panel display).
  • a drop down list 916 which in the illustrative example would comprise a TV 102, a cable STB 104, a DVD player 106, and an audio receiver 108
  • the commandable functions so displayed may be assigned to any icon
  • GUI page 700 has been loaded for editing by clicking on the appropriate entry icon 700' in the tree listing within Project View panel 904, it is seen that, in response to the selection of the "Slow" icon 702' in the Main panel, the Actions panel display 1002 shows a listing of the actions to be performed by the controlling device 100 when this icon is activated, i.e. transmit a "Slow" command to the DVD player and then jump to the DVD slow motion control page, as previously described in conjunction with Figure 7.
  • Figure 11 illustrates a DVD slow motion control page 800' (instantiated in response to the selection of the "Samsung DVD”/ "DVD slow” entry icon 800") and the actions to be performed by the controlling device 100 when the "Play" icon 802' is activated, i.e., transmit a "Resume normal speed play” command to the DVD player and jump to the DVD transport control page 700, as previously described in conjunction with Figure 8.
  • the listing of functional commands 1102 is instantiated in response to the user selecting the "play” icon 802' .
  • Figure 12 illustrates the editor representation of the devices GUI page of Figure 5.
  • the icons on this page are used to jump directly to the individual device control page sets.
  • the exemplary selected icon 508' is programmed to send no commands, but rather to simply jump directly to the first page of the audio receiver page set 600", corresponding to Figure 6 in the illustrated examples.
  • GUI definition file 310 corresponding to one editing project
  • file 310 may comprise a container for other files.
  • cabinet file 310 holds a number of XML files and a single resource file which together serve to define a controlling device GUI and its attributes.
  • Project file 2302 may comprise several sections, for example a ProjectSettings section 2400 ( Figure 24) which may contain system metadata and settings for controlling device 100, for example default backlight timeouts, display brightness, passwords, etc.
  • the ProjectSettings section 2400 may also include a record of the location(s) from which various resources (button widgets, etc.) used in creating the GUI were drawn.
  • Project file 2302 may include further sections such as, for example, a tabulation of global objects such as macros, an index listing of top-level objects, a manifest of all resources available, etc.
  • Sitemap file 2304, illustrated in Figure 25, may contain data regarding nodes and edges used to construct a sitemap view of the GUI project (as described in more detail hereinafter).
  • Page file root node 2600 may contain, for example, a page name 2602, data 2604 regarding the background image to be used for the page, information 2606 regarding properties inherited from other pages in the same group, etc. Also contained in exemplary root node 2600 may be a list of child nodes, one for each widget on the page, where a widget may be a button, key guide, etc.
  • a button node 2610 may contain information regarding button image; label font, size, and placement; actions associated with the button, etc. It will also be noted that node 2610 includes child nodes 2612 and 2614 (MDA and MUA) which correspond to button down action and button up action respectively.
  • Resources file 2316 is a standard Microsoft Windows .NET resource file containing all the resources (images) used by the GUI project. Site mapping. While the ability to empower any icon on any controlling device GUI page to transition to another page in the manner described above is powerful feature, it will be appreciated that these linkages between pages may become very complex and difficult to manage, particularly if the only way to visualize them is by flipping back and forth from page to page and examining the actions assigned to each and every key, e.g., by reviewing the page jumping operations that would be shown in the Actions panel. Accordingly, an additional feature is provided within editor 300 to assist the user in managing these assignments. Turning to Figures 13 and 14, an additional Site Map panel may be invoked by selecting the appropriately labeled element 1304 in drop down menu 1302.
  • Site Map panel 1402 instantiates a visual representation 1402 of the linkages and associations between the various pages of the controlling device GUI currently being edited.
  • the exemplary contents of Site Map panel 1402 are shown enlarged for clarity in Figure 15.
  • Home Page 400 comprises linkages 1502 to the Audio Receiver pages, 1504 to the Cable STB pages, and 1506 to the DVD device pages. It also has a link 1508 to Device Control page 500.
  • Home Page 400 does not, however, link directly to the TV device pages.
  • Site Map view 1402 depicts only transitions from one GUI page to another.
  • link 1510 is labeled "Play” and link 1512 is labeled “Slow.” While the visual representation of the link is a link provided to illustrate the linked connection between the pages, it will be appreciated that other forms of visually representing the linked connection are contemplated. Additionally, in certain embodiments provision may be made for all or part of such a Site Map representation to be output in hard copy format, either alone or combined with other GUI project data, in the form of maintenance documentation, user manuals, etc.
  • editor 300 is to drag an icon from the Gallery panel 908 onto the control surface being edited within the Main display panel, and then dragging a desired command function from the list displayed in the Device panel 912 onto that icon and/or into the Actions panel, thereby associating activation of that touch screen location with the corresponding page with issuance of the command function.
  • the desired command function is simply dragged onto the appropriate hard key image already displayed in Project panel 902. While allowing great flexibility in GUI design, it will be appreciated that this method may become tedious when large numbers of keys need to be configured. Accordingly, editor 300 additionally supports a key grouping concept.
  • buttons 416 of the controlling device 100 may be desirable, while watching a DVD movie, to have the controlling device 100 configured such that activations of the volume control buttons 416 of the controlling device 100 transmit volume control command functions to the Audio Receiver 108, since it is likely that the sound will be playing back through that appliance.
  • these buttons may be configured one by one by first selecting the root 1604 of the DVD device page set in the Project View tree, then selecting the Audio Receiver device 1608 from the Device panel drop down list 1606 (it will be noted that 1606 is the expanded form of 916), and finally dragging the desired functions individually onto buttons 416'.
  • the device icon 1702 itself may be clicked and dragged across to keys 416' .
  • the editor 300 may immediately assign the appropriate commands to each of the keys within the group as part of this single, described action.
  • hard keys 414 through 420 behave consistently (i.e., command the same operational function) across all pages of a device page set.
  • such behavior may be configurable by the user as an option within editor 300 either as a global parameter, individually by device, as a default which may be overridden on particular pages, etc.
  • these keys are set for consistent behavior and their configuration may, therefore, be performed only once for each device page set through selection of the root page, 1604 in the example above.
  • a comparison of Figures 16 and 10, for example, will reveal that when an individual page within a device page set is selected, e.g. 700" in Figure 10, hard button display 922 may be thus "grayed out", i.e., shown as not available for assignment, whereas when a root page is selected, e.g., 1604 in Figure 16, hard button display 922 may be displayed at full intensity, i.e., be shown as available for assignment.
  • Figure 18 illustrates another use of key grouping.
  • the controlled equipment configuration is such that all television programming is received via cable, i.e., all channel tuning for the home theater of the consumer is performed by the cable STB 104 and the TVs built-in tuner is, therefore, unused.
  • the TV digits page 1808 may be selected from the Project View tree and a digit key group defined, either by selecting the Key Group Gallery 1810 for display in Gallery Panel 908 and dragging a digit group 1806 onto the control surface 902 or, in the event a group of keys are already defined in that page by dragging the cursor around the entire group or otherwise indicating a selection of the "TV Digits" page (for example by clicking on the top window bar of the "TV Digits" page itself).
  • each of the keys within the group e.g., zero through nine
  • each of the keys within the group e.g., zero through nine
  • the device icon 1802 representing the cable STB may now be clicked and dragged 1804 onto the selected key group in order to effect the desired command function assignment in a single step. While such drag and drop operations are typically performed by dragging and dropping a copy of an icon image, it will be understood that the drag and drop operation could be equally performed by dragging and dropping the icon image itself.
  • logical key groupings as contemplated herein will generally be groups of associated keys selected by the user for assignment of corresponding commands (e.g. volume key groupings, channel key groupings, input selection key groupings, etc), any key grouping able to be selected or designated by a user via the editor 300 and to which commands may be automatically assigned/mapped by the editor programming will also be understood as a logical key grouping as described and claimed herein.
  • commands e.g. volume key groupings, channel key groupings, input selection key groupings, etc
  • any key grouping able to be selected or designated by a user via the editor 300 and to which commands may be automatically assigned/mapped by the editor programming will also be understood as a logical key grouping as described and claimed herein.
  • a user may select or define customized collections of keys as logical groups for the purpose of moving or copying functions across pages, etc.
  • editor 300 supports the assignment of a background graphic to each GUI page.
  • the basic method of assigning such a background graphic is illustrated in Figure 19.
  • the Gallery panel 908 is caused to display the currently available background graphics by selecting tab 1902.
  • the desired background graphic 1904 may then be then dragged onto the desired GUI page 1906.
  • the background of Home Page 400 is modified by dragging the "Kids 2" background graphic 1904 onto it, resulting in new Home Page appearance 1910.
  • the page representation 1912 in the Project View tree structure also changes appropriately. As before, while allowing great flexibility in GUI design, it will be appreciated that this method may become tedious when large numbers of items need to be configured. Accordingly, editor 300 additionally supports background inheritance.
  • a background graphic may be dragged onto any node of the structure presented in the Project View panel 904 to immediately update that node and all nodes lower than it in the hierarchy.
  • background graphic 1904 is dragged onto Master Page node 2002, thereby changing the background graphic of every GUI page in the controlling device (since these GUI pages are all leafs under the Master Page node 2002 within the tree structure) as can be seen by examination of the resulting Project View panel display 2004.
  • background graphic 1904 is dragged onto a root device page 2102 corresponding to the cable STB device, thereby changing the background graphic of all pages in the page set related to the cable STB device (i.e., those leaf pages under the root device page 2102 within the tree structure) as is apparent by examination of updated Project View panel display 2104. Pre-processing prior to downloading GUI to controlling device.
  • editor program 300 When the user of exemplary editor program 300 initiates the download of a newly-edited GUI to controlling device 100 by clicking tab 2202 illustrated in Figure 22, it may be desirable to have editor program 300 first pre-process the PC-resident descriptive data (as exemplified by file 310) into a form which may be more efficiently used within controlling device 100. This may be accomplished by way of a pause 2204 during which pre-processing is performed before commencing the download process 2206.
  • file 310 may be parsed to remove elements which are necessary only for features offered to support the PC editing process.
  • the Sitemap XML file may eliminated from the download, since this supports editor-only feature 1402.
  • individual resource files may be generated for each page instead of a single Windows format Resources file in order to improve efficiency of operation with controlling device 100.
  • image quality may be reduced (thereby reducing the amount of memory storage required) with no discernable degradation.
  • a reduction to 25% of original quality may be possible when the controlling device only supports 16-bit color.
  • activatable gallery buttons and icons for use in creating GUI pages generally comprise two separate graphics: one representing the icon or button's normal or “up” state, and the other representing the icon or button's activated or “down” state.
  • controlling device 100 detects a user touch to an activatable area of the LCD screen, the corresponding button/icon graphic is changed from the "up” to the "down” form as an acknowledgement and confirmation of input.
  • the quiescent, or unactivated GUI state of each page may thus be viewed as a composite of many graphic elements: That is, comprising a background graphic upon which is overlayed a number of individual button/icon "up” state graphics.
  • buttons may be moved, added, deleted, resized, etc. at any time.
  • the quiescent state graphic of each page of the GUI may be regarded as fixed since button/icon locations are no longer alterable.
  • the only variable aspect is the "down" state of each button.
  • the PC-based editor 300 may pre-render the "up" state of the buttons/icons and background for each page into a single graphic element, including any associated graphical effects such as blending, anti-aliasing, fades, blurs, glows, shadows, etc as may be included for additional visual effect on the controlling device interface.
  • This method conserves memory and processing power and improves page-to-page display transition time on the relatively resource limited controlling device 100. Additionally, it allows use of the more powerful PC system to perform tasks such as reducing large graphics files to the correct size for the controlling device LCD display and processing graphic effects such as blending, anti-aliasing, fades, blurs, glows, shadows, etc.
  • the user interfaces described herein need not be limited to controlling devices but can be utilized in connection with any device having input elements wherein it is desired to convey information concerning such input elements.
  • the user interface may be utilized with devices such as calculators, phones, appliances, etc. having input elements having associated information conveying images in the form of alphanumeric and/or symbolic labels.
  • the particular concepts disclosed are meant to be illustrative only and not limiting as to the scope of the invention which is to be given the full breadth of the appended claims and any equivalents thereof.

Abstract

A configurable controlling device (100) and associated editor program that allows a consumer to create on a personal computer (302) for downloading to the controlling device a user interface (400) comprised of user interface pages having icons which icons, when activated on the controlling device, cause the controlling device to perform a function, such as to transmit a command to an appliance, to change the user interface page being displayed, etc. The editor program allows for the visualization of links (1502-1512) created between user interface pages (400, 500, 600, 700, 800), single step assigning of commands to logical groups of function keys (both iconic and hard keys), single step assigning of backgrounds to groups of user interface pages (400, 500, 600, 700, 800), and pre-rendering of user interface pages prior to the downloading of the user interface (400) to the controlling device (100).

Description

CONFIGURABLE CONTROLLING DEVICE HAVING AN ASSOCIATED EDITING PROGRAM
RELATED APPLICATION INFORMATION
This application claims the benefit of U.S. Provisional Patent Application Nos. 60/608,183 filed on September 8, 2004 (attorney docket no. 81230.109US1) and 60/705,926 filed on August 5, 2005 (attorney docket no. 81230.109US2), both of which are incorporated herein by reference in their entirety.
BACKGROUND
The following relates generally to controlling devices and, more particularly, to a configurable controlling device having an associated editor program for use in configuring, among other things, the user interface of the controlling device. Editor programs for configuring a cqntrolling device, such as a hand held remote control, are known in the art. For example, U.S. Patent No. 6,211,870 illustrates and describes a controlling device which is programmable from a PC using an advanced, object-oriented user interface. More particularly, multiple user selectable screen objects may be created on the PC and transferred to the controlling device. The screen objects include screen layout and descriptions of soft keys to be displayed on a graphic display of the controlling device, as well as commands associated with the screen object, the soft keys and/or the programmable keys on the remote control unit. The user may then select any of the screen objects once they have been transferred to the controlling device to control the operation of various appliances. Similarly, PCT published application no. WO 00/39772 discloses a universal, programmable remote control device which has programming that enables an end-user to customize the remote control device through editing or programming of the control functionalities of the remote control device. The programming is achieved via a PC. In this manner, the control configuration created via an editor on the PC can be downloaded into the device. It is additionally disclosed that the PC has emulator software to test the configuration before downloading. It is to be understood that WO 00/39772 generally discloses the editor for the Philips' "Pronto" remote control. While these known controlling devices and associated editor programs do work for their intended purpose, a need remains for an improved controlling device having an improved, associated editor program for use in configuring the controlling device.
SUMMARY
In accordance with this and other needs, the following generally discloses an editor program for use in configuring a user interface of a controlling device, such as a hand-held remote control unit. The editor program allows a consumer to create on a personal computer for downloading to a controlling device a graphical user interface comprised of user interface pages having icons which icons, when activated on the controlling device, cause the controlling device to perform a function, such as to transmit a command to an appliance, to change the user interface page being displayed, etc. The editor program advantageously provides, among other things, for the visualization of links created between user interface pages, single step assigning of commands to logical groups of function keys (both iconic and hard keys), single step assigning of backgrounds to groups of user interface pages, and pre-rendering of user interface pages prior to downloading of the user interface to the controlling device.
The various advantages, features, properties and relationships of this improved user interface editor will be obtained from the following detailed description and accompanying drawings which set forth illustrative embodiments which are indicative of the various ways in which the principles thereof may be employed.
BRIEF DESCRIPTION OF THE DRAWINGS
For use in better understanding the exemplary controlling devices and editor program described hereinafter reference may be had to the following drawings in which:
Figure 1 illustrates an exemplary home entertainment system in which the exemplary controlling devices may be utilized;
Figure 2 illustrates a block diagram of components of an exemplary controlling device; Figures 3a and 3b illustrate exemplary editing systems which may be used to configure and download the configuration, including a user interface, to an exemplary controlling device;
Figure 4 illustrates an exemplary home page graphical user interface ("GUI") for the touch screen of a controlling device; ngure D illustrates an exemplary device selection page GUI for the touch screen of a controlling device;
Figure 6 illustrates an exemplary device control page GUI for the touch screen of a controlling device; Figure 7 illustrates another exemplary device control page GUI for the touch screen of a controlling device;
Figure 8 illustrates yet another exemplary device control page GUI for the touch screen of a controlling device;
Figure 9 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUI of Figure 4;
Figure 10 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUI of Figure 7;
Figure 11 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUI of Figure 8; Figure 12 illustrates an exemplary PC-based editor used to create the appearance and functionality of the GUT of Figure 5;
Figure 13 and 14 illustrate an exemplary site mapping feature of a PC-based editor used to create GUIs for a controlling device;
Figure 15 provides an enlarged view of the site map panel shown in Fig 14; Figures 16 and 17 illustrate an exemplary key function mapping method for a PC- based editor used to create GUIs for a controlling device;
Figure 18 illustrates a further, exemplary key function mapping method;
Figure 19 illustrates an exemplary method for assigning a background graphic to GUI pages(s) of a controlling device; Figures 20 and 21 illustrate further, exemplary methods for assigning a background graphic to GUI pages(s) of a controlling device;
Figure 22 illustrates an exemplary method of downloading project files created using the PC-based editor to the controlling device; and
Figures 23 through 26 illustrate an exemplary container file and associated sets of data structures suitable for storing an editable GUI as a local file on a PC.
DETAILED DESCRIPTION
The following discloses a controlling device having a face panel on which is carried a user interface activatable to cause transmission of at least one command to at ieast one appliance, iurning now to the figures, wherein like reference numerals refer to like elements, Fig. 1 illustrates an exemplary system including controllable appliances, such as a set top box ("STB") 104, a DVD player 106, an audio amplifier/receiver 108 and a television 102, as well as a controlling device 100. The controlling device 100 is capable of transmitting commands to the appliances, using any convenient IR, RF, Point- to-Point, or networked protocol, to cause the appliances to perform operational functions. While illustrated in the context of a STB 104 with DVD player 106, audio system 108 and television 102, it is to be understood that controllable appliances can include, but are not limited to, televisions, VCRs, DVRs, DVD players, cable or satellite converter set-top boxes (STBs), amplifiers, CD players, game consoles, home lighting, drapery controls, fans, HVAC systems, thermostats, personal computers, etc., and, as such, the instant exemplary disclosures are not intended to be limiting as to type or quantity of controllable appliances or equipment.
Turning now to Figure 2, for use in transmitting command codes to one or more of the appliances, the controlling device 100 of the exemplary system may include, as needed for a particular application, a processor 200 coupled to a memory device (such as ROM memory 204, RAM memory 202, and/or a non-volatile memory 206), a key matrix 216 (e.g., physical buttons, a touch sensitive display with soft keys, or a combination thereof), an internal clock and timer 222, an IR (or RF) transmitter 208 for issuing commands to controlled appliances, RF (or IR) wireless transmission and reception circuit(s) 210, 212 and/or a physical input/output interface 224 for use in transferring data between the controlling device and external computing devices such as a PC, a network interface, etc., a means 218 to provide visual feedback to the user (e.g., LCD display or the like, which may underlay all or part of a touch sensitive portion of key matrix 216), a means 220 to provide audio feedback (speaker, buzzer, etc.) and a power supply 214 all as generally illustrated in Fig. 2. As will be understood by those of skill in the art, the memory device(s) may include executable instructions that are intended to be executed by the processor 200 to control the operation of the controlling device 100.
The non-volatile read/write memory 206, for example an EEPROM, battery- backed up RAM, Smart Card, memory stick, or the like, may be provided to store setup data and parameters as necessary. It is to be additionally understood that the memory devices may take the form of any type of readable media, such as, for example, ROM, RAM, SRAM, FLASH, EEPROM, Smart Card, memory stick, a chip, a hard disk, a magnetic disk, and/or an optical disk. Still further, it will be appreciated that some or all of the illustrated memory devices 202, 204, and 206 may be physically incorporated within the same IC chip as the microprocessor 200 (a so called "microcontroller") and, as such, they are shown separately in Fig. 2 only for the sake of clarity.
To cause the controlling device 100 to perform an action, the controlling device 100 is adapted to be responsive to events, such as a sensed user interaction with the key matrix 216, receipt of a data or signal transmission, etc. In response to an event, appropriate instructions within the memory may be executed. For example, when a command key is activated on the controlling device 100, the controlling device 100 may retrieve a command code corresponding to the activated command key from memory 204 or 206 and transmit the command code to a device in a format recognizable by the device. It will be appreciated that the instructions within the memory can be used not only to cause the transmission of command codes and/or data to the appliances but also to perform local operations. While not limiting, other local operations that may be performed by the controlling device 100 include execution of pre-programmed macro command sequences, displaying information/data, manipulating the appearance of a graphical user interface presented on a local LCD display 218, etc. In this context, co- pending U.S. Patent Application 10/288,727 entitled "User Interface for a Hand Held Remote Control Device," which is hereby incorporated by reference in its entirety, provides further detail which will not be repeated herein for the sake of brevity. For convenience and economy of development effort, the software programming of controlling device 100 may utilize an underlying operating system such as, for example, Microsoft's Windows CE product.
As contemplated in the above referenced and related provisional applications 60/608,183 and 60/705,926, the graphical user interface ("GUI") and certain functionalities of controlling device 100 may be defined via a software based editing tool 300 which may be supplied as an application program to be installed on a PC 302 running an operating system, for example, Microsoft's Windows XP operating system, as generally illustrated in Figures 3a and 3b and described in further detail hereinafter. In the illustrative examples that follow, it will be appreciated by those skilled in the art that development tools such as Microsoft's Visual Studio, the C# programming language, and third party libraries such as for example, those available from Syncfusion Inc. (Morrisville, North Carolina) and Northwoods Software (Nashua, New Hampshire) may be used to facilitate creation of the software comprising exemplary editing tool 300 and exemplary controlling device 100 GUI and functionality. In particular, Microsoft's basic building blocks may be used to support networking, messaging (including operating system related messaging), graphic elements, printing, file access, Web services, etc., while Syncfusion's suite may provide enhanced widgets such as tree control, docking panels, drag and drop handlers, Microsoft Office 2003 look and feel controls, etc., and Northwoods' library may provide diagram control which, for example, allows nodes and connectors to be depicted on a virtual drawing surface.
Editor application 300 may be offered by the manufacturer of the controlling device 100 on a CD ROM, for download from a Web site, etc., as appropriate for installation on a PC of the user's choice. Once the editor application is installed on the user' s PC 302, the controlling device GUI may be created or revised using the editor application, stored locally as a file 310 on PC 302 and/or caused to be downloaded into controlling device 100 via a hardwired docking station 304, a wireless link 306 (e.g., IEEE 802.11, Bluetooth, Zigbee, etc.) or any other convenient means. Additionally, it will be appreciated that the editor application 300, although primarily resident on the user's local PC 302, may also be adapted to access additional data items from remotely located servers via the Internet 308, from appliances linked to the PC 302 via a home network, etc. Examples of such items may include, without limitation, IR command codes (e.g., to allow for support of new appliances), data which indicates operations supported by an appliance, device model number cross-references (e.g., for entering into the controlling device for set-up purposes as disclosed in, for example, U.S. Patent no. 6,587,067), operational software updates for controlling device 100, etc. It will also be appreciated that in such an environment data may also be uploaded from PC 302 to a centralized repository, e.g., a remotely located, Internet accessible server. Such uploaded information may include, for example, current user configurations, learned IR code data, etc., and may be comprised of or derived from data stored locally on PC 302 (for example, file 310) and/or data retrieved from controlling device 100 during the times controlling device 100 is coupled to PC 302.
Certain aspects of the operation of exemplary controlling device 100 will now be discussed in conjunction with Figures 4 through 8. In this context, as will be appreciated by those skilled in the relevant art and/or familiar with the previously referenced, parent, U.S. provisional applications, the actual appearance and functionality of all the GUI pages in controlling device 100 represent only one instance of the output of editor application 300. It will thus be understood that the GUIs and associated functionality presented herein are by way of example only and not intended to be limiting in any way. Controlling device 100 may include both a touch activated LCD screen 218 with soft keys (or other form of touch panel) and several groups of hard buttons 414, 416, 418. The hard button groups might comprise, for example, a volume control group 416 (e.g., volume up, down, and mute), a channel changing group 418 (e.g., channel up, down, and return), a navigation group embodied in disk 414 (e.g., for menu navigation and selection including up, down, left, right, and enter/select), and/or a row of programmable keys 420 (e.g., keys for supporting macros or other to-be-configured functions). Keys of the remote control having numerical labels (e.g., 0-9) may also be considered to be a logical group of keys that provide for digit entry operations. Upon start of operation, or any time the "Home" button 422 (e.g., located on the side of the device) is activated, an exemplary Home Page GUI 400 may be presented within the display. The illustrated, exemplary home Page 400 includes six touch-activated keys. By way of example only, touching icon 402 may be used to initiate the activity of watching cable TV by causing controlling device 100 to transmit the commands required to power on cable STB 104, power on TV 102, select the TV input to which the cable STB is connected, and then cause the controlling device GUI to transition to the page (e.g., display having soft keys, an EPG, or the like) from which cable STB channel selection may be input (for further tuning, retrieving related content information, etc.). Touching icon 404 may be used to similarly cause the controlling device to place the entertainment system into a condition suitable for watching a DVD movie, while touching icon 406 may be used to cause the controlling device to place the system into a condition suitable for listening to music. Touching icon 410 and 412 may be used to cause the controlling device to power on or off all (or a subset) of the system devices, respectively. Touching icon 408 may be used to cause the controlling device to transition to another page 500 of the GUI, e.g., the GUI page illustrated in Figure 5, from where individual device control pages may be called up, i.e., navigated to, using icons 502 (cable STB), 504 (TV), 506 (DVR player) or 508 (audio receiver). Examples of individual device control pages are shown in Figure 6 (GUI page 600 having soft keys for use in controlling receiver input selection commands), Figure 7 (GUI page 700 having soft keys for use in controlling DVD transport functions), and Figure 8 (GUI page 800 having soft keys for controlling DVD slow motion controls). By way of further example of how GUI pages may be programmed to interrelate, activation of the "Slow" icon 702 in the DVD transport control page 700 (Fig. 7) not only will cause the controlling device to transmit a "slow" command to the DVD player but may also automatically cause the controlling device to transition the GUI to the DVD slow motion control page 800 (Fig. 8) in connection with the transmitting of the command. Similarly, touching the "play" icon 802 of the DVD slow motion control page 800 may cause the controlling device to transmit the "resume normal speed playback" command to the DVD player while causing the controlling device to transition the GUI back to DVD transport controls page 700. In this way it will be understood and appreciated that a plurality of commands and/or actions may be performed both locally on controlling device 100 and remotely on the various appliances under the control of controlling device 100 in response to a single or multiple interaction(s) by a user with the key matrix 216 of controlling device 100. Turning now to Figure 9, the operation of the editing program 300 used to create the above-disclosed, exemplary GUI pages and associated functionality will be described in further detail. For this purpose, the PC screen display of the editor application may be divided into several windows or panels, each having a specific purpose. By way of example, the panels may be as follows: Main project panel 902, used to display the current GUI page being edited (Home
Page 400 in this illustration) together with a representation 922 of the hard keys ( keys 414 through 420) available on target controlling device 100;
Project View panel 904, used to display all currently defined GUI pages in a tree structure form (which may, as depicted in the exemplary embodiment show, have collapse [-] and expand [+] functionality including selective expansion of individual nodes and/or a collapse all/expand all feature) where the GUI page to be edited may be selected (e.g., by clicking on a link) from within the tree structure list and wherein the GUI page being displayed in the Main project panel 902 may be indicated by a highlight 918 (the Home Page in the instant illustration); Properties panel 906, used to display a list of (and allow editing of - for example by text entry, selection from drop down menus, etc.) the properties (such as the caption text and font attributes, symbol position, button type, etc.) associated with a presently selected GUI icon or hard key image within Main project panel 902 (GUI icon or soft key 404' with label "DVD Movie" in this illustration, as indicated by the highlight (dotted line) around icon 404' displayed in Main project panel 902);
Gallery panel 908, used to display graphic images which may be dragged and dropped onto the GUI pages being edited wherein the Gallery choices may include sets of icons for use as buttons, page backgrounds, symbols for labeling buttons, key groups (to allow a group of related key icons, e.g. a numeric pad, to be dragged into place in a single operation),or to allow pre-defined themes to be applied to single pages or groups of pages and wherein the Gallery in use (when multiple, organized Galleries are provided) is selected via tabs 914 according to the exemplary embodiment shown; and
Actions panel 910, used to display a list of (and allow editing of - for example by dragging and dropping to change the order, by deleting selected items, etc.) the actions to be performed by controlling device 100 when the currently selected icon (in the Main panel 902) is activated by a user when the user interface is provided to the controlling device (e.g., in the example presented, it can be seen that activating the "DVD Movie" icon 404' will: (1) transmit a "Power On" command to DVD player 106, (2) transmit a "Power On" command to TV set 102, (3) wait one second for the devices to stabilize, then (4) transmit a "Component 2" input selection command to TV 102, (5) transmit "DVD" input selection command to Audio Receiver 108, and finally (6) jump to GUI page 700 corresponding to the DVD transport controls (illustrated in Fig. 7 and 10). Devices panel 912 is preferably used to display a listing of all remote control commands available for each of the appliances setup to be controlled by controlling device 100 wherein the list of commandable functions for a given appliance to be displayed may be selected from a drop down list 916 (which in the illustrative example would comprise a TV 102, a cable STB 104, a DVD player 106, and an audio receiver 108) and wherein the commandable functions so displayed may be assigned to any icon displayed in main project panel 902 by simply clicking and dragging a commandable function icon to, for example, a desired location with a listing of functions displayed in the Actions panel 910 and/or over an icon displayed in the Main panel (where it would be added, for example, to the top or bottom of the listing of commands within the Action panel display). Turning now to Figure 10, wherein GUI page 700 has been loaded for editing by clicking on the appropriate entry icon 700' in the tree listing within Project View panel 904, it is seen that, in response to the selection of the "Slow" icon 702' in the Main panel, the Actions panel display 1002 shows a listing of the actions to be performed by the controlling device 100 when this icon is activated, i.e. transmit a "Slow" command to the DVD player and then jump to the DVD slow motion control page, as previously described in conjunction with Figure 7.
Similarly, Figure 11 illustrates a DVD slow motion control page 800' (instantiated in response to the selection of the "Samsung DVD"/ "DVD slow" entry icon 800") and the actions to be performed by the controlling device 100 when the "Play" icon 802' is activated, i.e., transmit a "Resume normal speed play" command to the DVD player and jump to the DVD transport control page 700, as previously described in conjunction with Figure 8. Again, the listing of functional commands 1102 is instantiated in response to the user selecting the "play" icon 802' . Figure 12 illustrates the editor representation of the devices GUI page of Figure 5.
As discussed, the icons on this page are used to jump directly to the individual device control page sets. As can be seen in Actions panel 1202, the exemplary selected icon 508' is programmed to send no commands, but rather to simply jump directly to the first page of the audio receiver page set 600", corresponding to Figure 6 in the illustrated examples.
An exemplary set of data structures suitable for storing an editable GUI as a local file 310 on PC 302 will now be discussed. As will be appreciated by those of ordinary skill in the art, many other arrangements and data structures are feasible and accordingly those presented herein are intended to be way of example only, without limitation. Turning to Figure 23, a top level listing of the exemplary contents of a GUI definition file 310, corresponding to one editing project, is shown in tabular form. Such GUI definition project files may for example be stored on PC 302 as Microsoft Windows cabinet files (similar to the more commonly known .zip archive file). As such, file 310 may comprise a container for other files. In the example presented, cabinet file 310 holds a number of XML files and a single resource file which together serve to define a controlling device GUI and its attributes.
Project file 2302 may comprise several sections, for example a ProjectSettings section 2400 (Figure 24) which may contain system metadata and settings for controlling device 100, for example default backlight timeouts, display brightness, passwords, etc. The ProjectSettings section 2400 may also include a record of the location(s) from which various resources (button widgets, etc.) used in creating the GUI were drawn. Project file 2302 may include further sections such as, for example, a tabulation of global objects such as macros, an index listing of top-level objects, a manifest of all resources available, etc. Sitemap file 2304, illustrated in Figure 25, may contain data regarding nodes and edges used to construct a sitemap view of the GUI project (as described in more detail hereinafter).
The Page, Page Collection, Device, Nevo Link, and Media Zone files 2306 through 2314 are all similar. Each comprises an XML description of the corresponding object(s). By way of example, a Page file 2306 will be described in further detail in conjunction with Figure 26 wherein the root node 2600 of an exemplary typical XML Page file is illustrated. Page file root node 2600 may contain, for example, a page name 2602, data 2604 regarding the background image to be used for the page, information 2606 regarding properties inherited from other pages in the same group, etc. Also contained in exemplary root node 2600 may be a list of child nodes, one for each widget on the page, where a widget may be a button, key guide, etc. By way example, a button node 2610 may contain information regarding button image; label font, size, and placement; actions associated with the button, etc. It will also be noted that node 2610 includes child nodes 2612 and 2614 (MDA and MUA) which correspond to button down action and button up action respectively.
Finally, Resources file 2316 is a standard Microsoft Windows .NET resource file containing all the resources (images) used by the GUI project. Site mapping. While the ability to empower any icon on any controlling device GUI page to transition to another page in the manner described above is powerful feature, it will be appreciated that these linkages between pages may become very complex and difficult to manage, particularly if the only way to visualize them is by flipping back and forth from page to page and examining the actions assigned to each and every key, e.g., by reviewing the page jumping operations that would be shown in the Actions panel. Accordingly, an additional feature is provided within editor 300 to assist the user in managing these assignments. Turning to Figures 13 and 14, an additional Site Map panel may be invoked by selecting the appropriately labeled element 1304 in drop down menu 1302. Activating this panel instantiates a visual representation 1402 of the linkages and associations between the various pages of the controlling device GUI currently being edited. The exemplary contents of Site Map panel 1402 are shown enlarged for clarity in Figure 15. Here it can readily be determined, for example, that Home Page 400 comprises linkages 1502 to the Audio Receiver pages, 1504 to the Cable STB pages, and 1506 to the DVD device pages. It also has a link 1508 to Device Control page 500. Home Page 400 does not, however, link directly to the TV device pages. In this context it will be understood that Site Map view 1402 depicts only transitions from one GUI page to another. Thus, for example, even though the "All On" icon 410 on Home Page 400 may transmit a remote control command to TV 102, it does not cause a GUI page transition and thus does not generate a link to any GUI page in this view. Further examination of Figure 15 will reveal that the mutual linkages between DVD transport and slow motion pages described earlier are represented at 1510 and 1512, as are the linkages from Device Control page 500 to the various appliance control page sets. It will also be noted that where appropriate, links include the labels or captions of the icons which, when activated on the controlling device 100, cause the illustrated transition. Thus, by way of example, link 1510 is labeled "Play" and link 1512 is labeled "Slow." While the visual representation of the link is a link provided to illustrate the linked connection between the pages, it will be appreciated that other forms of visually representing the linked connection are contemplated. Additionally, in certain embodiments provision may be made for all or part of such a Site Map representation to be output in hard copy format, either alone or combined with other GUI project data, in the form of maintenance documentation, user manuals, etc.
Key grouping. As discussed previously, the basic method of creating a command key using editor
300 is to drag an icon from the Gallery panel 908 onto the control surface being edited within the Main display panel, and then dragging a desired command function from the list displayed in the Device panel 912 onto that icon and/or into the Actions panel, thereby associating activation of that touch screen location with the corresponding page with issuance of the command function. (In the case of hard keys, e.g. 414 through 420, the desired command function is simply dragged onto the appropriate hard key image already displayed in Project panel 902). While allowing great flexibility in GUI design, it will be appreciated that this method may become tedious when large numbers of keys need to be configured. Accordingly, editor 300 additionally supports a key grouping concept. By way of example, with reference to Figures 16 and 17, it may be desirable, while watching a DVD movie, to have the controlling device 100 configured such that activations of the volume control buttons 416 of the controlling device 100 transmit volume control command functions to the Audio Receiver 108, since it is likely that the sound will be playing back through that appliance. In the manner described above, these buttons may be configured one by one by first selecting the root 1604 of the DVD device page set in the Project View tree, then selecting the Audio Receiver device 1608 from the Device panel drop down list 1606 (it will be noted that 1606 is the expanded form of 916), and finally dragging the desired functions individually onto buttons 416'. However as an alternative, illustrated in Figure 17, the device icon 1702 itself may be clicked and dragged across to keys 416' . Since the keys of the group upon which the dragged icon is being positioned are known by appropriate programming within the software program to be related (e.g., volume up, volume down, and mute) the editor 300 may immediately assign the appropriate commands to each of the keys within the group as part of this single, described action. In this context, it will be noted that in the illustrative embodiment hard keys 414 through 420 behave consistently (i.e., command the same operational function) across all pages of a device page set. In certain embodiments, such behavior may be configurable by the user as an option within editor 300 either as a global parameter, individually by device, as a default which may be overridden on particular pages, etc. In the example illustrated, these keys are set for consistent behavior and their configuration may, therefore, be performed only once for each device page set through selection of the root page, 1604 in the example above. A comparison of Figures 16 and 10, for example, will reveal that when an individual page within a device page set is selected, e.g. 700" in Figure 10, hard button display 922 may be thus "grayed out", i.e., shown as not available for assignment, whereas when a root page is selected, e.g., 1604 in Figure 16, hard button display 922 may be displayed at full intensity, i.e., be shown as available for assignment. By way of further example, Figure 18 illustrates another use of key grouping. In this example, it has been determined that the controlled equipment configuration is such that all television programming is received via cable, i.e., all channel tuning for the home theater of the consumer is performed by the cable STB 104 and the TVs built-in tuner is, therefore, unused. In this situation it may desirable to replace the usual TV digit pad commands with the equivalent cable STB functions, such that a user of controlling device 100 does not have to switch to a different appliance page set to change channels when the TV device is active on the controlling device 100. To effect this, the TV digits page 1808 may be selected from the Project View tree and a digit key group defined, either by selecting the Key Group Gallery 1810 for display in Gallery Panel 908 and dragging a digit group 1806 onto the control surface 902 or, in the event a group of keys are already defined in that page by dragging the cursor around the entire group or otherwise indicating a selection of the "TV Digits" page (for example by clicking on the top window bar of the "TV Digits" page itself). Once the key grouping has been selected, each of the keys within the group (e.g., zero through nine) likewise become available for group assignment, as indicated by the highlights (dotted lines) around every key in Figure 18. The device icon 1802 representing the cable STB may now be clicked and dragged 1804 onto the selected key group in order to effect the desired command function assignment in a single step. While such drag and drop operations are typically performed by dragging and dropping a copy of an icon image, it will be understood that the drag and drop operation could be equally performed by dragging and dropping the icon image itself.
It will be understood and appreciated that while logical key groupings as contemplated herein will generally be groups of associated keys selected by the user for assignment of corresponding commands (e.g. volume key groupings, channel key groupings, input selection key groupings, etc), any key grouping able to be selected or designated by a user via the editor 300 and to which commands may be automatically assigned/mapped by the editor programming will also be understood as a logical key grouping as described and claimed herein. Equally, it will be appreciated that a user may select or define customized collections of keys as logical groups for the purpose of moving or copying functions across pages, etc. It also will be understood and appreciated by those skilled in the art that appropriate well known programming methodologies such as matching or comparative algorithms, lookup tables, logical groupings, and the like may be implemented in the editor application to enable the various associations between available commands inherent in the device panel and selected function key groupings such that automatic assignment of commands to the appropriate keys is possible with minimal user interaction. Background inheritance
For use in tailoring the appearance of GUI pages for controlling device 100, editor 300 supports the assignment of a background graphic to each GUI page. The basic method of assigning such a background graphic is illustrated in Figure 19. The Gallery panel 908 is caused to display the currently available background graphics by selecting tab 1902. The desired background graphic 1904 may then be then dragged onto the desired GUI page 1906. In the illustrated example, the background of Home Page 400 is modified by dragging the "Kids 2" background graphic 1904 onto it, resulting in new Home Page appearance 1910. It will be noted that the page representation 1912 in the Project View tree structure also changes appropriately. As before, while allowing great flexibility in GUI design, it will be appreciated that this method may become tedious when large numbers of items need to be configured. Accordingly, editor 300 additionally supports background inheritance. In this method, a background graphic may be dragged onto any node of the structure presented in the Project View panel 904 to immediately update that node and all nodes lower than it in the hierarchy. By way of example, in Figure 20 background graphic 1904 is dragged onto Master Page node 2002, thereby changing the background graphic of every GUI page in the controlling device (since these GUI pages are all leafs under the Master Page node 2002 within the tree structure) as can be seen by examination of the resulting Project View panel display 2004. By way of further example, in Figure 21 background graphic 1904 is dragged onto a root device page 2102 corresponding to the cable STB device, thereby changing the background graphic of all pages in the page set related to the cable STB device (i.e., those leaf pages under the root device page 2102 within the tree structure) as is apparent by examination of updated Project View panel display 2104. Pre-processing prior to downloading GUI to controlling device.
When the user of exemplary editor program 300 initiates the download of a newly-edited GUI to controlling device 100 by clicking tab 2202 illustrated in Figure 22, it may be desirable to have editor program 300 first pre-process the PC-resident descriptive data (as exemplified by file 310) into a form which may be more efficiently used within controlling device 100. This may be accomplished by way of a pause 2204 during which pre-processing is performed before commencing the download process 2206.
For example, the contents of file 310 may be parsed to remove elements which are necessary only for features offered to support the PC editing process. In the exemplary embodiment presented above for instance, the Sitemap XML file may eliminated from the download, since this supports editor-only feature 1402. Further, individual resource files may be generated for each page instead of a single Windows format Resources file in order to improve efficiency of operation with controlling device 100. In instances where the color palette of controlling device 100 is less extensive that of PC 302, image quality may be reduced (thereby reducing the amount of memory storage required) with no discernable degradation. By way of example, a reduction to 25% of original quality may be possible when the controlling device only supports 16-bit color.
Additional graphic pre-rendering may be performed where appropriate. For example, as will be appreciated by those of skill in the art, activatable gallery buttons and icons for use in creating GUI pages generally comprise two separate graphics: one representing the icon or button's normal or "up" state, and the other representing the icon or button's activated or "down" state. Whenever controlling device 100 detects a user touch to an activatable area of the LCD screen, the corresponding button/icon graphic is changed from the "up" to the "down" form as an acknowledgement and confirmation of input. The quiescent, or unactivated GUI state of each page may thus be viewed as a composite of many graphic elements: That is, comprising a background graphic upon which is overlayed a number of individual button/icon "up" state graphics. During the editing process, these must all be maintained as separate graphic elements, since buttons may be moved, added, deleted, resized, etc. at any time. However, once loaded into controlling device 100, the quiescent state graphic of each page of the GUI may be regarded as fixed since button/icon locations are no longer alterable. The only variable aspect is the "down" state of each button.
Accordingly, immediately prior to downloading to the controlling device 100, the PC-based editor 300 may pre-render the "up" state of the buttons/icons and background for each page into a single graphic element, including any associated graphical effects such as blending, anti-aliasing, fades, blurs, glows, shadows, etc as may be included for additional visual effect on the controlling device interface. This method conserves memory and processing power and improves page-to-page display transition time on the relatively resource limited controlling device 100. Additionally, it allows use of the more powerful PC system to perform tasks such as reducing large graphics files to the correct size for the controlling device LCD display and processing graphic effects such as blending, anti-aliasing, fades, blurs, glows, shadows, etc.
* * * * *
While various concepts have been described in detail, it will be appreciated by those skilled in the art that various modifications and alternatives to those concepts could be developed in light of the overall teachings of the disclosure. For example, while the embodiments presented above are described in the context of universal remote controls (i.e., controlling devices capable of commanding the operation of multiple classes of appliances devices from multiple manufacturers) as being most broadly representative of controlling devices in general, it will be appreciated that the teachings of this disclosure may be equally well applied to other controlling devices of narrower capability, and also to any general or specific purpose device requiring a visual interface (i.e., display screens, signage devices, teleprompters, etc.) without departing from the spirit and scope of the present invention. Still further, it will be appreciated that the user interfaces described herein need not be limited to controlling devices but can be utilized in connection with any device having input elements wherein it is desired to convey information concerning such input elements. For example, the user interface may be utilized with devices such as calculators, phones, appliances, etc. having input elements having associated information conveying images in the form of alphanumeric and/or symbolic labels. As such, the particular concepts disclosed are meant to be illustrative only and not limiting as to the scope of the invention which is to be given the full breadth of the appended claims and any equivalents thereof.
All documents cited within this application for patent are hereby incorporated by reference in their entirety.

Claims

CLAIMS What is claimed is:
1. A computer-readable media having instructions executable on a computing device for editing a controlling device user interface downloadable to a controlling device and comprised of a plurality of individual GUI pages including a first GUI page and a second GUI page, the instructions performing steps comprising: accepting input to edit the controlling device user interface, the input being used to create a link between the first GUI page and the second GUI page where the link is executable on the controlling device to cause the controlling device to transition from the first GUI page to the second GUI page; accepting input to cause a display of a visual representation of the link created between the first GUI page and the second GUI page; and accepting input to initiate a download of the edited controlling device user interface to the controlling device.
2. The computer-readable media as recited in claim 1, wherein the visual representation of the link between the first GUT page and the second GUI page comprises a display of an image representative of the first GUI page, a display of an image representative of the second GUI page, and a display of an image representative of the link between the first GUI page and the second GUI page.
3. The computer-readable media as recited in claim 2, wherein the image representative of the link between the first GUI page and the second GUI page is provided with a label which denotes an action which causes the link to be executed by the controlling device.
4. The computer-readable media as recited in claim 3, wherein the action is associated with a transmission of a command from the controlling device to an appliance.
5. The computer-readable media as recited in claim 3, wherein the action is associated with actuation of a GUT element included as a part of the first GUI page.
6. The computer-readable media as recited in claim 1, wherein the edited controlling device user interface is downloadable to the controlling device via a network connection.
7. The computer-readable media as recited in claim 1, wherein the edited controlling device user interface is downloadable to the controlling device via a docking station.
8. The computer-readable media as recited in claim 1, wherein the edited controlling device user interface is downloadable to the controlling device directly from the computing device.
9. A method for interacting with a computing device to edit a controlling device user interface downloadable to a controlling device and comprised of a plurality of individual GUI pages including a first GUI page and a second GUI page, the method comprising: editing the controlling device user interface on the computing device by providing input used to create a link between the first GUI page and the second GUI page where the link is executable on the controlling device to cause the controlling device to transition from the first GUI page to the second GUI page; causing the computing device to display a visual representation of the link created between the first GUI page and the second GUI page; and causing a download of the edited controlling device user interface to the controlling device.
10. The method as recited in claim 9, wherein the visual representation of the link between the first GUI page and the second GUI page comprises a display of an image representative of the first GUI page, a display of an image representative of the second GUI page, and a display of an image representative of the link between the first GUI page and the second GUI page.
11. The method as recited in claim 10, wherein the image representative of the link between the first GUI page and the second GUI page is provided with a label which denotes an action which causes the link to be executed by the controlling device.
12. The method as recited in claim 11, wherein the action is associated with a transmission of a command from the controlling device to an appliance.
13. The method as recited in claim 11, wherein the action is associated with actuation of a GUI element included as a part of the first GUI page.
14. A computer-readable media having instructions executable on a computing device for editing a controlling device user interface downloadable to a controlling device and comprising of a set of command keys used to command a set of logically grouped functions of a controllable appliance, the instructions performing steps comprising: displaying a representation of the logical group of command keys; displaying a representation of the controllable appliance; accepting input for editing the controlling device user interface, the input being used to associate the representation of the controllable appliance with the representation of the logical group of command keys whereupon commands from a command set used to command the set of logically grouped functions of the controllable appliance are automatically associated with corresponding command keys of the set of command keys; and accepting input to initiate a download of the edited controlling device user interface to the controlling device.
15. The computer-readable media as recited in claim 14, wherein a drag and drop operation is used to associate the representation of the controllable appliance with the representation of the logical group of command keys.
16. The computer-readable media as recited in claim 14, wherein the logical group of command keys comprise hard keys of the controlling device.
17. The computer-readable media as recited in claim 14, wherein the logical group of command keys comprise soft keys displayable as part of a GUI page on the controlling device.
18. The computer-readable media as recited in claim 14, wherein the logical group of command keys are used to command a logical group of operations of an appliance selected from a group consisting of: volume control operations, transport control operations, channel control operations, and digit entry operations.
19. The computer-readable media as recited in claim 14, wherein the instructions accept input for designating which keys from a displayed plurality of command keys comprises the logical group of command keys.
20. The computer-readable media as recited in claim 14, wherein the edited controlling device user interface is downloadable to the controlling device via a network connection.
21. The computer-readable media as recited in claim 14, wherein the edited controlling device user interface is downloadable to the controlling device via a docking station.
22. The computer-readable media as recited in claim 14, wherein the edited controlling device user interface is downloadable to the controlling device directly from the computing device.
23. A method for interacting with a computing device to edit a controlling device user interface downloadable to a controlling device and comprising of a set of command keys used to command a set of logically grouped functions of a controllable appliance, the method comprising: providing input to the computing device to display a representation of the logical group of command keys on the computing device; providing input to the computing device to display a representation of the controllable appliance on the computing device; providing input to the computing device to edit the controlling device user interface, the input being used to associate the representation of the controllable appliance with the representation of the logical group of command keys whereupon commands from a command set used to command the set of logically grouped functions of the controllable appliance are automatically associated with corresponding command keys of the set of command keys; and causing the edited controlling device user interface to be ' downloaded into the controlling device.
24. The method as recited in claim 23, wherein a drag and drop operation is used to associate the representation of the controllable appliance with the representation of the logical group of command keys.
25. The method as recited in claim 23, wherein the logical group of command keys comprise hard keys of the controlling device.
26. The method as recited in claim 23, wherein the logical group of command keys comprise soft keys displayable as part of a GUI page on the controlling device.
27. The method as recited in claim 23, wherein the logical group of command keys are used to command a logical group of operations of an appliance selected from a group consisting of: volume control operations, transport control operations, channel control operations, and digit entry operations.
28. The method as recited in claim 23, comprising providing input to the computing device to designate which keys from a plurality of command keys displayed on the computing device comprises the logical group of command keys.
29. A computer-readable media having instructions executable on a computing device for editing a controlling device user interface downloadable to a controlling device and comprising a set of GUI pages, the instructions performing steps comprising: displaying a representation of the GUI pages; displaying a representation of a GUI page background image; accepting input for editing the controlling device user interface, the input being used to associate the GUI page background image with a grouped set of GUI pages within the representation of GUI pages whereupon the GUI page background image is automatically designated to be used with each GUI page within the grouped set of GUI pages; and accepting input to initiate a download of the edited controlling device user interface to the controlling device.
30. The computer-readable media as recited in claim 29, wherein a drag and drop operation is used to associate the GUI page background image with the grouped set of GUI pages.
31. The computer-readable media as recited in claim 29, wherein the representation of GUI pages comprises a tree structure having a hierarchal arrangement of nodes and leaves and wherein a node and each leaf under the node comprise a grouped set of GUI pages.
32. The computer-readable media as recited in claim 31, wherein the GUI page background image is associated with the grouped set of GUI pages by dragging and dropping a copy of the representation of the GUI page background image onto a node of the tree structure.
33. The computer-readable media as recited in claim 29, wherein the edited controlling device user interface is downloadable to the controlling device via a network connection.
34. The computer-readable media as recited in claim 29, wherein the edited controlling device user interface is downloadable to the controlling device via a docking station.
35. The computer-readable media as recited in claim 29, wherein the edited controlling device user interface is downloadable to the controlling device directly from the computing device.
36. A method for interacting with a computing device to edit a controlling device user interface downloadable to a controlling device and comprising a set of GUI pages, the method comprising: providing input to the computing device to display a representation of the GUI pages on the computing device; providing input to the computing device to display a representation of a GUI page background image on the computing device; providing input to the computing device to edit the controlling device user interface, the input being used to associate the GUI page background image with a grouped set of GUI pages within the representation of GUI pages whereupon the GUI page background image is automatically designated to be used with each GUI page within the grouped set of GUI pages; and causing the edited controlling device user interface to be downloaded to the controlling device.
37. The method as recited in claim 36, wherein a drag and drop operation is used to associate the GUI page background image with the grouped set of GUI pages.
38. The method as recited in claim 36, wherein the representation of GUI pages comprises a tree structure having a hierarchal arrangement of nodes and leaves and wherein a node and each leaf under the node comprise a grouped set of GUI pages.
39. The method as recited in claim 36, wherein the GUI page background image is associated with the grouped set of GUI pages by dragging and dropping a copy of the representation of the GUI page background image onto a node of the tree structure.
40. A computer-readable media having instructions executable on a computing device for editing a controlling device user interface downloadable to a controlling device and comprising a GUI page having a plurality of soft keys, the instructions performing steps comprising: accepting input for editing the controlling device user interface, the input being used to select for each of the plurality of soft keys an image which is to be used to represent an un-activated state of each of the plurality of soft keys; and accepting input to initiate a download of the edited controlling device user interface to the controlling device wherein, prior to the download of the edited controlling device user interface, the selected images and a background image of the GUI page are automatically rendered into a single graphic element.
41. The computer-readable media as recited in claim 40, wherein the edited controlling device user interface is downloadable to the controlling device via a network connection.
42. The computer-readable media as recited in claim 40, wherein the edited controlling device user interface is downloadable to the controlling device via a docking station.
43. The computer-readable media as recited in claim 40, wherein the edited controlling device user interface is downloadable to the controlling device directly from the computing device.
44. A method for interacting with a computing device to edit a controlling device user interface downloadable to a controlling device and comprising a GUI page having a plurality of soft keys, the method comprising: providing input for editing the controlling device user interface, the input being used to select for each of the plurality of soft keys an image which is to be used to represent an un-activated state of each of the plurality of soft keys; and causing the edited controlling device user interface to be downloaded to the controlling device wherein, prior to the download of the edited controlling device user interface, the selected images and a background image of the GUI page are automatically rendered into a single graphic element.
PCT/US2005/031598 2004-09-08 2005-09-06 Configurable controlling device having an associated editing program WO2006029106A2 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US60818304P 2004-09-08 2004-09-08
US60/608,183 2004-09-08
US70592605P 2005-08-05 2005-08-05
US60/705,926 2005-08-05
US11/218,900 US7266777B2 (en) 2004-09-08 2005-09-02 Configurable controlling device having an associated editing program
US11/218,900 2005-09-02

Publications (2)

Publication Number Publication Date
WO2006029106A2 true WO2006029106A2 (en) 2006-03-16
WO2006029106A3 WO2006029106A3 (en) 2007-03-08

Family

ID=35995774

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/031598 WO2006029106A2 (en) 2004-09-08 2005-09-06 Configurable controlling device having an associated editing program

Country Status (2)

Country Link
US (1) US7266777B2 (en)
WO (1) WO2006029106A2 (en)

Families Citing this family (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6784805B2 (en) 2000-03-15 2004-08-31 Intrigue Technologies Inc. State-based remote control system
US7283059B2 (en) * 2000-03-15 2007-10-16 Logitech Europe S.A. Remote control multimedia content listing system
US8531276B2 (en) 2000-03-15 2013-09-10 Logitech Europe S.A. State-based remote control system
US20010033243A1 (en) * 2000-03-15 2001-10-25 Harris Glen Mclean Online remote control configuration system
US7653212B2 (en) * 2006-05-19 2010-01-26 Universal Electronics Inc. System and method for using image data in connection with configuring a universal controlling device
US7581182B1 (en) * 2003-07-18 2009-08-25 Nvidia Corporation Apparatus, method, and 3D graphical user interface for media centers
US11687217B2 (en) 2004-09-08 2023-06-27 Universal Electronics Inc. System and method for flexible configuration of a controlling device
US9632665B2 (en) 2004-09-08 2017-04-25 Universal Electronics Inc. System and method for flexible configuration of a controlling device
US20110093799A1 (en) * 2004-09-08 2011-04-21 Universal Electronics Inc. System and method for configuration of controlling device functionality
US7743012B2 (en) * 2004-09-08 2010-06-22 Universal Electronics Inc. Configurable controlling device and associated configuration upload and download system and method
US7941786B2 (en) * 2004-09-08 2011-05-10 Universal Electronics Inc. Configurable controlling device and associated configuration distribution system and method
ATE394733T1 (en) * 2005-02-11 2008-05-15 Sap Ag METHOD AND COMPUTER FOR PREPARING DOCUMENTS
US8601461B2 (en) * 2005-03-08 2013-12-03 Koninklijke Electronics N.V. Multiple user control of a down loadable application
DE102006018238A1 (en) * 2005-04-20 2007-03-29 Logitech Europe S.A. Remote control system for home theater system, analyzes log of events stored by remote controller to identify patterns of interest in logged use of remote controller
JP4534869B2 (en) * 2005-05-23 2010-09-01 ソニー株式会社 Control apparatus and method, and program
DE602006012136D1 (en) * 2005-05-25 2010-03-25 Canon Kk Sheet feeding apparatus and image forming apparatus having such therein
TW200701050A (en) * 2005-06-27 2007-01-01 Compal Electronics Inc A user interface with figures mapping to the keys, for allowing the user to select and control a portable electronic device
EP2764899A3 (en) 2005-08-29 2014-12-10 Nant Holdings IP, LLC Interactivity via mobile image recognition
US7558950B2 (en) * 2005-10-27 2009-07-07 Sony Ericsson Mobile Communications Ab Methods of configuring an electronic device to be operable with an electronic apparatus based on automatic identification thereof and related devices
US20070233731A1 (en) * 2006-02-22 2007-10-04 Logitech Europe S.A. System and method for configuring media systems
US8510666B2 (en) * 2006-03-14 2013-08-13 Siemens Enterprise Communications Gmbh & Co. Kg Systems for development and/or use of telephone user interface
GB2436193A (en) * 2006-03-14 2007-09-19 Jurij Beklemisev Controlling equipment via remote control
US20070228182A1 (en) * 2006-03-31 2007-10-04 Ranco Incorporated Of Delaware Thermostat with single button access to a menu of commonly used functions
US20070234235A1 (en) * 2006-03-31 2007-10-04 Research In Motion Limited Activities/applications menu for a mobile communication device
US8230351B2 (en) * 2006-04-11 2012-07-24 Sri International Method and apparatus for collaborative work
KR100813981B1 (en) * 2006-07-11 2008-03-14 삼성전자주식회사 User interface device and method for implementing the same
US8041025B2 (en) * 2006-08-07 2011-10-18 International Business Machines Corporation Systems and arrangements for controlling modes of audio devices based on user selectable parameters
US20090055760A1 (en) * 2006-08-17 2009-02-26 Vantage Controls, Inc. System and method for creating a user interface
US9208679B2 (en) * 2006-09-05 2015-12-08 Universal Electronics Inc. System and method for configuring the remote control functionality of a portable device
US9319741B2 (en) 2006-09-07 2016-04-19 Rateze Remote Mgmt Llc Finding devices in an entertainment system
US9233301B2 (en) * 2006-09-07 2016-01-12 Rateze Remote Mgmt Llc Control of data presentation from multiple sources using a wireless home entertainment hub
US8607281B2 (en) * 2006-09-07 2013-12-10 Porto Vinci Ltd. Limited Liability Company Control of data presentation in multiple zones using a wireless home entertainment hub
US8935733B2 (en) * 2006-09-07 2015-01-13 Porto Vinci Ltd. Limited Liability Company Data presentation using a wireless home entertainment hub
US8005236B2 (en) 2006-09-07 2011-08-23 Porto Vinci Ltd. Limited Liability Company Control of data presentation using a wireless home entertainment hub
US8966545B2 (en) * 2006-09-07 2015-02-24 Porto Vinci Ltd. Limited Liability Company Connecting a legacy device into a home entertainment system using a wireless home entertainment hub
US9386269B2 (en) 2006-09-07 2016-07-05 Rateze Remote Mgmt Llc Presentation of data on multiple display devices using a wireless hub
JP2010503948A (en) * 2006-09-12 2010-02-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ System for selecting and controlling lighting settings
US9158439B2 (en) * 2006-12-01 2015-10-13 Production Resource Group, Llc Remote focusing unit
EP1956572A1 (en) * 2007-02-01 2008-08-13 Nxp B.V. Method for configuring a wireless communication device as a remote control, remotely controllable electronice device and wireless communication device
US8896426B1 (en) * 2007-02-09 2014-11-25 Uei Cayman Inc. Graphical user interface for programming universal remote control devices
JP4743132B2 (en) * 2007-02-15 2011-08-10 ティアック株式会社 Electronic device having a plurality of function keys
US8719723B2 (en) * 2007-03-05 2014-05-06 Microsoft Corporation Displaying data sensitive targets
JP4901608B2 (en) * 2007-06-29 2012-03-21 株式会社東芝 Optical disc playback apparatus and optical disc playback method
JP5097476B2 (en) * 2007-08-20 2012-12-12 株式会社リコー Screen editing apparatus, screen editing method and program
US8627218B2 (en) * 2007-08-24 2014-01-07 Creative Technology Ltd Host implemented method for customising a secondary device
US20090070696A1 (en) * 2007-09-06 2009-03-12 At&T Knowledge Ventures, Lp System and Method for Programming a Remote Control Device
US8581750B2 (en) * 2007-09-18 2013-11-12 Liang-Hsi Chang Data input system with multi-directional pointing device
US20090106704A1 (en) * 2007-10-18 2009-04-23 Sony Ericsson Mobile Communications Ab Method, apparatus, and consumer product for creating shortcut to interface element
JP2009116718A (en) * 2007-11-08 2009-05-28 Hitachi Ltd Plant monitoring control system
JP4924402B2 (en) * 2007-12-14 2012-04-25 ブラザー工業株式会社 Control device and control program
US20090183098A1 (en) * 2008-01-14 2009-07-16 Dell Products, Lp Configurable Keyboard
US20100299438A1 (en) * 2008-01-21 2010-11-25 Gottfried Zimmerman Online resource server for allowing device control and access to digital content trhough pluggable user interfaces
US8671437B2 (en) * 2008-02-28 2014-03-11 Hewlett-Packard Development Company, L.P. Universal remote control management in digital display devices
US8094875B1 (en) 2008-04-18 2012-01-10 Uei Cayman Inc. Performing optical recognition on a picture of a remote to identify an associated codeset
US8151211B1 (en) * 2008-04-18 2012-04-03 UEI Cayman, Inc. Copying keys to create a custom remote
US9870123B1 (en) 2008-04-18 2018-01-16 Universal Electronics Inc. Selecting a picture of a device to identify an associated codeset
WO2009134423A1 (en) * 2008-05-02 2009-11-05 Savant Systems Llc Touch sensitive video signal display for a programmable multimedia controller
JP5536043B2 (en) * 2008-05-30 2014-07-02 コーニンクレッカ フィリップス エヌ ヴェ Round lighting equipment
US9298684B2 (en) * 2008-06-18 2016-03-29 Microsoft Technology Licensing, Llc Implementing custom user interface forms in a personal information manager
WO2009157560A1 (en) * 2008-06-27 2009-12-30 京セラ株式会社 User interface generation device
US9294705B2 (en) * 2008-06-27 2016-03-22 Universal Electronics Inc. System and method for ubiquitous appliance control
KR101503493B1 (en) * 2008-07-16 2015-03-17 삼성전자주식회사 Method for controlling devices using widget contents and a remote controller thereof
US8805110B2 (en) 2008-08-19 2014-08-12 Digimarc Corporation Methods and systems for content processing
CN101661367A (en) * 2008-08-25 2010-03-03 扬智科技股份有限公司 Generation method of menu shortcut mode and user interface device
US8516385B1 (en) * 2008-08-29 2013-08-20 Adobe Systems Incorporated Linking objects across states as shared objects
US8929877B2 (en) 2008-09-12 2015-01-06 Digimarc Corporation Methods and systems for content processing
KR20100031187A (en) * 2008-09-12 2010-03-22 삼성전자주식회사 Display apparatus, remote controller, display system and control method
KR20100045188A (en) * 2008-10-23 2010-05-03 삼성전자주식회사 Remote control device and method for controlling other devices using the remote control device
US9210356B2 (en) 2008-12-08 2015-12-08 Echostar Technologies L.L.C. System and method for entertainment system reconfiguration
US20100162143A1 (en) * 2008-12-22 2010-06-24 Moshe Ben Abou Systems and methods for business driven application development
USD736254S1 (en) 2008-12-26 2015-08-11 Sony Corporation Display panel or screen with an icon
US9800837B2 (en) * 2008-12-31 2017-10-24 Echostar Technologies L.L.C. Virtual control device
US8471734B2 (en) 2009-03-30 2013-06-25 Universal Electronics Inc. System and method for configuration of a controlling device to enable selection of media streams
KR20100132173A (en) * 2009-06-09 2010-12-17 삼성전자주식회사 Method for providing gui representing link and arrangement of devices and device using the same
US10281893B2 (en) 2009-06-25 2019-05-07 Universal Electronics Inc. System and method for configuration of macro commands in a controlling device
US8245147B2 (en) * 2009-07-01 2012-08-14 Apple Inc. System and method for reordering a user interface
US8243207B2 (en) * 2009-09-29 2012-08-14 Universal Electronics Inc. System and method for activity based configuration of an entertainment system
US8456314B2 (en) * 2009-09-29 2013-06-04 Universal Electronics Inc. System and method for reconfiguration of an entertainment system controlling device
US9826266B2 (en) 2009-09-29 2017-11-21 Universal Electronics Inc. System and method for reconfiguration of an entertainment system controlling device
US8907981B2 (en) * 2009-11-05 2014-12-09 International Business Machines Corporation Method and system for dynamic composing and creating 3D virtual devices
US20110191516A1 (en) * 2010-02-04 2011-08-04 True Xiong Universal touch-screen remote controller
US20120297341A1 (en) * 2010-02-16 2012-11-22 Screenovate Technologies Ltd. Modified Operating Systems Allowing Mobile Devices To Accommodate IO Devices More Convenient Than Their Own Inherent IO Devices And Methods For Generating Such Systems
FR2956757B1 (en) * 2010-02-25 2012-09-21 Somfy Sas ASSIGNING SCENARIOS TO CONTROL BUTTONS.
KR20110103718A (en) * 2010-03-15 2011-09-21 삼성전자주식회사 Portable device and control method thereof
KR101715380B1 (en) * 2010-03-15 2017-03-10 삼성전자 주식회사 Remote controller and control method thereof, display device and control method thereof, display system and control method thereof
US8458748B2 (en) * 2010-04-20 2013-06-04 Time Warner Cable, Inc. System and method for commanding a controlled device
CN102860034B (en) * 2010-04-28 2016-05-18 Lg电子株式会社 The method of image display and operation image display
US8555190B2 (en) * 2010-06-30 2013-10-08 Honeywell International Inc. Apparatus and method for optimizing maintenance and other operations of field devices in a process control system using user-defined device configurations
US9002481B2 (en) 2010-07-14 2015-04-07 Honeywell International Inc. Building controllers with local and global parameters
US8508401B1 (en) 2010-08-31 2013-08-13 Logitech Europe S.A. Delay fixing for command codes in a remote control system
US20120081615A1 (en) * 2010-09-30 2012-04-05 Starr Ephraim D Remote control
KR101044320B1 (en) * 2010-10-14 2011-06-29 주식회사 네오패드 Method for providing background image contents of virtual key input means and its system
US8918719B2 (en) 2011-02-14 2014-12-23 Universal Electronics Inc. Graphical user interface and data transfer methods in a controlling device
FR2972062B1 (en) 2011-02-28 2013-04-12 Somfy Sas CONTROL DEVICE COMPRISING AN INTERFACE CAPABLE OF PROVIDING THE NEXT CONTROL ORDER TO BE TRANSMITTED TO DOMOTIC EQUIPMENT
US8918544B2 (en) 2011-03-31 2014-12-23 Logitech Europe S.A. Apparatus and method for configuration and operation of a remote-control system
US8745024B2 (en) 2011-04-29 2014-06-03 Logitech Europe S.A. Techniques for enhancing content
US10466160B2 (en) 2011-08-01 2019-11-05 Celsee Diagnostics, Inc. System and method for retrieving and analyzing particles
US9404864B2 (en) 2013-03-13 2016-08-02 Denovo Sciences, Inc. System for imaging captured cells
US9174216B2 (en) 2013-03-13 2015-11-03 DeNovo Science, Inc. System for capturing and analyzing cells
EP2739587B1 (en) 2011-08-01 2020-05-27 Denovo Sciences Cell capture system
TW201308933A (en) * 2011-08-11 2013-02-16 Hon Hai Prec Ind Co Ltd Electrical appliance remote controlling system and method
US11700412B2 (en) 2019-01-08 2023-07-11 Universal Electronics Inc. Universal voice assistant
US11451618B2 (en) 2014-05-15 2022-09-20 Universal Electronics Inc. Universal voice assistant
US11792185B2 (en) 2019-01-08 2023-10-17 Universal Electronics Inc. Systems and methods for associating services and/or devices with a voice assistant
TWI540491B (en) * 2011-11-09 2016-07-01 緯創資通股份有限公司 Setting method and detecting method of virtual key of touch panel
US20130205201A1 (en) * 2012-02-08 2013-08-08 Phihong Technology Co.,Ltd. Touch Control Presentation System and the Method thereof
KR101925058B1 (en) * 2012-04-26 2018-12-04 삼성전자주식회사 The method and apparatus for dispalying function of a button of an ultrasound apparatus on the button
KR101984590B1 (en) * 2012-11-14 2019-05-31 엘지전자 주식회사 Display device and controlling method thereof
KR20140082298A (en) * 2012-12-24 2014-07-02 삼성전자주식회사 Image display apparatus and message display method thereof
US9606102B2 (en) 2013-01-26 2017-03-28 Denovo Sciences, Inc. System and method for capturing and analyzing cells
US20140250397A1 (en) * 2013-03-04 2014-09-04 Honeywell International Inc. User interface and method
US9707562B2 (en) 2013-03-13 2017-07-18 Denovo Sciences, Inc. System for capturing and analyzing cells
US9856535B2 (en) 2013-05-31 2018-01-02 Denovo Sciences, Inc. System for isolating cells
US10391490B2 (en) 2013-05-31 2019-08-27 Celsee Diagnostics, Inc. System and method for isolating and analyzing cells
KR20150003560A (en) 2013-07-01 2015-01-09 삼성전자주식회사 The method and apparatus for changing user interface based on user motion information
FR3009392B1 (en) * 2013-08-05 2015-08-21 Elettroniche Ind Automatismi S P A C E I A S P A Costruzioni SYSTEM FOR CONFIGURING A PORTABLE DETECTOR
USD757783S1 (en) * 2013-09-03 2016-05-31 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US9734470B2 (en) 2013-11-14 2017-08-15 Honeywell International Inc. Apparatus and method for providing customized viewing and control of field devices through custom groups and actions in a process control system
US9587848B2 (en) 2013-12-11 2017-03-07 Honeywell International Inc. Building automation controller with rear projecting light
US10073604B2 (en) * 2014-05-15 2018-09-11 Oracle International Corporation UI-driven model extensibility in multi-tier applications
US11445011B2 (en) 2014-05-15 2022-09-13 Universal Electronics Inc. Universal voice assistant
US10063625B2 (en) * 2014-05-15 2018-08-28 Universal Electronics Inc. System and method for appliance detection and app configuration
US9679609B2 (en) 2014-08-14 2017-06-13 Utc Fire & Security Corporation Systems and methods for cataloguing audio-visual data
US9846505B2 (en) 2015-01-07 2017-12-19 Honeywell International Inc. Customizable user interface
US10116601B2 (en) * 2015-02-06 2018-10-30 Jamdeo Canada Ltd. Methods and devices for display device notifications
US11503360B2 (en) * 2015-03-04 2022-11-15 Comcast Cable Communications, Llc Adaptive remote control
CN104731591A (en) * 2015-03-19 2015-06-24 天脉聚源(北京)教育科技有限公司 Method and device for processing control in content display process
CN105263039A (en) * 2015-10-26 2016-01-20 普联技术有限公司 Switching method and switching device for video players, and infrared remote control equipment
US10324584B2 (en) 2015-12-10 2019-06-18 Whirlpool Corporation Touch screen display having an external physical element for association with screen icons
US11604823B2 (en) 2016-01-26 2023-03-14 Envision Healthcare Corporation Medical imaging distribution system and device
US10401975B2 (en) * 2016-01-26 2019-09-03 Imaging Advantage Llc System and method for medical imaging report input
US10678850B2 (en) 2016-04-18 2020-06-09 Imaging Advantage Llc System and device for pre-caching of related medical imaging
US10488062B2 (en) 2016-07-22 2019-11-26 Ademco Inc. Geofence plus schedule for a building controller
JP6922170B2 (en) 2016-08-25 2021-08-18 ソニーグループ株式会社 Information processing equipment, information processing methods, programs, and information processing systems
AU2018323449B2 (en) 2017-08-29 2020-09-03 Bio-Rad Laboratories, Inc. System and method for isolating and analyzing cells
KR101984827B1 (en) * 2018-11-27 2019-09-03 삼성전자주식회사 The apparatus for dispalying function of a button of an ultrasound apparatus on the button
US11665757B2 (en) 2019-01-08 2023-05-30 Universal Electronics Inc. Universal audio device pairing assistant
US11776539B2 (en) 2019-01-08 2023-10-03 Universal Electronics Inc. Voice assistant with sound metering capabilities
US10633693B1 (en) 2019-04-16 2020-04-28 Celsee Diagnostics, Inc. System and method for leakage control in a particle capture system
EP3966307A4 (en) 2019-05-07 2023-10-04 Bio-Rad Laboratories, Inc. System and method for automated single cell processing
US11273439B2 (en) 2019-05-07 2022-03-15 Bio-Rad Laboratories, Inc. System and method for target material retrieval from microwells
US11782593B1 (en) 2019-06-09 2023-10-10 Advanced Electronic Design, Inc. Wireless personal protection device and methods of use
AU2020290981B2 (en) 2019-06-14 2024-03-07 Bio-Rad Laboratories, Inc. System and method for automated single cell processing and analyses
US11504719B2 (en) 2020-03-12 2022-11-22 Bio-Rad Laboratories, Inc. System and method for receiving and delivering a fluid for sample processing
US11847310B2 (en) * 2020-10-09 2023-12-19 Honeywell International Inc. System and method for auto binding graphics to components in a building management system
CN113176900A (en) * 2021-04-16 2021-07-27 深圳市智微智能科技股份有限公司 Android-based play box configuration detection method, device, equipment and storage medium
US11678002B1 (en) * 2021-12-31 2023-06-13 Universal Electronics Inc. Systems and methods for configuration of a controlling device to enable selection of one or more media streams

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555369A (en) * 1994-02-14 1996-09-10 Apple Computer, Inc. Method of creating packages for a pointer-based computer system
WO2000039772A1 (en) * 1998-12-28 2000-07-06 Koninklijke Philips Electronics N.V. Fully functional remote control editor and emulator
US6211870B1 (en) * 1997-07-07 2001-04-03 Combi/Mote Corp. Computer programmable remote control
US20020199025A1 (en) * 2001-02-23 2002-12-26 Altoweb, Inc. System and method to create an application and to manipulate application components within the application
US20050071749A1 (en) * 2003-09-30 2005-03-31 Bjoern Goerke Developing and using user interfaces with views

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6014092A (en) * 1987-10-14 2000-01-11 Universal Electronics Inc. Key mover
US5909545A (en) * 1996-01-19 1999-06-01 Tridia Corporation Method and system for on demand downloading of module to enable remote control of an application program over a network
US5940074A (en) * 1996-06-03 1999-08-17 Webtv Networks, Inc. Remote upgrade of software over a network
US6144962A (en) * 1996-10-15 2000-11-07 Mercury Interactive Corporation Visualization of web sites and hierarchical data structures
US20010011953A1 (en) * 1998-08-07 2001-08-09 Peter Rae Shintani Configurable remote control unit using a removable memory device
US6437836B1 (en) * 1998-09-21 2002-08-20 Navispace, Inc. Extended functionally remote control system and method therefore
EP1190406A2 (en) * 1999-11-26 2002-03-27 Koninklijke Philips Electronics N.V. Method and system for programming a universal remote controller
JP2001320496A (en) * 2000-05-11 2001-11-16 Nec Corp Remote control method, system, server, information processing apparatus, and recording medium
US7159185B1 (en) * 2000-09-14 2007-01-02 Microsoft Corporation Function objects
US7428023B2 (en) * 2001-04-19 2008-09-23 Digeo, Inc. Remote control device with integrated display screen for controlling a digital video recorder
KR100448176B1 (en) * 2001-12-24 2004-09-10 최형락 A remote controller data download system using a internet, and thereof method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555369A (en) * 1994-02-14 1996-09-10 Apple Computer, Inc. Method of creating packages for a pointer-based computer system
US6211870B1 (en) * 1997-07-07 2001-04-03 Combi/Mote Corp. Computer programmable remote control
WO2000039772A1 (en) * 1998-12-28 2000-07-06 Koninklijke Philips Electronics N.V. Fully functional remote control editor and emulator
US20020199025A1 (en) * 2001-02-23 2002-12-26 Altoweb, Inc. System and method to create an application and to manipulate application components within the application
US20050071749A1 (en) * 2003-09-30 2005-03-31 Bjoern Goerke Developing and using user interfaces with views

Also Published As

Publication number Publication date
US20060050142A1 (en) 2006-03-09
US7266777B2 (en) 2007-09-04
WO2006029106A3 (en) 2007-03-08

Similar Documents

Publication Publication Date Title
US7266777B2 (en) Configurable controlling device having an associated editing program
US11656743B2 (en) System and method for flexible configuration of a controlling device
EP2507699B1 (en) System and method for configuration of controlling device functionality
US7941786B2 (en) Configurable controlling device and associated configuration distribution system and method
EP2035975B1 (en) Configurable controlling device and associated configuration upload and download system and method
US8199113B2 (en) Programmable on screen display and remote control
US10281893B2 (en) System and method for configuration of macro commands in a controlling device
US20230251768A1 (en) System and method for flexible configuration of a controlling device
JP2002108532A (en) Menu display device and menu display method
CA2467712A1 (en) Hand held remote control device having an improved user interface

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase