The present disclosure relates to U.S. patent application Ser. No. 15/722,128 filed Oct. 2, 2017; U.S. patent application Ser. No. 16/267,079 filed Feb. 4, 2019; and U.S. patent application Ser. No. 16/422,543 filed May 24, 2019, all of which are incorporated by reference herein in their entireties.
Embodiments described herein relate to methods and apparatuses for the control of haptic output signals based on a changing input signal received from a force sensor system.
Linear resonant actuators (LRAs) and other vibrational actuators (e.g., rotational actuators, vibrating motors, etc.) are increasingly being used in mobile devices (e.g., mobile phones, personal digital assistants, video game controllers, etc.) or other systems to generate vibrational feedback for user interaction with such devices. Typically, a force/pressure sensor detects user interaction with the device (e.g., a finger press on a virtual button of the device) and in response thereto, the linear resonant actuator vibrates to provide feedback to the user. For example, a linear resonant actuator may vibrate in response to force to mimic to the user the feel of a mechanical button click.
One disadvantage of existing haptic systems is that existing approaches to processing of signals of a force sensor and generating of a haptic response thereto often have longer than desired latency, such that the haptic response may be significantly delayed from the user's interaction with the force sensor. Thus, in applications in which a haptic system is used for mechanical button replacement, capacitive sensor feedback, or other application, and the haptic response may not effectively mimic the feel of a mechanical button click. Accordingly, systems and methods that minimize latency between a user's interaction with a force sensor and a haptic response to the interaction are desired.
In addition, to create appropriate and pleasant haptic feelings for a user, a signal driving a linear resonant actuator may need to be carefully designed and generated. In mechanical button replacement application, a desirable haptic response may be one in which the vibrational impulse generated by the linear resonant actuator should be strong enough to give a user prominent notification as a response to his/her finger pressing and/or releasing, and the vibrational impulse should be short, fast, and clean from resonance tails to provide a user a “sharp” and “crisp” feeling. Optionally, different control algorithms and stimulus may be applied to a linear resonant actuator, to alter the performance to provide alternate tactile feedback—possibly denoting certain user modes in the device—giving more “soft” and “resonant” tactile responses.
According to some embodiments there is provided a controller for providing a haptic output signal to a haptic actuator. The controller comprises an input configured to receive a force sensor signal from at least one force sensor; and a haptic output module configured to generate a haptic output signal for output to a haptic actuator; wherein the haptic output module is configured to: responsive to determining that the force sensor signal indicates that a force level applied to the at least one force sensor exceeds a first threshold, trigger output of the haptic output signal; and during output of the haptic output signal, adjust the haptic output signal based on the force sensor signal.
According to some embodiments there is provided a method for providing a haptic output signal to a haptic actuator. The method comprises receiving a force sensor signal from at least one force sensor, responsive to determining that the force sensor signal indicates that a force level applied to the at least one force sensor exceeds a first threshold, triggering output of a haptic output signal; and during output of the haptic output signal, adjusting the haptic output signal based on the force sensor signal.
According to some embodiments there is provided an integrated circuit. The integrated circuit comprises a controller for providing a haptic output signal to a haptic transducer, the controller comprising: an input configured to receive a force sensor signal from at least one force sensor, a haptic output module configured to generate a haptic output signal for output to a haptic actuator; wherein the haptic output module is configured to: responsive to determining that the force sensor signal indicates that a force level applied to the at least one force sensor exceeds a first threshold, trigger output of the haptic output signal; and during output of the haptic output signal, adjust the haptic output signal based on the force sensor signal.
According to some embodiments there is provided a device. The device comprises at least one force sensor, a haptic transducer; and a controller for providing a haptic output signal to a haptic transducer the controller comprising: an input configured to receive a force sensor signal from the at least one force sensor, a haptic output module configured to generate a haptic output signal for output to the haptic transducer; wherein the haptic output module is configured to: responsive to determining that the force sensor signal indicates that a force level applied to the at least one force sensor exceeds a first threshold, trigger output of the haptic output signal; and during output of the haptic output signal, adjust the haptic output signal based on the force sensor signal.
For a better understanding of the embodiments of the present disclosure, and to show how it may be put into effect, reference will now be made, by way of example only, to the accompanying drawings, in which:
The description below sets forth example embodiments according to this disclosure. Further example embodiments and implementations will be apparent to those having ordinary skill in the art. Further, those having ordinary skill in the art will recognize that various equivalent techniques may be applied in lieu of, or in conjunction with, the embodiments discussed below, and all such equivalents should be deemed as being encompassed by the present disclosure.
The methods described herein can be implemented in a wide range of devices and systems, for example a mobile telephone, an audio player, a video player, a mobile computing platform, a games device, a remote controller device, a toy, a machine, or a home automation controller or a domestic appliance. However, for ease of explanation of one embodiment, an illustrative example will be described in
Enclosure 101 may comprise any suitable housing, casing, or other enclosure for housing the various components of mobile device 102. Enclosure 101 may be constructed from plastic, metal, and/or any other suitable materials. In addition, enclosure 101 may be adapted (e.g., sized and shaped) such that mobile device 102 is readily transported on a person of a user of mobile device 102. Accordingly, mobile device 102 may include but is not limited to a smart phone, a tablet computing device, a handheld computing device, a personal digital assistant, a notebook computer, a video game controller, or any other device that may be readily transported on a person of a user of mobile device 102. While
Controller 103 may be housed within enclosure 101 and may include any system, device, or apparatus configured to interpret and/or execute program instructions and/or process data, and may include, without limitation a microprocessor, microcontroller, digital signal processor (DSP), application specific integrated circuit (ASIC), or any other digital or analog circuitry configured to interpret and/or execute program instructions and/or process data. In some embodiments, controller 103 interprets and/or executes program instructions and/or processes data stored in memory 104 and/or other computer-readable media accessible to controller 103.
Memory 104 may be housed within enclosure 101, may be communicatively coupled to controller 103, and may include any system, device, or apparatus configured to retain program instructions and/or data for a period of time (e.g., computer-readable media). Memory 104 may include random access memory (RAM), electrically erasable programmable read-only memory (EEPROM), a Personal Computer Memory Card International Association (PCMCIA) card, flash memory, magnetic storage, opto-magnetic storage, or any suitable selection and/or array of volatile or non-volatile memory that retains data after power to mobile device 102 is turned off.
Microphone 106 may be housed at least partially within enclosure 101, may be communicatively coupled to controller 103, and may comprise any system, device, or apparatus configured to convert sound incident at microphone 106 to an electrical signal that may be processed by controller 103, wherein such sound is converted to an electrical signal using a diaphragm or membrane having an electrical capacitance that varies as based on sonic vibrations received at the diaphragm or membrane. Microphone 106 may include an electrostatic microphone, a condenser microphone, an electret microphone, a microelectromechanical systems (MEMs) microphone, or any other suitable capacitive microphone.
Radio transmitter/receiver 108 may be housed within enclosure 101, may be communicatively coupled to controller 103, and may include any system, device, or apparatus configured to, with the aid of an antenna, generate and transmit radio-frequency signals as well as receive radio-frequency signals and convert the information carried by such received signals into a form usable by controller 103. Radio transmitter/receiver 108 may be configured to transmit and/or receive various types of radio-frequency signals, including without limitation, cellular communications (e.g., 2G, 3G, 4G, 5G, LTE, etc.), short-range wireless communications (e.g., BLUETOOTH), commercial radio signals, television signals, satellite radio signals (e.g., GPS), Wireless Fidelity, etc.
A speaker 110 may be housed at least partially within enclosure 101 or may be external to enclosure 101, may be communicatively coupled to controller 103, and may comprise any system, device, or apparatus configured to produce sound in response to electrical audio signal input. In some embodiments, a speaker may comprise a dynamic loudspeaker, which employs a lightweight diaphragm mechanically coupled to a rigid frame via a flexible suspension that constrains a voice coil to move axially through a cylindrical magnetic gap. When an electrical signal is applied to the voice coil, a magnetic field is created by the electric current in the voice coil, making it a variable electromagnet. The coil and the driver's magnetic system interact, generating a mechanical force that causes the coil (and thus, the attached cone) to move back and forth, thereby reproducing sound under the control of the applied electrical signal coming from the amplifier.
The force sensor system 105 may be housed within, be located on or form part of the enclosure 101 and may be communicatively coupled to the controller 103. In this example, the force sensor system 105 comprises one or more force sensors, and each force sensor of the force sensor system 105 may include any suitable system, device, or apparatus for sensing a force, a pressure, or a touch (e.g., an interaction with a human finger) and for generating an electrical or electronic signal in response to such force, pressure, or touch. In some embodiments, such electrical or electronic signal may be a function of a magnitude of the force, pressure, or touch applied to the force sensor. In these and other embodiments, such electronic or electrical signal may comprise a general-purpose input/output signal (GPIO) associated with an input signal to which haptic feedback is given.
Example force sensors may include or comprise:
In some arrangements, other types of sensor may be employed. For purposes of clarity and exposition in this disclosure, the term “force” as used herein may refer not only to force, but to physical quantities indicative of force or analogous to force, such as, but not limited to, pressure and touch.
In this example, haptic actuator 107 comprises a Linear resonant actuator 107 which may be housed within enclosure 101, and may include any suitable system, device, or apparatus for producing an oscillating mechanical force across a single axis. It will be appreciated that in some examples there may be more than one haptic actuator which may be controlled together as a haptic output system. For example, in some embodiments, linear resonant actuator 107 may rely on an alternating current voltage to drive a voice coil pressed against a moving mass connected to a spring. When the voice coil is driven at the resonant frequency of the spring, linear resonant actuator 107 may vibrate with a perceptible force. Thus, linear resonant actuator 107 may be useful in haptic applications within a specific frequency range. While, for the purposes of clarity and exposition, this disclosure is described in relation to the use of linear resonant actuator 107, it is understood that any other type or types of vibrational actuators (e.g., eccentric rotating mass actuators) may be used in lieu of or in addition to linear resonant actuator 107. In addition, it is also understood that actuators arranged to produce in oscillating mechanical force across multiple axes may be used in lieu of or in addition to linear resonant actuator 107. As described elsewhere in this disclosure, a linear resonant actuator 107, based on a signal received from integrated haptic system 112, may render haptic feedback to a user of mobile device 102 for at least one of mechanical button replacement and capacitive sensor feedback.
Integrated haptic system 112 may be housed within enclosure 101, may be communicatively coupled to force sensor system 105 and haptic actuator 107, and may include any system, device, or apparatus configured to receive a signal from force sensor system 105 indicative of a force applied to mobile device 102 (e.g., a force applied by a human finger to a virtual button of mobile device 102) and generate an electronic signal for driving linear resonant actuator 107 in response to the force applied to mobile device 102.
Although specific example components are depicted above as being integral to mobile device 102 (e.g., controller 103, memory 104, force sensor system 105, microphone 106, radio transmitter/receiver 108, speakers(s) 110), a mobile device 102 in accordance with this disclosure may comprise one or more components not specifically enumerated above. For example, although
DSP 202 may include any system, device, or apparatus configured to interpret and/or execute program instructions and/or process data. In some embodiments, DSP 202 may interpret and/or execute program instructions and/or process data stored in memory 204 and/or other computer-readable media accessible to DSP 202. The DSP 202 operates as a controller for the integrated haptic system 112A.
Memory 204 may be communicatively coupled to DSP 202, and may include any system, device, or apparatus configured to retain program instructions and/or data for a period of time (e.g., computer-readable media). Memory 204 may include random access memory (RAM), electrically erasable programmable read-only memory (EEPROM), a Personal Computer Memory Card International Association (PCMCIA) card, flash memory, magnetic storage, opto-magnetic storage, or any suitable selection and/or array of volatile or non-volatile memory that retains data after power to mobile device 102 is turned off.
Amplifier 206 may be electrically coupled to DSP 202 and may comprise any suitable electronic system, device, or apparatus configured to increase the power of an input signal VIN (e.g., a time-varying voltage or current) to generate an output signal VOUT. For example, amplifier 206 may use electric power from a power supply (not explicitly shown) to increase the amplitude of a signal. Amplifier 206 may include any suitable amplifier class, including without limitation, a Class-D amplifier.
In operation, memory 204 may store one or more haptic playback representations. A haptic playback representation may comprise a waveform. In some examples, a haptic playback representation may comprise one or more parameters, for example, frequency amplitude and duration, allowing for the determination of a haptic waveform based on the parameters. In some embodiments, each of the one or more haptic playback representations may define a haptic response a(t) as a desired acceleration of a linear resonant actuator (e.g., linear resonant actuator 107) as a function of time.
The controller or DSP 202 is configured to receive a force signal VSENSE from force sensor system 105 indicative of force applied to at least one force sensor of the force sensor system 105. Either in response to receipt of force signal VSENSE indicating a sensed force or independently of such receipt, DSP 202 may retrieve a haptic playback representation from memory 104 and may process the haptic playback representation to determine a processed haptic playback signal VIN. In embodiments in which amplifier 206 is a Class D amplifier, processed haptic playback signal VIN may comprise a pulse-width modulated signal. In response to receipt of force signal VSENSE indicating a sensed force, DSP 202 may cause processed haptic playback signal VIN to be output to amplifier 206, and amplifier 206 may amplify processed haptic playback signal VIN to generate a haptic output signal VOUT for driving linear resonant actuator 107.
In some embodiments, integrated haptic system 112A may be formed on a single integrated circuit, thus enabling lower latency than existing approaches to haptic feedback control. By providing integrated haptic system 112A as part of a single monolithic integrated circuit, latencies between various interfaces and system components of integrated haptic system 112A may be reduced or eliminated.
The controller 300 comprises an input 301 configured to receive a force sensor signal VSENSE from at least one force sensor. For example, the controller 300 may be configured to receive the force sensor signal VSENSE from the force sensor system 105 of
The controller 300 may also comprise a haptic output module 302 configured to generate a haptic output signal VIN for output to a haptic actuator. For example, the controller 300 may be configured to generate the haptic output signal VIN as described with reference to
The haptic output module 302 may be configured to, responsive to determining that the force sensor signal VSENSE indicates that a force level applied to the at least one force sensor exceeds a first threshold, trigger output of the haptic output signal. For example, the amplitude of the force sensor signal VSENSE may be representative of a level of force that a user is applying to the at least one sensor signal. In these examples, the haptic output module 302 may be configured to monitor the received force sensor signal VSENSE and compare the amplitude of the force sensor signal VSENSE to a threshold, wherein the threshold is indicative of a user touch event, for example a level of force considered to represent a button press. Once the force sensor signal VSENSE exceeds the threshold, the controller 300 may determine that the user touch event has occurred, and may therefore commence the process to trigger output of the haptic output signal VIN, for example to the amplifier 206, in order to generate a haptic feedback effect to be output by the haptic actuator 107. The haptic feedback effect may be designed to notify the user that they have caused the user touch event to occur.
For example, the haptic output module may be configured to retrieve stored haptic signal representations from a memory (for example, memory 204 as illustrated in
In some examples therefore, the haptic output module 302 may be configured to trigger output of the haptic output signal VIN by, responsive to determining that the force sensor signal indicates that a force level applied to the at least one force sensor exceeds a first threshold, select a first stored haptic signal representation from a plurality of stored haptic signal representations based on the first threshold; and generate the haptic output signal based on the first stored haptic signal representation.
In other words, the first threshold may be representative of a first level of force being applied to the at least one force sensor. This first level of force may for example be associated with a “light push” user event. The first stored haptic signal representation may therefore be selected as a haptic signal representation which may be used to generate a haptic effect associated with a “light push” user event.
It will be appreciated that in some circumstances the amplitude of the received force sensor signal VSENSE may not be directly proportional to the level of force applied by the user. In these circumstances the force sensor signal VSENSE may be processed before being compared to the threshold, or the threshold may be designed such that it is reflective of the force sensor signal representative of the force level that defines the user touch event.
The haptic output module 302 may also be configured to, during output of the haptic output signal, adjust the haptic output signal based on the force sensor signal. For example, during the process of generating the haptic output signal VIN, and as the haptic playback signal VOUT is being output by the amplifier 206, the controller 300 may be configured to continually monitor the received force sensor signal VSENSE received from the force sensor system 105. The controller 300 may be configured to dynamically adjust the haptic output signal VIN based on the continually-monitored received force sensor signal VSENSE. For example, the controller 300 may be configured to change the haptic output signal VIN responsive to changes in the received force signal VSENSE.
For example, the haptic output module 302 may be configured to adjust one or more of an amplitude, acceleration or duration of the haptic output signal based on the force sensor signal.
For example, the haptic output module may be configured to adjust the haptic output signal by selecting a second stored haptic signal representation, and adjusting the haptic output signal such that the haptic output signal is generated based on the second stored haptic signal representation. The second stored haptic signal representation may therefore produce a haptic output signal that has a different amplitude, acceleration and/or duration than the haptic output signal produced by the first stored haptic signal representation.
In general, the haptic output module 302 may be configured to adjust one or more of the amplitude, acceleration, or duration of the haptic output signal VIN based on the received force sensor signal VSENSE, during driving of the haptic actuator 107 by the amplifier 206. For example, the haptic output module 202 may be configured to select a different haptic signal representation from the memory 104, based on changes in the received force signal VSENSE.
For example, responsive to a change in an amplitude, rate of change and/or duration of the force sensor signal, the haptic output module 302 may be configured to adjust the haptic output signal VIN. In some examples, the haptic output signal may be selected based on a current application or use context of the device. In other words, if the device comprises a smart phone, the haptic output signal may be different depending on whether the smart phone is in a gaming mode or being used to make a phone call. For example, more haptic feedback may be desirable in a gaming mode compared to when the device is being used to make a phone call. In some examples therefore, where the controller forms part of a device, and the controller may be configured to receive an indication of an application running on the device, and the haptic output module may be configured to adjust the haptic output signal based on the indication.
In some examples, the haptic output signal may be dynamically adjusted based on a combination of the factors listed above.
In some examples a plurality of threshold values may be compared to the force sensor signal (for example, the amplitude duration or rate of change of the force sensor signal) in order to determine when to adjust the haptic output signal. For example, the haptic output module may be configured to compare the force level that the force sensor signal indicates is being applied to the at least one force sensor to a plurality of threshold values, and may adjust the haptic output signal based on the comparison.
In this example, the haptic output module 302 is configured to compare the signal level of the force sensor signal VSENSE against a plurality of threshold values.
In step 401, the haptic output module receives the force sensor signal VSENSE from the at least one force sensor.
In step 402, the haptic output module compares the amplitude of the force sensor signal to a first threshold, TLO. It will be appreciated that a force sensor signal having an amplitude over the first threshold, TLO, may be indicative of a force level being applied to the at least one force sensor that is above a threshold force level, for example, a threshold force level considered to be representative of user activation of the at least one force sensor.
If in step 402 the haptic output module 302 determines that the amplitude of the force sensor signal does not exceed the first threshold TLO, then the method returns to step 402 and the force sensor signal VSENSE is continually monitored and compared against the first threshold TLO. In other words, as the amplitude of the force sensor signal VSENSE has not exceed the first threshold value TLO the haptic output module is configured to judge that no user touch event has occurred (i.e. no push or press of a virtual button has occurred).
If in step 402 the haptic output module 302 determines that the amplitude of the force sensor signal exceeds the first threshold TLO, then the method passes to step 403. In step 403 the haptic output module 302 may trigger output of the haptic output signal VIN. For example, as described above, the haptic output module 302 may retrieve a stored haptic signal representation from a memory and may generate the haptic output signal Vin based on the first haptic signal representation. Which haptic signal representation is selected as the first haptic signal representation may be based on a number of factors. For example, the selection of the first haptic signal representation may be based on the rate of change of the force sensor signal VSENSE. In other words, the haptic output signal may be different depending on whether the user presses the at least one force sensor quickly or slowly.
The method may then comprise adjusting, during output of the haptic output signal, the haptic output signal based on the force sensor signal. In this example, the adjusting of the haptic output signal during output of the haptic output signal may comprise steps 404 to 411 of the method illustrated in
After triggering the output of the haptic output signal VIN in step 403, the method passes to step 404 in which the haptic output module 302 continues to monitor the force sensor signal VSENSE. In this example, the haptic output module 302 continues to monitor the force sensor signal VSENSE by comparing the force sensor signal to a second threshold, THI. The second threshold THI may be higher than the first threshold TLO.
If in step 404, the haptic output module 302 determines that the amplitude of the force sensor signal VSENSE is greater than the second threshold, THI the method passes to step 405 in which the haptic output module adjusts the haptic output signal based on the amplitude of the force sensor signal now being greater than THI. For example, the haptic output module may be configured to adjust the haptic output signal responsive to the force sensor signal indicating that the force level applied to the at least one force sensor exceeds the first threshold and exceeds a second threshold higher than the first threshold.
For example, the haptic output module may judge that a user touch event of increased force has occurred (i.e. a strong push) as the amplitude of VSENSE is now greater than THI, and as a result the haptic output module may be configured to dynamically adjust the haptic output signal VIN to increase the amplitude or magnitude of the haptic vibrational output VOUT to be generated by the amplifier 206. As previously, the adjustment may be performed by selecting a new haptic signal representation from memory.
If in step 404, the haptic output module 302 determines that the amplitude of the force sensor signal VSENSE is not greater than the second threshold, THI the method passes to step 406 in which the haptic output module 302 checks that the amplitude of the force sensor signal is still greater than the first threshold TLO. If the amplitude of the force sensor signal has dropped below TLO, the method may pass to step 407 in which the haptic output module may be configured to deactivate the haptic output signal. For example, as the amplitude of the force sensor signal has dropped back below the TLO threshold, the haptic output module may be configured to determine that the force being applied to the at least one force sensor is no longer high enough to be considered a user touch event, and therefore the haptic output signal may be turned off. The method may then return to step 402.
In some examples, to avoid ping-ponging between the haptic output signal being on and off, the threshold used in step 406 may be slightly lower than the threshold used in step 402. In other words, some hysteresis may be used.
If in step 406, the haptic output module 302 determines that the amplitude of the force sensor signal VSENSE is still greater than the first threshold TLO, the method may pass to step 408 in which the haptic output module may adjust the haptic output signal. For example, step 408 may comprise adjusting the haptic output signal based on, for example, how long the amplitude of the force sensor signal has remained above the first threshold TLO (e.g. whether the user event a short press or a hold of the virtual button). For example, the haptic output module may be configured to adjust the haptic output signal to provide different feedback to the user based on whether the user event is categorized as a quick press of the virtual button or a press and hold of the virtual button. The method may then return to step 404 in which the haptic output module continues to monitor whether the amplitude force sensor signal VSENSE is greater than the second threshold THI. In some examples, the haptic output module may be configured to adjust the haptic output signal based on a length of time between the force sensor signal indicating that the force level exceeds the first threshold and the force sensor signal indicating that the force level exceeds the second threshold.
After step 405, the method may pass to step 409 in which the haptic output module continues to monitor whether the amplitude of the force sensor signal VSENSE remains above the second threshold THI. If the force sensor signal VSENSE is still greater than the second threshold THI, the haptic output module may adjust the haptic output signal in step 410. For example, step 410 may, similarly, to step 408, comprise adjusting the haptic output signal based on, for example, how long the amplitude of the force sensor signal has remained above the second threshold THI.
If in step 409, the force sensor signal drops below the second threshold THI, the haptic output module may be configured to adjust, in step 411, the haptic output signal based on the force being applied to the force sensor signal no longer being high enough to be considered a user touch event of increased force has occurred (i.e. a strong push). The method may then return to step 406 in which the haptic output module monitors whether the force sensor signal is greater than the first threshold TLO.
Similarly to as in step 406, in order to avoid ping-ponging between the adjustment of step 405 and the adjustment of step 411, the second threshold THI used in step 409 may be slightly lower than the second threshold THI used in step 404.
It will be appreciated that
In a further aspect, it will be understood that the thresholds used for dynamic adjustment of the haptic output signal may be different based on whether the force sensor signal is determined to represent a button press or a button release, as the system may generate different haptic feedback for button press or a button release. Additionally or alternatively, the haptic output signal or amplitude of the haptic output signal may be adjusted differently depending on whether the force sensor signal is representative of a button press or a button release. For example, the haptic output module may be configured to: determine a user action based on the force sensor signal, and adjust the haptic output signal based on the user action. The user action may comprise one or more of: a button press, a button release and a button hold.
It will be understood that the above-described methods may be implemented in a dedicated control module, for example a processing module or DSP as shown in the above figures. The control module may be provided as an integral part of the sensor system or may be provided as part of a centralized controller such as a central processing unit (CPU) or applications processor (AP). It will be understood that the control module may be provided with a suitable memory storage module for storing measured and calculated data for use in the described processes.
The skilled person will recognise that some aspects of the above-described apparatus and methods may be embodied as processor control code, for example on a non-volatile carrier medium such as a disk, CD- or DVD-ROM, programmed memory such as read only memory (Firmware), or on a data carrier such as an optical or electrical signal carrier. For many applications embodiments of the invention will be implemented on a DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array). Thus the code may comprise conventional program code or microcode or, for example code for setting up or controlling an ASIC or FPGA. The code may also comprise code for dynamically configuring re-configurable apparatus such as re-programmable logic gate arrays. Similarly the code may comprise code for a hardware description language such as Verilog™ or VHDL (Very high speed integrated circuit Hardware Description Language). As the skilled person will appreciate, the code may be distributed between a plurality of coupled components in communication with one another. Where appropriate, the embodiments may also be implemented using code running on a field-(re)programmable analogue array or similar device in order to configure analogue hardware.
Note that as used herein the term “module” or the term “block” shall be used to refer to a functional unit or block which may be implemented at least partly by dedicated hardware components such as custom defined circuitry and/or at least partly be implemented by one or more software processors or appropriate code running on a suitable general purpose processor or the like. A module may itself comprise other modules or functional units. A module may be provided by multiple components or sub-modules which need not be co-located and could be provided on different integrated circuits and/or running on different processors.
Embodiments may be implemented in a host device, especially a portable and/or battery powered host device such as a mobile computing device for example a laptop or tablet computer, a games console, a remote control device, a home automation controller or a domestic appliance including a domestic temperature or lighting control system, a toy, a machine such as a robot, an audio player, a video player, or a mobile telephone for example a smartphone. There is further provided a host device incorporating the above-described system.
It should be understood—especially by those having ordinary skill in the art with the benefit of this disclosure—that the various operations described herein, particularly in connection with the figures, may be implemented by other circuitry or other hardware components. The order in which each operation of a given method is performed may be changed, and various elements of the systems illustrated herein may be added, reordered, combined, omitted, modified, etc. It is intended that this disclosure embrace all such modifications and changes and, accordingly, the above description should be regarded in an illustrative rather than a restrictive sense.
Similarly, although this disclosure makes reference to specific embodiments, certain modifications and changes can be made to those embodiments without departing from the scope and coverage of this disclosure. Moreover, any benefits, advantages, or solutions to problems that are described herein with regard to specific embodiments are not intended to be construed as a critical, required, or essential feature or element.
Further embodiments likewise, with the benefit of this disclosure, will be apparent to those having ordinary skill in the art, and such embodiments should be deemed as being encompassed herein.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. The word “comprising” does not exclude the presence of elements or steps other than those listed in a claim, “a” or “an” does not exclude a plurality, and a single feature or other unit may fulfil the functions of several units recited in the claims. Any reference numerals or labels in the claims shall not be construed so as to limit their scope.
Aspects of the system may be defined by the following numbered statements:
1. A control method for a combined force sensor and haptic system, the method comprising the steps of:
2. A combined force sensor and haptic system comprising:
3. Preferably, the system comprises memory storage, wherein the controller retrieves haptic output waveforms from a memory storage to provide the haptic drive signal, wherein the haptic drive signal based on the retrieved haptic output waveforms is adjusted based on the continually-monitored force sense input.
4. In one aspect, the controller is configured to select a first haptic output waveform from a plurality of stored haptic output waveforms if the force sense input exceeds a trigger threshold, wherein the controller is configured to select a different haptic output waveform from the plurality of stored haptic output waveforms based on changes in the continually-monitored force sense input.
5. Additionally or alternatively, the haptic module is arranged to dynamically generate haptic waveforms to provide the haptic drive signal, wherein the haptic drive signal is adjusted based on the continually-monitored force sense input.
6. Preferably, the controller is configured to adjust at least one of the amplitude, acceleration, and/or duration of the haptic drive signal, based on the continually-monitored force sense input.
7. Preferably, the controller is configured to adjust the haptic drive signal based on at least one of the amplitude, acceleration, and/or duration of the continually-monitored force sense input.
8. Preferably, the controller is configured to compare the continually-monitored force sense input against a plurality of defined thresholds, wherein the controller is configured to adjust the haptic drive signal based on the comparison.
9. In one aspect, the controller is arranged to receive data relating to the use case or context of operation of the system, wherein the controller is configured to adjust the haptic drive signal based at least in part on the received data.
10. In a further aspect, the controller is arranged to determine if the force sense input is indicative of user action signifying a button press or a button release, and wherein the controller is configured to adjust the haptic drive signal based at least in part on the determined user action.
11. There is also provided a host device comprising a force sensor/haptic system as described above, and at least one force sensor coupled with the force sensor/haptic system.
12. Preferably, the at least one force sensor comprises one or more of the following:
Number | Name | Date | Kind |
---|---|---|---|
3686927 | Scharton | Aug 1972 | A |
4902136 | Mueller et al. | Feb 1990 | A |
5684722 | Thorner et al. | Nov 1997 | A |
5748578 | Schell | May 1998 | A |
5857986 | Moriyasu | Jan 1999 | A |
6050393 | Murai et al. | Apr 2000 | A |
6278790 | Davis et al. | Aug 2001 | B1 |
6332029 | Azima et al. | Dec 2001 | B1 |
6388520 | Wada et al. | May 2002 | B2 |
6580796 | Kuroki | Jun 2003 | B1 |
6683437 | Tierling | Jan 2004 | B2 |
6703550 | Chu | Mar 2004 | B2 |
6762745 | Braun et al. | Jul 2004 | B1 |
6906697 | Rosenberg | Jun 2005 | B2 |
6995747 | Casebolt et al. | Feb 2006 | B2 |
7154470 | Tierling | Dec 2006 | B2 |
7623114 | Rank | Nov 2009 | B2 |
7639232 | Grant et al. | Dec 2009 | B2 |
7791588 | Tierling et al. | Sep 2010 | B2 |
7979146 | Ulrich et al. | Jul 2011 | B2 |
8068025 | Devenyi et al. | Nov 2011 | B2 |
8098234 | Lacroix et al. | Jan 2012 | B2 |
8102364 | Tierling | Jan 2012 | B2 |
8325144 | Tierling et al. | Dec 2012 | B1 |
8427286 | Grant et al. | Apr 2013 | B2 |
8441444 | Moore et al. | May 2013 | B2 |
8466778 | Hwang et al. | Jun 2013 | B2 |
8480240 | Kashiyama | Jul 2013 | B2 |
8572293 | Cruz-Hernandez et al. | Oct 2013 | B2 |
8572296 | Shasha et al. | Oct 2013 | B2 |
8593269 | Grant et al. | Nov 2013 | B2 |
8648829 | Shahoian et al. | Feb 2014 | B2 |
8659208 | Rose et al. | Feb 2014 | B1 |
8754757 | Ullrich et al. | Jun 2014 | B1 |
8947216 | Da Costa et al. | Feb 2015 | B2 |
8981915 | Bimbaum et al. | Mar 2015 | B2 |
8994518 | Gregorio et al. | Mar 2015 | B2 |
9030428 | Fleming | May 2015 | B2 |
9063570 | Weddle et al. | Jun 2015 | B2 |
9083821 | Hughes | Jul 2015 | B2 |
9092059 | Bhatia | Jul 2015 | B2 |
9117347 | Matthews | Aug 2015 | B2 |
9128523 | Buuck et al. | Sep 2015 | B2 |
9164587 | Da Costa et al. | Oct 2015 | B2 |
9196135 | Shah et al. | Nov 2015 | B2 |
9248840 | Truong | Feb 2016 | B2 |
9326066 | Klippel | Apr 2016 | B2 |
9329721 | Buuck et al. | May 2016 | B1 |
9354704 | Lacroix et al. | May 2016 | B2 |
9368005 | Cruz-Hernandez et al. | Jun 2016 | B2 |
9489047 | Jiang et al. | Nov 2016 | B2 |
9507423 | Gandhi et al. | Nov 2016 | B2 |
9513709 | Gregorio et al. | Dec 2016 | B2 |
9520036 | Buuck | Dec 2016 | B1 |
9588586 | Rihn | Mar 2017 | B2 |
9640047 | Choi et al. | May 2017 | B2 |
9652041 | Jiang et al. | May 2017 | B2 |
9697450 | Lee | Jul 2017 | B1 |
9715300 | Sinclair | Jul 2017 | B2 |
9740381 | Chaudhri et al. | Aug 2017 | B1 |
9842476 | Rihn et al. | Dec 2017 | B2 |
9864567 | Seo | Jan 2018 | B2 |
9881467 | Levesque | Jan 2018 | B2 |
9886829 | Levesque | Feb 2018 | B2 |
9946348 | Saboune et al. | Apr 2018 | B2 |
9947186 | Macours | Apr 2018 | B2 |
9959744 | Koskan et al. | May 2018 | B2 |
9965092 | Smith | May 2018 | B2 |
10032550 | Zhang et al. | Jul 2018 | B1 |
10055950 | Bhatia et al. | Aug 2018 | B2 |
10074246 | Da Costa et al. | Sep 2018 | B2 |
10110152 | Hajati | Oct 2018 | B1 |
10171008 | Nishitani et al. | Jan 2019 | B2 |
10175763 | Shah | Jan 2019 | B2 |
10264348 | Harris et al. | Apr 2019 | B1 |
10275087 | Smith | Apr 2019 | B1 |
10447217 | Zhao et al. | Oct 2019 | B2 |
10564727 | Billington et al. | Feb 2020 | B2 |
10620704 | Rand et al. | Apr 2020 | B2 |
10732714 | Rao et al. | Aug 2020 | B2 |
10782785 | Hu et al. | Sep 2020 | B2 |
10795443 | Hu et al. | Oct 2020 | B2 |
10820100 | Stahl et al. | Oct 2020 | B2 |
10828672 | Stahl et al. | Nov 2020 | B2 |
10848886 | Rand | Nov 2020 | B2 |
10860202 | Sepehr et al. | Dec 2020 | B2 |
10969871 | Rand et al. | Apr 2021 | B2 |
20010043714 | Asada et al. | Nov 2001 | A1 |
20020018578 | Burton | Feb 2002 | A1 |
20030068053 | Chu | Apr 2003 | A1 |
20030214485 | Roberts | Nov 2003 | A1 |
20050031140 | Browning | Feb 2005 | A1 |
20050134562 | Grant et al. | Jun 2005 | A1 |
20060028095 | Maruyama et al. | Feb 2006 | A1 |
20060197753 | Hotelling | Sep 2006 | A1 |
20060284856 | Soss | Dec 2006 | A1 |
20080077367 | Odajima | Mar 2008 | A1 |
20080226109 | Yamakata et al. | Sep 2008 | A1 |
20080240458 | Goldstein | Oct 2008 | A1 |
20080293453 | Atlas et al. | Nov 2008 | A1 |
20080316181 | Nurmi | Dec 2008 | A1 |
20090020343 | Rothkopf et al. | Jan 2009 | A1 |
20090079690 | Watson et al. | Mar 2009 | A1 |
20090088220 | Persson | Apr 2009 | A1 |
20090096632 | Ullrich et al. | Apr 2009 | A1 |
20090102805 | Meijer et al. | Apr 2009 | A1 |
20090153499 | Kim et al. | Jun 2009 | A1 |
20090278819 | Goldenberg et al. | Nov 2009 | A1 |
20100013761 | Bimbaum et al. | Jan 2010 | A1 |
20100141408 | Doy et al. | Jun 2010 | A1 |
20110056763 | Tanase et al. | Mar 2011 | A1 |
20110141052 | Bernstein et al. | Jun 2011 | A1 |
20110161537 | Chang | Jun 2011 | A1 |
20110163985 | Bae et al. | Jul 2011 | A1 |
20110167391 | Momeyer et al. | Jul 2011 | A1 |
20120011436 | Jinkinson et al. | Jan 2012 | A1 |
20120105358 | Momeyer et al. | May 2012 | A1 |
20120112894 | Yang | May 2012 | A1 |
20120206246 | Cruz-Hernandez et al. | Aug 2012 | A1 |
20120206247 | Bhatia et al. | Aug 2012 | A1 |
20120229264 | Company Bosch et al. | Sep 2012 | A1 |
20120253698 | Cokonaj | Oct 2012 | A1 |
20120306631 | Hughes et al. | Dec 2012 | A1 |
20130027359 | Schevin et al. | Jan 2013 | A1 |
20130038792 | Quigley et al. | Feb 2013 | A1 |
20130141382 | Simmons et al. | Jun 2013 | A1 |
20130275058 | Awad | Oct 2013 | A1 |
20130289994 | Newman et al. | Oct 2013 | A1 |
20140056461 | Afshar | Feb 2014 | A1 |
20140064516 | Cruz-Hernandez et al. | Mar 2014 | A1 |
20140079248 | Short et al. | Mar 2014 | A1 |
20140118125 | Bhatia | May 2014 | A1 |
20140118126 | Garg et al. | May 2014 | A1 |
20140119244 | Steer et al. | May 2014 | A1 |
20140139327 | Bau et al. | May 2014 | A1 |
20140226068 | Lacroix et al. | Aug 2014 | A1 |
20140292501 | Lim et al. | Oct 2014 | A1 |
20140340209 | Lacroix et al. | Nov 2014 | A1 |
20140347176 | Modarres et al. | Nov 2014 | A1 |
20150061846 | Yliaho | Mar 2015 | A1 |
20150070260 | Saboune et al. | Mar 2015 | A1 |
20150084752 | Heubel et al. | Mar 2015 | A1 |
20150130767 | Myers et al. | May 2015 | A1 |
20150208189 | Tsai | Jul 2015 | A1 |
20150216762 | Oohashi et al. | Aug 2015 | A1 |
20150324116 | Marsden et al. | Nov 2015 | A1 |
20150325116 | Umminger, III | Nov 2015 | A1 |
20150341714 | Ahn et al. | Nov 2015 | A1 |
20160063826 | Morrell et al. | Mar 2016 | A1 |
20160070392 | Wang et al. | Mar 2016 | A1 |
20160074278 | Muench et al. | Mar 2016 | A1 |
20160132118 | Park et al. | May 2016 | A1 |
20160141606 | Ahn et al. | May 2016 | A1 |
20160162031 | Westerman et al. | Jun 2016 | A1 |
20160179203 | Modarres et al. | Jun 2016 | A1 |
20160239089 | Taninaka et al. | Aug 2016 | A1 |
20160246378 | Sampanes et al. | Aug 2016 | A1 |
20160358605 | Ganong, III et al. | Dec 2016 | A1 |
20170078804 | Guo et al. | Mar 2017 | A1 |
20170083096 | Rihn et al. | Mar 2017 | A1 |
20170090572 | Holenarsipur et al. | Mar 2017 | A1 |
20170090573 | Hajati et al. | Mar 2017 | A1 |
20170153760 | Chawda et al. | Jun 2017 | A1 |
20170168574 | Zhang | Jun 2017 | A1 |
20170220197 | Matsumoto et al. | Aug 2017 | A1 |
20170277350 | Wang et al. | Sep 2017 | A1 |
20170357440 | Tse | Dec 2017 | A1 |
20180059733 | Gault et al. | Mar 2018 | A1 |
20180059793 | Hajati | Mar 2018 | A1 |
20180067557 | Robert et al. | Mar 2018 | A1 |
20180074637 | Rosenberg et al. | Mar 2018 | A1 |
20180082673 | Tzanetos | Mar 2018 | A1 |
20180084362 | Zhang et al. | Mar 2018 | A1 |
20180151036 | Cha et al. | May 2018 | A1 |
20180158289 | Vasilev et al. | Jun 2018 | A1 |
20180159457 | Eke | Jun 2018 | A1 |
20180160227 | Lawrence et al. | Jun 2018 | A1 |
20180178114 | Mizuta et al. | Jun 2018 | A1 |
20180182212 | Li et al. | Jun 2018 | A1 |
20180183372 | Li et al. | Jun 2018 | A1 |
20180196567 | Klein et al. | Jul 2018 | A1 |
20180237033 | Hakeem et al. | Aug 2018 | A1 |
20180253123 | Levesque et al. | Sep 2018 | A1 |
20180267897 | Jeong | Sep 2018 | A1 |
20180321748 | Rao et al. | Nov 2018 | A1 |
20180329172 | Tabuchi | Nov 2018 | A1 |
20180335848 | Moussette et al. | Nov 2018 | A1 |
20180367897 | Bjork et al. | Dec 2018 | A1 |
20190227628 | Rand et al. | Jan 2019 | A1 |
20190064925 | Kim et al. | Feb 2019 | A1 |
20190073078 | Sheng et al. | Mar 2019 | A1 |
20190103829 | Vasudevan et al. | Apr 2019 | A1 |
20190138098 | Shah | May 2019 | A1 |
20190163234 | Kim et al. | May 2019 | A1 |
20190215349 | Adams et al. | Jul 2019 | A1 |
20190114496 | Lesso | Aug 2019 | A1 |
20190235629 | Hu et al. | Aug 2019 | A1 |
20190294247 | Hu et al. | Sep 2019 | A1 |
20190296674 | Janko et al. | Sep 2019 | A1 |
20190297418 | Stahl | Sep 2019 | A1 |
20190311590 | Doy et al. | Oct 2019 | A1 |
20190341903 | Kim | Nov 2019 | A1 |
20200117506 | Chan | Apr 2020 | A1 |
20200218352 | Macours et al. | Jul 2020 | A1 |
20200401292 | Lorenz et al. | Dec 2020 | A1 |
20210108975 | Peso Parada et al. | Apr 2021 | A1 |
Number | Date | Country |
---|---|---|
2002347829 | Apr 2003 | AU |
103165328 | Jun 2013 | CN |
103403796 | Nov 2013 | CN |
204903757 | Dec 2015 | CN |
105264551 | Jan 2016 | CN |
106438890 | Feb 2017 | CN |
106950832 | Jul 2017 | CN |
107665051 | Feb 2018 | CN |
0784844 | Jun 2005 | EP |
2363785 | Sep 2011 | EP |
2487780 | Aug 2012 | EP |
2600225 | Jun 2013 | EP |
2846329 | Mar 2015 | EP |
2988528 | Feb 2016 | EP |
3125508 | Feb 2017 | EP |
3379382 | Sep 2018 | EP |
201620746 | Jan 2017 | GB |
201747044027 | Aug 2018 | IN |
H02130433 | May 1990 | JP |
08149006 | Jun 1996 | JP |
6026751 | Nov 2016 | JP |
6250985 | Dec 2017 | JP |
6321351 | May 2018 | JP |
2013104919 | Jul 2013 | WO |
2013186845 | Dec 2013 | WO |
2014018086 | Jan 2014 | WO |
2014094283 | Jun 2014 | WO |
2016105496 | Jun 2016 | WO |
2016164193 | Oct 2016 | WO |
2017113651 | Jul 2017 | WO |
2018053159 | Mar 2018 | WO |
2018067613 | Apr 2018 | WO |
2018125347 | Jul 2018 | WO |
2020004840 | Jan 2020 | WO |
2020055405 | Mar 2020 | WO |
Entry |
---|
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2019/052991, dated Mar. 17, 2020, received by Applicant Mar. 19, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/US2020/023342, dated Jun. 9, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2020/050823, dated Jun. 30, 2020. |
Communication Relating to the Results of the Partial International Search, and Provisional Opinion Accompanying the Partial Search Result, of the International Searching Authority, International Application No. PCT/GB2020/050822, dated Jul. 9, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2020/051037, dated Jul. 9, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2020/051035, dated Jul. 10, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/US2020/024864, dated Jul. 6, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2019/050770, dated Jul. 5, 2019. |
Combined Search and Examination Report, UKIPO, Application No. GB1720424.9, dated Jun. 5, 2018. |
Communication Relating to the Results of the Partial International Search, and Provisional Opinion Accompanying the Partial Search Result, of the International Searching Authority, International Application No. PCT/US2018/031329, dated Jul. 20, 2018. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2019/050964, dated Sep. 3, 2019. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2020/050822, dated Aug. 31, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2020/051438, dated Sep. 28, 2020. |
First Examination Opinion Notice, State Intellectual Property Office of the People's Republic of China, Application No. 201880037435.X, dated Dec. 31, 2020. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/US2020/056610, dated Jan. 21, 2021. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/GB2020/052537, dated Mar. 9, 2021. |
Office Action of the Intellectual Property Office, ROC (Taiwan) Patent Application No. 107115475, dated Apr. 30, 2021. |
First Office Action, China National Intellectual Property Administration, Patent Application No. 2019800208570, dated Jun. 3, 2021. |
International Search Report and Written Opinion of the International Searching Authority, International Application No. PCT/US2021/021908, dated Jun. 9, 2021. |
Notice of Preliminary Rejection, Korean Intellectual Property Office, Application No. 10-2019-7036236, dated Jun. 29, 2021. |
Combined Search and Examination Report, United Kingdom Intellectual Property Office, Application No. 3B2018051.9, dated Jun. 30, 2021. |
Communication pursuant to Rule 164(2)(b) and Article 94(3) EPC, European Patent Office, Application No. 18727512.8, dated Jul. 8, 2021. |
Gottfried Behler: “Measuring the Loudspeaker's Impedance during Operation for the Derivation of the Voice Coil Temperature”, AES Convention Preprint, Feb. 25, 1995 (Feb. 25, 1995), Paris. |
First Office Action, China National Intellectual Property Administration, Patent Application No. 2019800211287, dated Jul. 5, 2021. |
Number | Date | Country | |
---|---|---|---|
20200387225 A1 | Dec 2020 | US |
Number | Date | Country | |
---|---|---|---|
62858445 | Jun 2019 | US |