IP Library Granted Patent US 9,290,220
Granted Patent B2
US 9,290,220 · App. 14/261,288 · Granted Mar 22, 2016

Orienting a user interface of a controller for operating a self-propelled device

Inventors: Ian H. Bernstein (Boulder, CO); Adam Wilson (Longmont, CO); Brian Keith Smith (Boulder, CO)
Assignee: Sphero, Inc.
B62D61/00A63H30/04A63H33/005G05D1/0016G05D1/0044G05D1/027G05D1/0278G05D1/0259G05D2201/0214Y10S901/01
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 9,290,220
App. No.
14/261,288
Granted
Mar 22, 2016
Kind
B2
Abstract

A self-propelled device determines an orientation for its movement based on a pre-determined reference frame. A controller device is operable by a user to control the self-propelled device. The controller device includes a user interface for controlling at least a direction of movement of the self-propelled device. The self-propelled device is configured to signal the controller device information that indicates the orientation of the self-propelled device. The controller device is configured to orient the user interface, based on the information signaled from the self-propelled device, to reflect the orientation of the self-propelled device.

Claims (42)

1. A controller device for operating a self-propelled device comprising:

a touch-sensitive display;

one or more processors; and

one or more memory resources storing instructions that, when executed by the one or more processors, cause the one or more processors to:

generate a graphic user interface on the touch-sensitive display, the graphic user interface comprising a virtual steering mechanism to maneuver the self-propelled device, the virtual steering mechanism including a marker to align with a corresponding marker on the self-propelled device;

receive orientation information from the self-propelled device, the orientation information indicating an orientation of the self-propelled device in relation to a predetermined frame of reference, wherein the corresponding marker on the self-propelled device indicates the predetermined frame of reference; and

align the marker on the virtual steering mechanism with the corresponding marker on the self-propelled device according to the orientation information from the self-propelled device.

2. The controller device of claim 1 , wherein the orientation information originates from an inertial measurement unit included within the self-propelled device.

3. The controller device of claim 1 , wherein

the marker on the virtual steering mechanism indicates a forward operating direction of the self-propelled device.

4. The controller device of claim 3 , wherein the instructions, when executed by the one or more processors, further cause the one or more processors to:

receive one or more user interactions with the marker on the virtual steering mechanism, the one or more user interactions to maneuver the self-propelled device; and

transmit one or more commands to the self-propelled device, the one or more commands to maneuver the self-propelled device in accordance with the one or more user interactions.

5. The controller device of claim 4 , wherein the instructions, when executed by the one or more processors, further cause the one or more processors to:

in response to transmitting the one or more commands, generating an animation on the graphic user interface reflecting the self-propelled device maneuvering based on the one or more commands.

6. The controller device of claim 1 , wherein the one or more processors are to receive the orientation information from the self-propelled device in response to establishing a wireless connection with the self-propelled device.

7. The controller device of claim 1 , wherein the one or more processors are to periodically receive the orientation information to realign the marker on the virtual steering mechanism with the corresponding marker on the self-propelled device.

8. The method of claim 7 , wherein the one or more processors are to receive the orientation information from the self-propelled device in response to establishing a wireless connection with the self-propelled device.

9. The method of claim 7 , wherein the one or more processors are to periodically receive the orientation information to realign the marker on the virtual steering mechanism with the corresponding marker on the self-propelled device.

10. A computer-implemented method for operating a self-propelled device, the method performed by one or more processors of a controller device and comprising:

generating a graphic user interface on a touch-sensitive display of the controller device, the graphic user interface comprising a virtual steering mechanism to maneuver the self-propelled device, the virtual steering mechanism including a marker to align with a corresponding marker on the self-propelled device;

receiving orientation information from the self-propelled device, the orientation information indicating an orientation of the self-propelled device in relation to a predetermined frame of reference, wherein the corresponding marker on the self-propelled device indicates the predetermined frame of reference; and

aligning the marker on the virtual steering mechanism with the corresponding marker on the self-propelled device according to the orientation information from the self-propelled device.

11. The method of claim 10 , wherein the orientation information originates from an inertial measurement unit included within the self-propelled device.

12. The method of claim 10 , wherein the marker on the virtual steering mechanism indicates a forward operating direction of the self-propelled device.

13. The method of claim 12 , further comprising:

receiving one or more user interactions with the marker on the virtual steering mechanism, the one or more user interactions to maneuver the self-propelled device; and

transmitting one or more commands to the self-propelled device, the one or more commands to maneuver the self-propelled device in accordance with the one or more user interactions.

14. The method of claim 13 , further comprising:

in response to transmitting the one or more commands, generating an animation on the graphic user interface reflecting the self-propelled device maneuvering based on the one or more commands.

15. A non-transitory computer readable medium storing instructions for maneuvering a self-propelled device, wherein the instructions, when executed by one or more processors of a controller device, cause the controller device to:

generate a graphic user interface on a touch-sensitive display of the controller device, the graphic user interface comprising a virtual steering mechanism to maneuver the self-propelled device, the virtual steering mechanism including a marker to align with a corresponding marker on the self-propelled device;

receive orientation information from the self-propelled device, the orientation information indicating an orientation of the self-propelled device in relation to a predetermined frame of reference, wherein the corresponding marker on the self-propelled device indicates the predetermined frame of reference; and

align the marker on the virtual steering mechanism with the corresponding marker on the self-propelled device according to the orientation information from the self-propelled device.

16. The non-transitory computer readable medium of claim 15 , wherein the orientation information originates from an inertial measurement unit included within the self-propelled device.

17. The non-transitory computer readable medium of claim 15 , wherein the marker on the virtual steering mechanism indicates a forward operating direction of the self-propelled device.

18. The non-transitory computer readable medium of claim 17 , wherein the instructions, when executed by the one or more processors, further cause the controller device to:

receive one or more user interactions with the marker on the virtual steering mechanism, the one or more user interactions to maneuver the self-propelled device; and

transmit one or more commands to the self-propelled device, the one or more commands to maneuver the self-propelled device in accordance with the one or more user interactions.

19. The non-transitory computer readable medium of claim 18 , wherein the instructions, when executed by the one or more processors, further cause the controller device to:

in response to transmitting the one or more commands, generating an animation on the graphic user interface reflecting the self-propelled device maneuvering based on the one or more commands.

20. The non-transitory computer readable medium of claim 15 , wherein the controller device is to receive the orientation information from the self-propelled device in response to establishing a wireless connection with the self-propelled device.

Assignments (3)
SECURITY INTEREST Recorded May 11, 2020
From: SPHERO, INC.
To: SILICON VALLEY BANK
Reel/Frame 052623/0705 →
CHANGE OF NAME Recorded Jul 7, 2015
From: ORBOTIX, INC.
To: SPHERO, INC.
Reel/Frame 036074/0382 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2014
From: BERNSTEIN, IAN H.; WILSON, ADAM; SMITH, BRIAN KEITH
To: ORBOTIX, INC.
Reel/Frame 032752/0810 →
Continuity (5)
Continuation 13342884 · Jan 3, 2012
Provisional Application 61430023 · Jan 5, 2011
Provisional Application 61430083 · Jan 5, 2011
Provisional Application 61553923 · Oct 31, 2011
Related Publication 20140236393A1 · Aug 21, 2014