Apparatus and method for providing feedback at a predetermined distance

A haptic device is configured to obtain a predetermined distance and establish a contact position. The haptic device may monitor sensor data in order to determine an activity using a content module and access a lookup table to associate a contact position with the determined activity. A position module will monitor the position of the haptic device and detect when the haptic device is at the contact position. At the contact position, the haptic device will produce a haptic effect. In some embodiments, a display device may be in communication with the haptic device in order to transmit and receive data.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to a device that is configured to produce feedback based on a detected position of a device.

BACKGROUND

Mobile devices are constantly being implemented into everyday activities in order to efficiently accomplish tasks. Most current mobile and wearable devices are capable of providing feedback that was only possible with heavy or stationary equipment in the past. Haptic feedback has played a large role in recent years in terms of communicating information to users via mobile and wearable devices. Typically, actuators are mounted in a housing and create a range of vibration frequencies and magnitudes that can be conveyed to a user in order to communicate an incoming call or message.

Haptics is usually associated with transmission or reception of information from one device to another. However, the ability to provide feedback has many applications to other actions that are achieved by a user without the need of multiple devices or networks. Activities that commonly require a user to reach or touch something are accomplished when one hits a certain distance. For example, a boxer may hit a punching bag or a person doing yoga may need to have a body part in a specific position. Unfortunately, such activities usually require bulky equipment or are done incorrectly because no feedback is given on proper form.

DETAILED DESCRIPTION

Briefly, a disclosed haptic device obtains a predetermined distance relevant to its initial position. The initial position of the haptic device may be determined by a position module or obtained from a received input signal. A lookup table is accessed to determine the distance from the initial position of the haptic device. The predetermined distance may be determined based on an activity monitored by a content module. A position at the determined distance is designated as a contact position while sensors monitor the position of the haptic device as a user moves. The haptic device is configured to detect when its position is at the contact position and provide a haptic effect as feedback to the user that the haptic device is at the contact position.

One aspect of the present disclosure is a method that includes obtaining a predetermined distance to a first device. The first device will, using sensors, monitor its position. The first device will detect its position to be at a contact position, wherein the contact position is the position of the first device corresponding to the predetermined distance based on an initial position of the first device. At the contact position the first device will provide a haptic effect. The first device may obtain its initial position from sensors.

In one embodiment, the first device may receive an input signal associated with the initial position of the first device. In response to the initial position, the first device may determine the predetermined distance corresponding to the initial position of the first device based on a lookup table value. The first device is capable of outputting a control signal associated with the contact position to an actuator coupled to the first device, the control signal is configured to cause the actor to output the haptic effect. In one embodiment, the first device may adjust the control signal corresponding to the predetermined distance, thereby changing a haptic strength. An adjusted control signal will produce a different haptic effect from the original control signal.

In another aspect of the present disclosure, a second device may display an object at a virtual position. The virtual position may be a position corresponding to the predetermined distance between the first device and the contact position on a display. The second device may also display the first device as an object.

In another aspect of the present disclosure, a system includes a first wearable device having at least one unit, whereby each unit comprises a sensor, an actuator and a transceiver for transmitting and receiving information. The first wearable device includes a first non-volatile, non-transitory computer program product programmed to obtain an initial position of the first device. After obtaining the initial position, the computer program product of the first wearable device will determine a predetermined distance and detect a contact position. The contact position corresponds to a position of the first wearable device to the predetermined distance. At the contact position the computer program product will provide a control signal to the actuator to produce a haptic effect.

The system further includes a second device having an optical display unit configured to provide a virtual or augmented reality interface and display an object at the contact position. A second non-volatile, non-transitory computer program product of the second wearable device is programmed to receive information from the first wearable device and display visual content on a display. The visual content may be one or more computer generated objects.

In one embodiment of the system, a sensor is configured to detect the initial position of the first wearable device. The first computer program product may be programmed to obtain an initial position based on an input signal.

