throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2011/0087454 A1
`Lee et al.
`(43) Pub. Date:
`Apr. 14, 2011
`
`US 2011 0087454A1
`
`(54) TAP DETECTION
`
`(75) Inventors:
`
`James M. Lee, Northborough, MA
`(US); Jon Austen Williams,
`Cambridge, MA (US)
`
`(73) Assignee:
`
`Analog Devices, Inc., Norwood,
`MA (US)
`
`(21) Appl. No.:
`ppl. No.:
`
`12/S71748
`9
`
`(22) Filed:
`
`Oct. 1, 2009
`
`(60)
`
`Related U.S. Application Data
`Provisional application No. 61/107.212, filed on Oct.
`21, 2008.
`
`Publication Classification
`
`(51) Int. Cl.
`2011.O1
`G06F 9/00
`388
`H04M I/00
`(2006.01)
`H04M, 3/00
`(52) U.S. Cl. ....................... 702/124; 455/550.1; 455/418
`(57)
`ABSTRACT
`Methodology and circuitry for determining if a device. Such
`as a cellular phone or personal digital assistant has been
`tapped is disclosed. The device includes an accelerometerand
`in response to an acceleration, the accelerometer outputs an
`acceleration signal. The accelerometer may continuously
`output an acceleration signal even if no acceleration occurs. A
`tap detection device receives the temporally sampled accel
`eration signal and takes the first derivative of the temporally
`sampled acceleration signal producing one or more derivative
`values. The tap detection system compares each derivative
`value to a threshold value and if the derivative value exceeds
`the threshold a tap is detected. By taking the derivative of the
`acceleration signal, the noise floor for the acceleration signal
`is reduced leading to more accurate results with less false
`positives and less positive negatives.
`
`
`
`4000
`
`3000
`2OOO Y
`1000
`
`-OOO
`
`-2000
`
`-3OOO
`O
`
`false positive
`
`1000
`
`2000 3000 4000
`
`5000 6OOO 7000 8000 9000 1 OOOO
`
`Time ms
`
`APPLE 1047
`
`1
`
`

`

`Patent Application Publication
`
`Apr. 14, 2011 Sheet 1 of 5
`
`US 2011/0087454 A1
`
`
`
`0000||
`0006
`0008
`000/
`0009
`
`0009
`000Z
`
`000 ||
`
`0
`
`
`
`[Suu] ?uu||
`
`I "OICH
`
`Seeu)
`uOle JeleocoW
`
`2
`
`

`

`Patent Application Publication
`
`Apr. 14,2011 Sheet 2 of 5
`
`US 2011/0087454 Al
`
`CELL PHONE
`200
`
`
`
`HOUSING
`220
`
`Y
`
`Y
`LR
`
`Oo
`
`CIRCUIT BOARD ~~~
`230
`
`ACCELEROMETER
`210
`
`ACCELEROMETER
`310
`
`MEMORY
`330A
`
`/
`
`300
`
`COMPUTATIONAL
`
`MODULE
`390
`
`MEMORY
`330B
`
`3
`
`

`

`Patent Application Publication
`
`US 2011/0087454 A1
`
`de 1
`
`
`
`† 9IGI
`
`
`
`
`
`
`
`
`
`4
`
`

`

`Patent Application Publication
`
`Apr. 14, 2011 Sheet 4 of 5
`
`US 2011/0087454 A1
`
`- Threshold?
`
`510
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Start Timer 530
`
`Below
`Threshold?
`540
`
`FIG. 5
`
`between taps
`less than the double
`tap time limit?
`
`DoubleTap 56
`
`
`
`
`
`5
`
`

`

`Patent Application Publication
`
`Apr. 14, 2011 Sheet 5 of 5
`
`US 2011/0087454 A1
`
`
`
`s
`
`s
`
`O
`
`s
`
`Su/Seellu
`Xue?
`
`6
`
`

`

