IP Library › Granted Patent US 10,254,838
Granted Patent B2
US 10,254,838 · App. 14/979,283 · Granted Apr 9, 2019

Architecture and communication protocol for haptic output devices

Inventors: Srivatsav Venkatesan (Sunnyvale, CA); Kaniyalal Shah (Fremont, CA); Andrew C. Prock (San Mateo, CA); Henry Da Costa (Montreal, CA)
Assignee: IMMERSION CORPORATION
G06F3/016A63F13/218A63F13/23A63F13/285A63F13/42
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 10,254,838
App. No.
14/979,283
Granted
Apr 9, 2019
Kind
B2
Abstract

The embodiments are directed toward an architecture and communication protocol for controlling haptic output devices. According to the embodiments, a composite drive signal is generated that includes a first drive signal to be rendered by a first haptic output device, a second drive signal to be rendered by a second haptic output device, and a packet identifier. A controller includes the first haptic output device that is associated with a first user input element and the second haptic output device associated with a second user input element. The composite drive signal is transmitted to controller, and the execution order of the first and second drive signals is determined based on the packet identifier.

Claims (37)

1. A method for driving a plurality of actuators, each actuator being associated with one of a plurality of user input elements, the method comprising:

generating a composite drive signal packet data structure that includes a first drive signal to be rendered by a first haptic output device, a second drive signal to be rendered by a second haptic output device, and a packet identifier, the first haptic output device associated with a first user input element and the second haptic output device associated with a second user input element;

transmitting, to a controller, the composite drive signal packet data structure; and

determining an execution order of the first drive signal and the second drive signal at the controller according to the packet identifier,

wherein one or more haptic effects are rendered to a user according to the first drive signal and the second drive signal.

2. The method according to claim 1 , further comprising

simultaneously transmitting the first and second drive signals.

3. The method according to claim 1 , further comprising synchronizing a first clock and a second clock, the first clock being disposed at a host device, and the second clock being disposed at a peripheral device.

4. The method according to claim 1 , wherein the composite drive signal packet data structure is received on a USB compliant channel.

5. The method according to claim 1 , wherein the plurality of user input elements are disposed at a peripheral device comprising a controller or a gamepad.

6. The method according to claim 1 , wherein the first or second user input element is a trigger element of a peripheral device.

7. A device comprising:

a processor; and

a memory storing a program for execution by the processor, the program including instructions for:

generating a composite drive signal packet data structure that includes a first drive signal to be rendered by a first haptic output device, a second drive signal to be rendered by a second haptic output device, and a packet identifier, the first haptic output device associated with a first user input element and the second haptic output device associated with a second user input element;

transmitting, to a controller, the composite drive signal packet data structure; and

determining an execution order of the first drive signal and the second drive signal at the controller according to the packet identifier,

wherein one or more haptic effects are rendered to a user according to the first drive signal and the second drive signal.

8. The device according to claim 7 , further comprising instructions for simultaneously transmitting the first and second drive signals.

9. The device according to claim 7 , further comprising instructions for synchronizing a first clock and a second clock, the first clock being disposed at a host device, and the second clock being disposed at a peripheral device.

10. The device according to claim 7 , wherein the composite drive signal packet data structure is received on a USB compliant channel.

11. The device according to claim 7 , wherein the first user input element and second user input element are disposed at a peripheral device comprising a controller or a gamepad.

12. The device according to claim 7 , wherein the first or second user input element is a trigger element of a peripheral device.

13. A non-transitory computer readable storage medium storing a program configured to be executed by a processor, the program comprising instructions for:

generating a composite drive signal packet data structure that includes a first drive signal to be rendered by a first haptic output device, a second drive signal to be rendered by a second haptic output device, and a packet identifier, the first haptic output device associated with a first user input element and the second haptic output device associated with a second user input element;

transmitting, to a controller, the composite drive signal packet data structure; and

determining an execution order of the first drive signal and the second drive signal at the controller according to the packet identifier,

wherein one or more haptic effects are rendered to a user according to the first drive signal and the second drive signal.

14. The non-transitory computer readable storage medium of claim 13 , further comprising instructions for

simultaneously transmitting the first and second drive signals.

15. The non-transitory computer readable storage medium of claim 13 , further comprising instructions for synchronizing a first clock and a second clock, the first clock being disposed at a host device, and the second clock being disposed at a peripheral device.

16. The non-transitory computer readable storage medium of claim 13 , wherein the composite drive signal packet data structure is received on a USB compliant channel.

17. The non-transitory computer readable storage medium of claim 13 , wherein the first and second user input elements are disposed at a peripheral device comprising a controller or a gamepad.

18. The non-transitory computer readable storage medium of claim 13 , wherein the first or second user input element is a trigger element of a peripheral device.

19. The method according to claim 1 , wherein the composite drive signal packet data structure is determined by

parsing haptic effect instructions of the one or more haptic effects into first haptic instructions for the first drive signal and second haptic instructions for the second drive signal; and

mixing the first haptic instructions and the second haptic instructions into a single haptic instruction set.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2016
From: VENKATESAN, SRIVATSAV; SHAH, KANIYALAL; PROCK, ANDREW C.; DA COSTA, HENRY
To: IMMERSION CORPORATION
Reel/Frame 037459/0335 →
Continuity (2)
Provisional Application 62096251 · Dec 23, 2014
Related Publication 20160175703A1 · Jun 23, 2016