WO1999057630A1 - Method and apparatus to increase functionality of a user input device - Google Patents

Method and apparatus to increase functionality of a user input device Download PDF

Info

Publication number
WO1999057630A1
WO1999057630A1 PCT/US1999/009275 US9909275W WO9957630A1 WO 1999057630 A1 WO1999057630 A1 WO 1999057630A1 US 9909275 W US9909275 W US 9909275W WO 9957630 A1 WO9957630 A1 WO 9957630A1
Authority
WO
WIPO (PCT)
Prior art keywords
user input
information
duration
increment
display
Prior art date
Application number
PCT/US1999/009275
Other languages
French (fr)
Inventor
Robert O. Banker
Dean F. Jerding
Arturo A. Rodriguez
David T. Schneider
Original Assignee
Scientific-Atlanta, 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 Scientific-Atlanta, Inc. filed Critical Scientific-Atlanta, Inc.
Publication of WO1999057630A1 publication Critical patent/WO1999057630A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes

Definitions

  • This invention relates in general to user input or interface devices, such as computers, calculators, television, Home Communications Terminals (HCT), and set tops, and in particular to a means by which users of such devices may scroll through the vast amounts of information available on these devices in a more functional and efficient way.
  • user input or interface devices such as computers, calculators, television, Home Communications Terminals (HCT), and set tops
  • HCT Home Communications Terminals
  • HCTS home communication terminals
  • user input devices such as key, key pad, or remote control
  • Examples of such information include data files or television program listings and guides presented to the user to, for example, operate the device.
  • a down arrow key is pressed, information is advanced by one increment of data, whether by one row, one column, one channel, one screen, one half-hour, one hour, or one page.
  • the information is advanced in the same increments, but at an increased speed.
  • the functionality of scrolling in set increments either by a single increment at a time or by the same increments more quickly, unnecessarily restricts the user that wants to view several days of a television program guide or several columns or rows of data. It has been assumed that simply increasing the speed of the scrolling, with pauses for user scanning, would solve this problem. Unfortunately, as televisions become equipped to handle over 2,000 channels, simply scrolling through information at an increased speed will not suffice. Direct channel entry has been used in the past to quickly get to channels in situations in which scrolling takes too long.
  • An additional solution to provide additional functionality for a key is the "soft key" approach.
  • the function of one or several keys is determined by a preselected mode of operation. A function display versus key location combination is required. In Mode 1, Key A is a page down key and Key B is a page up key. In Mode 2, Key A is a display time key and Key B is a set time key.
  • Many applications, such as a remote control/ television combination do not have the space required for the display or an easy way to combine the function display information with the key location, on the keypad. Further, modal user interfaces are inherently confusing to users.
  • HCTs the challenge is to present visually pleasing graphics and animation while still allowing the user to navigate quickly to items of interest.
  • large sets or multiple fields of associated data are being displayed. These sets often comprise a key field, such as channel number, and several secondary fields, such as program information. While data for the key field may be accessed and updated rapidly since a small amount of information on the screen is being changed, the information for associated fields is usually more voluminous and must be retrieved from databases. This makes it difficult for the "fast" navigational mode to be fast enough to be acceptable to the user while scanning information from large databases. This problem is augmented as the displayable area of the TV or display device becomes larger in physical dimension requiring higher spatial resolution and as the picture rate increases as in forthcoming high-definition TV.
  • the task the user is trying to accomplish plays an important role in dictating how the user-interface should support navigation.
  • a direct approach of entering the time or channel numerically is a good choice.
  • this prevents the number keys from being used for other functionality and may require a mode to dictate what the number keys do when.
  • Even with the direct approach there are still many instances where users want to navigate in an incremental manner. For example, after jumping 24 hours into the future by pressing a Next Day button there are still 48 half -hour blocks to scroll through in a single day. Being able to do this quickly then becomes a necessity.
  • Browsing tasks call for scrolling or paging such that the user has an opportunity to catch a glimpse of something of interest. Accordingly, there exists a need to provide a user input device with enhanced functionality, but free from the difficulties inherent in current devices. Such a device should address the need to scroll multiple sets of data, without having to depress multiple inputs. Moreover, such a device should be easy to use, presenting information to a user in an intuitive fashion
  • FIG. 1 is a block diagram of a system for outputting commands based on received user input commands in accordance with the invention
  • FIG. 2 is a block diagram of a system for outputting commands to a display or data port;
  • FIG. 3 is a flow diagram illustrating the determination of the output command to be performed;
  • FIG. 4 is a simple function table, which would be stored in data storage or memory, used for determining the output corresponding to a user input;
  • FIG. 5 is an example of a display of information which can be scanned by a user, with first piece of information highlighted;
  • FIG. 6 is an example of the highlight continuing to advance in predetermined half hour increments in response to user input.
  • FIG. 7 is an example in which a first display of information includes main fields of displayed information, and associated fields of displayed information;
  • FIG. 8 is an example of a display of information as in FIG. 7, in which the associated fields are "grayed" or dimmed while scrolling at an accelerated rate;
  • FIG. 9 is an example of a different output command being used in response to continuous user input.
  • FIG. 10 illustrates an example of a user navigable table which may result from selection of a particular user input.
  • the system 10 includes a control device 12, such as a remote control; a information processing device 14 such as a cable or satellite television Home Communications Terminal (HCT); and a display 16, such as a television.
  • a control device 12 such as a remote control
  • a information processing device 14 such as a cable or satellite television Home Communications Terminal (HCT)
  • a display 16 such as a television.
  • a user presses a key on a keypad 17, such as down arrow key 18 on remote control 12.
  • a transmitter 20 located in remote control 12 transmits the user input to a receiver 22 in HCT 14.
  • Receiver 22 communicates the user input information to a processing module 24, which determines the correct output based on the user input and the duration of the user input, as explained in greater detail below.
  • the transmitter 20 and receiver 22 are conventional devices which communicate in a manner well known in the art, examples of which are hard wired, infra-red, and radio frequency communication to name a few.
  • HCT 14 and television 16 are coupled in a manner known in the art, such as via cable 28.
  • the displayed output 30 shown on screen 26 may be, for example, television programming information sorted by one or more relevant criteria.
  • the resultant output command is displayed on the screen 26 of the television 16.
  • the remote control 12 may be a keyboard coupled to an information processing device 14 such as a computer, which is in turn coupled to a display monitor 16.
  • the displayed output 30 may combine computer generated information such as pages of a spreadsheet, pages of text or an accumulated database to name a few.
  • FIG. 2 is a block diagram of a system 40 for outputting commands to a display 140 or data port 130.
  • the resultant output commands can be, but are not limited to functionality such as, instructions, such as display next line of data, or action , such as continue scrolling down displayed information at an accelerated number of lines per second.
  • the output commands are based on received user input commands.
  • the input 60 can be produced from a wide variety of inputs, including but not limited to: actuating a key or a button as by depressing it, clicking an active area on a tool or a scroll bar, or moving a cursor to an area on a display screen.
  • Time since first receipt, with the continued receipt, of user input herein is used to measure duration and to illustrate the operation of the system, however it is to be noted that the invention is not so limited.
  • the duration could be dependent on other variables such as the repetition of a predetermined number of normal operations.
  • Control device 50 receives an input from a user.
  • the user actuates a key, input 60, providing a user input.
  • the user input 60 is communicated to a processor 70 or to transmitting device 80.
  • the control device 50 further includes a processor 70 which may include timing means and a memory for storing a data table. This processor is adapted to determine the correct output command based upon the received user input, in a manner as described below with reference to Figs. 3-7. It is to be noted that the function of the processor 70 may also or alternatively be placed in the information processing device 100, as by providing a controller 120 which likewise includes a timing means and memory storage.
  • transmitting device 80 may be any of a number of devices known in the art, examples of which include hard wired, infra-red, and radio frequency.
  • This transmitted information is received in information processing device 100 by a receiving device 110.
  • the receiving device 110 must be compatible with the transmitting device 80, i.e., capable of receiving information from the type of transmitting device selected.
  • the function of determining the correct output command based on the received user input is carried out in either a processor 70 located in control device 50, and/ or a controller 120 in information processing device 100. If the input is to be processed in the information processing device 100, the signal received by the receiving device 110 is passed to the processor 120 which is electronically coupled thereto, for processing as described below. The processed input, i.e., the output command may then be passed to, for example, output devices such as data port 130 or display 140.
  • FIG. 3 there is illustrated a flow diagram 200 for determining the output command based upon a received user input. At start 202, the operation waits for a user input.
  • the received user input 210 Upon receiving user input the received user input 210 starts a timer 212 and references a function table stored in, for example processor 70, to determine an output command associated with the received user input and the time since first receipt of input 220. Based on the user input and the duration of the input as measured by the timer, the function table provides a resultant output command to processor 230. Therefore, at step 240, the processor checks to determine if the same user input is still being received. If yes, steps 220, 230, and 240 are performed again, providing the resultant output command based on the function table. If not, the processor stops timing 250 and returns to start 202.
  • a function table stored in, for example processor 70
  • FIG. 4 is a simple function table 300 for a single key on a user input device.
  • a function table is used as an example to simplify the explanation of the relationship between output command/ function and duration, though the invention is not so limited, mathematical calculations, formulas, or other methods can also be used.
  • the function table may be stored in data storage or memory and used for determining the output, corresponding to a user input and the duration of the user input. More complex function tables or calculations can
  • the initial input of Key A results in the output of Command A, as the duration of the user input, N, is greater than zero (0) but less than a predetermined time X.
  • the result of an output Command A could be the highlighting of a line in a display.
  • FIG. 5 is an example of a display 400 which can be scanned or scrolled. As in Step 302, upon depressing Key A the highlight area would advance from a first row, highlighting 9:00 on Tuesday, January 4, to another row, highlighting 9:30 on Tuesday, January 4.
  • predetermined time X is less than predetermined time Y. If input of Key A continues such that duration N becomes greater than predetermined time X, but is still less than predetermined time Y, the output may be, for example, the repetition of Command A at some predetermined rate, allowing a pause between repetitions so that the user can scan the resultant outcome of the repeated Command A, such as the highlighting the next line or column.
  • FIG. 6 illustrates an application with main data of interest, field 602 and multiple fields of associated data 604, 606. As previously noted, updating the associated fields of data can either slow the speed of data display considerably, or will require considerable additional memory.
  • command repetition rates referred to in the previous discussion are limited by the capabilities of the device on which the informational interface is implemented. Such performance can be limited by the processor speed or amount of memory available.
  • This invention also provides a configurable mechanism for navigating displays of information on resource constrained devices whereby the presentation adapts to provide optimal combinations of animation and response time depending on the user's tasks.
  • FIG. 8 illustrates an application with main data of interest 702 and multiple fields of secondary, or associated data 704, 706.
  • updating the associated fields of data can slow the speed of navigation considerably.
  • the user interface during repetition of Commands can be configured to 1) control the transformation of the informational display, such as animating a highlight moving from one row to another, during each repetition of the Command, and 2) as illustrated in FIG. 8, control whether the fields of associated data 704, 706, in whole or in part, are either updated with each command repetition or are not updated and depicted as deactivated or "grayed out”.
  • associated fields 704, 706 of the data are not updated during the Command repetition, said fields are illustrated in some visual manner to the user as not active or "phantom".
  • the associated data for the currently displayed key data is retrieved and displayed in normal form.
  • the reduction of the associated data to a phantom mode could be depicted in many different ways by someone skilled in the art, including but not limited to graying out the display area, dimming the intensity of that area of the display, providing a message to the user that the fields are inactive.
  • the "phantom" display mode is used with any functionality where the display has associated data and rapidly changing primary or key data.
  • Command A could be a single incremental scroll set to use full animation and full update of fields before time X and then minimal animation and full update of fields after time X and before time Y.
  • Command B of FIG. 4 could be a single incremental scroll set to use no animation and only update the main fields and dim the associated fields.
  • Command A could be a single incremental scroll set to use full animation and full update of fields before time X and then no animation and only key field update (with associated fields dimmed) after time X and before time Y.
  • Command B could be a page scroll with full animation and full update of fields
  • Command C could be a page scroll with no animation and only update of key fields (with associated fields dimmed).
  • Still another embodiment could provide two different phases to Command B and Command C, much like Command A. This would allow Command A to be single scrolls, Command B to be page scrolls, and Command C to be multi-page scrolls, all configurable with initial repetitions of animation and full field update
  • the default configurations for the transformation of the screen during the update and the associated field upate display are set from the server or controller of the system, such as the headend of a cable HCT network.
  • the user interface also provides the user a mechanism to customize the scrolling navigation by choosing among predefined sets of configurations labeled appropriately for the user, such as "Scroll Mode: Slow, Medium, Fast".
  • the configurable parameters for a preferred embodiment of the scrolling navigation are shown in FIG. 10, discussed in greater detail below. Referring to FIG. 4 Step 306, predetermined time Y is less than predetermined time Z. When input of Key A continues such that duration N becomes greater than predetermined time Y, but less than time Z, the output becomes Command B.
  • Command B can be any other available command, such as scrolling multiple increments of data, page down, page up, end of page, top of page, end, start, home, next day, next screen, next channel or display a user window or menu.
  • Command B could advance a whole page down of information, a whole day forward, or multiple lines, as opposed to the advancing of a line or column at a time as in Command A.
  • Command B would repeat at some predetermined rate the advance, pausing between repetitions so that the user can scan the resultant outcome and stop the advance by stopping the input, in this example, stop pressing Key A.
  • FIG. 9 is an example of a different output command being used, advancing by days, as in FIG. 4 Step 306.
  • FIG. 10 is an example of a different output command of displaying a pop-up window, as in FIG. 4 Step 306.
  • a pop-up window 750 is displayed allowing the user to enter the desired date 652 and time 754 to be displayed.
  • the output becomes Command C.
  • This step is included to teach that additional functionality may be added, such as scrolling by half hour on single inputs and for a duration greater than time X, scrolling by page for a duration greater than time Y, scrolling by date for a duration greater than time Z, and so forth. Scrolling the data initially in small single increments, with a single action or repeatedly at a predetermined rate, then scrolling in multiple increments, followed by even larger data increments or other functions, such as going to the end of the data or allowing the user to enter information using a pop-up window or user menu, all based on the duration of the user input, could be done using the invention.

