Elan Microelectronics Corporation v. Apple, Inc.
Filing
88
Declaration of Sean P. DeBruine in Support Elan Microelectronics Corporation's Opening Claim Construction Brief (Attachments: # 1 Exhibit A, # 2 Exhibit B, # 3 Exhibit C, # 4 Exhibit D, # 5 Exhibit E, # 6 Exhibit F, # 7 Exhibit G, # 8 Exhibit H, # 9 Exhibit I, # 10 Exhibit J, # 11 Exhibit K, # 12 Exhibit L) filed by Elan Microelectronics Corporation. (DeBruine, Sean) (Filed on 5/7/2010) Modified on 5/10/2010 (bw, COURT STAFF).
EXHIBIT A
ililil ilil]t ilililt illlililil]il ilililil¡ ililililt ililil il ]]l lill
us005825352A
United States Patent
Bisset et al.
nçt
[11] Patent Number: 518251352 t4sl Date of Pâtent: OcL 20, 1998
5,016,ûA 5lß91.
5203,704
Gruaz el å1. ............................ 345/113 411993 Mccloììd .....,..-....................... 434/156 5 32'7,L61 7 11994 l-ogân et a|. ............................ 345 /r'73 5,365,461. lLll994 Slein et al- ..,,................. ....... 364/550
[54] MULIPIÆ
FINGDRS CONTACT SENSING METHOD FOR trMUTATING MOUSE BUTTONS AND MOUSE OPERATIONS ON A TOUCH SENSOR PAI) Inventors: Slephen J. Bisset, Pâlo Aìto; Bernard Kasser, Menlo Park, both of Calif. Assignee: Logitech, Inc,, F¡eúonÎ, Câlif. Appl. No.:608,116
[75] [73] [21] [22]
376,946 72/1994 Mikân ..................................... 345/r'73 5,432,531 7/1995 Calder et a¡. ........................... 345/1'73 s,442,376 8/1995 Tånneûbaum et al. ................. 345/156 5,463,388 1oll995 Boie er a1. ....-........................... 341/33 5,495,ùJ7 211996 Miller et a1. ...-........................ 345 /173
5
5,52A,:
5,543,591 8/1996 Gillespie et al. ......................... fialra
6
6/1996 Arbeitmân et al, ................-....345/1'73
Filed:
5,565,658 l0/1996 Geryheide et â1. ..................... 345/174 5,648,642 1/1997 Miller et a1. .............................. 1'781ß
Feb.28, 1996
FOREIGN PAIENT DOCIJMENTS
Relatd U.S. Appìicâtio¡ Data
[63]
Continuation of Ser. No. 582t6& Jân. 4, 1996, âbandoned.
,...............................
wo 91Æ3039 3/1991 WIPO , wo 97118508 5/19S7 WIPO .................
OTIIER PUBLICATI ONS
G06F 3/033
tsll Int. Cl.6
ls2l
Is8] Is6]
G09G si00; C09G 5/08
U.S.C|......................... Field of Seârch
References Cited
3451773:3a5/1.57 3451156,15'7, 345/760, 1'73, 17 4, 145; l7A1a; 34U33
Synaptics Brochure, "Synaplics Toùch Pad," pp. 1-39.
P rimary Examíner-Jeffety B.riet Assßtant E)raminer--+a]ul B'ell, ^. Aftorney, Agent, o¡ lo¡i,'¡¡---Townsend aDd Toù,,nsend ând
Crew
U.S. PATENT DOCUMENTS 3,921,166 1U1975 volpe. 4,1.03,252 1/ß7a Bobick .................................... 345/774 4,4s5,452 6/79a Schùyler ................................. 345/ú3
ís1l
ABSTRACT
4"55O,21 10ll9a5 Mabustlì ...........................--..... 345/173 4,639;72O t/199i R)'rnpalski et al. ..................... 345/774
4,6a6332 a/79n Grea¡iâs
4
et al. ........................ 3451173 Evans ............................-........... 341 133 4,'136,191 4/19æ Marzke er â1. .......................... 345/157 4,914,624 4/1990 Dunthoú ...................-.-.......... 345/173
J33,222 3/l9AA
Method aDd apparatùs for delecting an operalive coupling between one or mo¡e flngersorother appropriate objeclsand a touch pad includes processes for detection of ûulliple maxima with i¡termediate minima in appropriate sequences to cmìrlatc the opcrations of cùrso¡ cont¡ol and bùtton actuatioûs iû â poinling and control device. 31 Clains, 17 Drawing Sheels
705\
c-cuN08
P0stn0il
tr]*'',f,]
T
----ä¡r0
i
FE
û-1 Fmxl
0-r¡Þäf1
20\
I
ar-jTDÐ ots¡L¡r---l
@
f¡!¡-ldr-ì
I
oA r ]I
-rorJcJipÀD
E_
---- fi-----
l,,,,,,,1H
roucrr
I
ll ;, ll- roiomnr'd rl¡ ,,
]l
Rt-----l
'
lr,r;r.l
:_,--
PRoltúl
-arn,On
witness Von H ¿¡4ea oarc ê"1'
"o.
f
t' ¿*
J. lch¡kiCSR f1660
U.S. Patent
Oct. 20, 1998
Sheet 1 of 17
5,825,352
FlG I
U.S. Patent
Oct. 20, 1998
Sheet 2 of 17
5,925,352
sEr'rs0R
Y DIRECTIOI{
x orn¡clloil
coHouclons
ANALOO üULTIPLEXOR
CIRCUIT T0 l¡IEASlJRE C}|A|\¡GIS IN CAPACITANCE ()T SENSOR CONDUCTORS
AilALOG-TO- DIGITAL
CONVERTER
[lICROCONTROLLER
INIERFACE
IO PC
OR OTHER DIVICE
FtG. 2.
U.S.
Patent
oct.
2l,tsst
shecr 3 or
17
5,825,352
FtG,
3.
FIG,
4.
U.S. Patent
Oct. 20,
1998
Sheet 4 of 1?
5,925,352
U.S. Patent
Oct. 20, 1998
Sheet 5 of 17
5,825,352
SET Xslole = Peokl
ll.ll+l
Xsum XreighlSum
=
Xsun
' I(ll
X
=
IweightSum * ll *
(ll )
XpækZ =
X(N-l)
Ft6. 6-t.
U.S. Patent
Oct. 20, 1998
Sheet 6 of 17
5,825,352
OR
Ipeok2>
Xobsolule' IreighlSum / Xsun
Sl
fi
peokZ-XVolley) > (Xpeok2)
/4?
ond
)(peokl>tlhresh? ond
F/G, 6-2.
U.S. Patent
Oct. 20, 1998
5,,825,352
3
o =g z'-\ 3 (- -'r
\J õ-
* \:{_
=C
t\\ t
I I
tå
\,-.\
\\Ð_ ar
AI \l
ts\
\--:
ñ
(¡t
ù
\
\
\t--
(ì -ÍP
U.S. Patent
Oct. 20, 1998
Sheet 8 of 17
5,825,352
t*\
705\
mEnill
IBDII{Iil
c = clJRsoR
F=
t3-c
TOUCH PAD
P0sm0¡l
Hl3-
lfrE-il-il
lTl-Tro-n
A o.lrrr r¡
f-lwrnr
cor.TAcT
roucnsElsol
[-j e L]
Y PfiOFILE
TOUCH PAO
ffiEilin
f3--Y PROTILE
yrD[0 DISPLAY
mmol¡-l
lrmin
tT----]
ßmo-il-l
l7-T1
F---
l2selætCl
ti_-l
u___l
x
li'l nq
PROFILE
[,t'll l
)(
Y PROTILE
T()UCH PAD
L_l
Ft6.
78.
O lwlrnroucH I llO;8i,,'*+" '
sE[soR
U.S. Patent
Oct. 20,
1998
Sheet 9 of 17
5,825,352
r30\
tÎ.------1
l2selecll
7401
lilE¡¡-u-l
l;Eü-imil-l
l[E[-u--l
tz-sefãõll
ñtuTïdil-l
l--1
Y PROFILE
I3----1
Y PRONLE
tTt
Ü
T
m nn L]
x
PROFILE
IOUCH PAD
Pì
9
PBOIILE
r50\
lT--1
7551
fff[in
mtrl
ffimutm¡{
Hg
Y PROIIILE
f'tno¡l
FI qq rìn L_l L]
l'trll I
TOUCHPAt} )(
fI---l
Y PROTILE
TOUCHPAD
I
PROI'ILE
PROFILI
FIG,
7C.
U.S. Patent
760\
Oct. 20,
1.998
Sheet 10 of 17
5,925,352
mù-l
7701
lilE¡¡t-]
P9ro
Y PROFILE
n----1
ErwffiEl
il
I80a
ITERÙ-]
9Pl
L__l
)( PROFILE
n
790ra
Y PROTILE
Y PROTILT
nt
ßumÍt
L9m
Y PROFILE
n---
FITE
E
liExr-l
qqq
Y
E
FIG.
7D.
nr.il
PR0¡il.
U.S. Patent
Oct. 20, 1998
Sheet 11 of 17
5,925,352
800\
|¡BUIIOI{ llI{El\lU
e5\
'',lll
I
l7-l¡llmi-l---.l F
nl E rqq L_
Y PROFILE
Y PROFILE
l0t,cltPA0
rol
9nP)
810\
l¡uT-Tdil
Il,EiIU
I
F¡u-rroqF]
lr-__-l
nrìn
FIG, 78.
U.S. Patent
s20À\
Oct.20,
1998
Sheet 12 of 17
8208\
E-l
r,
Y
PROTILT
lr-Eiu-l ll l
fBuTTo-N-l
C= CURSOR
mnmt
8I'TTO¡I
UP
P0stTt0il
Y PROFILE
", l,"
ll-l i
l l
TOUCll PAD
I'rl
/Ânnsrn il
coNTAcT
l'-,1
TOUC}IPAD
lulttrr
louclsEt{son
lr-]
8254\
e
x
PROFILE
15 I
Y
PROTILE
ffi tr--
'/IDTO
DISPLAY
DISPLAY
f¡tl-rru-[ì
Burror{ Dorit
f¡mo-[]
BUIIO!¡ DOII
ltl
[r 9e lt,irll 9n lrl
Y
PROFILE TOUCHPAD
l,ll
U
x
PROTILE
)(
PROFILE
FIG 7F-/.
U.S. Patent
8258\
Oct. 20,
1998
Sheer 13 of L?
DISPI.AY
'/IDEO ITUTTo=il-l
C=ClJRS()R
f-FùTmil
8lJTïoil DoUi
BUIloil Dolrl'l
I
P0slTl0¡t
Y PROFILE
i,;l
L_l
x
PROFILE
l-j----l
p)
il-l
T VIDEO
li'i 9e
830\
tr-l
Y PROFILE
825C\
lBmñfl]
BUNOil
ftumil
F-= l3 -Y PROIILE
lilEfiu--f,|
il
rol
n I L]
Y PROTILE
TOUCllPAD
ooB.,Tïor¡,,P
,,,J,,[-----_l
7F-2.
U.S. Patent
Oct.20,
1998
Sheet 14 of 17
5,825,352
Xfinger= 2
OR
Xfinger " I
At{0
Xmolion. Io bsolute - XobsolulePrevious
Ymolion' Yobsolule -Yobsolule Prev ious
U.S. Patent
Oct. 20, 1998
Sheet 15 of 17
5,925,352
ANt) Finger= 2
BullonPrevious= Down
AilD lFinger = 0 0R (Finger = I Reporl Bulton= Sel BultonPrevious=
Up Up
Previous= Fingei
AI¡D
Report )(motion Report Ymotion
Set XcbsolulePrevious' Xobsolule, Set YobsoluleP reviou s = Yobsolule, Set finqer Previous' Fing er
U.S. Patent
Oct. 20, 1998
Sheet 16 of 17
5,825,352
205
a0
2t5
XreighlSum
=
XweightSurn
+il*X(l{
FIG
U.S. Patent
Oct. 20, 1998
Sheet 17 of 17
5,925,352
Set Xobsolule'
)(weighl$um
/
Xsum
fipeok2-XVolley)> (Xpeok2)/4? ond Xpeokl> Flhresh? ond
F/G. 9-2.
5,825,352
MULIIPI,E FINGERS CONTACT SENSING METHOD FOR EMUIATING MOUSE
BUTTONS AND MOUSD OPERAIIONS TOUCH SENSOR PAD RELAr'ËD Tbis requires an up-down-up-down frger molion to do the same tbing as simply the "down-up" motion of tbe mouse bulton. Io general, any touchPad eqùivalent 10 â mouse bùllor¡-clicking function requires an extra "up ùp" the ûlcer mùst be lirred olr the
ONA
Apprf,cArroN
INVENTION
t
äiiåiL]t"",å:t;:;b;cÂåse
T1¡¡ lime,aod stress âssociâted with the extrâ molìôn is This âpplication is a continualion ofU.S. pâlent . tion Ser-ño. 0g/5g2,7óg, frled Jan. 4, 1996, abandoà'ed. sigoificant Hum-an faclo¡s studies have shown tbat such toucbpads yield lower produclivily lhan a mouse in many 10 applications. This somewhât limits toùchpads ro those FIELD OF THE
applica-
devices, and more particìrlâ¡ly relates to louchpad devics There is therelore a Ded lor a iouchpad capabte of yielding which detect åt leåst the presence of one or more ùe same p¡ocjucfivity âs â moùse. such ¿s fingers to effectuale preslecled control ñrnct¡ons. t5
rh presnr invention relales seneraily ro roucbpåd ffj*ill",i";"]",";ir3ì,%i:"lJ:r::iåitåTf;;.*:::.H;:"1
objects
BACKGROUN'D OF THE INVENTTON ro,rch sensins.revices are welì koown, and råke
a
SUMMARY OF TIIE INVENTION
nümber
of dife¡ent forms- Perhâps fhe best ktrowo are resislivememb¡ane position sensors, whicb have bee¡ used
."J1.fïîilï1i:ï.:1"#1i:i-ïfl,îi"'tsiTåi3ji"
frngers or other ãppropriate objecLs to a iouch sensor.'lÏe
devices have been used as keyboards, position iûdicatoß, embodimcnt involves ihe ofã'capacitiie touch sensing ånd so forth. olùer types of touch sensiúg devices 'se device sirúilâr to thal described in ú.S. patent applicatioi resistive tablets, surface acouslic wave devices, loucb stn_ ser. No_ 0g,47g,290, entifled Touch Sensing Method ancl strai¡ gages or pressure s0sors, aúd opticâl 2r A-ppa¡atus, fiIed Jun. Z, 1995, and åssigned fo rhe âssignee
u "" pr"i"ot inrention'may be impiemented based on any con" -in numbe¡ of differenl aPplications for mâny years. Such vcntional touch sensing technology, altlough an exemplary
:ï:*ï,
-
i¡clude ..
capacitance to virtuâl groünd- Other capacitive techniques ereDce. are âlso known some touch sensitive devi-ces are k¡own operation of the present itrveDtioD iDclùdes two aspecls: ìrse interpolation lor more p¡ecisely ídentifyiúg the deteätioo of multipli objects, typically flngers, and assign_ of a ûnger or 4¡ ment of various tuìctioni to particulai actiãns by the moveTypicâl of eacb of these prior art devices is th¿l each ment of one or both frrgers. The detection funótion can be them senses aDy contact ås thal of only oûe flnger at a general, but in a simple, exemplary implementation can be Cìrrsor movment is straigbtforward with one fingr, timited to a two-fingãr fu¡ction such as the combination of lappi¡g of â finger oD the surface of the pad. câ û be de Lected the index û nge r a nd middle frnger. In general, these are Lhe and actd upon in a manner simiÌar to detecti¡g lhe actua¡ion 45 two most rleitrous fingens, and rhey wãrk well together. As of a bul1on on a ûouse. Single aDd double taps can be a result, for tbis exemllary embodiment, tàe toucúpad need as simple equivalenls of single ard double mouse only distinguish betw¿en the two fingels in one dimeosion With a single-frnger touchpad, the click ând drag function since the hvo frngeß are typicalÌy side by side. In addition, is morc diffcult- With s[gle flnge¡ doteclion, drågging the toùchpad Deed o¡Iy detect thc sccond flngcr in rcasonbeen implementcd with scbemes such as ùptap (finger lifted 50 âbly closc proximity to th flrsr fi¡ger. In most siruations, thc aDd piâced dowrì agai¡ quickly), 1ap-and-a-half, ¡nd distânce betweeD frnger centers will be less than flve ccnlidtag (drag lock tùms oû âutomatically alter the finger meters. Additionâl coúbinations of fi¡gers, such as three placed in one loca¿iot without rnovfug for more lhan ûnge¡s tapping simullaneously or other combinations, may certâin tiûe, such as on scond). All of these methods also be implemented in accordance with the methodology of more time a¡d/or more frnger mo¿ions tlan takes 1() 55 the prôsent invention. perform tbe eqùivalent funclion witb a mouse, and rre Fot clarity oI cxplanation, the present invenlion can be intuitiv to ùsers fâmiliâr with eleclronic mice. Prio¡ desc¡il¡ed in .ort ãf ifs applications by establishing one louch pads are tbìrs less åttraclive for geDeral use thaD frnger as controlli¡g movemeit of the curm¡ ancl the sãcond frDger as controlling functions equivâlent to a morìse button Another cornmonly used fuDction in the prior art is thaL of 60 or switch. In this coDtexr, one Ênger may be considered the clicking a box (or icon or displayed "button") or series "point' fnger, while the other is the "clicll' ñnger. Varioùs boxes (sucb as "connecting the dots"). Wilh a mouse, convcnfional firnctions may then be defined accordingly. For cursor is úoved into position by moving the mouse, then exâmple, "drag" may be efiected by movi¡g tbe two frngers click ocqìrs with a dowD-up molion of the fi¡ger to actuate in unison, "point and click' may be efected by moviDg the a bulto¡ or switch. Wilh a touchpad typical of the prior art, 65 cursor w.ilh the first Ânger aDd tapping with the second the cursor is moved into posilion with the fnger, lhen flnger, "poinl and double cliclC'may be efected by moving click occurswith a tap of the frnger which moved the the cu¡sor with the lìrst frnger and doubÌe tappi¡g wltb the
some invention are described ge¡erally below, ând ìn dctail he¡ej0 inåfler.,A1tematively, the present invention may be ùse¿l with -' the method a¡d apparatùs described in the U.S. patent uûde¡ ând around the location of the finger. Typical of application Ser. No.08/582,769, entitled Touch Pad Sensing capacitive ¿oùch sensing devices are touch sc¡eens and Method aDd Apparatus, having as invntors Bemi Joss, cápacitive pads which employ a matrix of row and column Bemald Kasser and StephD Bissel, frled on Jan. 4, 1996, electrodes ând detect, for example, either tbe lråDscapåci- ì{ aDd âssigned to the âssignee of the present inven¿ioD, the latrce between row and column electrodes or tbe effeclive "- relevaDl portions of wbi¿h are ircorporated herein by refsensitrg, in which the locåtion of a ñnger (or in instaûces aúother object such âs a stylus) over â sensing device is determiDed by virtÌre of va¡iâlions iD capacilance
yer aDolher roucb sensirs rech'orosy is capacilive :j"'f""0'0":"lJ ån"lÏl^i:ä"ff
lJTåiìi.Ï;¡'åîi:åi:
stylus
lo localion of tiûe. aDd
used clicks. hâs sticky is a lâke not an a
il
mouse.
of tbe the
lhe cursor.
34
second flnger, aDd so on. "Click and Drag" may be
s,825,352
apparenl tbat å"oy ot tbå." operalions will be inluitive _soon e'xperienced -oué ua"r", as as the correspondence Also included within tbe present i¡ventio¡ is the detection beiwee¡ mouse functioús ;rid the two fr¡gers is de¡;onslated aDd location of more tha¡ two finge¡s, wilh accompanying 10 the user, aDd tbùs their implementation iD a touchpâd funcfional definilions permittiDg such multiple coDtacts to 15 indicate pointi¡g device or olher coûlrol operations, such as coûtext makes theû ôspeciâlly musicâl kyboârds addition to the foregoing functions, u,hich can In performed (albeit awkwardly ând less iûhrilively) with It is therefore one object of thc prcsent invention to veûtiot¿I toùch pâds, there are addilioDal functioDs that provide a touchpåd system capable of detecti¡g â plùrality of be performed with two fingers and which can have substan- co¡tâcls sucb as fingers. tial analogs to the Ì¡se of a moùse Ir is a turther objecr of the preseDr inveorion ro provide a - ,- -,-;'._:9:,!:y:1q cooveolionäl mouse lìrDclioDs. For exam¡le. delectioD t"puole or locârrrlg â plu¡t¡rly ol cotrlads ìocaLion of two ftogers will permit the touchpad ro reporl l]:of-"o"-ot]]:t su:b.as a bost sysrem rbe dist¿oce bètweeo tbe rwo 6'ogers. TËis ll is a Tg:rs' object of the present iDvention to provide a fuÍher be used, for example, in paiût ot otber prog;ms to method for detecting the presence ofmore lhan one flnger on ûine line widlh or óther'spacing functioní or aoy olber 25 â louch pad device. ''variable value'functioo. SimiJarly. tappirg wilb bolb gers at Lhe same tiûe ûây be deñred as âtr It is â still further object of the p¡eseút inventioD to shorthand method for a doÌrbl tap (such ås may be deñûed provide a method for localitrg each of â plurality of ñngers for the middle bulton in ¿ I-ogitech mouse) or may on a touch pad device. defined as a special firnction, simiÌar to the "right button" It isyet another object of lhe presert invetrtion to provide functions of a mouse. Such special ñmclions may a methãd for effecting the ,,po;t aûd click, functiôn on a particìrlâr valùe iú operating systeús $rcb as Wiûdov.,s ouchpad rhrough the use ofmultiple flngers. vr'here, for xample, implementatioD of tbe yet a furtheribject of the present iDveDtioD is to provide functioD is an important special fuDctioD. Such fuoction-sc¿n a method for effe¿dng the ,,¿lick and drag,, functión on a be implementd reådily wilb â friple lìnge¡ tap, a double tap ls roucbpad tbrougb theìxe of multiple fingJrs, ol nvo 6ngers. or other convenient coobLnatron. of the present invention is 10 provide j-:lt^t A¡olher tunction v¡hich may rr" i-pr"-"oi"ã *itr, "Í1"-t*1!-t " ,,dfag rocr<. r:nis n¡ser delection is
formed simply by moving the cußo¡ to the appropriate posifion with the firs1 frnger, placing botb nr$ and se.oúd flnge¡s oû the påd, ând moving bolh flngers logetber. The function may be concluded by simply raising one or bolh s frngers. Similarl¡ coDnecling the dots may be.performed lmply byEoviûg the cu¡sor from dot to dol witb t¡ ûrst fltger, and then clicking on the dot by tåpping .with lhe scond fiDger Ir will be appare¡r ro rhose skilt"d ]".+,,..":l thâl lhese funclions may be deÊned differentlv a¡d still lall l0 within the scnpe of thå present iovenrion. Ií wil¡ ålso bc
per-
Most prior â¡t torìchpâd devices operate, like mice, in
relalive modeby indicatiDg the distaDc travelled relåtive to the stârting point of tbe molion. Touchpâds, on the other hand, can also be operâted in absolutJ mode, where the âbsolute posirion of fhe finge¡ oü the pad is áeæcted and reporred rio rhe host system o; application.In absolute mode, multi-frnger detection allows thi frrst frnger to point to thé position, wbile fhe seco;d fingir performs à""i.J
;;;;; ;"'u*t'tr" ' --'- ;;kk',';p*arion is desired withouirequiring a "-I-'" rcmovål ol lnc nrsl nngcr whrcn mrgnl lcsscn accÙracy or
t"t:lult:n
,o
desirâble.
be concan 20 or:Y.i and to can aleter6nalternate, be 30 have 95 objecl.viewer r*o
nìct-ioïö;ÉF lffi;i::::""::ï:i:l wbeo a drag tunctior is uoderwåy, bur âr leasr ooe of lhe
fingers reacbes tbe edge of the pad before ¡he drag function
-
isãmplete.Touchpad-operationmaybecontr"ll;ã;;"i;-'"
tain rhã drag oodeìf, foi exarnpte, ti*r nngæis "i" rhe pad wiihio a tbreshold p"åoá or oo" ioot¡"i tbeo placed down on the p;d agåjn within a suilable
r1i:J."#åî.#:)sl"*: åi":i ;ìi;; fir;;ñrr.--: . _--:--_: . ,, Yel aûolbe. objecl of the plesent invnfioû is to provide a
ror erecling on å touchpad, throush -':'!:9 of multiple flnger contacts, a plu¡ality of enhânced the use 1""9 1fl1:1*
rnvenlron' resulting imagá, or "ink," is defued uy tte moiio¡ ol tbe Ê rsL 5s FIG 3 shows a finger profìle for two non-ovcrlap?ing flnger dìrringlthe period when the sácond ûnger is also ûngers as sensed by the Ptesenl irìvention. coãtact witli thc pâd; gaps in thc ..i'k,, occ"ur when FlG.4 shows â flnger profile for lwo closely-spaced secood tinger is lified awat ftom tbepad. The funqion û Dgers a s se Dsed by the present invention in some ways, be thoìrghf of ¿s eleclronic finge¡ pain I i¡g, bu FIC. 5 shows in flow diagram form the sleps lor a high bas the ¿dditional advanlage ofallowing mulliple chârâcters level algorithû tb¡ a pointing device according to the lo be wrilten on a touch pad. Thus, E'ith the ì$e of present invention. fngers, hand printing oI lext with gaps btween the and words becomes feasible and convenient, whereås iL FIG. 6 shows in flow diagram form the sfeps foa comimpractical with the prior art "Îap and a halP' mcthod puling motion and "bulton" states. turning oo the FIGS. 7A-7F2 sho\r in diâgrâmúalic form an exemplary Yet ânoLher funclion which may be implemented with sequence of ûnger conlacts aûd moveûenls across a touch present invention is use of the toìrchpåd in âbsolùle seDsor.
uJ*" time hr¡clrons perioã. In some impÌemintations, highly exle0ded ti|¡e 4j YeL a fùlhcr object of the present inwention is to provide a method and apPa¡atus for clcctronic nngcr laintjDg. periods may be suintle in tìis contexi A furthe¡ fùncfion whicb ûay be readily implemente¿ Thcse and olbcr objecls of th i¡vetrtioD may be befter $¿ith the pre sent inveûtion is the ibitity to opÉ¡aþ ìn relariv. appreciated from the following detailed descrÞtìoû of the invenliorì, tâken together wifh the appended frgures. mode, wiere a first finger pe¡fo¡ms ; key fu¡cljon, and â second frnger controls some attribute of the operation per- so lllE FICURES formed by the frrst fi¡ger' For example a 6rsl 6oger coofrc. lshowsa Dersoeclive view or a devic accordinp ro _ . -f låcting â touch fad mây câxsc ã cursor to move across a .__ fbe Fresenl rnventlon' screeri, while contact (and removal) of a seconcl ñnger wjtb FIG 2 sbows ìn block diagrâm form lhe electronics oflhe the scieen may turn ìn image, o¡ "iûlc' oo lana o"ft). Tbe presenl in tbe may, I 6¡ two letters js of ó5 the mode.
r,r,.¿lr
ink.
s,825,352 5
FIG. E shows â more generalized case of FlG. 5 FIG. 9 sbows a morc generalized case oI FIG. 6
6
câpacilaûce when ûo fiDger is present. This "no-flngel' capacitance is measured aDd slored at a time previous to Lhe beginning of the cycle described hereir, and is described mo¡e fùlly i¡ U,S. patent application Ser. No. 08/478,290, ûled 7 Ju¡. 1995 and commonly assigned.
DETAILED DESCRIPTION OF THE INVENTION
Referring first to FIc. 1,
a
plùrality of
a user,s frDgers
and l0B ire shown positåned o;er sufrcieDtly close p.o*i-ity to be operâtively connecled thereto. Movemeni of a singte flngcì over tÁe touchpad _l0 causes the cùrsor to move iD a now-conventional mân;er. However, unlike prior arl devices, various contol functioûs may be performeà by the use of tle second 6nger, typically iû combiûation willt the sam or â related opeiadofof the
5 10A j¡ It bas âlso been found by aPplicaDt that it is Dot necessary, aII eobodioenß, to subtract the "no-frngel' capacitance a tJuchpaã 20 in
if
techniqùes other than calculation of a centroid are used to locåte lbe positioú oftbe 6ngers, aúd sì.rch subtraction is not required even i¡ all i¡stances in which a centroid is câlculâted. However, in at least soûe eûbodimerìfs the se¡sitivity and benc.lhe resolution of the calculâted Ânger location is eoiaDced by such subtraclion'
Referri¡g agaj¡ to the exemplary embodiment, the values first fi¡ger. Operalions involving more thaD two fiogers may .. also be performed. [n an exemplary embodiment, the louch- '' ofûoger-induced capacitanc aa then processed to calculate pad of the p¡esent invention leporß to a host either the a position, detect whether one or more fngers is in operâfive contâcf wilh fhe pad surlace, and 10 detect aDy chaDges in tbe relative molion ofa finger across the toùchpad or changes in
"bultoD-'
status.
nurnber of 6ngers operatively coupled to the pad.
If the cycle
more maxima will be detecLed with an appropri¿te Dumber of intermediate minimâ Althoùgh the î¡ger profrle shown in FIc. 3 suggests that the intermediate minimâ sepârati¡g the two frngers js a zerc valùe, it is not necessary irÌ âll iûstances that the minima be commonly assigned with the present invention and zero. Thus, for example, FlG. 4 reflecls â frnger p¡onle with porated herein by reference a nonzro local miûima 100 intermediate the lwo maxima 105 and 110 indicalive of two flngers operatively coùpled to The outpìrt of úe capacitance measuri¡g circuit is provided to an analog Lo digital converter 80, which operates a5 the loÌchpad. This fr¡ger plofrle simply reflecls two frngers placd closely to one another, but stiìl yields a valley for as described in eilber of the âbove-referenced patent measurcmeDt of the minima. cations 1o convert the capacrtanc valùes fÌom the circùit iblo â digitâl represntation.'lÌÌe analog to digilal To operâte efeclivelf the pres¡t inveDtioD mùst delect 80 thcn supplics the signals to ihe microcontrolle¡ 60, ând distingùish the presnce of a single flnger, ând thc operales to form, âmong othcr thiÍgs, â finger profile for one 50 presence ofmùlliplc fingcrs.As noted previously, the second o¡ mo¡e flngers, X-Y cìrrsor dala, and conlrol sigDa¡s. or additional fuÌge¡s are typically involved to provide "butDependiDg on the operation being performed at the ton" or coDûol functions, similar Lo aclùaLior of the bûttons lar time, the outpul of microcont¡oller 60 is then sùpplied or swilches on â moùse. Allhoùgh the following example ân inLerface to a PC or olher device, sllch as a PS/2 interface, describes iD detail the llse of oDly rwo Ênge¡s, one for cursor an RS-232 inte¡face, or ân Apple Desktop Bûs 55 cont¡ol and å second as a bùtton, the teachi¡gs herein are believed $fficienl ro permit thos skilled in the art to A key feature of the presenf invention is its abilily distinguish thc presDce of multiple âûgers either toìrching construct âpparala using multiple Angers Ior addidonâl buaaons or in operative proximity to the toùchpad 30. In a 'lb avoid artifacts, a threshold may be åpplied to tbe bolb eûrbodiment, the operation of the ctcuit of FlG. 2 coDtinuously. As noled above, the cycle begins by scanning 60 the mâximuú and minimum distaDce belween the måximâ lhe trâces and meâsuring the câpacitaDce on each trace. lepresentalive of mùltiple ûngers. For example, a threshold the portio¡ oT each mcasìrrcd câpacitance that is induced requiring thc maxiûâ to be .wilbin five centimeters of one the presence of a flnger is exlracted, aDd this finger-indìrced anothermay beùsed 10 limit the maximum distance behveeû capacilance is slored in RAM, as X(1) through X(Xcon) the Êogers; other thresholds may be appropriate in some Y(1) through Y(Ycon), as described below. Tbe frnger- ós emlrodimenls. A threshold representative of the mi¡imum inducd pofion of lhe measìrd capacifaDce is determined distance mây be corìfigured by establishiDg a maximum by subtracting a value, eåch trâce, represeDtiDg value of the local minimå 100.
Referring nexl to FIC.2, the operâtion of rhe rouchpad 20 may be better appreciated. In pãrúcular, FtG. 2 shåws ¡o ",, block aiagram foru ttre electronics implemented to fofm exemplar! touchpad 20. A touchpad matrix 30 is mmposed of a plrlriliry of iows 35 and columns ,10 of wir., o, affanged in â convenfional manneÌ; se U.S. patenl app[-calioD Ser No. 08/321 ,98'7, 6led J2 OcL 1994, cnlitled Toucb Pad Senso¡ with Simullaneous Sensing, assigned with fhe present applicatior. The ¡ows and coluûlns ate connected to an analog mÌrltiplexor 45 through â râlity ofX (row) direction conductors 50 and apluralityof ìô "Y (column) direction conductors 55, oDe conductor for eacb row and eachcolùmo. Under the control of a úicroconlroller 60, the analog multiplexor 45 selects which trâces of matrix 30 will be sampled, and the outpùt of those frâces then provided to a capâcitance mea$rring circuit 70. ODe ¡< suitable capacitance meâsurirg circuit is described io afore-
" ârì
is repealed råPidly eDough to update a graphical user inte¡face approximately 30 liû¡es per second or more, the appearaDce of smooth and instantåneoìls lesponse is provided to lte user' For fuDctions other than pointing, such âs handwriling with the finger, a faste¡ scân rate måy be reqùùed ârd m¡y, for example, be on the o¡der of 200 scaÍs Per
i.u..,
,. secono commonly Refening next to FIG.3, a flnger profile is shown indica?lù-
the is ''
tive of the presence of two f¡gers, spaced apa¡t from oûe anolher. ID paliculâr, the circìriÎry software or ûarnware of the louchpad cûcuitry, such as that showD in FIG. 2, detects a ûrsl maxima 85 indicative of a flrst flnge¡ in opeÍative proximity to the toùchpad 30, followed by a minima 90 indicative of a spâce between the fingers, atrd further followed by aDother maxima 95 indicative of â second ûnger operåtively coupled to the touchpad 30. It will be apprcialed 1bâ1. for oper.rtions involving more than two fingeß,
mentjoned U.S. patent application Ser No. 08ß21,987, commo¡ly åssigncd u¡ith the prcsent invention a¡d inco¡porated herein by Ìeference; atother is described i¡ U.S. patent application Ser No. 08/478,290, flled 7 Jun. 1995, * eDtitled Touch Sensing Method ând Apparatus aDd also
incorthen
appli70 converter which particùto
(ADB). 10
lypicâl cycles fhen by
and the
fû
5.825.352
7
In an exemplary embodimenl, lhe operÂtior of the system of FIG. 2 is controlled in either frrmwa¡e, softwa¡c or hardware. Showri in FIG. 5 is a flow diagrâm showing the general operåtion of such software or ûImware which is capable of detecling mulliple flngers, aûd which ùses the algorithm of FIG. 6, discussed hereinafter. The varial¡les foìrnd iû the flow diagram of FIc. 5 å¡e defrned belov¡:
8
as checked at step 490, the state of Ybutton is Ìrp and YbutfonPrevious is Dowo, theD the variâble Butlon is sel to
Up at step 495.
the button v,¡as st to DowD at state 465, o¡ Up at step if the results at steps 480 and 490 âre NO, the process advânces to step 510. At step 510, Xmotioû is set to the sum of Xâbsolute less XabsolutePrevious, âûd at step 520, Yr¡ofio¡ is set to the sum ofYabsolüte less YabsolutePrevious. Then, at step 530, 10 the state of Button is checked ând, if it is changed by being Finger posilioD i¡ X di¡æti@, cal@lôtcd dù¡irg tle either Up or Dowo, bolÌì Xmotior ând Ymolion â¡e sl to o enl cycle relãtive lo Lhe s¡sor pad, zero at step 535, indicâting that the ùsr bas acluated a Tae value ãbove rored fron tle p¡evioE cycle. bulloD and no cußor movement shoùld occr¡¿ sinilat Lo xabsohtePrevioùs. lD additioD, if Button equals Up or Down, the slâte of Has value Up or Dow¡ (reeardles of previoûs 15 Bulton is reported at step 540. At step 550, Xmotior¡ ånd Yúotion are coûpared 10 zero, and if either È not ze.o theD XbuttonP¡eviou Tle vâlue above srored fJor L¡e pÉvious cycle. bolh Xmotion aDd Ymolion are reported to the microconYbùtto¡ SiDilar lo Xbu on, YbùLto¡PFvroùs SimilùtoXbuttoo?revious. troller will be âpparent thal this iDdicates a cursor Xmôtio¡ ChEor motion i¡ the X direcLio4 ¡elaüve Lo lhe movemeút, lypically reflective of the movement of a siûgle cùßo¡ poeitio¡ of Lhe previous cycle (o y reportod 20 frnger over lhe touchpâd, or lwo frngers in some modes such ileilher o' boú Xmotion and Yñorion arc as Click-and-Drag. rc¡-ærc). Ynotion Similar to Xmotio¡. Fur¿her, ât step 560, whether there is motion reported or Eurtor M¿y be Up ôr DoM (o y ¡epored ifa chaoge not, the variable XabsolùtePrevious is set to the valùe of froú tle previoB cycle). Xabsolute, a¡d at step 570 thc variablc YabsolutcPrevious is 2s set to the value ofY¿bsolute. Similârly, af step 580 tbe valùe It will be unde¡slood by those skilled in the ârt thât a of XbuttonPrevious is set to Xbufton, and at sþp 590 the meâns frânsmittitg infonnâtion to an application process valùe of YabsolÌrtePrevious is st to Y¿bsolùte. The cycle executing on â host, $rch thal the cursor is a0oved or thenrepeårsby returning to step 400.Itv¡illbe apparetrt that furÌction is performed. ln some instancs, driver software rhe forågoing algorithÍican bê readily extendeåio include executing on the host may ascertain tle existe¡ce of flnger ¡o a¿¿itionãl ûígeri beyond bvo, representâtive of âddilional movement, while in other iûstances inclùding the exemplary buttons. ln suãh an insrance, compare steps for current ând embodiment described herein the determj¡åtioo of previot¡s st¿tes of each buttoD would bè conducted, aod :'up,,' or ,,down,' conditioûs would be repo¡ted for each such movemen! occu¡s i¡ the frrm\¡¡aro in tho pointing Refeûing slill to FIG. 5,lhe cyclical process begins at bu¡on. ln some embo¿imens ir may be àesireal to report..no 400, aûd conLinues ât step 410 by scanning the cooductor 35 change" conditions, and the foregãing algorithm;uld be sensors. Tbe sensors may be scânned sequentially ,"udíy mo¿lifred to provide su"n ì"polrti"!. concurrently, depending on the ha¡dware impleme¡tatio¡. Deiending on the desired conÊguration, second and thìrd The scan p¡ocess measures the vaÌues of finger-i¡duced burtons may-be implemented, forãxample, either by requircapacitance for cach ofthe coúductors, aûd stors tbe ing a cnmbination'of two or more finge;s to indicaie operaRAM ât step 420. The cycle process coDtinues by a0 rio"¡ ofa second button, o¡by the inde:pendent moveme;t of Ierlorming the Xcompute loop of FlC. 6 discüssed addirional flngers or otúer objecrs.ln this latter eúbodiúenl, hereinafter, and also t}ìe Ycompùte loop å¡alogous^lo may be de;irâble to impl;meDt distaDce thresholding, to 6, âl step 430 ând 440, respeclively. ID ge¡erål, tbe ensur; that movemeDt ofa second or additional button füger of the Xcompute ând Ycompùte processes is simply is not rnis{âken for movement of ihe flrst or other bùtton evãluålc thc currc0t measurcments by calculatiDg lhe cen- 45 finper. tIoid of the finge¡ measurement, and by derecring whether ðet forth in FIC. 6 is a florv diagram setting forth the steps scond flnger is toùching fhe pâd which determines for compù1iog motion and ,,butlo;,, states iri lhe X direction, bùtton or vrhat úay be rcferred to âs "Xcompule.:'A¡ aDalogou; In the excmplary embodiment, only â chånge in calculation is performed fo¡ the y direciion, or whl maly be stale is reporled. As a result, at step 450 the vâlìre of Brtton 50 referred to as.iycompute,,, fhe algoritbm Ìrses the foÍoúng is set to No Char¡ge. In äddilion, in Lhe exemplary embodi- variables and constaDls: ment a lap or double click by only a frrst fuger is Dot acted upon, althougl â tap by a seco¡d firìger or by rDùltÞle fl¡gers is acted ùpon. In the exmplary ana¡gement, â "bulton down" condition is only reported if botb fDgers ar xoo \,åluos, stored i¡ reúory, of Ângrindùced po ion of in operålive conlact wit¡ t¡e Õpacitâr@ reâsured o¡ eãcb condùcLor Naanes fronr The process continus by compariDg the current aDd I to Xcon. [wben ¡o nûger is co¡tacting tle pad abov previous butto¡ stâtes of fhe X and Y conductors. First, at a condùcror, rh valùe is app¡oxinately zero. In addilio¡, x(0) is i¡iriaìøed to ã wal@ ol0.1 step 460, the slate ofxbùtton is checked to see il it is Down \ålue ol ñ¡geFinduccd seßor conducro¡ ccpacilan.e x(N t) and the state of XbuttonPrevious is checked to sce ifit is Up. eo for the p¡eYiou corductor. Ifboth compares are lrue, lben the våriâble Bùtlon is set 10 The ¡ùmber olse¡so¡ co¡drctoE in lhe X dhecLion. f)owD at step 465. In addition, âl stcp 470, thc statc of The ûiniúùn ttreshold tlat X must ¡cacl lefore a ¡er is @nsidered l,r be prese¡t- lseLs t¡e torcl] sensirivity ot Ybu on is checked to see if it is DowD and the slate of Lhc pad.l YbutlonPrevious is checked to see it is Up. both Xpák1 ri¡ble to sto¡e Lhe valûe of the Â6t !ak X vaiùe. compâres are 1rue, the variable Button ß also set to Dow¡, 65 Xvâllev vå¡iabìe to sLore Lhe v¿lûe ol a loc¿l nririmùD (il ûny) Altematively, as determioed at slep 480, if tbe state of Xbrìtron is Up â¡d the slat ol XbulloDPrevious is Dowr, or,
s
If
495, or
It
"leport" a
6oger devicc. step o.
i¡
valües
FIC. furction lo a the
state
thetulton
tóuc¡pa¿.
"
if
If
5,825,352 9
10
235 aûd a repeat wilh aD increúentally higher N. If a second
fitge¡ is louching lbe pad then eventually the value of X(N-l) will be geâ10¡ than o¡ e$ral to the value of X(l'O,
Xpø12 X5uú
\åriable to stôÉ ihe vålue of lhe secord peaÌ X valùe
(il aiy).
!åriablc to a@nulatc tìe sun of tle X values, Io¡ æntroid lælaLio¡. Lo acomùlaLe lle sùm oI tt X values, weìghLed by N (Lle tôsitio! of the co¡ducùôr), for cetrtrôid elculâLior.
5
Xweightsùm ¡/¿.iable
such that fhe valley is defected-At this point, âI slep 262, the value ofxvalley is set to X(N-l) and Xslale is st to Peåk2. The process then jumps to step 235, where it repeals from step 215 ùrìless the last conductor iD lbe matrix has been
XrLâte
^ Tail,
øriible wlich cân have valùes Pea!], l,ãlley, Peal2 or
âre lhe th¿ exeñplary
Lô itrdicâre whic! pârL of the ûnger proñle ru¡ently ssrching 6or Tle T¿il st¡le is sinply
E
Éñainder of Lhe scar ¿fter a seco¡d peak (ir eúbodiûenÐ has beer ide¡dned.
evalualed. On the nerl cycle, a NO resulf is reached at both step 225 10 and step 450, câusing a jump to step 270. At slep 210 Íhe state of Xstâ¡e is compared to Peak2, ând a YES result v,/ill occur. This results in â compare between X(¡Ð ard X(N-l) at step 275, to look for a secoûd peak, in a manner $¡bstar-
235' and then lo slep 215 uDtil the cbange masured at fhe last co¡duclor has been evaluated' As before, lhe value of X(Ð will eveDtùally start to várial¡les initiatized a¡e N, which iiset to zero, aod fue *,alue 20 decreåse. sucb that X(Ð will be less than X(N-1). A1 this of X(0), which is âlso set to zero. In âdditior, Xpeâk1, point, ât step 278,1he vâlue of Xpeak2 is set to the valùe of Xvâlley, Xpeal¿, Xsìrm and Xweighßum, a¡e all set to zero. X(1.¡-1) aDd the state of Xslale is set to Tail. Tl¡e "tâil" is the remaining portion of FIG. 4 following ttìe second peak. In additioD, the stale of Xstate is set to Peakl. At slep 210 a loop, referred to ås "Xloop" sfafls. The Vy'hile a Tail state is used in the exemplary embodime¡t, pùlpose of Xloop is to câlclrlâfe the X centroid, by âccÌr- 25 such a state may nol be Decessary in all embodiments. mulating the sum and 'reigbted sum of the X values fo¡ all The process then cycles through uDtil the last condìrctor tbe X conductors from one to Xcon. Thus,lhe loop typically meåsìr¡ement has becn considered, at which poirt N does starls with lhe value of N=0 aDd incremenls by one at the eqìral Xcon when lhe check ål sfep 235 is made. Witb aYES beginning of each cycle until the value of N=Xcon. Ïhe ¡esùlt, the p¡ocess b¡arches to a lhresholding comp&ison at steps of the loop i¡clude step 215, wbere N is iDcremeDted 30 step 290. 10 N+1 ând the value X(Ð of the cìrl¡enl conductor is added In an exemplary embodiment, the Xcompute procss lhen 10 the prior ¿ccumulated valùe, Xsrm, which then becomes continues by câldrlating the centroid for the frngers the new value of Xsum. Tbe loop theD continues at step 220, detcctcd, so long a,s thc ûåximâ cxceed a tbreshold value. In where the prior value of Xweightsûm is added to a weightd accordaDce with the present invenlìoû, two approâches rnây vâlue of X(ìÐ, where the weighting is done by multiplying 35 be used ir calculatiDg ceotroid values. In a frrst X(10 by the ¡mber N of the conducto¡ being sampled, The iûplementation, only a sirÌgle centroid value is calculated sum of XweightsÌm and N*X(N) then becomes tbe Der¡/ for the combin¿tion of one or more flngers. ln this value of Xweightsum. arrangemenl, it will be appârent thåt, when â second finger Thc XI-oop continues at step 225, whcrc onc of â series contacts the toùchpad, the centroid 'lumps" lâterally of subloops is selected depending o¡ the valùe of Xstale. 40 approximately to the midpoiDt ofthe two flngers,In a seco¡d Since Xstate is initiâlly set 1o Peak1, tho fl¡st sìrbloop iû¡plementation, ê ceûtroid value may be câlculated for each eDtred is the Peâk1 $rbloop, begi¡¡i¡g al step 230. At step mâximâ, yieldiûg multiple ce¡lroid values when multiple 230 the value of X(¡D is compâred to the value of X(N-1) ûngers interåct with the pâd. For puryoses of clarily, the ând, if X(Ð is greater thân o. eqùâl 1o the vâlÌre ofX(N-1), followiûg descrþtion will be limited to the Êrst implementhe R¡sl peâk bas nol yet been reached. As â result, the loop 45 tation. jumps to slep 235, at which points lhe valu of N is Thùs, al step 290 tbe values of Xpeakl and Xpeal2 are coúpâred to the vâlùe of Xcon. If fhe frnger-inducd câpaci- compared to Fthresh, atrd if either or both are greater then lance measurecl at the last coDductor has DotbeeD evaluated, Xâbsolute is set to the value of Xweighlsuûlxsum at slep the resull is a NO aod the process jumps to step 215 to repeat 295, which câuses the X centroid to be calorlated. If neithe¡ with aû incremeûled value of N. 50 peak exceeds Ftìresh, then no finger is deemed ptesent aúd At some våluc oI N Lbe valùe oI X(Ð is less than tbe Xbuttotr is st to Up at slep 315. vâlììe ofX(N-l), af whicb poinl lhe check ât slep 230 yields Ifboth Xpea-kl and Xpeak2 we¡e greale¡ thaD Fthrsh,lhe a NO. At this point, the peâk hås been tbund âDd ãI slep 232 Xcomþùte process conlimres at slep 305 by comparing the thevalue of Xpeakl isset to X(N-1) a¡d the value of Xstâte differeûce betweeû Xpeêkl a¡d Valley to the value of is set to Valley. The syslem ther jumps to step aj5, where a s5 Xpeakl divided, for example, by foÌ¡. If the diffeÌe¡ce is the check is made to see if the last coDductor hasbeen measu¡ed greater of the lwo, then Lhe difference between Xpeak2 and by compåring N to XcoB. ,As before, if the capacitance Valley is compared 10 the value of Xpeak2 divided, for change measrred at the låst condùcLor has not been cbecked, example, by four If thE diffe¡ence is grealer than Lhe the resr t is a NO, and the process loops to step 215 and dividend, the XbutloD is set to Down at step 310. Olherwise, repeats. 60 thevâluô ofxbùllon is set lo Up at step315. The comparison When the p¡ocess begins with t¡e next inc¡ement ofN, å described above is provided lo eDsure that a legitimâte NO wilÌ result at step 225, so that the process q.ill jump to vâllcy ând two lcgitimatc peâks hâve been detected,lo avoid step 250, where a check is mâde to see if Xstate equal artifacß. 11 will be appreciated, given the teachings herein, Xvalley. Since it now does, a YES resulLs and the process that olher coûparison methods or divisors other tlìan foùr branches 10 step 255. At step 255 a X(Ð is compared to 6s may be ùsed tìJr this purpose. X(N-1). IfX(N-1) is not greater than or equat to X(Ð, the The Xcompute loop then ends at step 320. It will b valley has not yet ¡reen foùEd, causing a furtberjump to step app¡eciated by those skilled in the ârt lhal fhe foregoiDg is
r;;i;cil; " TÉe aìgorithm for Xcompule starts at step 200, followed by iniriâl;zåton of variabl; ar srep 205. Fo; Xcoû¡pure, rhe
"Ycompure" ïàriables and co¡srans ditr"¡ å"niy;;
"
äiÏ:lÏ.,1ilJffi,r'i åüq,Ë"'.-'.Ë.*¡.ö'r;:iJ. t1ìe process jumps to steP lhe-peak has nol been found, so
X by
y.
-
11
manner.
5,825,352
12
a simplilìed ålgorithm and does not inclÌrde compensåtioD for settling, moislì!¡e and Doise. Noise thresholdiûg may provided in at least some embodimeDts, if noise causes curve to be noD-monotonic; setlling ard noisture may 5 deâIl with in a similar
be the be
example, relative movemeDt of the first frnger, together \ì¡ith a tap of the scond or more fingeß ä1 soúe point, followed either by removâl of both fi¡gers, fu¡t¡er movement of the flrst flnger, o¡ fürther movement of bolh flngeß Such
sequences cân, essntiall¡ be viewed as a series of scans iD
The l'compute loop is performed similarl% as noted wbicb one or more ûngers werc found to be eilher preseDt or above. Depenìing on the particular arrangem;nt desired, abseût i¡ ¿ny givet scaD, wilh û¡olion, or lack thereof, oflhe tnge¡ or, nngers across the touch serisor ir¡terspersed and the assãciared hardware, the X and Y coåpute processei
mây be performed sequenúaly io
vy'hile rhe torcgoing example describes idenrificalion of :i:r-y::l::Ît minima and maxima in rhe x -d y i"1"å'J apparent lhat ao analysis aloog a diagonal or some oùber ,;n.i angùlar directioú may be prefeÍed in soûe josla¡ces, aod is Referrhg ro FI6S- 7A_7R there is shown in diagram15 ma[c fon; an exmplâry sequence involving opeiative still within the scope of the p¡esent inve¡tion. It will bc apprcciâlcd thât the foregoing describes a new coupling of a plurality ;f fingersïth a touch seo-*. io aDd ìrseful method and âpparafus for detecliDg a pluralily of both a -cursoì movément ãnd a cotrhol fuDclioD. "ouo More fiDgers operatively coupled to a toùch pad seDsor for specifrcâllf FlG. ?Ashows a sedes of ûovements ofone or enabìing a variety of moùse-like operatioDs. A second por- more flngers across a louch seDsor, inclùding various finger tion of the inventior iûvolves using the previously detectioû 20 taps. FIGS. 7B-7F show, fo¡ each of the nuûeric ¡efere¡ces methodology to perforrD various crÌsor úovement ard coriû FIC.74, ân exernplary video display, ar exeûplary trol lunclions similår Lo those well known 10 use¡s of positioû of oûe or more Angers on Lhe toùcbpad, andX and electronic mice and t¡ackballs. Y finger profrles appropriate to lhâl flnger contact. It will be As previoùsly noted, the flrst ûnger ís most commonly helpful to de6ne celain conventions used in FIGS. TA 7F associatd, ir the prior ân, with cursor movement, ¡rhile 25 beïore discùssiDg these flgures. In FIG. 7A-74 contact varioùs tappingmolions [e.g., tap ånd tap-â¡d-a ha]f] of¿hat btween a flDger and th touch pad is indicated by a solid flrst finger bave been impleúen¡ed to perform various circle within the flngertip; an abseDce of contact between â conlrol fuDclioDs. Unl
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?