`US 2011/0087454 A1
`
`Apr. 14, 2011
`
`TAP DETECTION
`
`PRIORITY
`0001. The present U.S. patent application claims priority
`from U.S. provisional patent application No. 61/107,212 filed
`on Oct. 21, 2008 entitled “Tap Detection', which is incorpo
`rated herein by reference in its entirety.
`
`TECHNICAL FIELD
`0002 The present invention relates to determining when
`an object, Such as a cell phone, has been tapped thereby
`experiencing a sudden acceleration.
`
`BACKGROUND ART
`0003. It is known in the prior art to measure the accelera
`tion of an object using an accelerometer. When a user taps an
`object, the object undergoes a rapid acceleration. A tap is
`simply a synonym for a light strike, pat or rap that causes an
`object to undergo acceleration. This acceleration can be mea
`sured and compared to a threshold in order to identify when a
`tap has occurred. The accelerometer threshold is set both in a
`positive and a negative direction and there may be separate
`thresholds for each of the cardinal directions. If the accelera
`tion is greater than the threshold a tap is identified. As shown
`in the exemplary graph of FIG. 1, five taps are recognized
`using this acceleration and threshold technique. One tap can
`be identified by a strong negative acceleration 110, one with
`a strong positive acceleration 120 and three that just reach the
`threshold 130, 140, 160. Other points in the acceleration vs.
`time plot that are circled 150, 170, and 180 show changes in
`the acceleration that are actually taps, however the values do
`not reach the threshold and therefore are not registered as
`taps. Additionally, the prior art methodology even registers a
`tap 160 when no tap occurs.
`0004 Although the threshold can be adjusted so as to
`better identify when taps occur, moving the threshold will
`also lead to an increase in false-positive tap identifications. If
`this methodology is employed in a cellular phone or other
`personal electronic device, such false-positives will cause the
`device to activate a function even when the operator does not
`wish to have the device activated. For example if a cellular
`phone is in the pocket of a user and the user moves, the
`cellular phone may accelerate or come into contact with an
`object in the user's pocket unintentionally activating the tap
`feature. Noise both internal and external can cause the accel
`erometer to register a value that is above the threshold thereby
`recording a false-positive.
`0005. If the threshold is set too high in order to avoid
`false-positives, user's will become frustrated with the tap
`activation feature, since the user's taps will not be recognized
`and the device will not perform the function that the user
`desires. As a result of this frustration, the user will disable the
`tap feature.
`
`SUMMARY OF THE INVENTION
`0006. In a first embodiment of the invention there is pro
`vided a methodology for determining if a device, such as a
`cellular phone or personal digital assistant has been tapped.
`The device includes an accelerometer and in response to
`acceleration, the accelerometer outputs an acceleration sig
`nal. The accelerometer may continuously output an accelera
`tion signal even if no acceleration occurs. A tap detection
`device receives the temporally sampled acceleration signal
`
`and takes the first derivative of the temporally sampled accel
`eration signal producing one or more derivative values. The
`tap detection system compares each derivative value to a
`threshold value and if the derivative value exceeds the thresh
`old a tap is detected. By taking the derivative of the accelera
`tion signal, noise is reduced from the signal and this leads to
`more accurate results with less false positives and less posi
`tive negatives.
`0007. The methodology may be extended to determining
`if a double tap has occurred. When a tap is detected, a flag
`representative of the tap is saved to memory and a timer is
`started. When a second tap is detected, a computation module
`compares the time measured by the timer to a double tap time
`limit. If the measured time is less than the double tap time
`limit a double tap is recognized. If the measured time exceeds
`the double tap time limit, the timer is started with respect to
`the presently detected tap and the process continues.
`0008. In certain embodiments, when either a tap or a
`double tap are detected for a cell phone, the detected tap or
`double tap causes the cell phone's ringer to mute.
`0009. The tap detection system in one embodiment may be
`implemented with an accelerometer and a computation mod
`ule. It should be recognized that an accelerometer as used
`herein is a transducer for changing mechanical motion into an
`electrical signal that is proportional to the value of accelera
`tion. The computation module may be a processor, finite State
`machine, dedicated logic or other circuitry. The computation
`module may reside internal or external to the accelerometer
`packaging. The accelerometer outputs a temporally sampled
`acceleration signal. The computation module receives the
`temporally sampled acceleration signal and takes the deriva
`tive of the signal. The derivate is compared to a threshold and
`if the threshold is exceeded a tap is detected. A tap may last for
`more than a single sampled value and therefore when a string
`of derivative values exceeds the threshold, only a single tap
`will be detected. When a tap is detected, a signal representa
`tive of the tap will be output from the tap detection system and
`the tap can be used by a process or application. Once the
`derivative values fall below the threshold, a timer can be
`started to measure the time between taps. If the time between
`taps is less than the double tap time limit, a double tap has
`occurred and the tap detection system will output this infor
`mation for use by a process or application.
`0010. In another embodiment of the tap detection system,
`an accelerometer is electrically connected to a register, a
`Subtraction circuit, and a tap computation module. In certain
`embodiments, the accelerometer packaging includes the
`accelerometer, register, Subtraction circuit and a tap compu
`tation module. The accelerometer outputs a temporally
`sampled acceleration signal. In any of the disclosed embodi
`ments, the accelerometer may produce a digitally sampled
`output signal or a continuous analog signal. If the accelerom
`eter produces an analog signal an analog-to-digital converter
`will be included within the signal path for converting the
`analog signal into a series of sampled digital values. The
`sampled digital acceleration value for a given time (N-1) is
`stored in a register. At time N, the acceleration value for time
`N is provided to a subtraction circuit and the acceleration
`value for time N-1 is read out of the register and provided to
`the subtraction circuit. The subtraction circuit subtracts the
`two values and producing a derivative value. The value of
`N-1 that is stored in the register is also replaced by the
`acceleration value of N. The derivative value is forwarded to
`a tap computation module that compares the derivative value
`
`7
`
`

