`
`PER EO RAR
`
`CYPRESS SEMICONDUCTOR CORPORATION
`Internal Correspondence
`
`WW: 0949
`
`Date: 04/42/2009
`To: Michele Paparella (MPU)
`Author: Volodymyr Burkovskyy (bypo_ukr), Oleksandr Karpin (kool_ukr)
`Author File#: VICK#331
`Subject: Water Rejection for TMA300
`Category: CapSense, ITO, TMA300, Waterproof
`Distribution:
`fFO_APPS, ELG, IXP, YHW, DTY, TXP, FDU, SYK, TMD, PPKS,
`KOOL_UKR, MAPS_UKR, AKON_UKR, VASM_UKR, KULT_UKR
`
`PURPOSE
`
`
` perforce: §
`DESCRIPTION
`
`TMA300 Waterproof Problem
`Getting of water drops on the panel causes the RawData signals decreasing on wet
`sensors (VICKSS08).
`Hf signal decreasing is in the range of NoiseThreshold then Baseline
`
`signal slowly drops (see Figure 1 - a). HW signal decreasing is more then NoiseThreshold
`range then the Baselineis reinifialized by RAW data signal {see Figure 1 ~ b).
`
`Figure 1. Water Influence on RAW Data and Baseline Behavior
`
`(a)
`
`{b
`
`Page 1 of 7
`
`
`
`This behavior results in incorrect touch position calculation (er even false touch detection}
`after water on the panel clear up.
`
`ITMA200 Water Rejection Solution
`The simple water rejection solution may be based on NOT performing of the baseline
`reinitializing if Raw data is lower baseline by more than NoiseThreshold value. This allows
`disabling the baseline droppingafter the panel drying up (see Figure 2).
`
`Figure 2. Baseline Function Behavior without Reinitializing
`
`For some sensors the water may cause a RAWsignals decreasing is in the range of
`NoiseThreshold.
`in this case the Baseline signa! slowly drops. But after panel drying up
`the RAW data will be in NoiseThreshold range and baseline mechanism autornatically
`solves this problem.
`
`Solution Problem or Start-Up Issue
`if some capacitive object (finger, palm) was present on touchscreen during start-up
`(signals initialization) then RawData drops below Baseline at a value of touch response
`when finger releases the panel (see Figure 3)
`
`Figure 3 Start-Up Issue with Finger/Palm Presented on the Panel during initialization
`
`Page 2 of 7
`
`
`
`in TMA3G0 UMthe baseline reset was special entered to avoid this prablem with baselines
`when touch was at a panel during start up. It resets Baseline to a new RawData level if
`RawData drops below the Baseline at a value higher than NoiseThreshold (see Figure 4).
`
`Figure 4. Baseline Reset in Current TMA300 UM (Panel was Touched on Start-Up)
`
`
`
`ane Rawiate ©
`nee
`
`(Baseline.ee-
`Date
`Figure 5. Differences in amplitudes
`
`Presence of fingers (palm) on the panel during initialization cause RawData falling below
`Baseline when panel gets free from fingers. The value of RawData changes is much
`higher than threshold and baselines are reset in standard UM realization.
`
`Assumption’ Touch response must be higher than water influence on RAW data
`{see Figure 5). in this case it's possible separate touch on start up and waterinfluence.
`
`Page 3 of 7
`
`
`
`Stari-Up Issue Solution: To separate fingers presence on the start up from water drops
`influence it's proposed reset baselines for all sensors with RawDatalower than baselineif
`
`at least one signal exceeded specified NegativeWaterThreshold level.
`
`
`
`in addition (fo prevent problems from slow finger/paim touch up) after
`NegativeWaterThreshold condition detectionit is proposed fo continue reset baselines for.
`all sensors with RawData lower than baseline whileat least one such signal exist after last
`
`
`
`panel scanning.
`
`perform Baseline reinifializing
`Water Rejection Solution: It's proposed don’t
`if Raw data
`
`Grops below the Baseline by more than NoiseThreshold value but don't exceed specific
`
`NegativeWaterThreshold level.
`
`The flowchart for proposed water rejection method with start-up issue solution is show
`below:
`
`Page 4 af 7
`
`
`
`Figure 6. Flowchart for Proposed Water Rejection Method with Start-Up issue Solution
`Siete)‘
`,
`
`oY atoo + NoizeThreshold
`CapSense inidialization
`{. Bsidets Baseiines}
`AOONRARARRERIRIRANEDOORIOODOINNIIIIBaseliog
`fiuisie Besaiines}
`&>
`oe eer ee ee ee ee» NineThreshott
`
`
`
`<>
`
`BsLixistsSesatinall?
` fDost ingisive Basolnall
`
`
`
`
`nea
`
`CapSense scanning of
`all sensors
` i
`
`_+
`
`
`> CheckStartUpTouch}
`
`
`UpcateRaseline()
`
`N
`poeererneene
`¢
`
`i
`:
`
`.
`
`
`
`
`'}|}}!||
`
`prenrrressscessses
`
`\
`y
`t
`
`3t
`
`a
`:
`‘
`y
`y
`:
`;
`
`
`
`hs
`Rares
`.
`ae
`vg ca
`-NolseThrashuld<>Rawliaiait<*+HoigeThimstotd >
`_
`wD
`en,
`en
`a
`é
`4
`=
`=fag
`
`_
`
`,4¥
`
`/
`tennantnate:
`i
`t
`o
`:
`:
`
`‘
`Update Basetinally
`a
`avin
`
`~
`a
`tf
`ii
`+
`y
`.
`v
`i
`wet [Ss
`an
`:
`
`
`
`{
`:
`:
`Ca
`
`
`
`‘
`:
`i
`
`tcitett
`.
`
`
`Note that yellow filed elements should be added to exist UM routine.
`
`Page 5 of 7
`
`
`
`
`
`itis detected then with scanningfrequency increasing for TMA120/TMA300 the touch
`response is increased and water influence is decreased.
`
`This feature should be used to make maximum difference between touch signal and signa!
`caused by water.
`
`There is not significant reaction on water drops - close to 5-15%to signal on touch when
`scanning frequency is high (TMA300 close to 7%, TMA120 ~15% with TSCAN=83.3us,
`
`Precharge frequency 0.96MHz; see memo VICKX208, Table 1, Figure 4)~ see Figure 7-8.
`
`
`Figure 7 Small Water Influence using High Scanning Frequency
`
`
`
`
` Oeminis
`
`Figure 8 Signals Reaction on Water Drops for DVK CY3290 with Different Prescaler
`Values
`x. 128 Subsonv:2; Cycles:8: 5V |
`
`rescaler. 34,Subconv:2. Cycles: 8, 6V
`
`t
`
`Page 6 of 7
`
`
`
`CONCLUSION
`
`1. Proposed water rejection method requires touch response signal higher than water
`influence or RAW data. The practical tests show good behavior of proposed
`method. The video and codes are located on perforce:
`.
`
`
`
`
`2. By using proposed method it's impossible fo solve start-up issue and waterproof
`togetherif the finger touch respanseIs close to signal changing that Is caused by
`water drop.
`
`3. The precharge frequency increasing result in negative signals reaction decreasing
`on water drops. So more preferred is to work on higher precharge frequencies.
`
`4. Wetfingers tracking result in touch active area increasing (See Figure 8). Also the
`several
`local maximum occurred and it is possible to detect several fingera by
`standard routine. For solve this issues the special algorithms should be used. The
`next actions will be devoted to wetfingers tracking solution for TMA300.
`
`Page 7 of 7
`
`
`
` =e 7CYPRESS
`
`
`PER FORM
`
`CYPRESS SEMICONDUCTOR CORPORATION
`internal Correspondence
`
`WW: 0924
`
`Date: 5/21/2009
`To: Michele Paparella (MPU)
`Author: VICK, Oleksandr Karpin (KOOL_UKR)}, Taras Kulyk (KULT_UKR)
`Author File#: VICK#207
`Subject: Waterproof for Krypton/TST200/TMG200
`Category: CapSense, ITO, Shield, Krypton, TST200, TMG200, Waterproof
`Nistribution: FFO_ALL, GOKK, VUD, OID, RXE ELG, SNV, XP, YHW, OLR, OFL, DTV,
`SXF, TXP, RB, RMG, YOM, VICD, PKSO_UKR
`
`
`Purpose
`
`This memo
`continuous VICKSI?F and
`represent
`the waterproof
`realization
`in
`Kryptan/TST200/TMG200. propeedssolution is not universal but can show good results for
`some designs. The universal waterproof realization requires silicon changes according to
`
`
`
`Summary of Results
`
`1. Waterproof realization basic concepts:
`
`in new realization to provide water influence
`» Shield signal must be present
`elimination. The idea and basic concepts of
`shield electrode using for
`touchscreen should be taken from memo HMTTMPS8oo..
`
`* The shield signal
`in Krypton/TST200/TMG200 must be carrying to all non-
`scanned lines. For this purpose the parasitic capacitance between Shield layer
`and sensors can be used. If shield layer is absent or capacitance between shield
`jayer and sensors is too big then the adding additional extemal N-capacitors
`beiween shield signal and [TO lines must be used.
`
`2. Waterproof adding guide:
`» Use parasitic capacitance between shield layer and sensors or additional
`external N-capacitors befween shield signal and ITO lines for shield signal
`carrying,
`» Connect shield electrode as described in memo VICKS177:
`
`o Use P1[2] for shield electrode out.
`© Change precharge voltage from 1V fo 1.2V (CS_CR3and CMP_MUX}
`© Change shield signal level (on Portt) to 1.8V GO_CFG, |O_CFG2).
`
`Page 1 of 22
`
`
`
`» Implement “Waterproof scanning method” that connects all non-scanned
`sensors Hi-Z Analog. Note that “Standard scanning method” connects non-
`scanned sensors to GND.
`.
`
`‘*"
`
`if RAW signalis equal or close to zero far “Waterproof scanning method” then
`this shows the “strong” shield effect (see memos VICKS417 and APBSSET?FD.
`To solve this problem the shield signal level should be decreased by external
`resistorsor capacitors divider (see Figure 1). ideal case ~ precharge voltage
`is equal to shield electrode valtage.
`
`Figure 1. Shield Electrode with LDO Voltage Decreasing by Divider
`
`
`
`* Select PWM or PRS CSD configurations for “Waterproof scanning method”
`{according to SNR, RF-immunity etc.) ~ see test results of memo below.
`
`3.
`
`is possible to use combination of these “Waterproof scanning method” and
`It
`
`
`‘Standard scanning method” — similar to TOPSS4. “Standard scanning method” is
`
`used for touch position calculation without water. Combination of methods allows
`detecting water drops. “Water-proof scanning method” is used for touch position
`calculation with water,
`
`Figure 2, Combination of Standard and Waterproof Methods Using
`Standard Scanning Method
`Waterproof Scanning Method
`\N
`
`
`
`WS«
`
`oS
`
`.
`
`Page 2 of 22
`
`
`
`
`
`Such technique implements waterproof sensing with RF immunity of standard
`method. But if requires 2 times longer scanning time, 2 times more RAM memoryfor
`RAW data and baselines and more complicated post processing.
`
`For faster scanning time it is possible to scan by the “Standard scanning method”the
`whole panel. If the touch/water is detected then it is needed to check on water by
`
`“Waterproof scanning method" for only one tine with local maxima. With water the
`
`“Waterproof scanning method” for the whole panel must be used and baselines for
`“Standard scanning method” must be not updated (the possible algorithm of this
`method is shown in appendix of this memo).
`
`4. “Water-proof scanning method" with PRS CSD configuration and prescaller value 4
`gives better results for HTC NBRAO3 panel than “Water-proof scanning method" with
`PWM (more detailed information about
`this panel
`is
`located on perforce
`
`HappapsowiTOsFrojactsATGNBRAQSTST) and memo VICKSi?2). Note that
`optimal prescaler value (or precharge frequency) for standard scanning method is 16
`and for waterproof scanning method with PWMis 8.
`
`The basic projects for this memowith water-proof scanning method based on PRS and
`PWM for Krypton/TST200/TMG200 are located on perforce:
`
`
`
`Page 3 of 22
`
`
`
`Experimental Setup
`
`The basic schematic af Krypton/TST200/TMG200 Waterproof Solution with [TO shield layer
`is shown on Figure 3:
`
`Figure 3, The Basic Schematic of Krypton/TST200/TMG200 Waterproof with Shield Layer
`
`Scanning PSeC TSTTMG200/Krypton
`
`orttnnnannnninna
`
`The basic schematic of waterproofrealization with external capacitors using for
`Krypton/TST200/TMG200 is shown on Figure 4:
`
`Figure 4. The Basic Schematic of Krypton/TST200/TMG200 Waterproof with External
`Capacitors
`
`Scanning PSoC TSTITMG200/Kryptan
`
`RC
`
`BRIDGE
`Ved
`
`
`Page 4 of 22
`
`
`
`The test setup of board with TMG200 module was built based on HTC NBRAOS panel (see
`Figure 5). Shield electrode is bullf in the (TO pane! below the sensors layers and connected
`fo pin P12.
`
`Figure §. Demo Board Photo
`
`“On Figure 6 is shown the scheme of connection Shield Electrode pin.
`choosing required pin in Device editor.
`
`it is preformed by
`
`Figure §. Shield Electrode Pin Selection in PSoC Designer
`3
`Ac
`Name
`
`
`
` Shield electrada pin.
`
`
`
`
`
`
`
` CAN
`
` TABFikesCon
`Rawliate Je
`
`
`
`
`
`oy£
`
`__ Rabie,
`aid? 18
`
`Actor Mistance Threshold18
`Acie Distanee Thee 10
`
`
`
`Page 5 af 22
`
`
`
`Configuration Schemes
`
`it is praposed such configuration schemes for tests:
`
`“Standard scanning scheme” - is current CSO/TST/TMG user modules realization with
`connection of all non-scanned sensors to GND. To minimize mismatch between shield
`signal and sensors precharge voltages the shield voliage is decreased to 1.8V and
`precharge voltage was increased fo 1.2V using corresponding registers (see memo
`errr
`aye
`a
`ne
`VEORS TS) (see Figure 7).
`
`
`Figure 7. Shield and Precharge Voliages for Used Standard Scanning
`
`
`
`
`
`Precharge voltage 1.2Y
`cee Shield signal valtage 1.6¥
`
`“Water-proof scanning scheme”. As Krypton/TST200/TMG200 devices don’t allow to output
`shieid signal to various pins, so to carry the shield signal the all non-scanned sensors is set
`fa Hi-Z Analog mode. As result some shield signal was present on the non-scanned pins
`{see Figure 8).
`
`Figure 8. Waterproof Scanning. Shield Signal Carrying
`
`«mee Yaxis searnning signals
`vom X axis seanning signals
`
`Page 6 of 22
`
`
`
`
`
`Note 4 that if shield layer is absent or capacitance betweenshield layer and sensors {s too
`big then the adding additional external N-capacitors between shield signal and ITO lines .
`
`must be used.
`
`Note 2 that If RAW signalis equal orclase fo zero then this shows the “strong” shield effect
`
`(see memos VICKET(? and VECKS(77). For solve this problem the shield signal level
`
`
`should be decreased by external resistors or capacitors divider (see Figure 9-10).
`
`Figure 9. Shield and Precharge Voltages
`
`pentane Precharge voltage 7.2V
`
`= Shield signal voltage 1.24¥
`
`
`Figure 10. Scanned, Shield and Carried Signals for Waterproof Scanning
`
`
`
`Shield’ Scanning signal
`
`
`
`Shield signal (1294
`
`Note 3 that PWM and PRS CSD configurations can be used with waterproof scanning.
`
`Page 7 of 22
`
`
`
`Test Results
`
`Table 1.
`
`Test Results of Differant Scann
`
`ing
`
`Schames
`
`be
`
`
`
`banaaaaameennnrnnennens
`
`§
`
`Pe
`is
`orn to
`§
`
`SS
`
`at
`
`inal
`
`Water-
`prow
`
`i?&GEee)Ao,iBeots
`SeeBeSn=OoAvwotoWhegosAGfaBtpeBe
`teEee.wet
`
`
`esi
`teaseii }
`
`
`
`preerereeerncenecacssestseeiitannmnnnnnenserenceseeasettnasnannenepmemncrnnnenreneergenrtepfgrreennnneenecnonanegnannnanssssnansstettyttiMyeeowt4iiSeGeEeii“omgfmoaoemr{teeREgeTeniI.iBwBm7GregSS86gai{A2}owBr!SsoioeiMotes2ATOuiatyamae
`timSuaa
`!ia2Djtpeecegeneecap
`Seawo)Se=x=io}~2.BS|
`S82+Sing
`bes=o.
`
`iHSs8SBefeBacthaemp>EeTHeemBleevetPLGewrBgmaei
`
`vo”awn2,gbeeSTMm
`g3ee5Peohvey3:+aig=og_£othe,Bos
`Bing¢‘DEpeoBeGEeGBs
`
`194ShxSsaoe=AasFtfaeadttd |eoeoeFylatGo.ohmemt
`iiB@babes|vs“saba=mannerree
`°Bo8#12Reee
`if,UGSb,ii
` ;
`
`4
`
`benennehenrcwtbenncnch
`
`i|
`
`Page § of 22
`
`
`
`
`
`
`
`
`Waterproof Tests
`
`The waterproof scanning method shows small positive reaction on the water drops and
`significant increasing of signal value for fouch in wet panel place — se Figure 11.
`
`Figure 11. Reaction on the Water of Waterproof Scanning Method (PRS 8bit, prescaler4)}
`
`The additional problem is that signal value for touch in wet panel place depends on water
`volume. These negative effects complicate the threshold technique realization, especially
`for two touches detection (as false touches may be occurred for touches in wef panel
`places aspanel sensitivity significantly increased).
`
`Page $ of 22
`
`
`
`Linearity Tests
`
`
`
`Linearity tests are performed by the finger with Standard scanning configuration
`(prescaler 16) and waterproof scanning with PRS, prescaler 4.
`Figure 12. Linearity Test
`STeerietrtSIaRRRNRERASRSSESEERR VEYAYEA
`t:
`Waterproof Scanning, PRS,
`Standard Scanning:
`Prescaler=4;
`Prescaler=16
`
`t ;
`
`t
`
`peneconreannnnanamananaaaaiananaaasgatnnnnererrrriweanaanentcnr
`Tauzh@enangraunded Ringer
`
`_Wett panel
`
`
`
`Note that the bad linearity mostly is caused by nose value increasing of waterproof
`scanning method with touch (see Figure13) and enlarging of the touch area with water
`
`present on the panel surface. Linearity of this panel with TST110 was shown in V :
`
`Figure 13. Noise increasing for Waterproof Sensing with Non-GND Object
`Standard Scanning
`Waterproof Scanning
`
`Touch by gecunded finger
`
`Touch hy Hen-praundad fingat
`
`Toush hy groundedfinger
`
`
`
`fiatatBaseline
`
`Page iC of 22
`
`
`
`RF immunity Tests
`
`for
`Results of RF immunity for standard scanning schemes are shown on Figure 14,
`waterproof scanning scheme with PWM - on Figure 12 and for waterproof scanning scheme
`with PRS - on Figures 13-14.
`
`Figure 11. RF immunity Test of Standard Scanning (prascaler = 8)
`
`Benet
`Soon3.
`
`Ten tees
`Rew Sowt §
`
`Fromehaed
`Eee
`+ RRL
`Gastar 2.
`++ Ropehecs
`Reseed
`ves Bente £
`Beasec 8
`+ Borate F
`
`Figure 12. RF immunity test of Waterproof Scanning with PWM (prescaler = 8)
`
`++ ROPRT
`Bassins: }
`
`Page 11 of 22
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Figure 13. RF immunity Test of Waterproof Scanning with PRS (PRS=8bit, prescaler = 2)
`
`Gente oF
`Saratn 82
`BNE,
`
`weeRaEES
`Reedy:
`we Sh Saba
`settee St?
`
`+ Sater
`PONDS
`SNSRovans &
`
`“Beanie tt
`URED
`metete t
`“eesteig 3a
`Soone th
`Basan $5
`shes
`+ Ree
`
`SARE SR ORR ERERPO ONS
`
`ene
`
`A
`
`.
`
`oo
`
`aectecncecjewnanaa
`
`ones
`
`Page 12 of 22
`
`
`
`The RF-
`balow
`
`RTHTIUN
`
`ty fest ons
`
`imp
`
`le mobile phone putted on the pane!
`
`iS
`
`shown on the }
`
`igure
`
`Figure 15. RF Immunity Test on Mobile Phone of Different Schemes
`
`Standart scann
`
`ith PWM
`ing wi
`
`Waterproof scanning PWM (Prescaler8)
`
`¥
`
`Waterproof scann
`
`{PRS 8b
`ing
`{as precharge source,
`prescaler 4)
`
`Water-proof scann
`
`i
`(PRS 8b
`tas precharge source,
`ing
`prescaler 2}
`
`
`
`Page 130
`
`‘hee
`
`mM
`
`OM
`
`
`
`
`
`Conclusion
`
`2.
`
`1. Krypton CSD/TST200/TMG200 “Standard Scanning Scheme” (non-scanned sensors
`are grounded) and “Waterproof Scanning Scheme* (non-scanned sensors are set to
`Hi-Z Analog and shield signal is carried fo them via capacitance — parasitic between
`shield and sensors layers or external capacitors) are considered in this memo.
`lf shield layer is absent or capacitance between shield layer and sensors is too big
`then the adding additional external N-capacitors between shield signal and [TO lines
`must be used. External capacitors can provide more predict
`results as their
`capacitance values can be appropriately defined for specific scanning parameters.
`3. For used demoboard the “Standard Scanning Scherne” based on prescaler value 16
`and "Waterproof Scanning Scheme” based on PRS with 4 prescaler value show the
`best results.
`
`4. Best “Standard Scanning Scheme” and “Waterproof Scanning Scheme” show the
`similar (see Table 1)
`> SNR
`» Negative Proximity Effect Value
`5. “Waterproof Scanning Scheme” drawbacks are:
`Significant increasing of signal value for touch in wet panel place
`Worse linearily
`Noise increasing with finger touch
`Worse RF-Immunity
`Signal increasing in positive direction for GSM frequency range noise
`8. “Standard Scanning Scheme’ drawbacks is:
`» No waterproof
`the fastest way of checking or
`is
`». Simple
`“Waterproof Scanning Scheme’
`demonstration to customer the possible Krypton CSD/TST200/TMG200 waterproof
`solution,
`5. The best solution for Krypton without silicon changes (according to VECRS$3)
`should be combination of these “Waterproof scanning method". and “Standard
`scanning method” ~ similar fo TOPS34.
`“Standard scanning method” is used for
`
`touch position calculation without water. Combination of methods allows detecting
`water drops. “Water-proof scanning method” is used for fouch position calculation
`with water.
`.
`
`vw
`
`wwwy
`
`?. For faster scanning timeif is possible fo scan by the “Standard scanning methoa"the
`whole panel.
`if the touch/water is detected then it is needed to check on water by
`“Waterproof scanning method” for only one fine with local maxima. With water the
`“Waterproof scanning method” for the whole panel must be used tthe possible
`algorithm of this method is shown In appendix of this merno).
`8. The results of this memo should be verified on different designs.
`
`Page 14 of 22
`
`
`
`Appendix 1: Combination of “Waterproof” and “Standard” Scanning
`Methods Basic Aigorithm
`enone
`—
`
`WP ~— Water-proofCstat>
`ST ~ Standard
`
`
`- Standart scanning
`CSOMSTAMGS
`
`CapSanse initialization
`
`
`
`
`
`Waterproof scanning for
`T local maxima sensar
`
`
`
`
`|
`
`
`
`
`is tauch WP _
`
`No (is Water}
`
`Yes (Is Touch)
`
`
`
`
`Resulis output according
`fo standard scanning
`
`
`SanEEnenee
`
`reo
`
`
`
`
`
`
`
`
`
`
`Water-proof scanning of
`whole panel
`
`
`
`or
`
`
`
`og Touch WP
`iy Tauch ST a_wen
`
`
`
`Resulis ouiput according
`to standard scanning
`
`
`Results output according
`to water-proof scanning
`
`Standard scanning of
`whole panel
`
`i
`
`Page 15 of 22
`
`
`
`Appendix 2: FingerThreshold Adaptive Adjustment Algorithm
`
`As was shown on the Figure 11 the significant increasing of signal value for touch in wet
`panel place exists. Also the signal value for touch in wet pane! place depends on water
`volume, These negative effects complicate the threshald technique realization, especially
`for two touches detection (as false touches may be occurred for touches in wet panel
`places as pane! sensitivity significantly increased). For solve these problems the adaptive
`Finger Threshold Adjustment Algorithm is proposed.
`
`The idea of this algorithm is to define significant increasing of sensitivity and recalculate
`finger threshold based on large RAW signals values. Such adaptive Finger Threshold
`Adjustment Algorithm should be used if more then one fingers are detected (as ane of them
`may be false detected touch).
`
`The place of adaptive Finger Threshold Adjustment Algorithm in post-processing is shown
`an the figure below andits realization is shown in Appendix 3.
`
`Page 16 of 22
`
`
`
`
`
`Sat shield electrode (1.8V ar 1.24} and
`
`precharge (1.2) valisges
`44
`
`
`
`beeeereres
`
`sensors dive modes ta Hi
`
`
`
`
`iritiatze sensors
`
`atten Sean sensor
` Set HiZ drive mode for already scanned sensor
`
`
`
`
`
`No
`
`Yes
`
`cot<aSANGINGATEscanned>oeoN
`
`ieneeecetenaneneneteny pon
`
`{{}
`
`:
`iSwitchte next sensor
`
`oenennnnnes
`
`|
`
`Gentroid caiculati
`
`——
`
`ALae
`a
`—eh than 1 fagers are detectedNo
`
`
`
`Yes
`
`
`
` FingarThreshold adjustment
`Z
`
`Canad calculation
`t8
`
`Restore defaudt Fingerhrestatd
` i
`
`Dale transmission vie communioaion iyvera|
`,
`
`
`
`Page 17 of 22
`
`
`
`Sample of Code
`
`
`
`yet
`
`vi
`
`ay
`
`IG CFG2
`iG CFG
`te
`
`void vwSet AllPinsHiz (3
`{
`
`Ro
`
`te
`
`4x
`
`Appendix
`
`3
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`BYTE bF
`
`a
`
`ndMaxSensorindex (BYTE bxY}
`
`we
`
`ACER
`
`cala
`
`i?
`—_voO
`
`eeeamm
`
`tnt
`
`Cs
`
`
`
`
`
`
`
`
`
`
`
`p~
`OR
`
`foot
`
`
`
` 4aeaHS4g»xGe4@Big=eG j
`
`ial
`
`Lee
`
`Baselines {}
`
`33i3
`
`3:
`
`34a434
`
`i
`
`seis gh
`
`<TMS SLIDER XE COUNT
`
`&
`
`$+}
`
`Re
`
`vers
`
`S{L=TMG SLIDER X COUNT
`
`7
`
`A<TMG PotalSenserCeaunt
`
`?
`
`a+)
`
`an
`
`neh*
`
`nes
`q
`23ATS
`
`*
`
`est
`
`at
`
`zi
`ET LON
`a
`
`hbteOE
`
`4ofbo
`
`:
`
`Ma
`3
`tee Ne
`
`Page 20 of 22
`
`Pp
`
`Pr
`
`yg
`im
`
`fheEh
`
`“ay
`
`us
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`aoosoR
`
`one)
`tod
`
`8ortnyodfaoaSa]Ga%éSgMHa“54ya“4¥ay:bdfyortot2of‘™
`;iBiaR$2s}A“8e4~
`Hoa.2wa
`rd™Iwe%ortigwe4soea~~«apdonetm8nebi
`bdwn4K+aeoct$Es4saowea4re!
`
`
`
`pa.aea>mo5&wetwe
`
`ta
`
`
`
`¢qooN
`
`f
`
`
`
` iNonsit2ooy.Bsaae°bos$55,2fryEhmspep):Sa
`
`yyas,
`
`
`
`
`
`
`
`
`
`
`ia
`
`sr {
`
`=g
`
`i
`
`EMGSLIDER X COUNT
`
`a.
`
`<IMGTotalsSenserCount
`
`x
`
`++}
`
`ay
`PMS
`
`.,
`
`2
`
`B
`
`PThreshaldad
`
`jus
`
`thant
`
`ote
`
`WHA
`MM
`
`osy SheDS
`
`sete
`oexy$4ft
`
`AQYia sk
`
`sgtae
`
`End of Document.
`
`tsanNNwfewsD..
`
`os
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ieee
`—_"
`SRRERGOONOUNOINOOON eACT
`
`y CYPRESS
`
`
`CYPRESS SEMICONDUCTOR CORPORATION
`infernal Correspondence
`
`WW: 0563
`
`1/12/2009
`Date:
`To: Michele Paparelia (MPU}
`Author: Oleksandr Karpin, Vasyl Mandziy
`Author File#: VICK#123
`Methods of Error Detection for Single-Touch
`Touchscreen/Touchpad Designs
`Category: CapSense, ITO, Touchscreen
`Distribution: TOALL, GOKK, VUD, O1D, RXE ELG, SNV, IXP, YHW, OLR,
`DPL, DTV, SXF, TXP, RD, RMG, YOM, VICD, PKSO_UKR
`a
`
`Subject:
`
`Purpose
`
`in this memo methods for paim/hand touch detection, two or more fingers detection and
`salt water
`identification during finger
`touch as error
`states
`for
`single-fouch
`touchscreen/touchpad designs are developed.
`
`Summary of Results
`
`4)
`
`2)
`
`The “Total Mass Meter” method was modified to reject palms, faces touches,
`two or more fingers touches, and saif water drop during finger touch
`identification as an error states and that does not have any absolute values
`as itis based on maximum value of difference signals.
`
`Method of two or more touches defection as error state for single-touch
`touchscreen/touchpad designs based on analyzing a signals shape was
`developed.
`
`Method for single-touch waterproof touchscreen/touchpad designs with stable
`painvhand touch detection,
`two or more fingers detection and salt water
`identification during finger touch as error states based an modified *Total
`Mass Meter" algorithm and based an analyzing a signals shape plus shield
`electrode using was proposed.
`
`Page tof 7
`
`
`
`Problems Overview
`
`When salt or not salt water Is dropped on the panel, signals increase to the level as
`finger touch (see Figure 1).
`
`
`
`Figure 1 Water Applied Without Shield Electrode Using
`
`Shield electrodes (are driven in the same phase with sensing electrode) were used for
`unscanned lines for water capacitive sensors protection (see AN2398) when salt or not
`salt water drop is putting on the panel (see Figure 2).
`
`
`
`
`
`
`
`EeyyWh
`Uhte Le
`
`
`hie
`
`
`
`
`
`i
`
`
`
`
`Figure 2 Water Applied When Shield Electrode is Using (No Touch Detected;
`The user actions with salt water produces error finger positions detection (see Figure
`3}.
`
`Figura 3 System Detects Faise Touch
`
`Page 2 of 7
`
`
`
`Paim/hand,
`
`two or more fingers touches must produce error states for single-touch
`
`Figure 4 Paim/Hand, Two or More Fingers Touches Must Produce Error States
`
`The “Total Mass Meter” aigorithm is used for rejecting false touches, paims, faces, water and
`other conditions (see Figure 5). This meter is used to determine whether or not to calculate the
`centroid. If the value of sum (diffdata) is too iow, the touch is considered noise and if this value
`is foo high, the touchis considered as an error siate:
`
`fouchscreen/touchpad designs (see Figure 4).
`
`
`isum (dijfdata} > massthreshold => errer
`
`
`
`Figure 5 Signals for the Case of Paim, Hand, Face Touches, or Salt Water with Finger
`Touch
`
`The “Total Mass Meter” algorithm requires setting an absolute value of mass_threshold.
`Such algorithm is not stable as depend on absolute value.
`Ht has problems with:
`incorrect user behaviors if RAW signals are weak or panel cells are big, correct user
`behaviors if RAW signals are strang (see Figure 8).
`
`Page 3 of 7
`
`
`
`
` adiedt clon.
`
`
`
`
`
`
`
`
`Figure6 Issues when “Total Mass Meter" Algorithm Is Used
`
`The problems of absolute value defining for “Total Mass Meter” algorithm are more
`significant as touchscreens use high resistance materials and signals on the beginning
`and on the end of lines can be different (see Figure 7).
`
`
`
`Figure 7 issues when “Total Mass Meter” Algorithm is Used for Touchscreens
`
`Typical single-touch applications (such as kiosks and gaming, automotive control
`panels, “wipe-clean” applications such as medical equipment, cash machines and other
`secure applications, ATMs, public access systerns, kitchen and bathroom applications,
`automatic faucets, dish and clothes washing machines} as rule require a big SNR and
`pane! size, it means that these applications have all of these problems.
`
`New Methods for Error Detection
`
`System does not have any absolute values for incorrect unpredictable user behaviors
`detection. Modification of the “Total Mass Meter’ method to remove dependence on
`absolute value is proposed.
`It should depend on maximal value of RAW difference
`signals max(difference signal}.
`ff
`the sum of difference signals is bigger
`then
`k*maxidifference signal) then it should be identified as error state (see Figure 8) k
`depends on structure (e.g. diamonds pitch size} and overlay dielectric constant and
`thickness.
`
`if surn (diff data) > k*max(difference signal} => error, where k > 4
`
`
`
`WEENay
`
`Figure & Error Touches Detection based on max(oifference signal}
`System must have a signals shape analyzing methods for detect problematic of
`incorrect user actions including iwo or more fingers touches with weak RAW signals
`
`isee Figure 8).
`
`Figure 9 Two Fingers Touches with Weak RAW Signals
`A difference RAW signals shape is analyzed: the difference signals from maximum
`signal position must go down fo both sides to end of pane! if signal does not less then
`noise threshold value (see Figure 10). If this situation is incorrect then f means several
`local maximums available and then two or more fingers and then error state for single
`touch devices (see script below).
`
`Page 5 af 7
`
`
`
`
`
`
`
`
`
`CASWAN
`ESSEAWN
`
`oy
`
`;e
`
`n
`
`reg ed
`
`t4
`
`aE
`
`Figure 10 Error Touches Detection based on Surface Analyzing
`
`=
`e
`*
`*
`*
`.
`*
`@
`*
`*
`e
`.
`»
`
`Find Position of Max Value (Pos),
`of (Pas0} {
`fer (i=Pos; bth i-) |
`if (Stgnalfi-l | > NoiseThreshold)
`ifignalli-d}>Sionalit} => Error
`
`:
`
`;
`if{Pos < ManxPas-3} 4
`for G=Pos; i<MaxPos-}:it+) {
`if (Stenallt+t] > NoiseThreshold)y
`if (Sigealfit+-1]>Signal]i]) => Error
`
`3
`»
`
`The result of this algorithm is shown on Figure 10 (see error messages}.
`Methodof using:
`*
`shield electrode plus
`*
`modified “Total Mass Meter’ algorithm pfus
`*
`signals shape analyzing method
`
`Page € of 7
`
`
`
`for single-touch waterproof touchscreen/touchpad designs with stable: palm/hand touch
`detection, two or more fingers detection and salt water identification during finger touch
`as error states is proposed too (see Figure 11).
`
`
`
`SOSeni
`
`
`
`Wister
`
`
`
`VB.
` %Bo
`
`
`isait}
`
`Figure 71 Results of Using Shieid Electrode Plus Modified “Total Mass Meter” Algorithm
`Plus Signals Shape Analyzing
`
`two or more fingers
`Using the proposed algorithms allow detect palm/hand touch,
`touches and salt water during finger
`touch as error states for
`single-fouch
`touchscreen/touchpad designs.
`
`Conclusion
`
`1. The proposed methods allow creating stable Cypress end solutions for single-
`touch waterproof touchscreen/touchpad designs (e.g. automotive contro! panels,
`kiosks and gaming, "wipe-ciean” applications such as medical equipment, ATMs,
`public access systems, white goods).
`
`2. Developed methods plus shield electrode using for single-touch waterproof
`touchscreen/touchpad designs allow:
`
`®
`
`*
`
`e
`
`detect paim/nandtouch and inform host about error states:
`
`touches
`two or more
`identify
`touchscreen/touchpad designs:
`
`as
`
`error
`
`states
`
`for
`
`single-touch
`
`detect salt water drop during finger fouch as error state.
`
`Page f af F
`
`
`
`
`HARASSED.ah=
`
`
`RN. ="
`
`FER PRA
`
`CYPRESSSEMICONDUCTOR CORPORATION
`internal Correspondence
`
`WW: 0938
`
`Date: 9/14/2009
`Yo: Michele Paparella (MPU)
`Author: TOP({Tony Park}
`Author File#: TOP#43
`Subject: Water tolerant sensing of Mutual vs SelfCap in Indium
`Category: Touch screen
`Distribution:
`ite_apps.vud
`
`SUMMARY
`The purpose of this memo shows test result of water tolerant sensing using mutual and selfcap in
`Indium. The testing scenarios are based on YHW's rnemo.
`
`SETUP
`: TPK ITO glass panel, 8 x 16 sensors
`: PSo: CYSCTMA3O0-48LTXI
`
`DETAILS
`Description of water tolerant sensing by YHW (memo: YHW-320}
`
`
`
` ' Wetfinger tracking |
`
`
`adry touchscreen
`{| on the touchscreen
`when contiguous
`when water droplets
`i with water droplets
`| are on the surface of
`water Rim covers
`
`
`
`{{
`touchscreen
`surface of
`}
`
`neeeuchscreen
`[Figure 1: Description of water tolerant sensing]
`Reliable touch sensing is defined as correctly displaying the absence/presence of a finger and its
`associated coordinate set ~ Fram YHW’s memo (YHW-320)
`
`
`
` 2CYPRESS
`
`PER FO ROM
`
`
`
`Self-Capimplementation into TMA project.
`
`i. Sensing architecture of Mutual and SelfCan
`To implement the self-cap into existing TMA project, cade was written manually. For the water
`tolerant sensing, unused all sansors are connected to shield out (TX channels} while RX channels
`are used for scanning, it’s as same as done in Neutron for water proofing.
`
`Cshield =aba
`
`4
`| SHIFT Em
`
`“|
`
`
`
`
`
` ;
`eit#2 CYPRESS
`
`.
`
`St.
`Sete
`
`PER EO BA
`
`2, Channel mapping of sample panei
`TPK sample panel is consisted of 8 cols and 16 rows. To scan all cals and rows, only 3 scanning
`process are required because of 8 channels scanning in parallel. Chanel mapping must be carefully
`considered during the schematic drawing and iayout design. Improper channel mapping will case to
`more scanning times,
`
`3. Scanning order and group status
`When group i is being scanned, the rest of groups are connected to shield drive. Same srocessing
`is happened for both group 2 and group3.
`
`
`
`_Shielddrive
`Shielddrive(Ty
`ce ORY
`
`oo
`
`eG
`
`POL:
`Snietd drivel?)
`Sean(RX}
`
`ive(TX
`
`
`
`
`
`Scan {ReO}} ’
`Scan (RX2} ———— Pamaacim
`ok
`oe
`
`_
`SRogspiesSomQgebe.Sistah
`s
`g
`s
`seanBCD eruedecaeoorranennn
`x
`
`HEREIN=
`SootseesSohodx3
`
` goeseeccon ehhhSAAN
`eteSooneetoomecms
`sssinoabsaaSaas
`SEOAh“eeeasSaidAAAS
`
`Saos
`
`
`
`[Figure 4 : Example of group #1 scanning ]
`
`4. APIs for SelfCap sensing
`Blow functions are the basic APIs which are in the source code. All of following APIs are not in the
`user module. If you have different panel with different configuration then the APIs must he
`modified for the application.
`
`TMA300SetPrescaler(SELE_CAP_PRESCALER}:;
`TMA300_SetSubconvlum(SELF_CAP_SBC_NUM);
`TMAI0