Abstract

A method (200) of allowing additional functionality in user input devices (50), such as keys (18) or buttons, based on the duration of the input by the user, the duration being measured in time, number of repetitions of normal activity, or other basis. Remote controls and other user input devices have maximized functionality of buttons or keys, while allowing the number of the buttons or keys to be minimized.

Description

METHOD AND APPARATUS TO INCREASE FUNCTIONALITY OF A USER INPUT DEVICE
Technical Field
This invention relates in general to user input or interface devices, such as computers, calculators, television, Home Communications Terminals (HCT), and set tops, and in particular to a means by which users of such devices may scroll through the vast amounts of information available on these devices in a more functional and efficient way.
Background
In current products, such as computers, calculators, televisions, and cable television set tops also known as home communication terminals or HCTS, user input devices, such as key, key pad, or remote control, are used to scroll through information. Examples of such information include data files or television program listings and guides presented to the user to, for example, operate the device. In the example of a television, HCT, and a remote control, each time a down arrow key is pressed, information is advanced by one increment of data, whether by one row, one column, one channel, one screen, one half-hour, one hour, or one page.
In certain embodiments, if the user continues to press the down arrow key, the information is advanced in the same increments, but at an increased speed. The functionality of scrolling in set increments, either by a single increment at a time or by the same increments more quickly, unnecessarily restricts the user that wants to view several days of a television program guide or several columns or rows of data. It has been assumed that simply increasing the speed of the scrolling, with pauses for user scanning, would solve this problem. Unfortunately, as televisions become equipped to handle over 2,000 channels, simply scrolling through information at an increased speed will not suffice. Direct channel entry has been used in the past to quickly get to channels in situations in which scrolling takes too long. This approach, however, will not work well in a 2,000 channel plus environment, since a user must remember up to four digits of a selected channel number. This problem is further heightened by the fact that viewing guides may contain information for over a month of prograrnming. In cases where it was obvious that simply increasing the speed would not resolve the user desired functionality issue, such as scanning multiple sets of data, other solutions are currently being used. Scrolling multiple sets of data, like multiple rows, pages, or days, in a single operation requires the inefficient process of using either a separate key, such as a page down key, or multiple key sets, such as pressing a shift key while pressing the down arrow key.
The solution of including additional "function" keys to perform different tasks, has a negative impact in both size and simplicity. As user input devices continue to be reduced in size, the space required for additional keys has a negative economic cost. In areas where size is a concern for example, when a "function" key is pressed prior to pressing a down arrow key, the additional functionality for the down arrow key is performed for the next immediate pressing of the down arrow key. In addition this is an inefficient user process requiring the pressing of additional keys. This requires only one additional key on the keypad, but as space is at a premium cost versus size, even one additional key could require a larger keypad, display screen, or remote control. In applications where size is not a restriction, simplicity of information/ types of input often is, as too many keys or buttons confuse users.
An additional solution to provide additional functionality for a key, is the "soft key" approach. The function of one or several keys is determined by a preselected mode of operation. A function display versus key location combination is required. In Mode 1, Key A is a page down key and Key B is a page up key. In Mode 2, Key A is a display time key and Key B is a set time key. Many applications, such as a remote control/ television combination, do not have the space required for the display or an easy way to combine the function display information with the key location, on the keypad. Further, modal user interfaces are inherently confusing to users.
An additional concern in user interfaces ("UIs' ') that incorporate scrolling of informational displays is the ability to meet acceptable user response times regardless of the constrained environment in which the UI executes. The advent of faster processors and cheaper memory has led to graphical user interfaces annotated with complex images and animation effects. The benefits of using animation to help users perceive changes in graphical views rather than having to think about them has been pointed out by information visualization research over the last ten years. However, on resource constrained platforms such as
HCTs, the challenge is to present visually pleasing graphics and animation while still allowing the user to navigate quickly to items of interest. The speed of incremental graphical UI changes in a low-cost computing display device with compute, memory and bus bandwidth constraints, such as a HCT, is limited.
Present embodiments of displays described previously often incorporate two-stage scrolling where navigational speed is first slow then faster. However, in some user interfaces, large sets or multiple fields of associated data are being displayed. These sets often comprise a key field, such as channel number, and several secondary fields, such as program information. While data for the key field may be accessed and updated rapidly since a small amount of information on the screen is being changed, the information for associated fields is usually more voluminous and must be retrieved from databases. This makes it difficult for the "fast" navigational mode to be fast enough to be acceptable to the user while scanning information from large databases. This problem is augmented as the displayable area of the TV or display device becomes larger in physical dimension requiring higher spatial resolution and as the picture rate increases as in forthcoming high-definition TV. An example would be the multitude of information, including times and program names, that is displayed when scrolling through a channel line-up on a television program guide. Accessing the database of program guide information during navigation of program displays on an HCT often does not meet the necessary user response time, especially with the increasing amount of programming on digital systems and as more detailed information such as program descriptions are displayed in addition to titles.
The task the user is trying to accomplish plays an important role in dictating how the user-interface should support navigation. In the example of a television program guide, if the user wants to go directly to a particular time or channel then a direct approach of entering the time or channel numerically is a good choice. However, this prevents the number keys from being used for other functionality and may require a mode to dictate what the number keys do when. Even with the direct approach, there are still many instances where users want to navigate in an incremental manner. For example, after jumping 24 hours into the future by pressing a Next Day button there are still 48 half -hour blocks to scroll through in a single day. Being able to do this quickly then becomes a necessity. If the user's task is simply browsing to see what is on different channels or times, the direct approach does not allow the users to see information for the channels they are skipping. Browsing tasks call for scrolling or paging such that the user has an opportunity to catch a glimpse of something of interest. Accordingly, there exists a need to provide a user input device with enhanced functionality, but free from the difficulties inherent in current devices. Such a device should address the need to scroll multiple sets of data, without having to depress multiple inputs. Moreover, such a device should be easy to use, presenting information to a user in an intuitive fashion
Brief Description of the Drawings
FIG. 1 is a block diagram of a system for outputting commands based on received user input commands in accordance with the invention;
FIG. 2 is a block diagram of a system for outputting commands to a display or data port; FIG. 3 is a flow diagram illustrating the determination of the output command to be performed;
FIG. 4 is a simple function table, which would be stored in data storage or memory, used for determining the output corresponding to a user input;
FIG. 5 is an example of a display of information which can be scanned by a user, with first piece of information highlighted;
FIG. 6 is an example of the highlight continuing to advance in predetermined half hour increments in response to user input; and,
FIG. 7 is an example in which a first display of information includes main fields of displayed information, and associated fields of displayed information; FIG. 8 is an example of a display of information as in FIG. 7, in which the associated fields are "grayed" or dimmed while scrolling at an accelerated rate;
FIG. 9 is an example of a different output command being used in response to continuous user input; and
FIG. 10 illustrates an example of a user navigable table which may result from selection of a particular user input.
Detailed Description of the Preferred Embodiment
While the specification concludes with claims defining the features of the invention that are regarded as novel, it is believed that the invention will be better understood from a consideration of the following description in conjunction with the drawing figures, in which like reference numerals are carried forward.
Referring now to FIG. 1, there is illustrated therein a block diagram of a system 10 for outputting commands based on received user input commands. The system 10 includes a control device 12, such as a remote control; a information processing device 14 such as a cable or satellite television Home Communications Terminal (HCT); and a display 16, such as a television. To effect a command or instruction, a user (not shown) presses a key on a keypad 17, such as down arrow key 18 on remote control 12. A transmitter 20 located in remote control 12 transmits the user input to a receiver 22 in HCT 14. Receiver 22 communicates the user input information to a processing module 24, which determines the correct output based on the user input and the duration of the user input, as explained in greater detail below. The transmitter 20 and receiver 22 are conventional devices which communicate in a manner well known in the art, examples of which are hard wired, infra-red, and radio frequency communication to name a few. Likewise, HCT 14 and television 16 are coupled in a manner known in the art, such as via cable 28. The displayed output 30 shown on screen 26 may be, for example, television programming information sorted by one or more relevant criteria. The resultant output command is displayed on the screen 26 of the television 16. Alternatively in a computing environment, the remote control 12 may be a keyboard coupled to an information processing device 14 such as a computer, which is in turn coupled to a display monitor 16. In this example, the displayed output 30 may combine computer generated information such as pages of a spreadsheet, pages of text or an accumulated database to name a few.
FIG. 2 is a block diagram of a system 40 for outputting commands to a display 140 or data port 130. The resultant output commands can be, but are not limited to functionality such as, instructions, such as display next line of data, or action , such as continue scrolling down displayed information at an accelerated number of lines per second. The output commands are based on received user input commands. The input 60 can be produced from a wide variety of inputs, including but not limited to: actuating a key or a button as by depressing it, clicking an active area on a tool or a scroll bar, or moving a cursor to an area on a display screen.
Time since first receipt, with the continued receipt, of user input herein is used to measure duration and to illustrate the operation of the system, however it is to be noted that the invention is not so limited. The duration could be dependent on other variables such as the repetition of a predetermined number of normal operations.
Control device 50, for example a remote control such as remote control 12 of FIG. 1, receives an input from a user. The user actuates a key, input 60, providing a user input. The user input 60 is communicated to a processor 70 or to transmitting device 80. The control device 50 further includes a processor 70 which may include timing means and a memory for storing a data table. This processor is adapted to determine the correct output command based upon the received user input, in a manner as described below with reference to Figs. 3-7. It is to be noted that the function of the processor 70 may also or alternatively be placed in the information processing device 100, as by providing a controller 120 which likewise includes a timing means and memory storage.
The user input, either processed by processor 70 or not, is transmitted to information processing device 100 via transmitting device 80. As noted above, transmitting device 80 may be any of a number of devices known in the art, examples of which include hard wired, infra-red, and radio frequency. This transmitted information is received in information processing device 100 by a receiving device 110. The receiving device 110 must be compatible with the transmitting device 80, i.e., capable of receiving information from the type of transmitting device selected.
As noted above, the function of determining the correct output command based on the received user input is carried out in either a processor 70 located in control device 50, and/ or a controller 120 in information processing device 100. If the input is to be processed in the information processing device 100, the signal received by the receiving device 110 is passed to the processor 120 which is electronically coupled thereto, for processing as described below. The processed input, i.e., the output command may then be passed to, for example, output devices such as data port 130 or display 140. Referring now to FIG. 3 there is illustrated a flow diagram 200 for determining the output command based upon a received user input. At start 202, the operation waits for a user input. Upon receiving user input the received user input 210 starts a timer 212 and references a function table stored in, for example processor 70, to determine an output command associated with the received user input and the time since first receipt of input 220. Based on the user input and the duration of the input as measured by the timer, the function table provides a resultant output command to processor 230. Therefore, at step 240, the processor checks to determine if the same user input is still being received. If yes, steps 220, 230, and 240 are performed again, providing the resultant output command based on the function table. If not, the processor stops timing 250 and returns to start 202.
FIG. 4 is a simple function table 300 for a single key on a user input device. A function table is used as an example to simplify the explanation of the relationship between output command/ function and duration, though the invention is not so limited, mathematical calculations, formulas, or other methods can also be used. The function table may be stored in data storage or memory and used for determining the output, corresponding to a user input and the duration of the user input. More complex function tables or calculations can
6 be constructed for multiple keys on a user input device, but for ease of explanation, this simple example is shown here. It is to be noted that while the invention is illustrated with a single function key and simplified function table, the invention is not so limited. Any number of function keys, the outputs of which are determined in various ways, are all contemplated herein.
Referring now to Figs. 4-10, and in particular FIG. 4, the initial input of Key A, illustrated in Step 302, results in the output of Command A, as the duration of the user input, N, is greater than zero (0) but less than a predetermined time X. The result of an output Command A could be the highlighting of a line in a display. FIG. 5 is an example of a display 400 which can be scanned or scrolled. As in Step 302, upon depressing Key A the highlight area would advance from a first row, highlighting 9:00 on Tuesday, January 4, to another row, highlighting 9:30 on Tuesday, January 4.
In FIG. 4 Step 304, predetermined time X is less than predetermined time Y. If input of Key A continues such that duration N becomes greater than predetermined time X, but is still less than predetermined time Y, the output may be, for example, the repetition of Command A at some predetermined rate, allowing a pause between repetitions so that the user can scan the resultant outcome of the repeated Command A, such as the highlighting the next line or column.
This result is illustrated in FIG. 6 wherein the highlight continues to advance in predetermined half hour increments as the user continues to press Key A such that duration N is greater than predetermined time X, as in FIG. 4 Step 304. Advancing to 10:30, then 11:00, then 11:30, and so forth, still on Tuesday, January 4, until the user stops pressing Key A or the duration N is greater than predetermined time Y. The invention also allows for the user setting and/ or selecting the output command/ functionality, or at least some associated parameters, for example the user could chose between different, medium, fast, faster, scrolling speeds for the predetermined rate of repetition for Command A. FIG. 7 illustrates an application with main data of interest, field 602 and multiple fields of associated data 604, 606. As previously noted, updating the associated fields of data can either slow the speed of data display considerably, or will require considerable additional memory.
The command repetition rates referred to in the previous discussion are limited by the capabilities of the device on which the informational interface is implemented. Such performance can be limited by the processor speed or amount of memory available. This invention also provides a configurable mechanism for navigating displays of information on resource constrained devices whereby the presentation adapts to provide optimal combinations of animation and response time depending on the user's tasks.
FIG. 8 illustrates an application with main data of interest 702 and multiple fields of secondary, or associated data 704, 706. As previously noted, updating the associated fields of data can slow the speed of navigation considerably. Accordingly, the user interface during repetition of Commands can be configured to 1) control the transformation of the informational display, such as animating a highlight moving from one row to another, during each repetition of the Command, and 2) as illustrated in FIG. 8, control whether the fields of associated data 704, 706, in whole or in part, are either updated with each command repetition or are not updated and depicted as deactivated or "grayed out". When associated fields 704, 706 of the data are not updated during the Command repetition, said fields are illustrated in some visual manner to the user as not active or "phantom". When the user stops the Command repetition that has been configured to not update the associated data, the associated data for the currently displayed key data is retrieved and displayed in normal form. The reduction of the associated data to a phantom mode could be depicted in many different ways by someone skilled in the art, including but not limited to graying out the display area, dimming the intensity of that area of the display, providing a message to the user that the fields are inactive. The "phantom" display mode is used with any functionality where the display has associated data and rapidly changing primary or key data.
The configurability of the scrolling can be applied in many combinations to the Command model described earlier. In one embodiment, Command A could be a single incremental scroll set to use full animation and full update of fields before time X and then minimal animation and full update of fields after time X and before time Y. Then Command B of FIG. 4 could be a single incremental scroll set to use no animation and only update the main fields and dim the associated fields. In another embodiment, Command A could be a single incremental scroll set to use full animation and full update of fields before time X and then no animation and only key field update (with associated fields dimmed) after time X and before time Y. Then Command B could be a page scroll with full animation and full update of fields, and Command C could be a page scroll with no animation and only update of key fields (with associated fields dimmed). Still another embodiment could provide two different phases to Command B and Command C, much like Command A. This would allow Command A to be single scrolls, Command B to be page scrolls, and Command C to be multi-page scrolls, all configurable with initial repetitions of animation and full field update
8 and final repetitions with no animation and only key field update with associated fields displayed in the dim mode.
In one preferred embodiment, the default configurations for the transformation of the screen during the update and the associated field upate display are set from the server or controller of the system, such as the headend of a cable HCT network. The user interface also provides the user a mechanism to customize the scrolling navigation by choosing among predefined sets of configurations labeled appropriately for the user, such as "Scroll Mode: Slow, Medium, Fast". The configurable parameters for a preferred embodiment of the scrolling navigation are shown in FIG. 10, discussed in greater detail below. Referring to FIG. 4 Step 306, predetermined time Y is less than predetermined time Z. When input of Key A continues such that duration N becomes greater than predetermined time Y, but less than time Z, the output becomes Command B. Command B can be any other available command, such as scrolling multiple increments of data, page down, page up, end of page, top of page, end, start, home, next day, next screen, next channel or display a user window or menu. Command B could advance a whole page down of information, a whole day forward, or multiple lines, as opposed to the advancing of a line or column at a time as in Command A. Command B would repeat at some predetermined rate the advance, pausing between repetitions so that the user can scan the resultant outcome and stop the advance by stopping the input, in this example, stop pressing Key A. FIG. 9 is an example of a different output command being used, advancing by days, as in FIG. 4 Step 306. As the duration N of pressing Key A became greater than time Y, the scanning started advancing by days rather than half hours. Now highlighting 10:30 on Friday, January 7. FIG. 10 is an example of a different output command of displaying a pop-up window, as in FIG. 4 Step 306. As the duration N of pressing Key A became greater than time Y, a pop-up window 750 is displayed allowing the user to enter the desired date 652 and time 754 to be displayed. In FIG. 4 Step 308, if input of Key A continues such that duration N becomes greater than predetermined time Z, the output becomes Command C. This step is included to teach that additional functionality may be added, such as scrolling by half hour on single inputs and for a duration greater than time X, scrolling by page for a duration greater than time Y, scrolling by date for a duration greater than time Z, and so forth. Scrolling the data initially in small single increments, with a single action or repeatedly at a predetermined rate, then scrolling in multiple increments, followed by even larger data increments or other functions, such as going to the end of the data or allowing the user to enter information using a pop-up window or user menu, all based on the duration of the user input, could be done using the invention.
While the preferred embodiments of the invention have been illustrated and described, it will be clear that the invention is not so limited. Numerous modifications, changes, variations, substitutions and equivalents will occur to those skilled in the art without departing from the spirit and scope of the present invention as defined by the appended claims.
10

