# Patent

## Title
Vector-specific haptic feedback

## Abstract

In one or more embodiments, vector-specific movement can be imparted to a user interface device (UID) to provide vector-specific haptic feedback. In at least some embodiments, this vectored movement can be based on input received by the UID. The input can include information associated with the user's interaction with an associated device integrated with or communicatively linked with the UID, and or with an application implemented on the associated device. In at least some embodiments, the UID can be configured with a controller, a microprocessor(s), and a vector-specific actuator that includes an electrically-deformable material.

## Background
RELATED APPLICATIONS
This application is a continuation of and claims priority to U.S. patent application Ser. No. 12/403,270, filed on Mar. 12, 2009, which claims priority to U.S. Provisional Application No. 61/036,735, filed on Mar. 14, 2008, the disclosure of which is incorporated by reference herein in its entirety.


BACKGROUND
Current video game controllers, hand-held gaming device components, mice, and other types of user interface devices (UIDs) are limited in the haptic feedback they provide to users. This is because typically, these UIDs are configured with actuators employing an off-center, rotating, mass on-a-spring type technology that produces a non-specific or indiscriminate vibration. As such, these UIDs offer a relatively limited user sensory experience with a limited correlation with what a user experiences when they interact with a device and/or application. Furthermore, these types of actuators are relatively inefficient with respect to their power consumption and are typically associated with a relatively slow haptic feedback response time.
SUMMARY
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
In one or more embodiments, vector-specific movement can be imparted to a user interface device (UID) to provide vector-specific haptic feedback. In at least some embodiments, this vector-specific movement can be based on input received by the UID from an associated device. This input can include information about an event associated with a user's interaction with the associated device and/or an application implemented on the associated device.
In at least some embodiments, the UID can be a component of, or otherwise integrated with, the associated device. Alternatively or additionally, the UID can be separate from, and communicatively linked with, the associated device.
In at least some embodiments, the UID can be configured with a controller, a microprocessor(s), and a vector-specific actuator that includes an electrically-deformable material. The controller can receive the input and utilize the input to determine and specify a direction and/or magnitude of vectored movement to be imparted to the UID.
In one or more embodiments, the electrically-deformable material can be an electroactive polymer (EAP) which undergoes a deformation when a drive voltage(s) is applied to it. Alternatively or additionally, the electrically-deformable material can be an electrostatic material forming a structure which, by virtue of its shape, undergoes a deformation when a drive voltage(s) is applied to it.



BRIEF DESCRIPTION OF THE DRAWINGS
The same numbers are used throughout the drawings to reference like features.
FIG. 1 illustrates an example system in accordance with one or more embodiments.
FIG. 2 illustrates an example vector-specific actuator in accordance with one or more embodiments.
FIG. 3 illustrates an example vector-specific actuator in accordance with one or more embodiments.
FIG. 4 is a flow diagram that describes steps in a method in accordance with one or more embodiments.