In another embodiment, the second device may be a head-mounted display. The second computer program product may be programmed to display the first wearable device and display an object at a virtual position corresponding to an input signal. The virtual position is a distance between the first wearable device and the object on a display corresponding to the predetermined distance between the first wearable device and the contact position. In yet another embodiment, the second computer program product may display the first wearable device as an object based on information received from the first wearable device and display a second object at the virtual position corresponding to the object associated with the first device.

In yet another aspect of the present disclosure, a wearable device includes an actuator, non-volatile, non-transitory memory coupled to an actuator and a processor coupled to the actuator and non-transitory, non-volatile memory. The processor is operative to obtain a predetermined distance to the wearable device and monitor a position of the wearable device. The processor will detect the wearable device at a contact position, where the contact position is a position of the wearable device corresponding to the predetermined distance based on the initial position of the wearable device and generate a haptic effect at the contact position.

In one embodiment, the wearable device further includes a sensor from which the processor can obtain information to determine the initial position of the wearable device. The processor may further receive an input signal associated with the initial position of the wearable device. In another embodiment, the processor is operative to determine the predetermined distance corresponding to the wearable device based on a lookup table stored in the memory. The lookup table may have a plurality of initial position entries, wherein each entry corresponds to a distance.

In yet another embodiment, the processor is further operative to output a control signal associated with the contact position to the actuator, the control signal is configured to cause the actuator to produce the haptic effect. The process may adjust the control signal in order to produce different haptic effects.

In another aspect of the present disclosure, the wearable device includes a transceiver that is operatively coupled to the processor. The processor is operative to wirelessly connect with a display device, wherein the display device is operative to display an object at a virtual position. The virtual position may be a position on a display corresponding to the predetermined distance between the wearable device and the contact position. The display device is further operative to display the wearable device as an object on the display.

Turning now to the drawings,FIG. 1is a diagram of a haptic device101with a position module103in accordance with an embodiment. The haptic device101may be any suitable electronic device such as a mobile or wearable device. The haptic device101may also incorporate flexible components that enable the haptic device101to conform to a given contour, such as a glove, bracelet, watch, anklet and the like.

In various embodiments, the haptic device101has a position module103configured to obtain an initial position107of the haptic device101in a two or three dimensional space using a variety of sensors105, such as a gyroscope, accelerometer or the like. In some embodiments, sensor data may be transmitted to the position module from an external device. Once an initial position107of the haptic device101is obtained, the position module103is capable of obtaining a predetermined distance109based on the collected sensor data of the haptic device101at its initial position107. Sensor data will provide the position module103with informational parameters to establish a proper predetermined distance109. Such sensor data may include, but is not limited to, a location, an orientation and a height of the haptic device101relative to a ground level. The collected sensor data of the haptic device's initial position107will be matched to a lookup table entry in a memory of the haptic device101which will have a corresponding distance value.

In some embodiments, movement of the haptic device101before the initial position107is identified is continuously monitored by sensors105. A content module113in the haptic device101will collected the sensor data in order to determine an activity. For instance, the content module113determines that the haptic device101moved in a circle before the initial position107was obtained. The content module113will determine that the circular motion corresponds to an activity and then the position module103will establish an initial position107. The position module103may factor in the determination of the content module113in order to determine an appropriate predetermined distance109and contact position111. In some embodiments, the content module113may have a number of predefined activities corresponding to motions or is capable of recording a motion and assigning it to an activity. Activities can be any suitable activity that generate feedback such as, but not limited to, an athletic activity (e.g. hitting a boxing bag), an input on a device (e.g. touching a touchscreen, button, etc.), and alerts (e.g. movement outside a designated area). For example, the content module113may determine from sensor data that feedback should be given when a person is outside a zone and the position module103establishes a contact position based on an appropriate predetermined distance such that when the haptic device107reaches that contact position (i.e. zone boundaries) feedback will be given to the user.

In another embodiment, the haptic device101may be in communication (wired or wireless) with a second device to obtain or receive at least one predetermined distance109value from the second device based on the initial position107of the haptic device101. The haptic device101may contain several lookup tables in memory with different corresponding predetermined distance109values based on a number of parameters, such as a user input, an activity, etc. A lookup table is one possible format of distance data that is determined or obtained by the position module103of the haptic device101.

Once a predetermined distance109value is identified by the position module103, the haptic device101may communicate the predetermined distance109to a user via an audible sound, visible light or any combination thereof and the like. Likewise, the haptic device101may transmit the information to a second device capable of communicating the predetermined distance109value (e.g. audibly) or displaying, on the second device, a virtual object115at a distance relative to the position of the haptic device101.

In some embodiments, the haptic device101may include more than one initial position107due to its shape or use. For instance, the haptic device101may be a glove that a user wears to interact with the environment. The glove may include sensors105at the palm, at each fingertip, etc. Therefore, if the glove was used to type on a virtual keyboard, each finger will have an initial position107and a corresponding contact position111. The position module103may establish a variety of contact positions for the haptic device101as a whole, or may establish different contact positions for different portions of the haptic device101.

In the illustrative example ofFIG. 1, haptic device101is a “smart glove” at a determined initial position107based on a three dimensional grid and a contact position111has been established by the position module103. In some embodiments, once the position module103has obtained the predetermined distance109from the initial position107of the haptic device101, a user may freely move the haptic device101without any change to the contact position111. For instance, the haptic device101may determine a similar initial position107for two users wearing the haptic device101and thereby a similar contact position111, however, a first user may have a long reach and require a different contact position111as compared to a second user with a shorter reach if the haptic device101is being used to simulate a boxing glove and the predetermined distance109from the haptic device101would be the distance to a simulated boxing bag. Therefore, the second user would need to move the haptic device101, without changing the contact position111, in order to reduce the predetermined distance109and successfully reach the simulated boxing bag. The predetermined distance109from the initial position107of the haptic device101may remain unchanged as the user moves with the haptic device101, unless otherwise instructed.

In various embodiments, the location module103is constantly monitoring sensor data and changing the contact position111based on the predetermined distance109as the position of the haptic device101changes. For example, the haptic device101may be a smart glove, in communication with a device (e.g. tablet computer), and simulate a keyboard input when a contact position is reached by a fingertip of the glove, wherein each keyboard input retains a constant predetermined distance from the haptic device101. In other words, a “virtual keyboard” is represented at a predetermined distance from a portion (e.g. palm) of the haptic device101such that if a user were to move the haptic device101from a vertical position to a horizontal position, the haptic device101would continuously update the positioning of the virtual keyboard and provide a haptic feedback if it were to detect the position of a fingertip of the haptic device101to be that of the contact position of the keyboard input.

In one embodiment, the position module103may establish a perimeter around the initial position107of the haptic device101based on the predetermined distance109value from the lookup table, wherein the perimeter will resemble the contact position111. In other words, the contact position111will be at the predetermined distance109in every direction from the haptic device101. In other words, the contact position111would be the same distance whether the haptic device101were to be moved forwards or backwards, thereby capable of providing a feedback at multiple locations.

In another embodiment, the position module103may obtain a plurality of predetermined distance109values that are available and establish each predetermined distance109value as a contact position111from the initial position107of the haptic device101. In yet another embodiment, the position module103may obtain predetermined distance109values that are accompanied by angles based on the orientation of the haptic device101. For example, the position module103may establish a predetermined distance of 1 foot and a contact position may be established at 90 degrees and another contact position at 45 degrees relative to the initial location of the haptic device101. If the haptic device101were to be positioned at the distance of 1 foot at any other angle, no feedback would be provided. One example of this may include a virtual application window that a user may navigate through using the haptic device101. Each corresponding action of the virtual application window will be a certain angle and distance from the initial position of the haptic device101. Thus, if a user wants to select an application action, such as one regularly done by using a peripheral device (computer mouse), the haptic device101would need to be moved by that predetermined distance and angle (i.e. the established contact position). Accordingly, the haptic device101will provide feedback only if the position module103detects the haptic device101at a contact position111.

As the haptic device101moves, sensors105will monitor the movement and continuously determine the position and orientation of the haptic device101. No feedback will be produced by the haptic device101until the haptic device101, or a designated portion thereof, reaches a contact position111. Therefore, if the haptic device101is not detected to be at the contact position111, no feedback will be given to a user.