Claims

What is claimed is:Claims
1. A method of providing additional functionality associated with a user input device, said method comprising the steps of: receiving a user input; determining a resultant output command based upon a duration of the user input; performing a first output command if the duration is less than a first predetermined time; performing a second output command if the duration of the user input is greater than or equal to said first predetermined time; and performing a third output command if the duration of the user input is greater than or equal to a second predetermined time.
2. A method as in Claim 1, wherein the first output command comprises scrolling through single increments of data.
3. A method as in Claim 2, wherein the user input is selected from actuating a key, actuating a button, clicking an active area on a tool bar, and moving a cursor to an area on a display screen.
4. A method as in Claim 2, wherein said increments are selected from rows, columns, fractions of days, days, and channels.
5. A method as in Claim 1, wherein the second output command is a repetition, at a predetermined rate based on duration of continuous user input, of the first output command.
6. A method as in Claim 1, comprising the further step of performing different output commands at additional predetermined durations of continuous user input.
7. A method as in Claim 1, wherein said third output command is different than said first and said second output commands.
11
8. A method as in Claim 1, wherein said second output command comprises displaying said first output command at an accelerated rate.
9. A method as in Claim 1, wherein said output commands comprising displaying data, said data consisting of main data fields and associated data fields.
10. A method as in Claim 9, wherein at least one of said main or associated data fields are not visible while one of said output commands are displayed.
11. A method of providing additional functionality associated with a user input device based on duration of a user input, said method comprising the steps of: receiving a user input; advancing a display of information at a first increment and a first predetermined rate if a received user input is less than a first predetermined time; advancing said display of information at said first increment, and a second predetermined rate if said receiver user input is greater than said first predetermined time; and advancing said display of information at a second increment when said received user input exceeds a second predetermined time.
12. A method as in Claim 11, wherein said display of information comprises a main field and at least one associated field.
13. A method as in Claim 12, wherein at least one of said fields of information is dimmed while said information is advancing.
14. A method as in Claim 13, wherein said associated fields of information are dimmed when advancing at said second increment.
15. A method as in Claim 11, wherein the user input is selected from the group consisting of actuating a key, activating a button, clicking an active area on a tool bar, and moving a cursor to an area on a display screen.
12
16. A method as in Claim 11, wherein said increments are selected from the group consisting of rows, columns, fractions of days, days, and channels.
17. A method as in Claim 11, wherein said second increment is user selected.
18. A method as in Claim 17, comprising further step of said user selecting said second increment from a display window.
19. A system for displaying information, said system comprising a user input device, an information processing device, a display device, and a processing module for outputting display information in a first increment and multiple rates, and a second increment, in response to duration of a user input.
20. A system as in Claim 19, wherein said processing module is located in said user input device
21. A system as in Claim 19, wherein said processing module is in said information processing device.
22. A system as in Claim 19, wherein said processing module displays information at said first increment and said first rate when the duration of a received user input is less than a first predetermined time.
23. A system as in Claim 22, wherein said processing module displays information at said first increment and said second rate when the duration of received user input exceeds said first predetermined time.
24. A system as in Claim 19, wherein said processing module displays information in said second increment when the duration of the received user input exceeds a second predetermined time.
25. A system as in Claim 19, further comprising a means for dimming at least a portion of the displayed information.
26. A system as in Claim 25, wherein said dimming occurs when said displayed information is displayed at such second increment.
13
PCT/US1999/009275 1998-05-01 1999-04-29 Method and apparatus to increase functionality of a user input device WO1999057630A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US7160398A 1998-05-01 1998-05-01
US09/071,603 1998-05-01