`

`US 2011/0087454 Al
`
`Apr. 14, 2011
`
`to one or more threshold values. If the derivative value is
`below the threshold notap is detected. If the derivative value
`is above the threshold a tap is detected. A signal representa-
`tive of the detected tap can then be forwarded to another
`process or application and used as input to that process or
`application.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`implemented in hardware, for example as an ASIC chip orin
`an FPGA or a combination of hardware and software code.
`
`The computation module running the software receives as
`input the data from the accelerometer andtakes the derivative
`of the signal. For example, the accelerometer may produce
`digital output values for a given axis that are sampled at a
`predeterminedrate. The derivative of the acceleration values
`or “jerk” can be determined by subtracting the N and N-1
`sampled values. The acceleration values may be stored in
`memory 330A, 330B either internal to or external to the
`computation module 320 during the calculation of the deriva-
`tive of acceleration. Other methods/algorithms knownto one
`of ordinary skill in the art may also be used for determining
`the derivative of the acceleration. The jerk value can then be
`comparedto a threshold. The threshold can be fixed or user-
`adjustable. Ifthe jerk value exceeds the threshold then a tap is
`detected. In some embodiments, two threshold values may be
`present: a first threshold value for taps about the measured
`axis in a positive direction and a second threshold for taps
`aboutthe axis in a negative direction. It should be recognized
`by one of ordinary skill in the art that the absolute value ofthe
`accelerometer output values could be taken and a single
`threshold could be employedfor accelerations in both a posi-
`tive and negative direction along an axis. When a tap has been
`detected, the computation unit can then forward a signal or
`data indicative of a tap as an input for another application/
`process. The application/process may use the detection of a
`tap as an inputsignal to perform an operation. For example, a
`tap may indicate that a device should be activated or deacti-
`vated (on/off). Thus, the tap detection input causes a program
`operating on the device to take a specific action. Other uses
`for tap detection include causing a cellular telephone to stop
`audible ringing whena tap is detected or causing a recording
`is depicted is a cellular telephone. The accelerometer 210 is
`device to begin recording. These examples should not be
`held in position internal to the cellular phone housing 220.
`viewed as limiting the scope of the invention and are exem-
`The accelerometer 210 is generally mounted on a circuit
`plary only.
`board 230 within the cellular telephone housing. The accel-
`[0020]
`FIG. 4 shows a second embodimentofthe tap detec-
`erometer 210 may be a single axis accelerometer (x axis), a
`tion system that uses a buffer for storing a temporal accelera-
`dual axis accelerometer (x, y axes) oratri-axis accelerometer
`tion value along with a subtraction circuit. This embodiment
`(x, y, axes). The electronic device may have multiple accel-
`can be usedtoretrofit an electronic device that already has a
`erometers that each measure 1, 2 or 3 axes of acceleration.
`tap detection algorithm without needing to alter the algo-
`The accelerometer 210 continuously measures acceleration
`rithm. For purposesofthis discussion,it will be assumed that
`producing a temporal acceleration signal. The temporal
`the high bandwidth acceleration data is for a single axis. It
`acceleration signal may contain more than oneseparate sig-
`should be understood by one of ordinary skill in the art that
`nal. For example,
`the temporal acceleration signal may
`the acceleration data may include data from a multi-axis
`include 3 separate acceleration signals, i.e. one for each axis.
`accelerometer without deviating form the scope ofthe inven-
`In certain embodiments, the accelerometer includescircuitry
`tion.
`to determine if a tap has occurred by taking the derivative of
`the acceleration signal. In some embodiments, the acceler-
`ometer includes a computation module for comparing the
`derivative values to a threshold to determine if a tap has
`occurred. In other embodiments, the accelerometer outputs a
`temporal acceleration signal and the computation module
`takes thefirst derivative of the acceleration signal produce a
`plurality of derivative values. The computation module can
`then compare the first derivative values to a predetermined
`threshold value that is stored in a memory ofthe computation
`module to determine if a tap has occurred.
`[0019] FIG.3 showsa first embodimentofthe tap detection
`system 300 that includes a computation module 320 and the
`accelerometer 310. The accelerometer output signal
`is
`received by a computation module 320 that is electrically
`coupledto the accelerometer 310 and that is running (execut-
`ing/interpreting) software code. It should be understood by
`oneof ordinary skill in the art that the software code could be
`
`[0011] The foregoing features ofthe invention will be more
`readily understood by reference to the following detailed
`description, taken with reference to the accompanying draw-
`ings, in which:
`[0012]
`FIG. 1 showsan acceleration graph with thresholds
`with indications of when taps have occurred as taught by the
`priorart;
`FIG. 2 is an imageofan electronic device that con-
`[0013]
`tains an internal accelerometer;
`[0014]
`FIG.3 is a first embodimentof a tap detection sys-
`tem;
`FIG. 4 is a second embodimentof a tap detection
`[0015]
`system that includes a subtraction circuit;
`[0016] FIG.5isa flow chart that shows a methodfor detect-
`ing when a double tap has occurred; and
`[0017]
`FIG.6 is a graph that showsthe derivative of accel-
`eration with respect to time and includesthresholdsfor deter-
`mining whena tap has occurred.
`
`DETAILED DESCRIPTION OF SPECIFIC
`EMBODIMENTS
`
`FIG. 2 is an imageof an electronic device that con-
`[0018]
`tains an internal accelerometer. The electronic device 200 that
`
`[0021] The circuit shows high bandwidth data 400 from an
`accelerometer unit being used as input to the tap detection
`system 405. The high-bandwidth data 400 is fed to a multi-
`plexor 450 andalso to a low passfilter 410. The high band-
`width data 400 from the accelerometeris low passfiltered in
`order to reduce the data rate, so that the data rate will be
`compatible with the other circuit elements ofthe tap detection
`system 405. Therefore, the low passfilter is an optional circuit
`element if the data rate of the accelerometer is compatible
`with the other circuit elements. Once the acceleration data is
`filtered, the sampled data (N—-1) is stored ina register 420. The
`next sampled data value (N) is passed to the subtraction
`circuit 430 along with the sampled value that is stored in the
`register (N-1) 420. As the N-1 data is movedto the subtrac-
`tion circuit 430, the N data value replaces the N—-1 value in the
`register 420. Not shown in the figure is a clock circuit that
`provides timing signals to the low pass filter 410, the register
`
`8
`
`

`

`US 2011/0087454 A1
`
`Apr. 14, 2011
`
`420, and the subtraction circuit 430. The clock circuit deter
`mines the rate at which data is sampled and passed through
`the circuit elements. If the accelerometer samples at a differ
`ent rate than the clock rate, the low pass filter can be used to
`make the accelerometer's output data compatible with the
`clock rate. The subtraction circuit 430 subtracts the N-1 value
`from the N value and outputs the resultant value. The resultant
`value is passed to the tap detection circuit 440 when the jerk
`select command to the multiplexor is active. The acceleration
`data may also be passed directly to the tap detection circuit
`when there is no jerk select command. In certain embodi
`ments of the invention, the accelerometer unit along with the
`register, Subtraction circuit, and multiplexor are contained
`within the accelerometer package.
`0022. The tap detection circuit 440 may be a computation
`module with associated memory that stores the threshold jerk
`values within the memory. The tap detection circuit may be
`either internal to the accelerometer packaging or external to
`the accelerometer packaging. For example, in a cell phone
`that includes one or more processors, a processor can imple
`ment the functions of a computation module. The computa
`tion module 440 compares the resultant jerk value to the one
`or more threshold jerk values. In one embodiment, there is a
`positive and a negative threshold jerk value. If the resultant
`value exceeds the threshold for a tap in a positive direction or
`is below the threshold for a tap in a negative direction, the tap
`detection circuit indicates that a tap has occurred. The tap
`identification can be used as a signal to cause an action to be
`taken in a process or application. For example, if the elec
`tronic device is a cellphone and a tap is detected, the tap may
`cause the cell phone to mute its ringer.
`0023. In other embodiments, the computation module
`determines if a tap occurs and then can store this information
`along with timing information. When a second tap occurs, the
`computation module can compare the time between taps to
`determine if a double tap has occurred. Thus, a temporal
`threshold between taps would be indicative of a double tap.
`This determination could be similar to the double tap algo
`rithms that are used for computer input devices. For example,
`a double click of a computer mouse is often required to cause
`execution of a certain routine within a computer program.
`Thus, the double tap could be used in a similar fashion.
`0024 FIG.5 shows a flow chart for determining ifa double
`tap has occurred. The system is initially at idle and the accel
`eration derivative values (jerk values) are below the threshold
`value 500. Each jerk value is compared to a threshold value
`510. When the threshold value is exceeded, a first click or tap
`is identified. The system waits either a predetermined length
`or time or determines when the jerk value goes below the
`threshold to signify that the first tap has ended 520. A timer
`then starts and measures the time from the end of the first tap
`and the system waits for a second tap 530. The system checks
`each jerk value to see if the jerk value has exceeded the
`threshold 540. If the jerk value does not exceed the threshold
`the system waits. When the threshold is exceeded, the system
`determines the time between taps and compares the time
`between taps to a double tap limit540. If the time between
`taps is less than the double tap time limit, a double tap is
`recognized 550. If a double tap is not recognized, the present
`tap becomes the first tap and the system waits for the end of
`the first tap. When a second tap occurs, an identifier of the
`second tap i.e. a data signal, flag or memory location is
`changed and this information may be provided as input to a
`
`process or program. Additionally, when a double tap has been
`sensed, the methodology loops back to the beginning and
`waits for a new tap.
`0025 FIG. 6 shows a graph of the derivative of accelera
`tion data (jerk’) with respect to time for the same series of
`accelerations as shown in FIG. 1. FIG. 6 provides a more
`accurate indication of taps. FIG. 1 shows both false positive
`tap readings 160 along with true negative readings 150, 170,
`180. Thus, the acceleration measurement will not register
`Some taps and will also cause taps to be registered when no tap
`was present. False positive readings occur, for example, when
`a user has a cellphone in his pocket and keys or other objects
`strike the cellphone due to movement of the user. These false
`readings are caused mainly because of the noise floor. By
`taking the derivative of the acceleration signal, the noise floor
`is lowered and the tap signals become more pronounced as
`shown in the comparison between 110 and 610, 120 and 620,
`180 and 680, 150 and 650, and 170 and 670. Thus, false
`positive identifications of taps are reduced with a lower noise
`floor. By requiring double taps the number of false positives is
`reduced even further.
`0026. It should be recognized by one of ordinary skill in
`the art that the present invention as embodied should not be
`viewed as being limited solely to portable devices. The inven
`tion is equally as applicable to stationary devices. For
`example, a personal computer, computer monitor, track pad
`on a computer may benefit from the invention.
`0027 Various embodiments of the invention may be
`implemented at least in part in any conventional computer
`programming language. For example, some embodiments
`may be implemented in a procedural programming language
`(e.g., “C”), or in an object oriented programming language
`(e.g., “C++). Other embodiments of the invention may be
`implemented as preprogrammed hardware elements (e.g.,
`application specific integrated circuits, FPGAs, and digital
`signal processors), or other related components.
`0028. In an alternative embodiment, the disclosed appara
`tus and methods (e.g., see the description above) may be
`implemented as a computer program product for use with a
`Computer system. Such implementation may include a series
`of computer instructions fixed either on a tangible medium,
`Such as a computer readable medium (e.g., a diskette, CD
`ROM, ROM, or fixed disk) or transmittable to a computer
`system, via a modem or other interface device. Such as a
`communications adapter connected to a network over a
`medium. The medium may be a tangible medium (e.g., opti
`cal or analog communications lines). The series of computer
`instructions can embody all or part of the functionality pre
`viously described herein with respect to the system.
`0029. Those skilled in the art should appreciate that such
`computer instructions can be written in a number of program
`ming languages for use with many computer architectures or
`operating systems. Furthermore, such instructions may be
`stored in any memory device, such as semiconductor, mag
`netic, optical or other memory devices, and may be transmit
`ted using any communications technology, such as optical,
`infrared, microwave, or other transmission technologies.
`0030. Among other ways, such a computer program prod
`uct may be distributed as a removable medium with accom
`panying printed or electronic documentation (e.g., shrink
`wrapped software), preloaded with a computer system (e.g.,
`on system ROM or fixed disk), or distributed from a server or
`electronic bulletin board over the network (e.g., the Internet
`or World Wide Web). Of course, some embodiments of the
`
`9
`
`

`

`US 2011/0087454 A1
`
`Apr. 14, 2011
`
`invention may be implemented as a combination of both
`Software (e.g., a computer program product) and hardware.
`Still other embodiments of the invention are implemented as
`entirely hardware, or entirely software.
`0031. The embodiments of the invention described above
`are intended to be merely exemplary; numerous variations
`and modifications will be apparent to those skilled in the art.
`All such variations and modifications are intended to be
`within the scope of the present invention as defined in any
`appended claims.
`
`What is claimed is:
`1. A computer implemented method for determining taps
`on a Surface of a device having an accelerometer, the method
`comprising:
`in a computer process:
`receiving as input a temporally sampled acceleration
`signal;
`taking a first derivative of the temporally sampled accel
`eration signal producing derivative values; and
`comparing at least one derivative value to at least one
`threshold to determine if a tap has occurred based
`upon the derivative value exceeding the threshold.
`2. The computer implemented method according to claim
`1, wherein the device is a cellular phone.
`3. The computer implemented method according to claim
`1, wherein the device is a personal digital assistant.
`4. The computer implemented method according to claim
`1, wherein comparing the derivative values further com
`prises:
`determining when two taps have occurred within a prede
`termined period and outputting a signal to a processor
`when two taps have occurred within the predetermined
`period.
`5. The computer implemented method according to claim
`1, wherein the device is a phone and an identification of a tap
`causes the phone to mute.
`6. The computer implemented method according to claim
`1, further comprising:
`after a tap has been detected, determining when a Subse
`quent derivative value falls below the threshold value
`indicating that the tap has ended.
`7. The computer implemented method according to claim
`1, wherein the absolute value of the at least one derivative
`value is used when comparing the at least one derivative value
`to the threshold.
`8. A system for determining if a device has been tapped, the
`system comprising:
`an accelerometer circuit for outputting a temporal accel
`eration signal;
`a register for storing the temporal acceleration signal at
`time N-1;
`a Subtraction circuit receiving from the register the tempo
`ral acceleration signal at time N-1 and Subtracting the
`temporal acceleration signal at time N-1 from the tem
`poral acceleration signal at time N producing a deriva
`tive signal;
`a computation module receiving the derivative signal and
`comparing the derivative signal to at least one threshold
`to determine if the device has been tapped.
`9. The system according to claim 8 wherein the accelerom
`eter outputs a digital acceleration signal sampled at a sample
`rate.
`
`10. The system according to claim 8 wherein the acceler
`ometer circuit outputs an analog acceleration signal and the
`system further comprises:
`a sampling circuit for sampling the analog acceleration
`signal at a sample rate producing a sampled acceleration
`signal.
`11. The system according to claim 8, wherein when a
`derivative signal is indicative of a tap, the computation mod
`ule stores an indicator of the tap in associated memory.
`12. A system for determining if a device has been tapped,
`the system comprising:
`an accelerometer circuit for outputting a temporal accel
`eration signal; and
`a computation module receiving the temporal acceleration
`signal, taking the derivative of the temporal acceleration
`signal producing a derivative signal and comparing the
`derivative signal to at least one threshold to determine if
`the device has been tapped.
`13. The system according to claim 12 wherein the acceler
`ometer outputs a digital acceleration signal sampled at a
`sample rate.
`14. The system according to claim 12 wherein the acceler
`ometer outputs an analog acceleration signal and the system
`further comprises:
`a sampling circuit for sampling the analog acceleration
`signal at a sample rate producing a sampled acceleration
`signal.
`15. The system according to claim 12, wherein when a
`derivative signal is indicative of a tap, the computation mod
`ule stores an indicator of a tap in associated memory.
`16. The system according to claim 15, wherein the com
`putation module determines a temporal period between taps
`and compares the temporal period to a threshold to determine
`if a double tap has occurred.
`17. The system according to claim 12, wherein the accel
`erometer and the computation unit are housed within the
`same packaging.
`18. The system according to claim 6 wherein at least the
`accelerometer, register, and Subtraction circuit are housed
`within the same packaging.
`19. A computer program product including a tangible com
`puter readable medium having computer executable code
`thereon for determining if a tap has occurred on a surface of
`a device that includes an accelerometer the computer code
`comprising:
`computer code for receiving as input from the accelerom
`eter a temporally sampled acceleration signal;
`computer code for taking a first derivative of the temporally
`sampled acceleration signal producing derivative val
`ues; and
`computer code for comparing at least one derivative value
`to at least one threshold to determine if a tap has
`occurred based upon the derivative value exceeding the
`threshold.
`20. A computer program product according to claim 19,
`wherein the computer code for comparing includes computer
`code for comparing each derivative value to the threshold to
`determine both if the device has been tapped and the total
`number of derivative values that exceed the threshold.
`21. The computer program product according to claim 19,
`wherein the device is a cellular phone.
`22. The computer program product according to claim 19,
`wherein the device is a personal digital assistant.
`
`10
`
`

`

`US 2011/0087454 A1
`
`Apr. 14, 2011
`
`23. The computer program product according to claim 19,
`wherein the computer code for comparing the derivative val
`ues further comprises:
`computer code for determining when two taps have
`occurred within a predetermined period and outputting a
`signal to a processor when two taps have occurred within
`the predetermined period.
`24. The computer program product according to claim 19,
`wherein the device is a phone and an identification of a tap
`causes the phone to mute.
`25. The computer program product according to claim 19,
`further comprising:
`
`computer code that operates after a tap has been detected
`for determining when a subsequent derivative value falls
`below the threshold value indicating that the tap has
`ended.
`26. The computer program product according to claim 19,
`wherein the absolute value of the at least one derivative value
`is used when comparing the at least one derivative value to the
`threshold.
`27. A computer implemented method according to claim 1,
`wherein comparing includes comparing each derivative value
`to the threshold to determine both if the device has been
`tapped and the total number of derivative values that exceed
`the threshold.
`
`11
`
`

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket