Wheel reporting method for a personal computer keyboard interface
First Claim
1. A method of conveying a signal indicative of movement of a movable element with respect to a single axis, said movable element being disposed on an input device that is operatively coupled to a host computing device through a keyboard interface that communicates using a keyboard communication protocol, which does not explicitly provide for communicating movement of the movable element, comprising the steps of:
- (a) detecting a state change caused by movement of the movable element with respect to the single axis, wherein the movable element is not limited to only motion between two end states relative to the single axis;
(b) selecting a predefined code as a function of the state change to represent the movement of the movable element, wherein the predefined code conforms to the keyboard communication protocol and the predefined code is not explicitly provided in the keyboard communication protocol for communicating movement of the movable element; and
(c) transmitting a signal that includes the predefined code to the host computing device and is in conformance with the keyboard communication protocol.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system that monitors movement of a wheel or slider included on a keyboard, and conveys information indicative of the movement and its direction to a host computing device to which the keyboard is coupled, using predefined scan codes or Universal Serial Bus (USB) data signal. State changes and the direction of rotation are detected as the wheel is rotated. Preferably, an elapsed time between state changes is compared to a set of threshold times, and the scan code representing the closest threshold time is selected. Alternatively, a scan code is transmitted that is indicative of the sign and magnitude of a threshold number corresponding to an accumulated number of state changes. The host computing device decodes the scan code or USB data for use in controlling a scroll distance, zoom, etc. as a function of the movement indicated by the scan code or USB data.
181 Citations
42 Claims
-
1. A method of conveying a signal indicative of movement of a movable element with respect to a single axis, said movable element being disposed on an input device that is operatively coupled to a host computing device through a keyboard interface that communicates using a keyboard communication protocol, which does not explicitly provide for communicating movement of the movable element, comprising the steps of:
-
(a) detecting a state change caused by movement of the movable element with respect to the single axis, wherein the movable element is not limited to only motion between two end states relative to the single axis;
(b) selecting a predefined code as a function of the state change to represent the movement of the movable element, wherein the predefined code conforms to the keyboard communication protocol and the predefined code is not explicitly provided in the keyboard communication protocol for communicating movement of the movable element; and
(c) transmitting a signal that includes the predefined code to the host computing device and is in conformance with the keyboard communication protocol. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
(a) an elapsed time between state changes; and
(b) a number of state changes that has been accumulated.
-
-
10. The method of claim 9, wherein the step of detecting comprises the step of starting to measure the elapsed time between changes of state of the movable element when a state change is detected.
-
11. The method of claim 10, wherein the step of selecting comprises the steps of:
-
(a) comparing the elapsed time to a plurality of threshold times, each of which corresponds to a different speed range of the movable element; and
(b) selecting the predefined code that is indicative of a speed range of the movable element determined by the step of comparing.
-
-
12. The method of claim 10, wherein the step of selecting comprises the steps of:
-
(a) determining a direction of movement of the movable element; and
(b) selecting the predefined code as a function of the direction of movement of the movable element.
-
-
13. The method of claim 1, wherein the predefined code represents a number of state changes accumulated since a previous number of accumulated state changes was transmitted to the host computing device.
-
14. The method of claim 13, wherein the step of selecting comprises the steps of:
-
(a) comparing the number of state changes accumulated to a plurality of threshold numbers; and
(b) selecting a predefined code as a function of a threshold number determined by the step of comparing.
-
-
15. The method of claim 14, further comprising the steps of:
-
(a) reducing the number of state changes accumulated by the threshold number that was determined; and
(b) repeating steps of comparing, selecting, and reducing until a residual count remaining after the step of reducing is less than a predetermined minimum.
-
-
16. The method of claim 1, further comprising the step of providing machine instructions that are executed by the host computing device for determining a change of an object on a display of the host computing device as a function of the predefined code that is transmitted.
-
17. The method of claim 16, wherein the object comprises a content of a window that is scrolled in response to the predefined code.
-
18. The method of claim 16, wherein the object is moved on the display in a direction and by an amount in response to the predefined code.
-
19. The method of claim 1, wherein successive predefined codes transmitted to the host computing device are indicative of an acceleration of the movable element.
-
20. The method of claim 19, further comprising the step of changing an object displayed on the host computing device in a manner indicative of the acceleration of the movable element.
-
21. A machine-readable medium, disposed in a keyboard, for storing machine-readable instructions that cause the steps of claim 1 to be implemented.
-
22. A machine-readable medium, storing machine-readable instructions that cause the host computing device to perform the steps of claim 20.
-
23. A keyboard operatively coupled to a host computing device through a keyboard interface, comprising:
-
(a) a movable element that is movable in respect to a single axis, wherein the movable element is other than a selectively switchable key;
(b) a state change detector that senses a direction and displacement of the movable element;
(c) a memory that stores machine-readable instructions and a plurality of predefined codes that conform to a keyboard communication protocol, which does not explicitly provide for communicating movement of the movable element; and
(d) a processor in communication with the state change detector and memory, said processor executing the machine-readable instructions, causing one of the plurality of predefined codes to be selected as a function of a state change to represent the movement of the movable element, said processor transmitting the predefined code as an output signal that conforms to the keyboard protocol, for input to a host computing device. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A keyboard that is separate from a host computing device to which the keyboard is adapted to be operatively coupled, comprising:
-
(a) a rotatable wheel disposed adjacent to a key area on the keyboard and having an exposed circumferential edge, said rotatable wheel being thus adapted to be selectively rotated about a single axis in either of two opposed directions;
(b) a state change detector operatively coupled to the rotatable wheel, said state change detector sensing a direction and an angular displacement of the rotatable wheel as said wheel is rotated;
(c) a memory that stores machine instructions and a plurality of predefined codes; and
(d) a processor in communication with the state change detector and the memory, said processor executing the machine instructions, causing one of the plurality of predefined codes to be selected as a function of state changes that are detected by the state change detector, said processor transmitting the predefined code as an output signal that is adapted to be coupled to and input to a host computing device. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42)
-
Specification