DETAILED DESCRIPTION
Overview
In one or more embodiments, vector-specific movement can be imparted to a user interface device (UID) to provide vector-specific haptic feedback. In at least some embodiments, this vector-specific movement can be based on input, e.g., a signal, received by the UID from an associated device. This input can include information about an event associated with a user's interaction with the associated device and/or an application implemented on the associated device. By virtue of the vector-specific nature of the haptic feedback, the user can be provided with a realistic sensory experience.
In at least some embodiments, the UID can be a component of, or otherwise integrated with, the associated device. For example, the UID can be integrated with a hand-held computing device on which an application such as a video game is implemented. Alternatively or additionally, the UID can be separate from and communicatively linked with the associated device. For example, the UID might be a video game controller that is communicatively linked with a computing device on which the application is implemented. As another example, the UID might be a remote controller device configured to allow remote control of an associated device such as a vehicle, robotic device, or the like.
Consider, for instance, a scenario where the user is controlling a virtual character in a video game via the UID. Input associated with and describing a virtual event in the game, such as the virtual character being struck by a projectile, running, firing a weapon, driving a vehicle, etc., can be received by the video game controller and utilized to impart vector-specific movement to the UID that correlates with the virtual event.
In at least some embodiments, the UID can be configured with a controller, a microprocessor(s), and a vector-specific actuator that includes an electrically-deformable material. The controller can receive the input and utilize the input to determine and specify a direction and/or magnitude of vectored movement to be imparted to the UID.
In one or more embodiments, the electrically-deformable material can be an electroactive polymer (EAP) which undergoes a deformation when a drive voltage(s) is applied to it. Alternatively or additionally, the electrically-deformable material can be an electrostatic material forming a structure(s) which, by virtue of its shape, undergoes deformation when a drive voltage(s) is applied to it.
In the discussion that follows, a section entitled “Example System” is provided and describes a system that can be used in accordance with one or more embodiments. Next, a section entitled “Example Vector-Specific Actuators” is provided and describes two example vector-specific actuators, in accordance with one or more embodiments. Lastly, a section entitled “Example Method” is provided and describes a method in accordance with one or more embodiments.
Example System
FIG. 1 illustrates an example system in accordance with one or more embodiments, generally at 100. In this example, system 100 includes a UID 102 and an associated device 104 which is or can be communicatively linked with UID 102 via a wired and/or wireless connection. For ease of illustration and discussion, UID 102 and associated device 104 are shown here as being separate devices. However, it is to be appreciated and understood that in at least some embodiments, UID 102 can be a component of, or otherwise integrated with, associated device 104 without departing from the spirit and scope of the claimed subject matter.
UID 102 can be any suitable type of device configured to provide haptic feedback to a user via vector-specific movement. By way of example and not limitation, a suitable device can include a game controller, hand-held computing device component, mouse, key or keyboard element, PDA component, smart phone component, remote or non-remote controller device, steering device, and the like.
Associated device 104, in turn, can be any suitable type of device configured to allow a user to interact with it such as, without limitation, a hand-held computing device, laptop computing device, desktop computing device, personal digital assistant (PDA), smart phone, remotely controlled device, and the like. In at least some embodiments, associated device 104 can be utilized to implement one or more applications 106, such as a video game, user interface, simulator, and the like.
As described above, UID 102 and associated device 104 are or can be communicatively linked with one another. As such, input from associated device 104 can be received by UID 102. This input can include information about a virtual or non-virtual event associated with a user's interaction with associated device 104. More particularly, this can include information indicating that an event has occurred, descriptive information about the event, and/or instructions for a vectored movement to be provided in response to the event. Without limitation, descriptive information might describe an event's acceleration, magnitude, timing, direction, or the like, while the instructions might specify one or movement parameters to be imparted to the UID.
UID 102, in this example, includes a controller 108, one or more microprocessors 110, an actuator interface module 112, and a vector-specific actuator 114. These various components can be implemented in connection with any suitable hardware, software, firmware, or combination thereof such as, without limitation, an application specific integrated circuit for example. In operation, controller 108 can be configured to receive the input and utilize the input to determine appropriate drive parameters for the vectored movement to be imparted to UID 102. Controller 108 can accomplish this by parsing, analyzing, or performing any other suitable function or functions sufficient to derive, ascertain, or otherwise determine the drive parameters from information found in the input. For example, controller 108 might utilize an algorithm and/or other type of instructions to accomplish this. These drive parameters can specify timing information, e.g., a start time and/or duration for the vectored movement. In addition, these drive parameters can also specify a direction and/or magnitude for the vectored movement. As such, and by virtue of vector-specific actuator 114, this vectored movement can be imparted in a vector-specific manner that correlates with the event.
In addition, in at least some embodiments, controller 108 can also be configured to utilize other information to determine the drive parameters. As one example, consider a scenario where UID 102 is configured with one or more sensors, such as an accelerometer and/or gyroscope, capable of providing information associated with the UID's orientation. Now assume that input is received by controller 108 that specifies that vectored movement is to be provided in a direction to the left of UID 102 in its upright position. Utilizing the input information and the information associated with the orientation of UID 102, controller 108 can make an appropriate determination, based on the UID's current orientation, as to which direction UID 102 is to be moved.
To assist the reader in understanding and appreciating the above discussion, consider the scenario described where the user is controlling a virtual character in a video game. For the sake of discussion, assume now that the video game is being implemented on associated device 104 and that the user is interacting with the video game by controlling a virtual character in the game via UID 102. Also assume that the input received by controller 108 includes information that describes the virtual character being struck by a bullet on the character's right side. Controller 108 can utilize the input information, along with information associated with the orientation of UID 102, to determine appropriate drive parameters. These drive parameters can specify a vector-specific movement of UID 102 to the left-according to its current orientation-in order to correspond to the impact of the bullet on the virtual character's right side.
Continuing, once controller 108 has determined the drive parameters, including the direction and/or magnitude of the vectored movement to be imparted, it can specify the parameters to microprocessor(s) 110. More particularly, controller 108 can provide microprocessor(s) 110 with the drive parameters and instruct microprocessor(s) 110 to cause actuator interface module 112 to apply a drive voltage(s) to a region(s) of vector-specific actuator 114 according to the drive parameters. This drive voltage(s) can be sufficient to impart vectored movement to vector-specific actuator 114, and thus to UID 102, according to the drive parameters. For example, in the context of the scenario above where the virtual character in the video game is struck by a bullet, controller 108 can provide microprocessor(s) 110 with the appropriate drive parameters such that leftward vector-specific movement is imparted to vector-specific actuator 114. This, in turn, can cause UID 102 to move to the left such that the user “feels” the impact of the bullet.
Vector-specific actuator 114 can include any suitable material or combination of materials such as, without limitation, an electrically-deformable material, solenoid structure, voice coil, or other suitable responsive material. For example, in at least some embodiments, vector-specific actuator 114 includes an electrically-deformable material, such as an EAP and/or an electrostatic material, such as a conductive metal. In such embodiments, the drive voltage(s) can be applied to a region(s) of the electrically-deformable material, causing it to change shape and move according to one or more vectors having a direction and/or magnitude specified by the drive parameters. This in turn can cause a corresponding vector-specific movement of vector-specific actuator 114 and UID 102.
Here, it should be noted that UID 102 is not limited to providing a single vector-specific movement. As such, a sequence of multiple vector-specific movements (in any direction or directions in the three-dimensional space surrounding and including UID 102) can be provided to UID 102 by vector-specific actuator 114, and/or one or more other coordinated vector-specific actuators. The summation of these vector-specific movements can result in a unique and specialized type movement, and thus haptic effect. Furthermore, in at least some embodiments, the timing of these discrete vector-specific movements can result in at least some of these movements overlapping one another. As a result, a specialized type of haptic feedback can be provided via UID 102.
As an example, again consider the scenario where the user is controlling the virtual character in the video game. For discussion purposes, assume now that the user causes the virtual character to drive a vehicle over a cobblestone road with potholes, while the vehicle is occasionally struck by bullets. By virtue of being able to control the timing, direction and/or magnitude of individual movements in a sequence of vector-specific movements, haptic feedback can be provided via UID 102 that corresponds with individual virtual events of the vehicle being driven. More particularly individual vector-specific movements in the sequence can be provided in an overlapping fashion such that the individual movements correspond to either the vehicle being driven over individual cobblestones, the vehicle being driven over an occasional pothole, or to the occasional impact of a bullet striking the vehicle. As a result, the user can simultaneously experience, via the vector-specific movement of UID 102, haptic feedback that corresponds with each of these virtual events.
Example Vector-Specific Actuators
To assist the reader in understanding and appreciating utilizing a vector-specific actuator to provide vector-specific movement, FIGS. 2 and 3, and the following discussion are provided. These figures and the accompanying discussion illustrate and describe two example vector-specific actuators, one or both of which may be implemented as an actuator in a system with a UID, such as vector-specific actuator 114 in system 100 for example. However, it is to be appreciated and understood that either of these example vector-specific actuators may also be implemented in a system or systems other than system 100 without departing from the spirit and scope of the claimed subject matter.
FIG. 2 illustrates an example vector-specific actuator, generally at 200, which can be implemented in, and connected to, an associated UID (not shown). In this example, vector-specific actuator 200 includes an electrically deformable material such as EAP. Here, the EAP includes an electrically active area 202 and an electrically inactive area 204 which are connected. In at least some embodiments, vector-specific actuator 200 also includes a mass 206 that is connected to the EAP. Mass 206 can be any type of object(s) having a mass. By way of example and not limitation, mass 206 can be a component(s) of the UID in which the vector-specific actuator is implemented, such as a battery or batteries, housing portion of the associated UID, etc.
EAP refers to a class of polymers which are formulated to exhibit different physical and/or electrical behaviors and properties. EAP is available from various companies such as a company named Artificial Muscle Inc. located in Sunnyvale, Calif. or a company named Danfoss PolyPower A/S located in Nordbord, Denmark. In general, when a drive voltage(s) (e.g., 0-5000 volts) is applied to an electrically active area of an EAP, the EAP changes shape and moves according to a vector having a direction and magnitude that corresponds to the voltage(s) applied and to the region(s) where the voltage(s) is applied.
As such, when a voltage(s) is applied to electrically active area 202, the EAP changes shape and moves in a vector-specific manner. Since mass 206 is connected to the EAP, the movement of the EAP causes a corresponding vector-specific movement of mass 206, and thus vector-specific actuator 200. This vector-specific movement can be in accordance with any vector in the three-dimensional space surrounding and including vector-specific actuator 200, as represented here by example vectors 208. Since vector-specific actuator 200 is connected to the UID, the vector-specific movement is also imparted to the UID. It is to be appreciated and understood that the illustrated layout of the electrically active areas 202 constitutes but one layout. As such, other layout configurations can be utilized without departing from the spirit and scope of the claimed subject matter.
FIG. 3 illustrates an example vector-specific actuator, generally at 300, which can be implemented in, and connected to, an associated UID (not shown). Here, vector-specific actuator 300 includes an electrically deformable material that is an electrostatic material such as, without limitation, a conductive metal, a composite material coated with a conductive material, or the like. In this example, the electrostatic material forms an electrostatic structure including two electrostatic components 302 and 304 that are positioned proximate one another and separated by one or more dielectric materials 306. Dielectric material(s) 306 can include, without limitation, plastic, polyester film (e.g., MYLAR, MELINEX etc.), rubber, silicone, glue, air, water, dielectric hydraulic fluid, mineral oil, or any combination thereof. In at least some embodiments, vector-specific actuator 300 also includes a mass 308 that is connected to one of the electrostatic components—here, electrostatic component 302. As with mass 206 illustrated and described above, mass 308 can be any type of objects(s) having a mass such as, without limitation, a battery or batteries, housing portion of the UID, etc.
In operation, when a drive voltage(s) (e.g., 0-5000 volts) is applied to components 302 and 304, these components become electrostatically attracted to one another, causing at least one of these components to move generally toward the other component. As a result, the electrostatic structure generally changes shape and moves according to a vector having a direction and magnitude that corresponds to the voltage applied and to the structure's shape. Since mass 308 is connected to component 302, this movement causes a corresponding vector-specific movement of mass 308, and thus vector-specific actuator 300. This vector-specific movement can be according to any vector in the three-dimensional space surrounding and including vector-specific actuator 300, as shown here by example vectors 310. Since vector-specific actuator 300 is connected to the UID, the vector-specific movement is also imparted to the UID.
Example Method
FIG. 4 is a flow diagram that describes steps of a method in accordance with one or more embodiments. The method can be implemented in connection with any suitable hardware, software, firmware, or combination thereof. Furthermore, one or more of the steps of the method can be repeated any number of times. In at least some embodiments, the method can be implemented by a system, such as example system 100 illustrated and described above. However, it is to be appreciated and understood that the described method can be implemented by systems other than system 100 without departing from the spirit and scope of the claimed subject matter.
Step 400 receives an input on a UID. As illustrated and described above, in at least some embodiments, this input can pertain to an event associated with a user's interaction with a device other than the UID. This can include a virtual event, such as one occurring in a video game for example. Alternatively or additionally, this can include a non-virtual event. As an example, consider a scenario where the user is utilizing the UID to control an apparatus, such as a remote control vehicle, robotic device, or the like. A non-virtual event associated with the apparatus, such as the apparatus colliding with a structure for instance, might be described or otherwise addressed by information of the input.
After receiving the input at step 400, step 402 utilizes the input to determine drive parameters for vectored movement to be imparted to the UID. As explained and illustrated above, in addition to timing information, these drive parameters can also specify a direction and/or magnitude for the vectored movement.
Responsive to receiving the input at step 400, vector-specific movement is imparted to the UID at step 404. As illustrated and described above, in at least some embodiments, this includes applying a particular drive voltage(s) to a particular region(s) of a vector-specific actuator of the UID according to the drive parameters. As a result, vectored movement is imparted to the vector-specific actuator, and thus to the UID, along a vector having the direction and/or magnitude specified in the drive parameters. As such, the user can be provided with vector-specific haptic feedback.
Conclusion
In one or more embodiments, vector-specific movement can be imparted to a user interface device (UID) to provide vector-specific haptic feedback. In at least some embodiments, this vector-specific movement can be based on input received by the UID from an associated device. The input can include information about an event associated with a user's interaction with the associated device and/or an application implemented on the associated device. As a result of the vector-specific nature of the haptic feedback, the user can be provided with a realistic sensory experience.
In at least some embodiments, the UID can be a component of, or otherwise integrated with, the associated device. Alternatively or additionally, the UID can be separate from and communicatively linked with the associated device.
In at least some embodiments, the UID can be configured with a controller, a microprocessor(s), and a vector-specific actuator that includes an electrically-deformable material. The controller can receive the input and utilize it to determine and specify a direction and/or magnitude of vectored movement to be imparted to the UID.
In one or more embodiments, the electrically-deformable material can be an electroactive polymer (EAP) which undergoes a deformation when a drive voltage(s) is applied to it. Alternatively or additionally, the electrically-deformable material can be an electrostatic material forming a structure(s) which undergoes deformation when a drive voltage(s) is applied to it.
While various embodiments have been described in language specific to structural features and/or methodological steps, it is to be appreciated and understood that the embodiments defined in the appended claims are not necessarily limited to the specific described features or steps. Rather, the specific features and steps are disclosed as example forms of implementing the claimed embodiments.