FIG. 2is a diagram of the haptic device101with a haptic module117to provide feedback in accordance with various embodiment. In one embodiments, the haptic device101is configured to provide a haptic effect119to at least a portion of the haptic device101, which can be conveyed to a user in contact with the haptic device101. The haptic module117may be used to enhance the user experience when performing a variety of activities or instruct the user of a completed task. The haptic effect119can be created with any of the methods of creating haptics, such as, but not limited to electrostatic, vibration, deformation, kinesthetic sensation, or ultrasonic friction. In an embodiment, the haptic module117send a control signal to an actuator, for example, an electromagnetic actuator such as an Eccentric Rotating Mass (“ERM”) in which an eccentric mass is moved by a motor, a Linear Resonant Actuator (“LRA”) in which a mass attached to a spring is driven back and forth, or a material such as piezoelectric materials, electro-active polymers or shape memory alloys, a macro-composite fiber actuator, an electro-static actuator, an electro-tactile actuator, and/or another type of actuator that provides a physical feedback such as a haptic feedback. The haptic device101may include non-mechanical or non-vibratory devices such as those that use electrostatic friction (ESF), ultrasonic surface friction (USF), or those that induce acoustic radiation pressure with an ultrasonic haptic transducer, or those that use a haptic substrate and a flexible or deformable surface, or those that provide projected haptic output such as an air jet, visual image, and so on.

In various embodiment, multiple haptic output devices may be used to produce different haptic effects by converting electronic signals into feedback that is felt or heard by a user. The strength or duration of the haptic effect119may vary depending on a number of parameters such as the speed of the haptic device101. Speed may be measured by sensors105in the haptic device101or obtained from a second device in communication with the haptic device101. For example, a sensor may monitor the position of the haptic device101and detect the position of the haptic device101to be that of the contact position111, at which point, the haptic module117will dynamically calculate a speed as a ratio of distance over time and output a haptic effect119of corresponding strength. The haptic module may access a lookup table, stored in memory, to obtain a strength matching the determined speed. For example, if the haptic module117were to determine a high speed at a contact position, the strength of the vibration would be greater than that of a haptic device101moving at a lower speed. Varying haptic effects119may be stored in a memory of the haptic device101. This is understood to be just one exemplary illustration of the haptic device101.

FIG. 3shows a system300including a haptic device301that is operative to communicate with a display device303in accordance with various embodiments. The display device303may be any suitable electronic device having a display323. The term “display” as used herein refers to a device that displays an image or images, such as, but not limited to, a virtual object, a computer desktop, a gaming background, a video, an application window etc. For example, the display device303can be a laptop, tablet computer, phone, monitor, head display unit, virtual reality or augmented reality display device and the like, and devices combining some or all of this functionality. The haptic device301is operative to communicate with the display device303using wireless technologies such as, but not limited to, WiFi®, Bluetooth®, Wireless USB, ZigBee, or any other suitable wireless technology that may form the wireless link305between the haptic device301and the display device303to transfer information or commands307and controlling signaling there-between.

In some embodiments, the display device303may be at a fixed location. The haptic device301and the display device303may go through a pairing procedure or a connection procedure depending on the wireless technology employed. The haptic device301and display device303communicate in order to exchange information or commands307such as position, visual content, user inputs etc. The content module113of the haptic device301may be configured to communicate data on the display device303in a visually readable form (i.e. images). The display device303may be able to determine a virtual position311that is a position on the display323that corresponds to the predetermined distance315between the haptic device301and the contact position309. In other words, the images displayed on display323to resemble the above mentioned elements may be relative in distance.

For example, a content module may determine that a user has chosen to do jumping jacks, which require a predetermined distance from an initial position. As such, the haptic device301will send information from the content module to a display device303so that the contact position309may be represented by an object313at a virtual position311corresponding to jumping jacks on a display323. In one embodiment, the haptic device301is capable of receiving information and commands307such as content and location data, over the wireless link305, from the display device303. The display device303is also capable of adjusting the information received from the haptic device301in order to display the data in a user understandable format (e.g. text or images).

In the illustrative example ofFIG. 3, haptic device301will communicate the location and content data to the display device303and the display device303will display, on display323, the object313according to a content module of the haptic device301. For example, the haptic device301may be a “smart glove” and the content module determines that a user321has selected a boxing simulation. The display device303will display the haptic device301as a device object319, herein a boxing glove, and an object313in the form of a boxing bag will be displayed at the corresponding virtual position311on the display device303. As the haptic device301moves, the display device303will receive data from the haptic device301so as to display corresponding motions on the display323. The haptic device301will provide a haptic effect at the contact position309. Display323of the display device303may display a corresponding movement to the haptic effect. In some embodiments, the content module113may provide a corresponding motion for the device object319and object313displayed on the display device303at the virtual position311when the haptic device301provides a haptic effect119.

FIG. 4is a diagram of a haptic device400in accordance with various embodiments. The haptic device400includes at least one processor401, WLAN baseband hardware409, one or more transceivers411, GPS hardware415, input/output devices413, non-volatile, non-transitory memory403, one or more haptic actuators407, and a sensor processor405.

The one or more haptic actuators407may include one or more vibrating plates that may transfer vibrations generated in the haptic actuator407to the haptic device400and vibrate at least a portion of the haptic device400through the direct attachment of the haptic actuator407to the haptic device400. However, the vibrating plate may be optionally used in order to mitigate the impact of the vibrations or to amplify the vibrations. The thickness of the vibrating plate may be changed in consideration of the interaction between the haptic device400and haptic actuator407.

All of the haptic device400components shown are operatively coupled to the processor401by one or more internal communication buses417. In the example embodiment illustrated inFIG. 4, the processor401runs the position module421, haptic effects module419, content module423and a kernel425. In some embodiments, a sensor processor405monitors and stores in memory403sensor data437from various sensors including a gyroscope439and an accelerometer441(which may be separate or integrated in a single package) as well as other sensors443such as, but not limited to, temperature sensors, altitude sensors, motion sensors, position sensors, and other sensors capable of determining the physical position of the haptic device400. For example, the accelerometer441may indicate the general orientation of the haptic device400. By providing data from the accelerometer441to the position module421in addition to data from other sensors443, the position module421may combine the data and determine positional information with the other sensors443. The GPS415may indicate the position of the haptic device400with respect to the latitude and longitude coordinates of the Earth as determined by signals from a plurality of geosynchronous satellites orbiting the earth. The position module421may further incorporate the GPS415information with the other sensor443readings to provide the most accurate positional information. A lookup table may be integrated into the position module421or may be stored in the non-volatile, non-transitory memory403.

The memory403is non-volatile and non-transitory and stores executable code for an operating system427that may, when executed by the processor401, provide an application layer, libraries and a kernel425. The memory403also stores executable code for various applications429, such as haptic effects431, position data433, content data435and sensor data437. The processor401is operative to, among other things, launch and execute the operating system427, applications429, content module423and the haptic effects module419.

The processor401also runs the haptic effects module419which is operatively connected over an interface449to one or more haptic actuators407. Based on the position data433, sensor data437and position module421, the processor401, operatively coupled to the haptic effects module419, is operative to send a controlled signal to the one or more haptic actuators407. The processor401, operatively coupled to the transceiver411, executes the content module423which determines an activity and content the haptic device400will transmit to other devices, such as display device445.

In some embodiments, the haptic device400may include one or more input/output devices413. The input/output devices413may be arranged to provide functionality to the haptic device400including, but not limited to, capturing images, exchanging information, capturing or reproducing multimedia information, receiving user feedback, or any other suitable functionality. Non-limiting examples of input/output devices include a bar code reader, buttons, switches, input/output ports, and a camera. The embodiments are not limited in this respect.

