IP Library Granted Patent US 8,866,790
Granted Patent B2
US 8,866,790 · App. 12/255,620 · Granted Oct 21, 2014

Multi-touch tracking

Inventors: Martin Simmons (Southampton, GB); Daniel Pickett (Southampton, GB)
Assignee: Atmel Corporation
G06F3/044G06F3/04883G06F2203/04808G06F3/0416
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,866,790
App. No.
12/255,620
Granted
Oct 21, 2014
Kind
B2
Abstract

A method of tracking multiple touches over time on a touch sensor, for example a capacitive touch screen. The method analyzes first and second touch data sets from adjacent first and second time frames. First, the touch data sets are analyzed to determine the closest touch in the second time frame to each of the touches in the first time frame, and calculating the separation between each such pair of touches. Then, starting with the pair of touches having the smallest separation, each pair is validated until a pairing is attempted between touches for which the touch in the second time frame has already been paired. At this point, the as-yet unpaired touches from the first and second touch data sets are re-processed by re-applying the computations but only including the as-yet unpaired touches. This re-processing is iterated until no further pairings need to be made. The method avoids complex algebra and floating point operations, and has little memory requirement. As such it is ideally suited to implementation on a microcontroller.

Claims (51)

1. A method comprising:

determining, using one or more circuits, a first set of provisional pairings, each provisional pairing of the first set of provisional pairings comprising coordinates from a first set of coordinates and coordinates from a second set of coordinates, the first set of coordinates and the second set of coordinates corresponding to a plurality of touches detected by a touch sensor;

calculating a plurality of distances, each distance corresponding to a provisional pairing of the first set of provisional pairings;

validating, using the one or more circuits, a first provisional pairing of the first set of provisional pairings based on calculating the plurality of distances, the first provisional pairing comprising a first coordinate of the second set of coordinates;

determining, using the one or more circuits, that a second provisional pairing of the first set of provisional pairings is not valid in response to determining that:

the second provisional pairing comprises the same first coordinate as the first provisional pairing; and

the first provisional pairing has been validated; and

in response to determining that the second provisional pairing of the first set of provisional pairings is not valid, determining, using the one or more circuits, a second set of provisional pairings, each provisional pairing of the second set of provisional pairings comprising coordinates from the first set of coordinates and coordinates from the second set of coordinates.

2. The method of claim 1 , wherein validating the first provisional pairing comprises determining that a distance of the plurality of distances associated with the coordinates comprised by the first provisional pairing is less than a threshold.

3. The method of claim 1 , wherein the first set of coordinates correspond to a first time frame and the second set of coordinates correspond to a second time frame, the second time frame occurring after the first time frame.

4. The method of claim 1 , wherein each of the one or more circuits comprises one or more of the following:

a processor; and

a controller.

5. The method of claim 1 , wherein determining the second set of provisional pairings comprises determining the second set of provisional pairings such that the second set of provisional pairings do not include coordinates from the first provisional pairing.

6. The method of claim 1 , further comprising:

validating a third provisional pairing, the third provisional pairing included in the second set of provisional pairings;

identifying a gesture in response to validating the first provisional pairing and validating the third provisional pairing.

7. A system comprising:

a substrate;

a touch sensor disposed underneath the substrate, the touch sensor comprising a plurality of electrodes;

one or more circuits configured to:

determine a first set of provisional pairings, each provisional pairing of the first set of provisional pairings comprising coordinates from a first set of coordinates and coordinates from a second set of coordinates, the first set of coordinates and the second set of coordinates corresponding to a plurality of touches detected by the touch sensor;

calculate a plurality of distances, each distance corresponding to a provisional pairing, of the first set of provisional pairings;

validate a first provisional pairing of the first set of provisional pairings based on calculating the plurality of distances, the first provisional pairing comprising a first coordinate of the second set of coordinates;

determine that a second provisional pairing of the first set of provisional pairings is not valid in response to determining that:

the second provisional pairing comprises the same first coordinate as the first provisional pairing; and

the first provisional pairing has been validated; and

in response to determining that the second provisional pairing of the first set of provisional pairings is not valid, determine a second set of provisional pairings, each provisional pairing of the second set of provisional pairings comprising coordinates from the first set of coordinates and coordinates from the second set of coordinates.

8. The system of claim 7 , wherein the one or more circuits are configured to validate the first provisional pairing by determining that a distance of the plurality of distances associated with the coordinates comprised by the first provisional pairing is less than a threshold.

9. The system of claim 7 , wherein the first set of coordinates correspond to a first time frame and the second set of coordinates correspond to a second time frame, the second time frame occurring after the first time frame.

10. The system of claim 7 , wherein each of the one or more circuits comprises one or more of the following:

a processor; and

a controller.

11. The system of claim 7 , wherein the one or more circuits are configured to determine the second set of provisional pairings such that the second set of provisional pairings do not include coordinates from the first provisional pairing.

12. The system of claim 7 :

wherein the one or more circuits are further configured to validate a third provisional pairing, the third provisional pairing included in the second set of provisional pairings; and

further comprising a processor configured to identify a gesture in response to the one or more circuits validating the first provisional pairing and validating the third provisional pairing.

13. One or more circuits configured to:

determine a first set of provisional pairings, each provisional pairing of the first set of provisional pairings comprising coordinates from a first set of coordinates and coordinates from a second set of coordinates, the first set of coordinates and the second set of coordinates corresponding to a plurality of touches detected by a touch sensor;

calculate a plurality of distances, each distance corresponding to a provisional pairing of the first set of provisional pairings;

validate a first provisional pairing of the first set of provisional pairings based on calculating the plurality of distances, the first provisional pairing comprising a first coordinate of the second set of coordinates;

determine that a second provisional pairing of the first set of provisional pairings is not valid in response to determining that:

the second provisional pairing comprises the same first coordinate as the first provisional pairing; and

the first provisional pairing has been validated; and

in response to determining that the second provisional pairing of the first set of provisional pairings is not valid, determine a second set of provisional pairings, each provisional pairing of the second set of provisional pairings comprising coordinates from the first set of coordinates and coordinates from the second set of coordinates.

14. The one or more circuits of claim 13 , wherein the one or more circuits are configured to validate the first provisional pairing by determining that a distance of the plurality of distances associated with the coordinates comprised by the first provisional pairing is less than a threshold.

15. The one or more circuits of claim 13 , wherein the first set of coordinates correspond to a first time frame and the second set of coordinates correspond to a second time frame, the second time frame occurring after the first time frame.

16. The one or more circuits of claim 13 , wherein the one or more circuits are configured to determine second set of provisional pairings such that the second set of provisional pairings do not include coordinates from the first provisional pairing.

17. The one or more circuits of claim 13 , wherein the one or more circuits are further configured to:

validate a third provisional pairing, the third provisional pairing included in the second set of provisional pairings; and

identify a gesture in response to validating the first provisional pairing and validating the third provisional pairing.

Assignments (15)
RELEASE OF SECURITY INTEREST Recorded Mar 9, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059358/0001 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: ATMEL CORPORATION
Reel/Frame 059262/0105 →
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059333/0222 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2019
From: MICROCHIP TECHNOLOGY INC.; ATMEL CORPORATION; MICROCHIP TECHNOLOGY GERMANY GMBH
To: NEODRÓN LIMITED
Reel/Frame 048259/0840 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENT RIGHTS Recorded Dec 21, 2018
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; ATMEL CORPORATION
Reel/Frame 047976/0884 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENT RIGHTS Recorded Dec 21, 2018
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; ATMEL CORPORATION
Reel/Frame 047976/0937 →
SECURITY INTEREST Recorded Sep 18, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 047103/0206 →
SECURITY INTEREST Recorded Jun 25, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 046426/0001 →
SECURITY INTEREST Recorded Feb 10, 2017
From: ATMEL CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041715/0747 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Apr 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ATMEL CORPORATION
Reel/Frame 038376/0001 →
PATENT SECURITY AGREEMENT Recorded Jan 3, 2014
From: ATMEL CORPORATION
To: MORGAN STANLEY SENIOR FUNDING, INC. AS ADMINISTRATIVE AGENT
Reel/Frame 031912/0173 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2009
From: QRG LIMITED
To: ATMEL CORPORATION
Reel/Frame 023656/0538 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2009
From: SIMMONS, MARTIN JOHN; PICKETT, DANIEL
To: QRG LIMITED
Reel/Frame 023650/0670 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2009
From: QRG LIMITED
To: ATMEL CORPORATION
Reel/Frame 022610/0350 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2009
From: QRG LIMITED
To: ATMEL CORPORATION
Reel/Frame 022783/0804 →
Continuity (1)
Related Publication 20100097342A1 · Apr 22, 2010