## Claims

1. A method comprising:
receiving, on a user interface device (UID), an input, the input including event-associated information, the event-associated information based on a user's interaction with an application implemented on associated device; and
responsive to receiving the input, imparting individual vector-specific movements to the UID via an electrically-deformable material associated with the UID, wherein a direction or a magnitude of the individual vector-specific movements is based, at least in part, on the input and at least two of the individual vector-specific movements overlap.

2. The method of claim 1, wherein the UID is selected from a group consisting of a component of the associated device, a component integrated with the associated device, and a component separate from and communicatively linked with the associated device.

3. The method of claim 1, wherein the imparting the individual vector-specific movements to the UID comprises: utilizing the event-associated information to determine one or more drive parameters, wherein the one or more drive parameters specify the direction or the magnitude of the individual vector-specific movements; and applying, in accordance with the one or more drive parameters, one or more drive voltages to the electrically-deformable material.

4. The method of claim 1, wherein the direction or the magnitude of the one or more vector-specific movements is further based at least in part on information other than the input.

5. The method of claim 4, wherein the information other than the input comprises information is associated with an orientation of the UID.

6. The method of claim 1, wherein the electrically-deformable material comprises at least one material selected from the group consisting of: an electroactive polymer and a conductive material.

7. The method of claim 1, wherein the imparting the individual vector-specific movements to the UID comprises overlapping three of the individual vector-specific movements to impart a three-dimensional haptic feedback to the UID.

8. A user interface device, comprising;
a controller configured to receive an input, the input including information about an event associated with an application implemented on an associated device communicatively linked with the user interface device;
an actuator interface module configured to apply one or more drive voltages to one or more regions of a vector-specific actuator, the vector-specific actuator configured to impart individual vector-specific movements to the user interface device, each of the individual vector-specific movements correlating with a portion of the event associated with the application implemented on the communicatively linked associated device wherein at least two of the individual vector-specific movements overlap in accordance with the event; and
an electrically-deformable material associated with the controller and configured to be electrically driven to impart the individual vector-specific movement to the user interface device, wherein a direction or a magnitude of the vector-specific movement is based at least in part on the input.

9. The user interface device of claim 8, wherein the user interface device is selected from a group consisting of: a video game controller, a mouse, a key or keyboard element, and a component of a computing device.

10. The user interface device of claim 8, wherein three of the individual vector- specific movements overlap to impart three-dimensional haptic feedback.

11. The user interface device of claim 8, wherein the controller is further configured to utilize the input to determine one or more drive parameters, wherein the one or more drive parameters specify at least one of the direction, the magnitude, a start time, or a duration time of the individual vector-specific movements.

12. The user interface device of claim 8, wherein the actuator interface module is further configured to cause the one or more drive voltages to be applied to the electrically deformable material sufficient to impart the individual vector-specific movements.

13. The user interface device of claim 8, wherein the electrically-deformable material comprises an electroactive polymer.

14. The user interface device of claim 8, wherein the electrically-deformable material comprises conductive material.

15. The user interface device of claim 8, wherein one or both of the direction or the magnitude of the individual vector-specific movements is further based at least in part on information other than the input, wherein the information other than the input comprises information associated with an orientation of the user interface device.

16. The user interface device of claim 8, wherein the information about the event is selected from a group consisting of event acceleration, event magnitude, event timing, and event direction.

17. A controller for a user interface device (UID) comprising:
an input receiver configured to receive an input from an associated device, the input including event-associated information based on a user's interaction with the associated device;
a vector movement determiner configured to determine directions or magnitudes of at least two individual vector-specific movements based, at least in part, on the input, the at least two individual vector-specific movements to be applied to the UID in an overlapping way; and
an electrically-deformable material driver configured to impart the at least two individual vector-specific movement in the overlapping way via an electrically-deformable material associated with the UID.

18. The controller of claim 17, wherein the vector movement determiner is configured to determine the directions or magnitudes by:
utilizing the event-associated information to determine one or more drive parameters specifying the directions or the magnitudes; and
applying one or more drive voltages to the electrically-deformable material in accordance with the one or more drive parameters.

19. The controller of claim 17, wherein the directions or the magnitudes are further based at least in part on an orientation of the UID.

20. The controller of claim 17, wherein the vector movement determiner is configured to determine the directions or magnitudes by determining at least three individual vector-specific movements, and wherein the electrically-deformable material driver is configured to impart the at least two individual vector-specific movement in the overlapping way by overlapping at least three of the individual vector-specific movements.