Publications (1)

Publication Number Publication Date
WO1999057630A1 true WO1999057630A1 (en) 1999-11-11

Family

ID=22102384

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/009275 WO1999057630A1 (en) 1998-05-01 1999-04-29 Method and apparatus to increase functionality of a user input device

Country Status (1)

Country Link
WO (1) WO1999057630A1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001045123A1 (en) * 1998-09-04 2001-06-21 Armstrong Brad A Remote controller with pressure sensitive buttons
WO2001069369A1 (en) * 2000-03-17 2001-09-20 Open Tv, Inc. Method and system for choosing an item out of a list appearing on a screen
US6310606B1 (en) 1992-03-05 2001-10-30 Brad A. Armstrong Multi-plane sheet connected sensors
US6344791B1 (en) 1998-07-24 2002-02-05 Brad A. Armstrong Variable sensor with tactile feedback
US6470078B1 (en) 1997-10-01 2002-10-22 Brad A. Armstrong Analog controls housed with electronic displays for telephones
WO2002090918A2 (en) * 2001-05-08 2002-11-14 Snap-On Technologies, Inc. Integrated diagnostic system
US6532000B2 (en) 1997-10-01 2003-03-11 Brad A. Armstrong Analog controls housed with electronic displays for global positioning systems
WO2003060622A3 (en) * 2001-12-28 2003-11-20 Koninkl Philips Electronics Nv Touch-screen image scrolling system and method
USRE45559E1 (en) 1997-10-28 2015-06-09 Apple Inc. Portable computers
US9360993B2 (en) 2002-03-19 2016-06-07 Facebook, Inc. Display navigation
US9448712B2 (en) 2007-01-07 2016-09-20 Apple Inc. Application programming interfaces for scrolling operations
US9619132B2 (en) 2007-01-07 2017-04-11 Apple Inc. Device, method and graphical user interface for zooming in on a touch-screen display

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0565253A2 (en) * 1992-04-08 1993-10-13 NCR International, Inc. Apparatus and method for processing payment for a merchandise item
EP0707258A2 (en) * 1994-10-11 1996-04-17 Fernando D. Falcon Mouse driver arrangement for providing advanced scrolling capabilities to a conventional mouse
WO1997018508A1 (en) * 1995-11-13 1997-05-22 Synaptics, Inc. Pressure sensitive scrollbar feature
EP0813138A1 (en) * 1996-06-11 1997-12-17 Xerox Corporation One Button searching of long lists

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0565253A2 (en) * 1992-04-08 1993-10-13 NCR International, Inc. Apparatus and method for processing payment for a merchandise item
EP0707258A2 (en) * 1994-10-11 1996-04-17 Fernando D. Falcon Mouse driver arrangement for providing advanced scrolling capabilities to a conventional mouse
WO1997018508A1 (en) * 1995-11-13 1997-05-22 Synaptics, Inc. Pressure sensitive scrollbar feature
EP0813138A1 (en) * 1996-06-11 1997-12-17 Xerox Corporation One Button searching of long lists

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9081426B2 (en) 1992-03-05 2015-07-14 Anascape, Ltd. Image controller
US6310606B1 (en) 1992-03-05 2001-10-30 Brad A. Armstrong Multi-plane sheet connected sensors
US6518953B1 (en) 1997-10-01 2003-02-11 Brad A. Armstrong Analog controls housed with electronic displays for remote controllers having feedback display screens
US6538638B1 (en) 1997-10-01 2003-03-25 Brad A. Armstrong Analog controls housed with electronic displays for pagers
US6470078B1 (en) 1997-10-01 2002-10-22 Brad A. Armstrong Analog controls housed with electronic displays for telephones
US6532000B2 (en) 1997-10-01 2003-03-11 Brad A. Armstrong Analog controls housed with electronic displays for global positioning systems
US6529185B1 (en) 1997-10-01 2003-03-04 Brad A. Armstrong Analog controls housed with electronic displays for electronic books
US6496449B1 (en) 1997-10-01 2002-12-17 Brad A. Armstrong Analog controls housed with electronic displays for clocks
USRE46548E1 (en) 1997-10-28 2017-09-12 Apple Inc. Portable computers
USRE45559E1 (en) 1997-10-28 2015-06-09 Apple Inc. Portable computers
US6344791B1 (en) 1998-07-24 2002-02-05 Brad A. Armstrong Variable sensor with tactile feedback
WO2001045123A1 (en) * 1998-09-04 2001-06-21 Armstrong Brad A Remote controller with pressure sensitive buttons
US6469691B1 (en) 1999-05-11 2002-10-22 Brad A. Armstrong Analog controls housed with electronic displays for hand-held web browsers
US6559831B1 (en) 1999-05-11 2003-05-06 Brad A. Armstrong Analog controls housed with electronic displays for personal digital assistants
AU2000231864B2 (en) * 2000-03-17 2004-10-07 Open Tv, Inc. Method and system for choosing an item out of a list appearing on a screen
WO2001069369A1 (en) * 2000-03-17 2001-09-20 Open Tv, Inc. Method and system for choosing an item out of a list appearing on a screen
WO2002090918A3 (en) * 2001-05-08 2003-11-27 Snap On Tech Inc Integrated diagnostic system
WO2002090918A2 (en) * 2001-05-08 2002-11-14 Snap-On Technologies, Inc. Integrated diagnostic system
US7350159B2 (en) 2001-05-08 2008-03-25 Snap-On Incorporated Integrated diagnostic system
US7184064B2 (en) 2001-12-28 2007-02-27 Koninklijke Philips Electronics N.V. Touch-screen image scrolling system and method
WO2003060622A3 (en) * 2001-12-28 2003-11-20 Koninkl Philips Electronics Nv Touch-screen image scrolling system and method
EP2698699A3 (en) * 2001-12-28 2014-07-30 Koninklijke Philips N.V. Touch-screen image scrolling system and method
CN1695105B (en) * 2001-12-28 2014-12-24 皇家飞利浦电子股份有限公司 Touch-screen image scrolling system and method
CN104598149A (en) * 2001-12-28 2015-05-06 皇家飞利浦电子股份有限公司 Touch-screen image scrolling system and method
CN103761049A (en) * 2001-12-28 2014-04-30 皇家飞利浦电子股份有限公司 Touch-screen image scrolling system and method
CN1695105A (en) * 2001-12-28 2005-11-09 皇家飞利浦电子股份有限公司 Touch-screen image scrolling system and method
EP2767892A3 (en) * 2001-12-28 2015-09-02 Koninklijke Philips N.V. Touch-screen image scrolling system and method
EP3379400A1 (en) * 2001-12-28 2018-09-26 Koninklijke Philips N.V. Touch-screen image scrolling system and method
EP2698699B1 (en) 2001-12-28 2018-04-18 Koninklijke Philips N.V. Touch-screen image scrolling system and method
EP2698698B1 (en) 2001-12-28 2018-04-11 Koninklijke Philips N.V. Touch-screen image scrolling system and method
EP2698698A3 (en) * 2001-12-28 2014-07-30 Koninklijke Philips N.V. Touch-screen image scrolling system and method
CN103761049B (en) * 2001-12-28 2017-12-29 皇家飞利浦电子股份有限公司 Touch-screen image scrolling system and method
US9360993B2 (en) 2002-03-19 2016-06-07 Facebook, Inc. Display navigation
US9760272B2 (en) 2007-01-07 2017-09-12 Apple Inc. Application programming interfaces for scrolling operations
US9619132B2 (en) 2007-01-07 2017-04-11 Apple Inc. Device, method and graphical user interface for zooming in on a touch-screen display
US9448712B2 (en) 2007-01-07 2016-09-20 Apple Inc. Application programming interfaces for scrolling operations
US10481785B2 (en) 2007-01-07 2019-11-19 Apple Inc. Application programming interfaces for scrolling operations
US10606470B2 (en) 2007-01-07 2020-03-31 Apple, Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
US10817162B2 (en) 2007-01-07 2020-10-27 Apple Inc. Application programming interfaces for scrolling operations
US10983692B2 (en) 2007-01-07 2021-04-20 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
US11269513B2 (en) 2007-01-07 2022-03-08 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
US11461002B2 (en) 2007-01-07 2022-10-04 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
US11886698B2 (en) 2007-01-07 2024-01-30 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display

Similar Documents

Publication Publication Date Title
US5552806A (en) Method and apparatus for positioning selectable function icons on a display
EP1291754B1 (en) Method and arrangement for scrollable cross point navigation in a user interface
US6966037B2 (en) Method and apparatus for scrollable cross-point navigation in a calendar user interface
EP1197834B1 (en) Browser navigation for devices with a limited input system
US6211856B1 (en) Graphical user interface touch screen with an auto zoom feature
CA2257670C (en) An array of displayed graphic images for enabling selection of a selectable graphic image
US6727917B1 (en) User interface for palm-sized computing devices and method and apparatus for displaying the same
US6188406B1 (en) Single-item text window for scrolling lists
EP1557744B1 (en) Haptic key controlled data input
US6437836B1 (en) Extended functionally remote control system and method therefore
US8405683B2 (en) Method for browsing through a list by continuous scrolling of a graphic feature and related terminal
US6104399A (en) System for menu-driven instruction input
EP0737006B2 (en) Customizable menu for a television receiver accessed via a remote control keyboard
US6222921B1 (en) Method and apparatus for displaying an electronic phonebook
WO1998038831A9 (en) Television control interface with electronic guide
US6683626B1 (en) Focus-based scrolling
WO1999057630A1 (en) Method and apparatus to increase functionality of a user input device
RU2032212C1 (en) Method for character information input in computer
US6424359B1 (en) Screen scroll control method and recording medium
US7421666B2 (en) Browser navigation for devices with a limited input system
KR20020064132A (en) Data broadcast receiving system
EP1012696B1 (en) System and method for navigating within a display having different display sections
JPH01232412A (en) Help system
KR101392321B1 (en) Moving Cursor in a Mobile Communication Terminal with a Navigation Function Key
US20040217940A1 (en) Method of Displaying Items in an On Screen Display

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): BR JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase