IP Library › Granted Patent US 8,587,519
Granted Patent B2
US 8,587,519 · App. 12/984,547 · Granted Nov 19, 2013

Rolling gesture detection using a multi-dimensional pointing device

Inventors: Kevin A. Shaw (Millbrae, CA); Ian Chen (Campbell, CA); Benjamin E. Joseph (Mountain View, CA)
Assignee: Sensor Platforms, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,587,519
App. No.
12/984,547
Granted
Nov 19, 2013
Kind
B2
Abstract

A system and a method for performing a rolling gesture using a multi-dimensional pointing device. An initiation of a gesture by a user of the multi-dimensional pointing device is detected. A rolling gesture metric corresponding to performance of a rolling gesture comprising rotation of the multi-dimensional pointing device about a longitudinal axis of the multi-dimensional pointing device is determined. Information corresponding the rolling gesture metric is conveyed to a client computer system, wherein the client computer system is configured to manipulate an object in a user interface of the client computer system in accordance with the rolling gesture metric.

Claims (84)

1. A method for detecting performance of a rolling gesture using a multi-dimensional pointing device, comprising:

at a multi-dimensional pointing device including a first button, one or more processors and memory storing one or more programs, the one or more processors executing the one or more programs to perform the operations of:

while the first button is not activated, detecting a change in attitude of the multi-dimensional pointing device;

conveying first information corresponding to the change in attitude of the multi-dimensional pointing device to a client computer system, wherein the first information enables the client computer system to perform an operation corresponding to the change in attitude of the multi-dimensional pointing device;

after detecting the change in attitude of the multi-dimensional pointing device, detecting a button press of a first button of the multi-dimensional pointing device;

determining, in conjunction with detecting the button press, a rolling gesture metric corresponding to performance of a rolling gesture comprising rotation of the multi-dimensional pointing device about a longitudinal axis of the multi-dimensional pointing device; and

after determining the rolling gesture metric, conveying second information corresponding to the rolling gesture metric to the client computer system, wherein the second information enables the client computer system to perform an operation corresponding to the button press of the first button, wherein the operation is performed in accordance with the rolling gesture metric.

2. The method of claim 1 , wherein:

the multi-dimensional pointing device includes a plurality of buttons, each respective button corresponding to a respective predefined type of operation;

the first button corresponds to a first predefined type of operation; and

the operation performed in accordance with the rolling gesture metric is an operation of the first predefined type.

3. The method of claim 2 , wherein the first button is selected from the group consisting of:

a volume button corresponding to a volume change operation;

a channel button corresponding to a channel change operation;

a video input button corresponding to a video input change operation;

an audio input button corresponding to an audio input change operation; and

a gesture button.

4. The method of claim 1 , wherein the rolling gesture metric corresponds to a change in attitude of the pointing device after detecting the button press of the first button.

5. The method of claim 1 , wherein the rolling gesture metric is selected from the group consisting of:

a roll angle;

a roll rate; and

a roll acceleration.

6. The method of claim 1 , wherein determining the corresponding rolling gesture metric comprises:

calculating a change in attitude of the multi-dimensional pointing device, corresponding to rotation about a longitudinal axis of the multi-dimensional pointing device, based on one or more accelerometer measurements from one or more multi-dimensional accelerometers of the multi-dimensional pointing device and one or more magnetic field measurements from one or more multi-dimensional magnetometers of the multi-dimensional pointing device; and

calculating the rolling gesture metric based on the change in attitude of the multi-dimensional pointing device.

7. The method of claim 1 , wherein determining the corresponding rolling gesture metric comprises:

calculating a change in attitude of the multi-dimensional pointing device based on one or more accelerometer measurements from one or more multi-dimensional accelerometers of the multi-dimensional pointing device and one or more magnetic field measurements from one or more multi-dimensional magnetometers of the multi-dimensional pointing device;

determining that the multi-dimensional pointing device is undergoing a rotation about a longitudinal axis of the multi-dimensional pointing device based on the change in attitude of the multi-dimensional pointing device; and

calculating the rolling gesture metric based on the change in attitude of the multi-dimensional pointing device.

8. The method of claim 1 , wherein the operation corresponding to the button press of the first button is a scrolling operation that is performed on an object in a user interface of the client computer system.

9. The method of claim 8 , wherein the object is selected from the group consisting of:

a web page;

a document; and

a list.

10. The method of claim 1 , wherein the operation corresponding to the button press of the first button is a rotation operation that is performed on an object in a user interface of the client computer system.

11. The method of claim 10 , wherein the object is selected from the group consisting of:

a dial;

a photograph; and

a page of a document.

12. The method of claim 1 , wherein the rolling gesture metric is mapped to a number of clicks of a mouse wheel over a time interval.

13. A system for detecting performance of a rolling gesture using a multi-dimensional pointing device, comprising:

one or more processors;

memory; and

one or more programs, wherein the one more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions to:

while a first button of the multi-dimensional pointing device is not activated, detect a change in attitude of the multi-dimensional pointing device;

convey first information corresponding to the change in attitude of the multi-dimensional pointing device to a client computer system, wherein the first information enables the client computer system to perform an operation corresponding to the change in attitude of the multi-dimensional pointing device;

after detecting the change in attitude of the multi-dimensional pointing device, detect a button press of a first button of the multi-dimensional pointing device;

determine, in conjunction with detecting the button press, a rolling gesture metric corresponding to performance of a rolling gesture comprising rotation of the multi-dimensional pointing device about a longitudinal axis of the multi-dimensional pointing device; and

after determining the rolling gesture metric, convey second information corresponding to the rolling gesture metric to the client computer system, wherein the second information enables the client computer system to perform an operation corresponding to the button press of the first button, wherein the operation is performed in accordance with the rolling gesture metric.

14. The system of claim 13 , wherein:

the multi-dimensional pointing device includes a plurality of buttons, each respective button corresponding to a respective predefined type of operation;

the first button corresponds to a first predefined type of operation; and

the operation performed in accordance with the rolling gesture metric is an operation of the first predefined type.

15. The system of claim 13 , wherein the rolling gesture metric corresponds to a change in attitude of the pointing device after detecting the button press of the first button.

16. The system of claim 13 , wherein the instructions to determine the corresponding rolling gesture metric comprise instructions to:

calculate a change in attitude of the multi-dimensional pointing device, corresponding to rotation about a longitudinal axis of the multi-dimensional pointing device, based on one or more accelerometer measurements from one or more multi-dimensional accelerometers of the multi-dimensional pointing device and one or more magnetic field measurements from one or more multi-dimensional magnetometers of the multi-dimensional pointing device; and

calculate the rolling gesture metric based on the change in attitude of the multi-dimensional pointing device.

17. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a device, cause the device to:

while the first button of a multi-dimensional pointing device is not activated, detect a change in attitude of the multi-dimensional pointing device;

convey first information corresponding to the change in attitude of the multi-dimensional pointing device to a client computer system, wherein the first information enables the client computer system to perform an operation corresponding to the change in attitude of the multi-dimensional pointing device;

after detecting the change in attitude of the multi-dimensional pointing device, detect a button press of a first button of a multi-dimensional pointing device;

determine, in conjunction with detecting the button press, a rolling gesture metric corresponding to performance of a rolling gesture comprising rotation of the multi-dimensional pointing device about a longitudinal axis of the multi-dimensional pointing device; and

after determining the rolling gesture metric, convey second information corresponding to the rolling gesture metric to the client computer system, wherein the second information enables the client computer system to perform an operation corresponding to the button press of the first button, wherein the operation is performed in accordance with the rolling gesture metric.

18. The computer readable storage medium of claim 17 , wherein:

the multi-dimensional pointing device includes a plurality of buttons, each respective button corresponding to a respective predefined type of operation;

the first button corresponds to a first predefined type of operation; and

the operation performed in accordance with the rolling gesture metric is an operation of the first predefined type.

19. The computer readable storage medium of claim 17 , wherein the rolling gesture metric corresponds to a change in attitude of the pointing device after detecting the button press of the first button.

20. The computer readable storage medium of claim 17 , wherein the instructions to determine the corresponding rolling gesture metric comprise instructions to:

calculate a change in attitude of the multi-dimensional pointing device, corresponding to rotation about a longitudinal axis of the multi-dimensional pointing device, based on one or more accelerometer measurements from one or more multi-dimensional accelerometers of the multi-dimensional pointing device and one or more magnetic field measurements from one or more multi-dimensional magnetometers of the multi-dimensional pointing device; and

calculate the rolling gesture metric based on the change in attitude of the multi-dimensional pointing device.

21. A multi-dimensional pointing device, comprising:

one or more processors;

two or more multi-dimensional accelerometers;

one or more multi-dimensional magnetometers;

a transmitter circuit;

a first button;

memory; and

one or more programs, wherein the one more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions to:

while a first button of the multi-dimensional pointing device is not activated, detect a change in attitude of the multi-dimensional pointing device;

convey first information corresponding to the change in attitude of the multi-dimensional pointing device to a client computer system, wherein the first information enables the client computer system to perform an operation corresponding to the change in attitude of the multi-dimensional pointing device;

after detecting the change in attitude of the multi-dimensional pointing device, detect a button press of the first button of the multi-dimensional pointing device;

determine, in conjunction with detecting the button press, a rolling gesture metric corresponding to performance of a rolling gesture comprising rotation of the multi-dimensional pointing device about a longitudinal axis of the multi-dimensional pointing device; and

after determining the rolling gesture metric, convey, using the transmitter circuit, second information corresponding to the rolling gesture metric to the client computer system, wherein the second information enables the client computer system to perform an operation corresponding to the button press of the first button, wherein the operation is performed in accordance with the rolling gesture metric.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2011
From: SHAW, KEVIN A.; CHEN, IAN; JOSEPH, BENJAMIN E.
To: SENSOR PLATFORMS, INC.
Reel/Frame 025869/0115 →
Continuity (3)
Provisional Application 61292797 · Jan 6, 2010
Provisional Application 61143133 · Jan 7, 2009
Related Publication 20110163947A1 · Jul 7, 2011