In some embodiments, the haptic device400may include one or more wireless transceivers411. Each of the wireless transceivers411may be implemented as physical wireless adapters or virtual wireless adapters. A single physical wireless adapter may be virtualized using software into multiple virtual wireless adapters. A physical wireless adapter typically connects to a hardware-based access point. A virtual wireless adapter typically connects to a software based wireless access point. For example, a virtual wireless adapter may allow ad hoc communications between peer devices such as a smart phone, smart T.V., laptop or augmented reality headset. Various embodiments may use a single physical wireless adapter implemented as multiple wireless adapters, multiple physical wireless adapters, multiple physical wireless adapters each implemented as multiple virtual wireless adapters or a combination thereof.

The wireless transceivers411may comprise or implement various communication techniques to allow the haptic device400to communicate with a display device445or other electronic devices. For example, the wireless transceivers411may implement various types of standard communication elements designed to be interoperable with a network, such as one or more communications interfaces, network interfaces, network interface cards, radios, wireless transceivers, wireless communication media, physical connectors etc. Examples of communications may include, cables, fiber optics, propagated signals, radio frequency, infrared and other wireless media.

In various embodiments, the haptic device400may implement different types of wireless transceivers411. Each wireless transceiver may implement or utilize a same or different set of communication parameters to communicate information between the display device445or other various devices. Examples of communication parameters may include a communication protocol, a communication standard, a radio-frequency band, a radio, a transceiver, a radio processor, an access point parameter, modulation and coding scheme, media access control layer parameter, physical layer parameter and any other communication parameter affecting operations for the wireless transceivers411.

In various embodiments, the wireless transceivers411may implement different communication parameters offering varying bandwidths, communication speeds or transmission range. In another embodiment, the wireless transceiver411may comprise WLAN baseband hardware409designated to communicate information over a wireless local area network (WLAN). Examples of suitable WLAN systems offering lower range data communications services may include the IEEE 802.xx series of protocols, such as the IEEE 802.11a/b/g/n series of standard protocols and variants (also referred to as “WiFi”). It may be appreciated that other wireless techniques may be implemented, and the embodiments are not limited in this context.

Although not shown, the haptic device400may further include one or more device resources commonly implemented for electrical and wearable devices, such as various computing and communications platform hardware and software components typically implemented by a personal electronic device. Such device resources may be used in the collection of data to be used by the position module421, haptic effect module419or content module423. Some examples of device resources may include, without limiting, a co-processor, graphics processing unit, a chipset platform control hub, display electronics, display backlight, network interfaces, location devices, sensors (eg. proximity, pressure, biometric, thermal, environmental, etc.), portable power supplies, application programs, system programs and the like.

The memory403may be operatively coupled to the processor401via the internal communications buses417as shown, may be integrated with, or distributed between one or more processors, or may be some combination of operatively coupled memory and integrated memory. The memory403may be any suitable non-volatile, non-transitory memory that may be used to load executable instruction or program code to a processor or other device such as those that may benefit from the features of the herein described embodiments. Furthermore, it is to be understood that any of the above described example components in the example haptics device400, without limitation, may be implemented as software (i.e. executable instructions or executable code) or firmware (or a combination of software and firmware) executing on one or more processors, or using ASICs (application-specific-integrated-circuits), DSPs (digital signal processors), hardwired circuitry (logic circuitry), state machines, FPGAs (field programmable gate arrays) or combinations thereof. In embodiments in which one or more of these components is implemented as software, or partially in software/firmware, the executable instructions may be stored in the operatively coupled, non-volatile, non-transitory memory403, and may be accessed by the processor401, or other processors, as needed. The non-volatile, non-transitory memory403may be part of a computer program product, and is loaded into or written on the haptic device400via a removable storage drive, hard drive, or communications interface. The software described herein need not reside on the same or a singular medium in order to perform the inventions described herein.

The flowchart ofFIG. 5shows a method of operation of the haptic device400in accordance with the various embodiment. The method of operation begins and at operation block501, the position module421obtains a predetermined distance from the haptic device400. In some embodiments, the haptic device400may determine the predetermined distance using sensor data437. In operation block503, the position module421monitors the position of the haptic device400and detects the position to be at a contact position. In operation block505, the haptic device400provides a haptic effect. The haptic effect may be a vibration caused by an electrical signal sent to the one or more haptic actuators407operatively coupled to the haptic device400.

