US2007103439A1PendingUtilityA1

Method of operating an optical mouse

54
Assignee: AVAGO TECHNOLOGIES LTDPriority: Oct 6, 1995Filed: Dec 21, 2006Published: May 10, 2007
Est. expiryOct 6, 2015(expired)· nominal 20-yr term from priority
G06F 3/033G06F 3/0317G06F 3/03543G06F 3/0346G06F 3/038
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

An optical mouse images as an array of pixels the spatial features of generally any micro textured or micro detailed work surface below the mouse. The photo detector responses are digitized and stored as a frame into memory. Motion produces successive frames of translated patterns of pixel information, which are compared by autocorrelation to ascertain the direction and amount of movement. A hold feature suspends the production of movement signals to the computer, allowing the mouse to be physically relocated on the work surface without disturbing the position on the screen of the pointer. This may be needed if the operator runs out of room to physically move the mouse further, but the screen pointer still needs to go further. The hold feature may be implemented with an actual button, a separate proximity detector or by detecting the presence of a characteristic condition in the digitized data, such as loss of correlation or velocity in excess of a selected limit. A convenient place for an actual hold button is along the sides of the mouse near the bottom, where the thumb and the opposing ring finger grip the mouse. The gripping force used to lift the mouse engages the bold function. Hold may incorporate a brief delay upon either the release of the hold button, detection of proper proximity or the return of reasonable digitized values. During that delay any illumination control or AGC servo loops stabilize. Anew reference frame is taken prior to the resumption of motion detection.

Claims

exact text as granted — not AI-modified
1 - 12 . (canceled)  
   
   
       13 . A method for operating a hand held optical pointing device, comprising: 
 capturing a plurality of arrays of data, representing light reflected from a surface to a hand held optical pointing device, to track movement of the hand held optical pointer on the surface; and    analyzing at least one of the plurality of arrays of data to determine if a position of a pointer on a display screen should be changed in order to indicate movement of the device.    
   
   
       14 . The method of  claim 13  wherein the device is an optical mouse.  
   
   
       15 . The method of  claim 13  wherein analyzing at least one of the plurality of arrays of data further comprises: 
 determining if the device was suitably proximate the surface when the at least one of the plurality of arrays of data being analyzed was captured.    
   
   
       16 . The method of  claim 15  wherein determining if the device was suitably proximate the surface further comprises: 
 determining if the device was lifted from the surface.    
   
   
       17 . The method of  claim 15  wherein determining if the device was suitably proximate the surface further comprises: 
 determining that the device was picked up from the surface.    
   
   
       18 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that the device was airborne.    
   
   
       19 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that the device was being physically relocated on the surface.    
   
   
       20 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that the position of the pointer on the display screen should be not changed because of a loss of a focused image in the data.    
   
   
       21 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that the device was too far away from the surface.    
   
   
       22 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that the surface was not in the view of the device.    
   
   
       23 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that apparent movement of the device exceeded a threshold.    
   
   
       24 . The method of  claim 23  wherein the threshold value is a velocity.  
   
   
       25 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 determining that the elements of the at least one of the plurality of arrays of data have a substantially uniform value.    
   
   
       26 . The method of  claim 15  wherein determining if the optical hand held device was suitably proximate the surface further comprises: 
 analyzing a pair of the plurality of the arrays of data.    
   
   
       27 . The method of  claim 13  wherein analyzing at least one of the plurality of arrays of data further comprises: 
 analyzing one of the plurality of arrays of data to determine if the position of the pointer on the display should be changed; and    if so, analyzing a pair of the plurality of the arrays of data to generate a signal related to the movement of the device on the surface to change the position of the pointer on the display screen.    
   
   
       28 . The method of  claim 27  wherein analyzing one of the arrays of data further comprises: 
 detecting a presence of a predetermined condition in the one of the arrays of data.    
   
   
       29 . The method of  claim 28  wherein the presence of the predetermined condition is detected by comparison with a threshold value.  
   
   
       30 . The method of  claim 29  wherein the threshold value is a velocity value.  
   
   
       31 . The method of  claim 27  wherein the pair of arrays of data includes the one of the arrays of data analyzed to determine if the position of the pointer on the display should be changed.  
   
   
       32 . The method of  claim 27  wherein analyzing the pair of the arrays of data to generate a signal further comprises: 
 correlating at least portions of each of the pair of arrays of data to track movement of the device on the surface.    
   
   
       33 . The method of  claim 13  wherein analyzing at least one of the plurality of arrays of data further comprises: 
 analyzing a pair of the arrays of data to detect the presence of a predetermined condition.    
   
   
       34 . The method of  claim 33  wherein analyzing the pair of arrays of data further comprises: 
 generating a signal to change the position of the pointer if the predetermined condition is detected.    
   
   
       35 . The method of  claim 33  wherein analyzing the pair of arrays of data further comprises: 
 generating a signal to change the position of the pointer if the predetermined condition is not detected.    
   
   
       36 . The method of  claim 33  wherein analyzing the pair of arrays of data further comprises: 
 halting generation of a signal to change the position of the pointer if the predetermined condition is detected.    
   
   
       37 . The method of  claim 33  wherein analyzing the pair of arrays of data further comprises: 
 halting generation of a signal to change the position of the pointer if the predetermined condition is not detected.    
   
   
       38 . The method of  claim 33  wherein analyzing the pair of arrays of data further comprises: 
 correlating the pair of arrays of data.    
   
   
       39 . The method of  claim 38  wherein analyzing the pair of arrays of data further comprises: 
 comparing the correlations between each of a plurality of neighboring elements of one of the pair of arrays of data with elements of the other of the pair, to detect the presence of the predetermined condition.    
   
   
       40 . The method of  claim 39  wherein comparing the correlations to detect the presence of the predetermined condition further comprises: 
 detecting the presence of the predetermined condition when the arrays of data have a generally uniform level.    
   
   
       41 . The method of  claim 39  wherein comparing the correlations to detect the presence of the predetermined condition further comprises: 
 detecting the presence of the predetermined condition when correlation values do not have a generally uniform level.    
   
   
       42 . The method of  claim 39  wherein comparing the correlations to detect the presence of the predetermined condition further comprises: 
 detecting the presence of a predetermined condition when the correlation values between neighboring elements of one of the pair of arrays, with elements of the other of the pair of arrays, form a characteristic pattern.    
   
   
       43 . The method of  claim 42  wherein the characteristic pattern is related to a difference in magnitude between correlation values of the neighboring elements.  
   
   
       44 . The method of  claim 42  wherein the characteristic pattern is a relatively low level of difference between correlation values of neighboring elements.  
   
   
       45 . A method for operating a hand held optical pointing device, comprising: 
 a) capturing a plurality of arrays of data, representing light reflected from a surface to a hand held optical pointing device, to track movement of the device on the surface;    b) analyzing at least one of the plurality of arrays of data to determine if device is on the surface; and    c) altering the operation of the device in response to a determination that the device has been lifted off the surface.    
   
   
       46 . The method of  claim 45  wherein altering the operation of the device further comprises: 
 suspending producing movement signals to change a position of a pointer on a display screen to indicate movement of the device relative to the surface.    
   
   
       47 . The method of  claim 46  wherein suspending producing movement signals further comprises: 
 sending signals to the display screen which do not indicate movement of the device relative to the surface.    
   
   
       48 . The method of  claim 45  further comprising: 
 transmitting light from the device to illuminate the surface.    
   
   
       49 . The method of  claim 48  wherein altering the operation of the device further comprises: 
 altering the transmitting of the light from the device.    
   
   
       50 . The method of  claim 49  wherein altering the transmitting of the light further comprises: 
 adjusting the amount of illumination to improve performance of the device.    
   
   
       51 . The method of  claim 50  wherein adjusting the amount of illumination further comprises: 
 changing the illumination of the surface to improve performance of a battery in the device.    
   
   
       52 . The method of  claim 49  wherein adjusting the amount of illumination of further comprises: 
 turning off the illumination.    
   
   
       53 . A method for operating a hand held optical pointing device, comprising: 
 capturing a plurality of arrays of data, representing light reflected from a surface to a hand held optical pointing device, to track movement of the hand held optical pointing device relative to spatial features of a surface;    sending signals to a display screen to position a pointer in accordance with the tracked movement; and    suspending sending the signals to the display screen when the device is not in contact with the surface.    
   
   
       54 . The method of  claim 53 , wherein capturing the plurality of arrays of data to track movement of the device further comprises: 
 correlating a pair of arrays of the data captured at different times.    
   
   
       55 . The method of  claim 54  wherein suspending sending the signals to the display screen further comprises: 
 analyzing one array, of a pair of arrays to be correlated, to determine proximity of the device to the surface.    
   
   
       56 . The method of  claim 55  wherein suspending sending the signals to the display screen further comprises: 
 adjusting illumination of the surface by the device.    
   
   
       57 . The method of  claim 56  wherein adjusting illumination of the surface by the device further comprises: 
 reducing illumination emitted by the device.    
   
   
       58 . The method of  claim 56  wherein adjusting illumination of the surface by the device further comprises: 
 reducing an average illumination emitted by the device.    
   
   
       59 . The method of  claim 54  wherein suspending sending the signals to the display screen further comprises: 
 analyzing the correlation of a pair of arrays to determine proximity of the device to the surface.    
   
   
       60 . The method of  claim 59  wherein suspending sending the signals to the display screen further comprises: 
 adjusting illumination of the surface by the device.    
   
   
       61 . The method of  claim 60  wherein adjusting illumination of the surface by the device further comprises: 
 reducing illumination emitted by the device.    
   
   
       62 . The method of  claim 54  wherein suspending sending the signals to the display screen further comprises: 
 analyzing the correlation of a pair of arrays to determine proximity of the device to the surface.    
   
   
       63 . The method of  claim 53  wherein suspending sending the signals to the display screen further comprises: 
 sending signals to the display screen which do not indicate movement of the device with respect to the surface.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.