# Patent

## Title
Human interface input acceleration system

## Abstract

A human interface and input system is implemented on an input accelerator device to remotely operate hand-held host electronic devices such as cellular phones, PDA's, pocket PC's, and smart phone's. The input accelerator device can control some or all functions of the host device to eliminate the need to directly interface with the host device. The input accelerator device may be configured to optimize a biomechanical effect of a human user's opposing thumb and fingers by including, on one surface, one or more software configurable input elements manipulatable by the user's thumb(s) or finger, and, on another surface, one or more software configurable selection elements manipulatable by a user's finger(s). The input accelerator device can be a hybrid device combining a wireless headset with the device control features.

## Background
This application is related to co-pending U.S. patent application Ser. No. 10/699,555, filed on Oct. 31, 2003 and co-pending U.S. patent application Ser. No. 11/221,412, filed on Sep. 6, 2005.
BACKGROUND
The following description relates to hand-held input acceleration devices for interfacing with electronic devices, such as cellular phones, personal digital assistants (“PDAs”), pocket personal computers, smart phones, hand-held game devices, bar code readers, MP3 players and other similar input devices having a keypad or one or more input elements, and also relates to human interface and input systems for use with the hand-held acceleration devices.
Electronic devices have become increasingly sophisticated and physically smaller due in part to a decrease in the price of processing power and a concurrent increase in demand by consumers for smaller devices. Such devices, however, tend to be limited in function and utility by the user's ability to interface with the device for data input (e.g., text, numeric, and functional input) and/or device control, which becomes increasingly more difficult to do as the available space on the device's surface for positioning the input elements, which are used for data input and/or device control, continues to decrease.
Moreover, as the use of applications such as text centric applications (e.g., inputting data for e-mail, instant messaging, SMS, and MMS), list navigation applications (e.g. 1-D or 2-D navigation such as scrolling down a long list of songs to choose a song), and game applications (e.g. steering a car in a first person driving game) increases, the keypad on electronic devices, such as a cellular phone, is increasingly becoming a bottleneck to speed, accuracy and ease of data entry, playing games, picking items from long lists, web browsing, and launching applications.
For example, many hand-held electronic devices, in particular cellular phones, typically use a D-pad as the primary way to navigate up and down a list of items, such as a list of songs, on an item-by-item basis. Such item-by-item scrolling, however, is typically inefficient in navigating from the first item in the list to the last item in the list, especially if the list includes hundreds of items. Although most of these electronic devices provide the user with page up and page down functionality, which permits the user the scroll a number of items at once, e.g., some applications may associate ten items per page, often times such page up and page down functionality must be executed through multiple taps or presses of one or more input elements, typically those making up the keypad. The particular number of taps or number of input elements required to evoke such page up and down functionality typically depends on the application developer's preference, and therefore often differ from application to application within the same electronic device. Even the same application may be implemented using different user interfaces in different hand-held electronic devices.
Various human interface and input systems and techniques for hand-held electronic devices have been developed for data input and device control. These include miniature keyboards and keypads used in combination with chordal input techniques, modal input techniques and/or smart keys; and touch screens used in combination with on-screen keyboard or keypad software or hand-writing recognition software. Additionally, for gaming, some hand-held electronic devices, such as cellular phones, have incorporated miniature thumb joysticks on the face of the device itself in lieu of the directional navigation pad (D-pad).
Keyboard or Key Pad Used with Chordal, Modal and Smart Key Techniques
Miniature keyboards and keypads are similar to their standard full-size versions—i.e., a keyboard generally has a full set or substantially full set of numeric, character, and functional input elements, while key pads typically have a reduced set of numeric, character and/or functional input elements compared to keyboards. These miniature input devices typically are designed to fit the available space on one surface of a hand-held electronic device or are designed as small, easily transportable, external plug-in devices. Thus, as hand-held electronic devices become smaller, the size of the input elements typically has been reduced in order for the desired number of input elements to fit on one surface of the electronic device.
For data input and device control, miniature keyboards and keypads typically either require one of two input techniques—use of one or more thumbs or fingers to press the desired input elements or use of a stylus to “peck” the desired input elements (which is usually done where the input element is of smaller size). Various techniques, such as chordal input techniques, modal input techniques and smart keys, have been developed and implemented to improve the efficiency and effectiveness of using miniature keyboards and keypads.
Chordal Input Techniques
Chordal input techniques generally are based upon the principle that characters, symbols, words, phrases or concepts can be represented by a reduced set of input elements. Thus, by only having to press a reduced combination of input elements, functionality can be increased and quicker and more accurate data input can be realized. Chordal input techniques can be used on any keyboard or keypad configuration or any device having more than one input element, and typically results in fewer input elements or more functions compared to conventional keyboards or keypads. An example of an electronic device using two-handed chordal input techniques is a court reporter or stenographer's typewriter. One chordal input technique using a keypad to decrease the number of actuations to achieve a large number of functions is described in U.S. Pat. No. 5,973,621 to Levy, entitled “Compact Keyed Input Device,” which is incorporated herein by reference.
Modal Input Techniques
Modal input techniques are based on the concept that functions of the electronic device, e.g., text messaging in a cell-phone or PDA, can be accessed by pressing a particular input element (or combination of elements) on a keyboard or keypad. Once that particular input element is pressed, the functionality of all or a portion of the input elements on the keyboard or keypad may change. Modal techniques typically are used in calculators, cellular phones, and PDAs. For example, in cellular phones, a modal technique called multi-tap is common, in which individual input elements on the keypad are associated with multiple symbols, such as characters, letters, numbers, icons or other types of symbols, which tends to reduce the number of input elements required to achieve the desired functions, e.g., a twelve-input-element keypad can be used to represent all letters of the English alphabet and the decimal digits. A user can input a desired symbol within a set of symbols associated with a certain input element by tapping on that particular input element with a thumb, finger, or stylus, one or more times to input the desired character. Thus, if a user desires to send a text message, the user may press a functional input element, e.g., a mode key, to access the text messaging functionality of the cellular phone and then tap an individual input element one or more times to select the associated symbol for input. The number of taps needed to input a particular symbol may differ depending on the language character set chosen. For example, Japanese keypad or keyboards typically require a minimum set of 46 characters for text input, while English or American keyboards and keypads usually require a minimum set of 26 characters for text input. These modal input techniques have gained some popularity as users perform more text functions, but these techniques can be cumbersome because to access some letters or characters, an input element on the keypad may have to be tapped three or four times. Also, in hand-held devices with a keypad, such as a cellular phone, these modal input techniques typically rely on the user's thumb, which is not generally as dexterous as the user's fingers.
Smart Keys
Smart keys are typically used on keypads and refer to a single key or combination of keys that, when pressed, predict the users next logical action. Some implementations work better than others and some applications reduce the number of keystrokes required to complete a function better than others. Word-predictor software, for example, attempts to predict the word or character the user intends to input based upon one or more letters inputted by the user and the likely probabilities within a given language. The probability of the software guessing correctly increases with the length of the word or number of letters or characters inputted. In a device using smart keys on the keypad, a user may tap the keys 2, 2 and 8 in sequence to generate the word “cat” and the device would display that word first because it is usually the most common combination, whereas the word “bat,” which can be generated by pressing the same keys, would not be displayed first because it is not as common. Also, the word “cat” may be displayed after pressing the 2 key the second time based on a guess by the word-predictor software.
Smart keys also are typically used for Japanese data input where a user phonetically inputs letters representing the sound of the Japanese character (e.g., a Kanji character). Based on the inputted letters, the predictor software guesses the Japanese character. To select the character, a user would press the accept button or use the scrolling function to go to the next character with a similar set of phonetic inputs.
Touch Screen Using on-Screen Keyboard or Handwriting Recognition Software
Using on-screen keyboard or keypad software with a touch screen offers users the ability to enter data with fingers or thumbs on a screen-sized keyboard or buttons, allowing faster data input without a stylus or physical keyboard or keypad accessory; while using handwriting recognition software with a touch screen, such as GraffitiTM on the Palm operating system, offers users the ability to enter text with a stylus by writing the text directly on the touch screen. Touch screens usually consume more power and are more expensive than non touch-sensitive screens. This higher power consumption can be a problem for hand-held electronic devices, which typically have limited power resources. Moreover, touch screens usually require the user to use both hands (e.g., one hand is used to hold and steady the device while the other hand is used to grasp the stylus), which is generally undesirable for interfacing with and controlling one handed hand-held electronic device, such as cellular phones. Handwriting recognition software has improved the slowness and awkwardness inherent in stylus, finger or thumb input but other drawbacks still remain, such as high power consumption, the necessity to use both hands, and lack of tactile feedback to inform a user when an input element has been. Moreover, recognition software requires training to use properly, and, even then, still results in a high error rate.
Game Control
For game control, many of the above approaches have been used, but in most hand-held electronic devices, a user typically controls game play through the use of some form of input element, such as on a miniature keypad and/or D-pad, which typically is located on the front surface of the device. Game control on some hand-held electronic devices, such as cellular phones, is inherently one handed or at most two thumbed because of the size of the device, while game control on other hand-held electronic devices, such as PDAs and conventional game console controllers, is typically two-handed. The input elements associated with game control on these devices are typically digital, particularly the D-pad, even though analog input elements have been used on game controllers for PC and console game systems, such as Microsoft's Xbox or Sony's Play Station 2.
SUMMARY
The present inventors recognized that conventional human interface and input systems for hand-held electronic devices tended to be relatively inflexible, cumbersome, and inefficient to use, among other reasons, because they were not designed to take advantage of the biomechanics of the human hand, particularly the advantages associated with the opposition of the thumb to the fingers and the beneficial attributes of the thumb, e.g., its large range of motion and ability to impart large sustained forces, and the beneficial attributes of the fingers, e.g., their fine motor control, spatial memory and rapidity of motion.
The present inventors also recognized that the input techniques developed to improve the efficiency of data input and device control, such as chordal and modal techniques, were limited by the inefficiencies inherent in conventional input systems. For example, miniature keyboards and keypads used in combination with chordal input techniques not only required the user to memorize numerous input combinations and develop the necessary motor skills to control a reduced number of input elements to provide even more complex functionality compared to typical QWERTY keyboards, but also did not use or allocate input tasks to the fingers and thumb of the human hand effectively. Moreover, miniature keyboards and keypads used in combination with modal input techniques tended to limit the user's ability to efficiently input data depending on the number of taps required to input a particular symbol and how fast the user could tap the input element with his thumb or a stylus to select the particular symbol.
The present inventors also recognized that, with the emergence of multimedia capabilities, such as MP3, in many hand-held electronic devices, there is a need to support fast and intuitive scrolling and list navigation actions. For example, many hand-held electronic devices, in particular cellular phones, typically use a D-pad as the primary way to navigate up and down a list of items, such as a list of songs, on an item-by-item basis. Such item-by-item scrolling, however, is typically inefficient in navigating from the first item in the list to the last item in the list, especially if the list includes hundreds of items. Moreover, the page up and page down functionality provided on many of these devices to make it easier for a user to navigate long lists of items often must be executed through multiple taps or presses of one or more input elements. The particular number of taps or number of input elements required to evoke such page up and down functionality usually depends on the application developer's preference, and therefore often differs from application to application within the same electronic device.
The present inventors also recognized that a user's ability to control game play in such devices was greatly limited. For example, while analog game control has been available to users of PC and console game systems, analog game control generally has not been widely available on hand-held electronic devices, such as cellular phones and PDAs. As noted above, most high end games that run on a gaming platform such as the Xbox or the Play Station 2 involve analog or continuous inputs from one or more input elements, such as a miniature or full sized joystick. Cellular phones and PDAs, in contrast, provide only buttons or keys as input elements for game play. Moreover, to the present inventors knowledge, there are no standards for input element layout for cellular phones, or in the way that the input elements are mapped to gaming functions. For example, often times, the D-pad provided on most of these cellular phones is not available to the game developer to use as a game input. The result is that directional movement input is often provided using the number input elements on the keypad, particularly the “2”, “8”, “4”, and “6” input elements on the keypad for up, down, left and right directional movement. The present inventors recognized that this layout presents several problems. First, the input is discrete, so there is no way to provide a continuous input, such as steering a car in a first person driving game. In such as game, the car can be steered to move only left, straight, or right in preset increments, which severely limits the quality of the gaming experience. Second, directional movement is provided by the number input elements while the clearly labeled arrow keys on the D-pad remain unused. This typically requires getting used to and may create user confusion. Third, the number input elements are typically located on one end of the phone's surface, and are thus less comfortable to use than the D-pad which is typically located above the number input elements. The result is that game play is limited and not as widely adopted as it might be with a better interface.
Consequently, the present inventors have developed a flexible and efficient human interface and input system and techniques that may be implemented on a variety of small hand-held accessory devices or “input accelerator” devices, such as a key fob or remote control. An input accelerator device may connect to one or more conventional hand-held electronic devices (i.e., a host electronic device), such as a cellular phone, PDA, pocket PC, smart phone, MP3 player, or other similar devices using a wired or wireless communication protocol, such as Bluetooth, and remotely control all functions of the connected host electronic devices. The input accelerator device may be used in conjunction with the input elements on the host electronic device to accelerate the user's ability to perform functions such as text input, game play, list navigation and scrolling. Alternatively, the input accelerator device can even eliminate the need to directly interface with the inefficient human interface and input systems of the connected host electronic devices. The input accelerator device may also be implemented to include various hybrid devices including a wireless headset in addition to the functions of a remote control. The input accelerator device (whether one handed or two handed) may also be implemented to utilize the opposed thumb and finger ergonomics inherent in the hand and the skills already developed for using conventional input techniques to accomplish data input, list navigation, device control, and game control in a timely, efficient, comfortable, fun, and intuitive manner. Thus, no specialized training beyond that normally expected with any newly purchased hand-held device is expected.
Implementations of the human interface and input system and techniques for the input accelerator device described here may include various combinations of the following features.
The input accelerator device may include or be configured to include a communication channel configured to interface with a hand-held host device, an input assembly having a number of input elements that can be selectively mapped to one or more functions of a software application in order to minimize the number of times a particular input element on the hand-held host device needs to be actuated (which may none), and an input controller communicatively coupled to the input assembly and the communication channel, the input controller being configured to generate an input signal upon actuation of at least one of the input elements and being further configured to relay the input signal to the communication channel for transmission to the hand-held host device to control execution of the one or more functions of the software application mapped to the actuated input element. The input accelerator device may also include a display unit for displaying textual, graphical and video information. The input accelerator device may also include a storage device for storing instructions, such as firmware, mapping software and/or software applications, such as text applications, scrolling/navigational applications and game applications. The input accelerator device may further include a processor configured to interpret the input signal and execute the instructions, a main memory configured to load the instructions and a bus configured to direct communications to and from the processor.
The input assembly may include a front input assembly, a rear input, and/or a side input assembly. The input elements of the input assembly may include or more of the following types of input elements: analog buttons, digital buttons, keys, rockers, sliders, rotary dials, touch pads, pressure sensors, force sensitive resistors, piezoelectric resistive sensors, capacitive sensors, positional sensors, rotary encoders, linear potentiometers, directional or D-pads, and miniature analog thumb joysticks. The communication channel may be a Universal Serial Bus port, a IEEE 1394 Firewire port, a serial port, a parallel port, a headphone port, and/or a data port. The communication channel may also be a wireless data connection such as a Bluetooth connection, an Infrared connection, and a Wi-Fi connection.
In another implementation, a technique of controlling multiple hand-held host devices may include providing an input accelerator device having a plurality of input elements, actuating one of the plurality of input elements; interpreting a generated input signal based on the one or more functions mapped to the actuated input element; and executing the one or more functions mapped to the actuated element. The method may also include configuring one of the plurality of input elements to be mapped to one or more indexing functions, and actuating an input element on one of the plurality of hand-held host devices in conjunction with the input element mapped to one or more indexing functions.
The input accelerator device and human interface and input systems and techniques described herein may provide one or more of the following advantages. The human interface and input system and associated techniques offer the functionality of a high performance game controller, which can support the most demanding game input requirements, and the speed and accuracy of data input that can be obtained with the use of a conventional standard QWERTY keyboard, but without the large footprint. Also, the human interface and input system and associated techniques can increase the number of functions that may be associated with a given number of input elements without increasing the number of keystrokes or taps that is required. Moreover, it allows the input element size to remain consistent with the ergonomics of the human hand without increasing the time it takes to learn how to use the input system compared to conventional input systems.
Implementing the human interface and input system and techniques on an input accelerator device can eliminate the need to interface with inflexible, cumbersome, and inefficient input systems provided with conventional hand-held electronic devices. Since the input accelerator device can connect to multiple hand-held electronic devices using wired or wireless communication protocols a singled input accelerator device can make up for deficiencies of multiple conventional hand-held electronic devices. Thus, the input accelerator device can eliminate the need to retrofit or redesign conventional hand-held electronic devices to directly implement the disclosed human interface and input system and associated techniques. In addition, the input accelerator device can be small and aesthetically valuable as a fashion accessory. For example, the input accelerator device may be implemented to include logos of sports teams or cartoon characters in addition to a wide selection of colors. The input accelerator device also may be easily attached to a keychain or a phone leash or clipped on or carried in a pocket or purse.
Details of one or more implementations are set forth in the accompanying drawings and the description below. Other features and advantages will be apparent from the description and drawings, and from the claims.



DESCRIPTION OF DRAWINGS
FIG. 1 is a block diagram of a hand-held input accelerator device upon which the human interface and input system may be implemented.
FIG. 2 is another block diagram of a hand-held input accelerator device upon which the human interface and input system may be implemented.
FIG. 3 is a block diagram of the human interface and input system.
FIG. 4 is a detailed block diagram of the input assembly of the human interface and input system.
FIGS. 5a–d show front, side, and back views, respectively, of a hand-held input accelerator device wherein a second input assembly includes a pressure sensor arrays having a plurality of configurable active areas.
FIG. 6 illustrates an alternate implementation of the second input assembly on a hand-held input accelerator device.
FIGS. 7a–d depict one implementation of a hand-held input accelerator device comprising a combination of a remote control and a wireless headset.



Like reference symbols in the various drawings indicate like elements.
DETAILED DESCRIPTION
Biomechanics of the Human Hand
The human hand comprises an opposable thumb and four fingers, i.e., the thumb may be used in opposition, in concert, in combination or functional relation with any of the four fingers. Compared to the human fingers, the human thumb may be characterized as having larger range of motion, stronger sustaining force actuation and poorer dexterity. The human base joint of the thumb has three degrees of freedom, such as side-to-side movement, up and down movement, and rotation about the thumb's long axis; while the base joint of the fingers has two degrees of freedom, such as side-to-side and up and down movement. Thus, the thumb typically is considered to have better range of motion than any of the fingers. Also, because the human thumb has a bigger actuation muscle than any of the fingers, it can provide larger sustaining forces than the fingers. But also because of the larger muscle, the human thumb may suffer from diminished fine motor control and rapidity of motion that can be exerted compared to the fingers. Thus, the human fingers are more suitable for performing tasks that require fine motor coordination or the ability to pinpoint or rapidly repeat actuation.
Hand-Held Input Accelerator Device Hardware Overview
FIG. 1 is a high-level block diagram of a hand-held input accelerator device 100 upon which the human interface and input system and associated input techniques described herein may be implemented for controlling software applications stored and running on a hand-held host device 117. The input accelerator device 100 is a companion auxiliary device to the hand-held host device 117, whereby a user may interface with the auxiliary device and the hand-held host device concurrently 117 or the auxiliary device alone in lieu of the hand-held host device 117. The input accelerator device 100 is communicatively coupled to a hand-held host device 117, such as a cellular phone, PDA, pocket PC, or smart phone, or other similar devices using a communication link 111, such as the Bluetooth protocol. The Bluetooth protocol is a short-range, low-power 1 Mbit/sec wireless network technology operated in the 2.4 GHz band, which is appropriate for use in piconets. A piconet can have a master and up to seven slaves. The master transmits in even time slots, while slaves transmits in odd time slots. The devices in a piconet share a common communication data channel with total capacity of 1 Mbit/sec. Headers and handshaking information are used by Bluetooth devices to strike up a conversation and find each other to connect.
The communication link 111 alternatively may be a wired link using standard data ports such as Universal Serial Bus interface, IEEE 1394 firewire, or other serial or parallel port connections. Additionally, the communication link 111 can be other standard wireless links such as infrared, wireless fidelity (Wi-Fi), or any other wireless connection. Wi-Fi refers to any type of IEEE 802.11 protocol including 802.11a/b/g. Wi-Fi generally provides wireless connectivity for a device to the Internet or connectivity between devices. Wi-Fi operates in the unlicensed 2.4 GHz radio bands, with an 11 Mbit/sec (802.11b) or 54 Mbit/sec (802.11a) data rate or with products that contain both bands. Infrared refers to light waves of a lower frequency out of range of what a human eye can perceive. Used in most television remote control systems, information is carried between devices via beams of infrared light. The standard infrared system is called infrared data association (IrDA) and is used to connect some computers with peripheral devices in digital mode.
The communication link 111 connects a communication interface 116 of the input accelerator device with a communication interface 118 of the hand-held host device 117. The input accelerator device 100 includes an interface and input system 114 in communication with the communication interface 116. The interface and input system 114 includes input elements (not shown), such as keys, buttons, pressure sensor pads, touch pads, rotary dials, thumb joysticks, linear strip sensors or other actuators associated with one or more sensors that can be manipulated by one or both of a human user's thumbs or fingers. The input elements are selectively mapped to one or more functions of the software applications stored on the host device 100. The mapping or re-mapping of the input elements to one or more functions of the software applications may be accomplished by using one of the techniques disclosed in co-pending U.S. patent application Ser. No. 11/221,412, entitled “A Method of Remapping the Input Elements of a Hand-Held Device,” which is incorporated herein in its entirety by reference.
In this implementation, the interface and input assembly 114 is implemented with four input elements, but may be implemented with more or fewer input elements. Upon actuation of an input element, an electrical signal is generated by the input assembly 114. The generated electrical signal is converted into input signals 122, which are transmitted over the communication link 111 to the hand-held host device 117, which receives the input signals 122 through communication interface 118. The input signals 122 are processed by the hand-held host device 117 to execute the software function mapped to the actuated input element. Typically, hand-held host device 117 has a processor (not shown), such as an ARM, OMAP, or other similar processor for processing the input signals and the software applications stored and running thereon.
FIG. 2 is a block diagram illustrating an input accelerator device 200 upon which the human interface and input system and associated input techniques described herein may be implemented. In this implementation, optional hardware components are implemented to configure a more powerful auxiliary device to handle more of the processing duties from the hand-held host device 117 onto the input accelerator device 200. The input accelerator device 200 may be used in conjunction with the hand-held host device 117 to control software applications stored and running on the input accelerator device 200 itself. For example, in this implementation, the input accelerator device 200 may have stored and running thereon re-mapping software such as that described in co-pending U.S. patent application Ser. No. 11/221,412. As another example, the input accelerator device 200 may have stored and running thereon an Internet browsing application, which may be used in combination with communication functionality provided with hand-held host devices, such as the cellular communication protocols (e.g., CDMA or GSM/GPRS) provided with cellular phones, to browse the Internet.
The input accelerator device 200 is in wireless (or alternatively wired) communication with the hand-held host device 117. The hand-held host device 117 may include some of the same components as shown for the input accelerator device 200. In this implementation, the hand-held host device 117 is a conventional cellular phone, but other types of hand-held electronic devices may be used with the input accelerator device 200. The input accelerator device 200 may include a bus 202 or other communication mechanism for communicating information, and a processor 204, such as an ARM, OMAP or other similar processor, coupled with bus 202 for processing information, such as one or more sequences of one or more instructions, which may be embedded software, firmware, or software applications for controlling the hand-held host device 117, such as re-mapping software or text, gaming or scrolling applications, or any other software application.
The input accelerator device 200 also may include a main memory 206, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 202 for storing information and instructions to be executed by processor 204. Main memory 206 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 204. The input accelerator device 100 further may include a read only memory (ROM) 208 or other static storage device coupled to bus 202 for storing static information and instructions for processor 204. A storage device 210 may be provided and coupled to bus 202 for storing information and instructions for the processor 204. The storage device 210 can include a flash memory such as EEPROM, compact flash, or a similar storage unit for storing device firmware. Upgrades to the firmware can be easily downloaded through the host device. The input accelerator device 200 may also include an optional display 212, such as a liquid crystal display (LCD), for displaying information to a user, and a human interface and input system 114 for communicating information and command selections from a human user to processor 204. The command selections from a human user are communicated as input signals 122 from the interface and input system 114 to the bus 202 for distribution to other components such as the processor 204. Input accelerator device 200 also may include a communication interface 216 coupled to bus 202.
Communication interface 216 provides a two-way data communication 211 coupling to the hand-held host device 117, a wireless service device, or wireless service station. The two-way data communication 211 allows for an exchange of interactive data between the hand-held host device 117 and the input accelerator device 200. The interactive data may include voice data for conducting a conversation using a cellular phone host device. The interactive data may also include a graphical user interface (GUI) for browsing the Internet, which may be displayed on the optional display 212. In this implementation, the cellular phones host device serves as a communication conduit for receiving data from the Internet as previously mentioned. Communication interface 216 may be a wireless link such as Bluetooth or any other wireless communication interface known to one of ordinary skill in the art. In the wireless link implementation, communication interface 216 may send and receive electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
The input accelerator device 200 also can display a graphical user interface (GUI) on the display unit 212 to provide a list of hand-held host devices 117 within communication range of the input accelerator device 200. The list of hand-held host devices 117 within communication range can be displayed using text names of each device, an icon representing each device, or a combination of text name and icon representing each device. The input elements in the input assemblies 406, 408, 409 (described in detail in FIG. 4 below) can be actuated in combination or individually to select a desired hand-held host device 117 from the list of devices in communication range of the input accelerator device 200.
The input accelerator device 100, 200 as described above can obviate the need to remove the hand-held host device 117 from the user's pocket, bag or other storage location by performing most simple text/voice control functions. The input accelerator device 100, 200 may also include a device driver (not shown) to effect control over the host hand-held device 117 and all associated software applications on the hand-held host device 117.
Human Interface and Input System Overview
FIG. 3 depicts a block diagram of the subsystems of the human interface and input system 114 of the input accelerator device 100 or the input accelerator device 200. The human interface and input system 114, which is described in more detail in co-pending U.S. patent application Ser. No. 10/699,555, entitled “Human Interface System,” which is incorporated herein in its entirety by reference, includes an input assembly 305 in communication with an input controller 316 to interpret and generate input signals in response to user interaction with the input assembly 305. The input assembly 305 can include multiple input assemblies (described in detailed below in FIG. 4), each assembly including a number of input elements, located on one or more surfaces of the input accelerator device 100 or the input accelerator device 200. The input elements are selectively mapped to one or more functions of a software application that is stored on the hand-held host device 117 so that when one of the input elements is actuated, the function mapped to the actuated input element is executed.
Specifically, when an input element is actuated, one or more electrical signals 312 are produced, which are received and interpreted by the input controller 316. The input controller 316, which may include one or more processors, receives the one or more electrical signals 312 and converts them into input signals 122 which are transmitted to the hand-held host device 117 via communication link 111 connecting the communication interface 116 of the input accelerator device 100 with the communication interface 118 of the hand-held host device 117. Similarly, the input signals 122 are transmitted to the hand-held host device 117 via communication link 211 connecting the communication interface 216 of the input accelerator device 200 with the communication interface 118 of the hand-held host device 117. In one implementation the hand-held host device 117 interprets the input signals 122 on the fly using software, such as mapping software, to execute the function mapped to the actuated input element. Alternatively, the input accelerator device 200 may interpret the input signals 122 using software stored in the storage unit 210.
FIG. 4 illustrates one implementation of input assembly 305 including multiple input assemblies. The input assembly 305 includes a front input assembly 406, a rear input assembly 408, and a side input assembly 409. The front input assembly 406 and the rear input assembly 408 includes one or more input elements. The input elements produce one or more electrical signals 312 upon actuation of the input elements. The input controller 316, which may include one or more processors, receives the one or more electrical signals 312 and converts them into input signals 122, which are in a form suitable to be received and interpreted by the hand-held host device 117. Alternatively the input signal 122 may be interpreted by the processor 104 on the input accelerator device 200.
The hand-held host device 117 receives the input signals 122 and interprets it using the re-mapping software noted above and described in more detail below, which may be loaded on the host hand-held device. Specifically, the input signals 122 transmitted from the input accelerator device 100,200 are received by a communication interface 118 on the hand-held host device 117 using standard communications protocols, such as the Bluetooth wireless protocol. The Bluetooth protocol allows the input signals 122 transmitted from the input accelerator device 100, 200 to control execution of embedded software, firmware, or software applications, such as a text messaging or game applications, on the hand-held host device 117. The input signals 122 are received and used by the hand-held host device 117 to map and remap the input elements in the front input assembly 406, the rear input assembly 408 and the side input assembly 409 to one or more software functions of a software application running on the host hand-held device 117.
For example, if a text application is running on the hand-held host device 117, then an input controller (not shown) on the hand-held host device 117 maps one or more input elements on the hand-held host device 117 (e.g., input elements forming the keypad on a cellular phone) to one or more symbols, such as characters, letters, numbers, icons, other types of symbols, or combinations of different types of symbols, and map one or more input elements of the front input assembly 406 on the input accelerator device 100, 200 to a shifting or indexing functionality. Thus, if a user wants to insert the letter “X”, the user may press a first shift key on the input accelerator device 100, 200 and then the number key “9” on the hand-held host device 117. If the user wants to insert the letter “Y”, the user may press a second shift key on the input accelerator device 100, 200 and then the number key “9” on the hand-held host device 117. If the user wants to insert the letter “Z”, the user may press a third shift key on the input accelerator device 100,200 and then the number key “9” on the hand-held host device 117. So instead of having to press the number key “9” on the hand-held host device 117 three times to insert the letter “Z”, which is the norm on most multi-tap interfaces, the user can insert the same letter with one press of the number key “9” on the hand-held host device 117 in combination with one press of the third shift key on the input accelerator device 100, 200.
Also, one or more input elements of the rear input assembly 408 on the input accelerator device 100, 200 can be mapped to scrolling, navigation, or cursor control functions. Furthermore, one or more input elements of the side input assembly 409 can be mapped as a short-cut key for executing a favorite application on the host hand-held device 117, such as a text, game or music application. If the hand-held host device 117 is executing a game application, then the input signals 122 may be used to control game play. That is, the input controller (not shown) on the hand-held host device 117 may map the input elements of the input assemblies 406, 408, 409 from the input accelerator device 100, 200 to game functions. The mapping of the input elements to particular input functions for a given software application, whether done by an input controller or processor on the hand-held host device 117 in response to the input signals 122 transmitted by the input accelerator device 100, 200, may be customized by the application developer or the user through downloads or other programming modalities. Moreover, the mapping of the input elements may be done for language key set changes, which may reduce the cost of manufacturing hand-held electronic devices for manufacturers servicing multiple countries.
Alternatively, the processor 204 of the input accelerator device 200 may perform the mapping function described above and alleviate some of the processing burden of the hand-held host device 117. Moreover, the human interface and input system 114 need not have the input controller 316, particularly where cost is a concern. In those instances, the processor 204 can directly receive the electrical signal 312 and interpret it into a suitable input signal 122, which is mapped using the mapping techniques noted above and described in more detail below.
The co-pending U.S. patent application Ser. No. 11/221,412, describes techniques to selectively map and re-map the input elements on a hand-held electronic device optimally for a particular class of application software with common requirements (e.g., games, text entry, music and scrolling) and/or for a particular user. These techniques may also be used to map and remap the input elements of the input accelerator device 100, 200 disclosed herein and/or the hand-held host device 117. Alternatively, the input accelerator device 100, 200 may simply transmit the input signals 122 in response to user manipulation of the input elements to the hand-held host device 117, where an application software executing on the hand-held host device 117 interprets the input signals accordingly.
In one implementation, a technique for remapping a hand-held electronic device includes receiving configuration settings, which may include at least one physical input element associated with at least one function, for a software application or a class of software applications; modifying a mapping function based on the configuration settings; and executing the function associated with the physical input element upon an activation, e.g., a press or actuation, of the physical input element during operation of the software application. The activation of the physical input elements may be from the three input assemblies 406, 408, 409 of the input accelerator device and/or the input assemblies of the host hand-held devices. As described above, using standard wireless communication protocols, such as Bluetooth, signals generated from the physical activations of the input assemblies of the input accelerator device 100,200 is transmitted to the hand-held host device 117 to control execution of specific software or software application. And in response to the execution of the software or software application by the signal transmitted from the input accelerator device, mapping and remapping procedures are performed. The mapping function may comprise a keyboard device driver, a device layout or a translation layer of the keyboard device driver, a combination of these or another mapping function.
In an implementation where the mapping function comprises a device layout, the step of executing the function associated with the physical input element upon an activation of the physical input element may include writing a scan code to a buffer; retrieving the scan code from the buffer; converting the retrieved scan code to a virtual input element code using the modified device layout; calling a keyboard event with the scan code and the virtual input element code; and executing the function associated with the keyboard event, which is the function associated with the physical input element.
In an implementation where the mapping function comprises a translation layer, the step of executing the function associated with the physical input element upon an activation of the physical input element may include writing a scan code to a buffer; retrieving the scan code from the buffer; converting the scan code to an original virtual input element code; converting the original virtual input element code to a new input element code using the modified translation layer of the keyboard device driver; calling a keyboard event with the scan code and the new virtual input element code; and executing the function associated with the keyboard event, which is the function associated with the physical input element.
In another implementation, a method of re-configuring or re-mapping a software application or class of software applications may include associating one or more physical input elements disposed on the input accelerator device with at least a first executable function; and causing a modification of a mapping function to form an association of the one or more physical input elements with a second executable function to an association of the one or more physical input elements with the first executable function so that the first executable function is configured to be initiated upon an activation of the one or more physical input elements during operation of the software application or the a software application within a class of software applications. The second executable function is typically a default function typically provided with the software application to be executed in the default state when the one or more physical input elements are pressed or activated.
In yet another implementation, a graphical user interface identifying functions that are available to be associated with one or more physical input elements may be provided. The graphical user interface may also identify software applications for which a user can select to apply his physical input element to function associations. In one instance the graphical user interface may include input element icons, which correspond to physical input elements, and function icons, which correspond to an executable function. The user may then specify the functions to associate with physical input elements.
Hand-Held Input Accelerator Device Implementations
FIGS. 5a–d illustrates front, side, back, and “hand-held” views, respectively, of a hand-held input accelerator device 500 upon which the human interface and input system may be implemented. In one implementation, the input accelerator device 500 is implemented as a remote control device including four planar or contoured surfaces: a front surface 502, a back surface 508, a left side surface 504, and a right side surface 306. Although, in other implementations, the input accelerator device 500 may have more or fewer planar and/or contoured surfaces. The input accelerator device 500 may be a miniature standalone wireless accessory device that communicates with a variety of hand-held devices such as a cellular phone, PDA, pocket PC, smart phone, laptop, or other similar devices through a wired or wireless communications protocol, such as the Bluetooth wireless protocol.
As shown in FIG. 5a, on the front surface 502, a display (not shown), such as an LCD, and a front input assembly 526 may be disposed adjacent to each other. Alternatively, the display may be on a separate assembly such as those displays for PDA's and cellular phones with a swivel-mounted screen or flip-phone configurations. Also, the front input assembly 526 may be disposed on more than one surface. The front input assembly 526 may include four input elements 510, 512, 514, and 516, although any number of input elements may be provided, which may be actuated by a user's thumb or fingers. The input elements 510, 512, 514, and 516 may be mapped to function as shift or index keys, such as Shift1 (510), Shift2 (512), Shift3 (514), and Shift4 (516), to facilitate shifting or indexing between symbols, such as characters, letters and/or numbers, associated with input elements on the host electronic device, such as a keypad on a cellular phone or PDA. For example, on a host electronic device, such as a cellular phone, typically a keypad is provided, which has a “7PQRS” key or input element. By using the input accelerator device 500, any one of these symbols—P, Q, R, and S—may be entered by tapping the appropriate input element 510, 512, 514, and 516 and tapping the “7PQRS” key on the host electronic device. That is, the “P” character, e.g., can be entered on the host electronic device by pressing input element 510 (which is mapped as Shift1) and pressing the “7PQRS” key on the host electronic device. Likewise, the Shift2 input element 512 may be pressed with the “7PQRS” key to produce the “Q” character. The Shift3 input element 514 may be pressed with the “7PQRS” key to produce the “R” character. Pressing the “7” key without shift keys can either produce the number “7” or the “P” character depending on user preference, which can be configured in software. The Shift4 input element 516 can be pressed with the “7PQRS” key to produce the “S” character. Thus, the need to tap the same key on the host device multiple times (i.e., three times) to enter, for example the “S” character” is eliminated. The implementation of multiple shift or indexing input elements as described above can dramatically improve the comfort, accuracy and speed of text entry for a variety of host hand-held device users.
As shown in FIG. 5b, a rear input assembly 528 may be disposed on the back surface 308. In this implementation, the front input assembly 526 (FIG. 5a) is disposed relative to the rear input assembly 528 to take advantage of the opposition of the human thumb and finger. Alternatively, a user may flip over the input accelerator device to use the rear input assembly his thumb instead of his fingers. The rear input assembly 528 may include two sensor arrays configured in software to represent one or more delineated active areas corresponding to different programmable functions depending on the application. The sensor arrays may include a ring-shaped curved sensor array 518 and a strip-shaped linear sensor array 520. The curved sensor array 518 may be implemented to be swept sideways along a natural freedom of motion of a thumb (or finger) to map horizontal cursor movements. In addition, the linear sensor array 520 may be swept vertically using the thumb (or finger) to map vertical cursor movements or control the scroll bar in a long selection list. The curved 518 and linear 520 sensor arrays in this implementation may include an actuator, such as an elastomeric material, attached to a force sensitive resistor array, a capacitive mat or array, or other similar pressure sensitive device or grid that can provide multiple outputs corresponding to the pressure readings of a plurality of active areas on the sensor arrays. In another configuration of the pressure sensor arrays 518, 520, the entire surface of the sensor arrays 518, 520 may be covered by rectangular active areas interspersed between small rectangular inactive areas to achieve any desired number of active areas. Other configurations of the pressure sensor arrays 518, 520 may be realized depending on the requirements of the desired application.
Alternatively, the rear input assembly 528 can be free of sensors and the input elements on the front input surface 502 may be programmed in software to allow the user to stroke the linear sensor array 520 up or down to effect a vertical scrolling motion in list selection. This implementation facilitates the user in navigating through long lists efficiently and effectively without any additional sensors on the back. Additionally, the front 502 or back 508 input surfaces can optionally provide access to a miniature thumb joystick with analog inputs in both left-right and up-down directions. This thumb joystick can provide analog signals to control a game on the mobile phone host device 117.
The side input assembly 529 may be disposed on the left-side surface 504 and/or the right-side surface 506 as shown in FIGS. 5a–c. The left side surface 504 and right side surfaces 506 of the input accelerator 300 may be implemented to include additional input or selection elements 522, 524, 526, 528, which may be used to map to other types of cellular phone functions using re-mapping techniques described above and in the co-pending U.S. patent application Ser. No. 11/221,412. The input or selection elements of the side input assembly 529 can also be implemented to effect shifting between modes. For example, holding down one of the input or selection elements 522, 524, 526, 528 may act as a shortcut key whereby a favorite application such as short message service (SMS), instant messenger (IM) or music may be activated. Holding down one of the selection elements may also act as a shortcut key to activate cellular phone functions such as phone number search and select, phone number dial, and call answer. Two of the input or selection elements 522, 524 may be implemented for left-handed users and the other two selection elements 526, 528 for right-handed users.
It is to be understood that the input elements 510, 512, 514, 516 of the front input assembly 526, the side input elements 522, 524, 526, 528 of the side input assembly 529, and the back input elements 518, 510 of the rear input assembly 528 in this implementation and any other implementation may be analog and/or digital buttons, keys, rockers (which may be a one or more position buttons or an analog joystick-type button), sliders, dials or touch pads used in combination with pressure sensors (such as force sensitive resistors, piezoelectric resistive sensors, and capacitive sensors), positional sensors (such as rotary encoders, linear potentiometers and the like), miniature analog thumb joysticks or other sensors or a combination of them.
FIG. 6 illustrates an alternative implementation of the rear input assembly 408. Input element 610 is implemented as a conventional rotary dial (such as the Blackberry thumb wheel), which may be used to control horizontal and vertical cursor, scroll, and/or navigation movements. In other implementations, other sensors as described above may be utilized depending upon the user age and application categories to be covered.
FIGS. 7a–d illustrates an implementation of the hand-held input accelerator device as a wireless headset. As shown in FIG. 7a, the headset 700 may be implemented to include a thumb wheel as input element 710 on a front surface 730 that allows the user to scroll left and right. The front surface 730 may also include multiple input elements 722, 724, which with the input element 710, comprise a front input assembly. The front input elements 722, 724 may be actuated in conjunction with the input element 710 to perform object selections while scrolling left and right.
As shown in FIG. 7b, a back surface 760 of the headset 700 represents one implementation of a rear input assembly. The back surface 760 may include a linear sensor array 720 to facilitate vertical scrolling, selection from long lists, and navigation operations. The input elements and active areas on the four surfaces may be substantially similar to those as described above.
FIGS. 7b and 7c also illustrate a left side surface 740 and a right side surface 750 on which is disposed a side input assembly of the headset 700, which may be configured to include at least four side selection elements 712, 714, 716, 718 to facilitate shifting or indexing between modes and text input. The selection elements may be mapped to shortcuts to variety of functions, such as dialing and answering a call. Two of the selection elements 712, 714 may be implemented for left-handed users and the other two selection elements 716, 718 for right-handed users.
FIG. 7d depicts the headset 700 being used as a remote control. That is, by integrating the remote control inputs into the headset 700, a user can remotely perform all functions of one or more host hand-held electronic devices using just the headset 700 that serves multiple functions. When talking or listening to music on a host device, such as a cellular phone, the headset 700 may be use as a regular headset receiving and transmitting audio signals through a speaker (not shown) and a microphone (not shown). When inputting text, the headset 700 may be held in either or both hands and used to accelerate text entry. When executing applications on host devices, the thumb wheel 710 and the sensor array 720 may be used to navigate and scroll through long lists and icon arrays. Thus, the headset 700 with integrated remote control may be implemented to operate a host device, such as a cellular phone, without ever removing the host device from its storage location (e.g., the user's pocket, jacket, backpack or purse).
Moreover, the input accelerator device described herein can be implemented as a “Master” device in communication link with multiple “Slave” or host devices. The user can easily switch from one host device to another easily just by selecting the desired host device from a list of host devices that may be displayed on a screen or LC disposed on the input accelerator device. For example, a user can selectively control a host device, such as a cellular phone, to answer a phone call using the input accelerator device. While talking to the caller using the headset 700, the user can put the caller on hold and look up an e-mail address from another host device, such as a PDA by selectively controlling the PDA. After retrieving the e-mail address, the user can return to the phone conversation by selectively switching back to controlling the cellular phone.
In any of the above implementations, active and/or passive tactile feedback may be implemented. To provide passive tactile feedback, the input elements of the first and/or second input assemblies may be combined with a palpable detent, such as a dome cap or dome spring so that a user can tactilely perceive, through his fingers or thumbs, activation and/or deactivation of an input element. In one implementation, among others, the palpable detent may be positioned between the actuator and sensor components of the input elements. To provide active tactile feedback, one ore more vibratory units or force producing units may be mounted in the hand-held electronic device and activated to provide tap or index level or other information to a user. The vibratory unit may be an electric motor with an eccentric mass attached to the motor's shaft, a solenoid, a variable reluctance device, a loud speaker or any other vibrator that can provide tactile feedback. A force producing unit may be a solenoid in non-vibratory mode, a motor, non-vibratory actuators or any other actuator that can produce forces. A vibratory unit and/or force producing unit may be provided for each input element. In that case, the vibratory unit and/or force producing unit may be mounted below the input element so that when the vibratory unit and/or force producing unit is activated, the vibratory unit and/or force producing unit can push out the surface of the electronic device to a different level or position depending on the information to be communicated. Thus, in implementations using a pressure sensor pad or touch-pad as the input element, a stepped array may be configured to indicate higher and higher levels of index positions across the touch pad or pressure sensor pad. The vibratory units and/or force producing units may also be used to provide tactile feedback to indicate the momentary achievement of an objective, such as target lock in game applications. Tactile feedback may also be accomplished by actuators, such as a solenoid, which changes the stiffness of the input element electronically or pushes against the user's hand or fingers to indicate an event of interest in the software application.
The computational aspects described here can be implemented in analog or digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Where appropriate, aspects of these systems and techniques can be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method steps can be performed by a programmable processor executing a program of instructions to perform functions by operating on input data and generating output.
The systems and techniques described above may utilize the biomechanics of the thumb and fingers, i.e., it uses the function of opposition, the fine motor control of the fingers, and the larger range of motion and stronger actuation provided by the thumb. By using the fingers and thumb in concert, the number of taps and time needed to accomplish a given function is reduced, the accuracy is improved, and the natural programming inherent in the human hand replaces the training required for other systems.
A number of implementations have been described. Other implementations may include different or additional features. For example, other configurations of the one or more input elements of the front, rear and side input assemblies may be realized. Also, the input accelerator devices described herein may have more or less than six planar or contoured surfaces. Moreover, the number of input elements in the input assemblies are not limited to the number of input elements described in the implementations above. Also, the one or more input elements of the input assemblies may be any input or selection type known to one of skill in the art, such as keys, buttons, touch pads, other types of pads, rockers, sliders, dials, contact sensors or other actuators associated with any sensor. Each sensor associated with an actuator may include digital momentary on/off switches or analog sensors, such as pressure sensors (e.g., force sensitive resistors, piezoelectric film sensors, or capacitive sensors), or positional sensors (e.g., rotary or linear potentiometers or encoders), or other analog sensors known to those of ordinary skill, or accelerometers or gyroscopes. The input assemblies may include a combination of these different types of input or selection elements, which may be mounted in the configurations shown in the figures or imbedded within the device to permit control through motion of the overall device.
Further, other implementations of the hybrid auxiliary input acceleration device are possible. People already carry around existing accessory devices, which can be instrumented with additional sensors to provide additional input signals to the host device for input acceleration. Devices carried in the purse, in the wallet, or on a keychain are ideal because these devices already serve another primary function, and providing input acceleration via these devices may result in a convergent accelerator device that substantially improves user experience without increasing the number of items that a person needs to carry around. Like the standalone remote control implementation, these convergent input accelerator devices may communicate with the host device wirelessly through a Bluetooth protocol or wirelessly through a rough-line-of-sight infrared link. Alternatively, the convergent input accelerator devices may physically plug into the host device via connectors already present in the host device, such as a headset jack or one of many data ports described above.
In another implementation, the auxiliary input accelerator device may be a car key with a remote keyless entry device, which is a common device that most people carry on their keychain. The remote keyless entry device already has a button, a radio frequency (RF) link, and an on board processor to transmit security information from the remote keyless entry device to a host vehicle to open a door, window, or a trunk; alter climate control settings; or control any other vehicle functions remotely. Most remote keyless entry devices are also small in size and possess comfortable form factor. One or more input assemblies including buttons, touchpads, or continuous sensor strips may be integrated into the remote keyless entry device to convert it into a hybrid device, which may function as an input accelerator device for a host device. The hybrid remote keyless entry input accelerator device can communicate with the host device using a Bluetooth protocol, a long range RF protocol, or Infrared protocol.
In yet another implementation, the auxiliary input accelerator device may be a remote garage door opener. While these remote openers typically tend to be clipped to the visor in a car, they can also be more miniature in size and carried on a keychain. These devices can easily be augmented to have buttons and sensors appropriate for use as an input accelerator device for host device.
In one implementation, the auxiliary input accelerator device may be a programmable radio frequency identification (RFID) keyfob. Today, many workers gain access to their secure workplace via an RFID keyfob. The circuitry in such a keyfob may be housed inside an input accelerator with buttons, sensor arrays and a wireless communication protocol to be used as an auxiliary input accelerator device to the host device.
In another implementation, the auxiliary input accelerator device may be a smartcard. In Europe and Asia, contactless, wireless smartcards based on similar technologies as the RFID keyfob are increasingly being used for a variety of commerce transactions. For example, in District of Columbia Metro Subway System, every terminal is smartcard enabled and people can pay for their subway rides by waving their wallet containing a prepaid smartcard in front of a grounded receptor. Such smartcard may be incorporated into an input accelerator device that may be carried on a keychain. Thus, the smartcard input accelerator may be used to augment interactions with a host device as well as serve as the primary mode of identification and payment in everyday life.
In yet another implementation, the auxiliary input accelerator device may be a universal remote control device. A pocket size universal remote control device with soft keys may be configured to control all standard home entertainment devices such as televisions, DVD players, VHS players, and sound systems in addition to a host device such as a cellular phone. He universal remote control device may either use the same infrared link to communicate with home entertainment devices and with the cellular phone, or it may communicate with the cellular phone using another wireless protocol, such as Bluetooth protocol.
In yet another implementation, the auxiliary input accelerator device may be a digital wristwatch incorporating the functionality of the input accelerator device. Digital wrist watches, especially running or exercise watches, typically have a digital display and a number of buttons for tracking lap times, heart rate and other important biostatistics. They also typically have a larger surface area than typical wrist watches. These watches may readily be programmed and retrofitted with optional additional sensor arrays to be used as an input accelerator for the host device.
In one implementation, the auxiliary input accelerator device may be an MP3 device such as an iPod. While multimedia content delivery on the mobile platform is becoming a norm, currently many people still carry a separate MP3 player for listening to music. The iPod or other MP3 players already incorporate sensors and buttons, which may be easily augmented to be used as the input accelerator device for interfacing with the host device, such as a cellular phone. The MP3 player may connect to the host device using an existing or added wireless protocol, such as Bluetooth.
In one implementation, the auxiliary input accelerator device may be an ultimate wireless converged remote controller device. Some or all of the above implementations may be combined into a single converged input accelerator device. The form factor of the device may be a keyfob form factor to go on a key chain, a wrist watch form factor to go on the wrist, or any other miniature form factor that facilitate portability. The ultimate converged remote controller device may perform all of the following functions in addition to controlling any additional devices possessing a short or long range wireless link. The ultimate converged remote controller device may function as an input accelerator for cellular phones, with keys and optional sensor arrays; a remote keyless entry device with a long range RF circuitry; a remote garage door opener; a RFID keyfob with a short range passive RF circuitry; a smartcard for identification and commerce with a short range passive RF circuitry; an universal remote controller device for home entertainment systems; and/or any other auxiliary functions people may want to incorporate.
Moreover, the methods to provide data input, device control or game control may be performed in a different order and still achieve desirable results. Accordingly, other implementations are within the scope of the following claims.

## Claims

1. An input accelerator device for controlling a hand-held host device, the input accelerator device comprising:
a communication channel configured to interface with the hand-held host device;
an input assembly comprising a plurality of input elements, each input element being configured to be selectively mapped to one or more functions of a software application in order to minimize actuation required of at least one input element of the hand-held host device; and
an input controller communicatively coupled to the input assembly and the communication channel, the input controller being configured to generate an input signal upon actuation of at least one of the plurality of input elements and being further configured to relay the input signal to the communication channel for transmission to the hand-held host device to control execution of the one or more functions of the software application mapped to the actuated input element.

2. The input accelerator device of claim 1, wherein the input assembly further comprises
a front input assembly comprising at least a first one of the plurality of input elements, the first one of the plurality of input elements being located on a front surface; and
a rear input assembly having at least a second one of the plurality of input elements, the second one of the plurality of input elements being located on a rear surface.

3. The input accelerator device of claim 2, wherein the input assembly further comprises a side input assembly comprising at least a third one of the plurality of input elements, the third one of the plurality of input elements being located on a side surface.

4. The input accelerator device of claim 3, wherein at least one input element comprises at least one of an analog button, a digital button, a key, a rocker, a slider, a dial, a touch pad, a pressure sensor, a force sensitive resistor, a piezoelectric resistive sensor, a capacitive sensor, a positional sensor, a rotary encoder, a linear potentiometer, a D-pad, or a miniature analog thumb joystick.

5. The input accelerator device of claim 3, wherein the front input assembly, the rear input assembly, and the side input assembly are further configured to optimize a biomechanical effect of the human user's opposing thumb and fingers.

6. The input accelerator device of claim 3, wherein at least one of the front input assembly, the side input assembly, and the rear input assembly is further configured to accelerate text input.

7. The input accelerator device of claim 3, wherein at least one of the front input assembly, the side input assembly, and the rear input assembly is further configured to accelerate at least one of scrolling, cursor control or navigational control.

8. The input accelerator device of claim 3, wherein at least one of the front input assembly, the side input assembly, and the rear input assembly is further configured to accelerate game play.

9. The input accelerator device of claim 1 further comprising a display unit.

10. The input accelerator device of claim 1 further comprising a storage device configured to store one or more instructions.

11. The input accelerator device of claim 10, wherein the one or more instructions comprise at least one of a text application, a mapping software, a firmware, a gaming application, or a scrolling application.

12. The input accelerator device of claim 10 further comprising:
a processor configured to interpret the input signal and execute the one or more instructions;
a main memory configured to load the one or more instructions executed by the processor; and
a bus configured to direct communications to and from the processor.

13. The input accelerator device of claim 1, wherein the communication channel comprises a wired data connection including at least one of a Universal Serial Bus port, a IEEE 1394 Firewire port, a serial port, a parallel port, a headphone port, or a data port.

14. The input accelerator device of claim 1, wherein the communication channel further comprises a wireless data connection including at least one of a Bluetooth connection, an Infrared connection, or a Wi-Fi connection.

15. The input accelerator device of claim 1 further comprising a secondary control unit configured to perform functions of one or more secondary devices including at least one of a headset, a garage door opener, an automobile keyless entry unit, a smartcard, a programmable RFID keyfob, a universal remote control unit, a digital wristwatch, or a MP3 player.

16. A method for configuring an input accelerator device, the method comprising:
disposing on one or more surfaces an input assembly comprising a plurality of input elements configured to receive human input through manipulation of the input elements, wherein at least one of the input elements is further configured to be selectively mapped to one or more functions of a software application stored on a hand-held host device in order to minimize actuation required of at least one input element on the hand held host device;
providing a communication channel configured to connect to the hand-held host device; and
connecting the input assembly to the communication channel using an input controller configured to generate an input signal upon actuation of at least one of the plurality of input elements and being further configured to relay the input signal to the communication channel for transmission to the hand-held host device to control execution of the one or more functions of the software application mapped to the actuated input element.

17. The method of claim 16, wherein disposing the input assembly on one or more surfaces further comprises:
disposing on a first surface a first input assembly comprising at least a first one of the plurality of input elements; and
disposing on a second surface a second input assembly comprising at least a second one of the plurality of input elements.

18. The method of claim 17, wherein disposing the input assembly on one or more surfaces further comprises disposing on a third surface a third input assembly comprising at least a third one of the plurality of input elements.

19. The method of claim 18, wherein disposing the input assembly on one or more surfaces further comprises disposing the first input assembly, the second assembly, and the third assembly in a configuration to optimize a biomechanical effect of the human user's opposing thumb and fingers.

20. The method of claim 18, wherein disposing the input assembly on one or more surfaces further comprises disposing the first input assembly, the second input assembly, and the third input assembly in a configuration to provide control functions of one or more secondary devices including at least one of a headset, a garage door opener, an automobile keyless entry unit, a smartcard, a programmable RFID keyfob, a universal remote control unit, a digital wristwatch, or a MP3 player.

21. The method of claim 18, wherein disposing the input assembly on one or more surfaces further comprises disposing the first input assembly, the second input assembly and the third input assembly including at least one of an analog button, a digital button, a key, a rocker, a slider, a dial, a touch pad, a pressure sensor, a force sensitive resistor, a piezoelectric resistive sensor, a capacitive sensor, a positional sensor, a rotary encoder, a linear potentiometer, a D-pad, or a miniature analog thumb joystick.

22. The method of claim 18, wherein disposing on one or more surfaces the input assembly further comprises configuring at least one of the first input assembly, the second input assembly, and the third input assembly to accelerate textual inputs.

23. The method of claim 18, wherein disposing on one or one or more surfaces the input assembly further comprises configuring at least one of the first input assembly, the second input assembly, and the third input assembly to accelerate at least one of scrolling, cursor control or navigational control.

24. The method of claim 18, wherein disposing on one or more surfaces the input assembly further comprises configuring at least one of the first input assembly, the second input assembly, and the third input assembly to accelerate game play.

25. The method of claim 16, wherein providing a communication channel further comprises providing a wired data connection including at least one of a Universal Serial Bus port, a IEEE 1394 Firewire port, a serial port, a parallel port, a headphone port, or a data port.

26. The method of claim 16, wherein providing a communication channel further comprises providing a wireless data connection including at least one of a Bluetooth connection, an infrared connection, or a Wi-Fi connection.

27. A method of controlling a plurality of hand-held host devices, the method comprising:
providing an input accelerator device comprising:
a communication channel configured to interface with the plurality of hand-held host devices;
an input assembly comprising a plurality of input elements, each input element being configured to be selectively mapped to one or more functions of a software application in order to minimize a number of actuation required for an input element of one of the plurality of hand-held host devices; and
an input controller communicatively coupled to the input assembly and the communication channel, the input controller being configured to generate an input signal upon actuation of one of the plurality of input elements and being further configured to relay the input signal to the communication channel for transmission to the hand-held host device to control execution of the one or more functions of the software application mapped to the actuated input element;
actuating one of the plurality of input elements;
interpreting the generated input signal based on the one or more functions mapped to the actuated input element; and
executing the one or more functions mapped to the actuated element.

28. The method of claim 27, wherein the input assembly further comprises:
a first input assembly comprising at least a first one of the plurality of input elements, the first one of the plurality of input elements being located on a first surface; and
a second input assembly having at least a second one of the plurality of input elements, the second one of the plurality of input elements being located on a second surface.

29. The method of claim 28, wherein the input assembly further comprises: a third input assembly comprising at least a third one of the plurality of input elements, the third one of the plurality of input elements being located on a third surface.

30. The method of claim 29, wherein the first input assembly, the second input assembly, and the third assembly are further configured to optimize a biomechanical effect of the human user's opposing thumb and fingers.

31. The method of claim 29, wherein at least one of the input elements comprises at least one of an analog button, a digital button, a key, a rocker, a slider, a dial, a touch pad, a pressure sensor, a force sensitive resistor, a piezoelectric resistive sensor, a capacitive sensor, a positional sensor, a rotary encoder, a linear potentiometer, a D-pad, or a miniature analog thumb joystick.

32. The method of claim 29, wherein at least one of the first input assembly, the second input assembly, or the third input assembly is further configured to accelerate textual inputs.

33. The method of claim 32, further comprising:
configuring the second one of the plurality of input elements to be mapped to one or more indexing functions; and
actuating an input element on one of the plurality of hand-held host devices in conjunction with the second one of the plurality of input elements.

34. The method of claim 29, wherein at least one of the first input assembly, the second input assembly, or the third input assembly is further configured to accelerate at least one of scrolling, cursor control or navigational control.

35. The method of claim 29, wherein at least one of the first input assembly, the second input assembly, or the third input assembly is further configured to accelerate game play.

36. The method of claim 27, wherein the communication channel further comprises a wired data connection including at least one of a Universal Serial Bus port, a IEEE 1394 Firewire port, a serial port, a parallel port, a headphone port, or a data port.

37. The method of claim 27, wherein the communication channel further comprises a wireless data connection including at least one of a Bluetooth connection, an Infrared connection, or a Wi-Fi connection.

38. The method of claim 27, wherein the plurality of host devices comprises at least one of a cellular phone, a personal digital assistant, a smart phone, a laptop, a garage door opener, an automobile keyless entry unit, a smartcard, a programmable RFID keyfob, a universal remote control unit, a digital wristwatch, a compact disc player or a MP3 player.