FIG. 6, is a flowchart of another method in the haptic device400in accordance with various embodiment. The method of operation begins and in operation block601, the position module421monitors the position of the haptic device400using sensor data from a plurality of sensors. In decision block603, the position module421determines whether an initial position is available. If no initial position is determined, in decision block605, the haptic device400determines whether it has received an input signal associated with an initial position. An input signal may be from an external device sending an initial position or may be sensor data from an external device which the position module421can decode to determine the initial position. If no input signal is received with an initial position, the method reverts back to operation block601and the position module421monitors the sensor data from sensors of the haptic device400. If an initial position is determined or received, in operation block607, the position module421accesses a lookup table, which may be stored in memory403. In operation block609, the position module421obtains a predetermined distance from its initial position. In operation block611, the position module421continues to monitor the position of the haptic device400and may perform calculations to determine a speed of the haptic device. In decision block613, the position module421determines whether the position of the haptic device400is that of a contact position. If not, the position module421continues to monitor the position of the haptic device400. If the position of the haptic device400is that of the contact position, in operation block615, the processor401sends and electric signal to haptic actuator407in order to provides a haptic effect to haptic device400.

FIG. 7, is a flowchart of another method of operation in a haptic device400in accordance with an embodiment. The method of operation begins and in operation block701, the position module421monitors sensor data437. In operation block703, the position module421determines an initial position of the haptic device400. In operation block705, the position module421obtains a predetermined distance. The predetermined distance may be obtained from a lookup table integrated with the position module421or from a lookup table stored in memory403. In operation block707, the position module421establishes a contact position at the predetermined distance from the initial position of the haptic device400. In operation block709, the position module421monitors sensor data to determine the position of the haptic device400. In decision block711, the position module421determines if the haptic device400is at the contact position. If not, the method reverts back to operation block709, the position module421monitors the position of the haptic device400. If at decision block711, the haptic device400is at the contact position, in decision block713, a haptic effects module419will determine if different haptic effects are available. If not, in operation block715, the one or more haptic actuators407provides a haptic effect. If in decision block713, different haptic effects are available, in operation block717, the haptic effects module419will adjust a control signal to be sent to the one or more haptic actuator407. In operation block715, the one or more haptic actuators407will provide a haptic effect.

FIG. 8, is a flowchart of a method of operation in a haptic device400in accordance with an embodiment. The operation begins and operation block801, The sensor processor405monitor the haptic device400. In decision block803, the content module423determines whether the sensor data437is associated with an activity. If not, the operation reverts to operation block801, the sensor processor405monitor the haptic device400. If at decision block803, the content module423determines that the sensor data437is associated with an activity, in operation block805, the position module421obtains at least one predetermined distance for the associated activity from a lookup table. In decision block807, the position module421determines whether an angle is associated with an obtained distance in the lookup table. If no angle is associated with a distance at decision block807, in operation block809, the position module421establishes at least one contact position and proceeds to operation block813. If at decision block807, the position module421determines that the predetermined distance is associated with an angle, in operation block811, the position module421establishes at least one angled contact position and proceeds to operation block813. In operation block813, the position module421continues to monitor the sensor data and determine the position of the haptic device400. In decision block815, the position module421determines whether the haptic device400is at a contact position. If not, the position module421continues to monitor the position of the haptic device400. If at decision block815the position module421detects the position of the haptic device400to be at the contact position, in operation block817, the one or more haptic actuators407will provide a haptic effect.

After a contact position is established in either operation block809or811, in decision block819, the haptic device400determines whether a display device445is available. If not, the method of operation ends. If a display device445is available, in operation block821, the haptic device400establishes a wired or wireless connection with the display device445. In decision block823, the content module423determines whether any content information is available for the determined activity. Content data may include images or text that the display device445may display in a user understandable arrangement. In no content information is available, the operation ends. If the content module423determines that content information is available, in operation block825, the haptic device400will transmit the information to the display device445.

While various embodiments have been illustrated and described, it is to be understood that the invention is not so limited. Numerous modifications, changes, variations, substitutions, and equivalents will occur to those skilled in the art without departing from the scope of the present invention as defined by the appended claims.