mXT1664T2-C2U 1v1 Datasheet DX
mXT1664T2-C2U 1v1 Datasheet DX
Revision 1.1
DATASHEET
Features
9998DX–AT42–02/15
Features
Keys
Up to 64 nodes can be allocated as mutual capacitance sensor keys (subject to other configurations)
Adjacent Key Suppression® (AKS®) technology is supported for false touch prevention
Power Saving
Programmable timeout for automatic transition from active to idle states
Pipelined analog sensing detection and digital processing to optimize system power efficiency
Application Interfaces
I2C-compatible slave mode: Standard/Fast mode 400 kHz, Fast-plus mode 1 MHz, High-speed mode up to 3.4 MHz
USB composite device, full speed (12 Mbps)
HID-I2C interface for Microsoft® Windows® 8.x
Interrupt to indicate when a message is available
Power Supply
Digital (Vdd) 3.3 V nominal
Analog (AVdd) 3.3 V nominal
Host interface I/O voltage (VddIO) 1.8 V to 3.3 V nominal
High voltage external X line drive (XVdd) 10.5 V maximum (1)
Package
162-ball UFBGA 10 × 5 × 0.6 mm, 0.5 mm pitch
Environmental Conditions
Operating temperature –40C to +85C
1. This is an Absolute Maximum value – the Nominal value must be set lower to allow for component tolerances.
Table of Contents
Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Table of Contents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1. Overview of mXT1664T2-C2U . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3. Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1 UFBGA 162 Balls – I2C Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 UFBGA 162 Balls – USB Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3 Schematic Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4. Circuit Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.1 Decoupling Capacitors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2 I2C Line Pull-up Resistors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3 Supply Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.4 Oscillator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.5 Suggested Voltage Regulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5. Touchscreen Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.1 Sensor Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2 Electrode Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.3 Scanning Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.4 Touchscreen Sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
6. Sensor Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.1 Mutual Capacitance Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8. Detailed Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.1 Touch Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.2 Operational Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.3 Detection Integrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.4 Sensor Acquisition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.5 Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
8.6 Digital Filtering and Noise Suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8.7 Shieldless Support and Display Noise Suppression. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8.8 Retransmission Compensation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8.9 Grip Suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
8.10 Lens Bending . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
8.11 Glove Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
8.12 Stylus Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
8.13 Unintentional Touch Suppression. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
8.14 Adjacent Key Suppression Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
8.15 GPIO Pins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
9. Host Communications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
9.1 Communication Mode Selection (COMMSEL Pin) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
9.2 I2C Mode Selection (I2CMODE Pin) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
9.3 I2C Address Selection (ADDSEL Pin). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
15. Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
16. Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
16.1 Absolute Maximum Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
16.2 Recommended Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
16.3 Test Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
16.4 Current Consumption – I2C Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
16.5 Current Consumption – USB Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
16.6 Deep Sleep Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
16.7 Power Supply Ripple and Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
16.8 Timing Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
16.9 Input/Output Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
16.10 I2C Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
16.11 USB Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
16.12 HID-I2C Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
16.13 Touch Accuracy and Repeatability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
16.14 Thermal Packaging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
16.15 ESD Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
16.16 Soldering Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
16.17 Moisture Sensitivity Level (MSL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
1. Overview of mXT1664T2-C2U
1.1 Introduction
The Atmel maXTouch family of touch controllers brings industry-leading capacitive touch performance to customer
applications. The mXT1664T2-C2U features the latest generation of Atmel Adaptive Sensing technology that utilizes a
hybrid mutual- and self-capacitive sensing system in order to deliver unparalleled touch features and a robust user
experience.
Patented capacitive sensing method – The mXT1664T2-C2U uses a unique charge-transfer acquisition engine
to implement the Atmel-patented QMatrix® capacitive sensing method. Coupled with a state-of-the-art CPU, the
entire touchscreen sensing solution can measure, classify and track number of individual finger touches with a
high degree of accuracy in the shortest response time.
Capacitive Touch Engine (CTE) – The mXT1664T2-C2U features an acquisition engine, which uses an optimal
measurement approach to ensure almost complete immunity from parasitic capacitance on the receiver input lines.
The engine includes sufficient dynamic range to cope with anticipated touchscreen self and mutual capacitances,
which allows great flexibility for use with the Atmel proprietary sensor pattern designs. One- and two-layer ITO
sensors are possible using glass or PET substrates.
Touch detection – The mXT1664T2-C2U allows for both mutual- and self-capacitance measurements, with the
self-capacitance measurements being used to augment the mutual-capacitance measurements to produce reliable
touch information.
When self-capacitance measurements are enabled, touch classification is achieved using both mutual- and self-
capacitance touch data. This has the advantage that both types of measurement systems can work together to
detect touches under a wide variety of circumstances.
During idle mode, the device performs self-capacitance touch scans. When a touch is detected, the device starts
performing mutual-capacitance touch scans as well as self capacitance scans.
Mutual-capacitance touch data is used wherever possible to classify touches as this has greater granularity than
self-capacitance measurements and provides positional information on touches. For this reason, multiple touches
can only be determined by mutual-capacitance touch data. If the self-capacitance touch processing detects
multiple touches, touchscreen processing is skipped until mutual-capacitance touch data is available.
Self-capacitance measurements, on the other hand, allow for the detection of single touches in extreme case,
such as single thick-glove touches, when touches can only be detected by self-capacitance data and may be
missed by mutual-capacitance touch detection.
Display Noise Cancellation – A combination of analog circuitry, hardware noise processing, and firmware that
combats display noise without requiring additional listening channels or synchronization to display timing. This
enables the use of shieldless touch sensor stacks, including touch-on-lens.
Noise filtering – Hardware noise processing in the capacitive touch engine provides enhanced autonomous
filtering and allows a broad range of noise profiles to be handled. The result is good performance in the presence
of charger and LCD noise.
Processing power – The main CPU has two powerful microsequencer coprocessors under its control consuming
low power. This system allows the signal acquisition, preprocessing, postprocessing and housekeeping to be
partitioned in an efficient and flexible way.
Interpreting user intention – The Atmel hybrid mutual- and self-capacitance method provides unambiguous
multitouch performance. Algorithms in the mXT1664T2-C2U provide optimized touchscreen position filtering for
the smooth tracking of touches, responding to a user's intended touches while preventing false touch triggered by
ambient noise or conductive material on the sensor surface, such as water. The suppression of unintentional
touches from the user’s gripping fingers, resting palm or touching cheek or ear also help ensure that the user’s
intentions are correctly interpreted.
2.1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
A
SCL RESET VDDIO DS0 Y68 Y64 Y60 AVDD GND Y50 Y46 Y42 AVDD GND X38 X39 X40 RSVD RSVD
B
SDA USBDM GND Y70 Y67 Y63 Y59 Y56 Y53 Y49 Y45 Y41 Y38 VDDCORE X33 X34 X35 X36 X37
C
USBDP COMMSEL AVDD Y69 Y66 Y62 Y58 Y55 Y52 Y48 Y44 Y40 Y37 GND X28 X29 X30 X31 X32
Connection and Configuration Information
ADDSEL
D
I2CMODE NOISE_IN GND GND Y65 Y61 Y57 Y54 Y51 Y47 Y43 Y39 Y36 XVDD X23 X24 X25 X26 X27
Pin Configuration – UFBGA 162 Balls
E
CHG DBG_SS AVDD GND GND GND X19 X20 X21 X22
GPIO0
Connection and Configuration Information
F
GPIO1 GPIO2 GND GND Y29 Y25 Y21 Y18 Y15 Y11 Y7 Y3 Y0 XVDD X14 X15 X16 X17 X18
G
GPIO3 GPIO4 VDDIO Y33 Y30 Y26 Y22 Y19 Y16 Y12 Y8 Y4 Y1 GND X9 X10 X11 X12 X13
H
GPIO5 DBG_CLK VDDIN Y34 Y31 Y27 Y23 Y20 Y17 Y13 Y9 Y5 Y2 XVDD X4 X5 X6 X7 X8
XIN
J
DBG_DATA TEST VDDCORE Y35 Y32 Y28 Y24 AVDD GND Y14 Y10 Y6 AVDD GND VREGBOOST X0 X1 X2 X3
XOUT
9998DX–AT42–02/15
mXT1664T2-C2U 1.1 [Datasheet]
Top View
7
Connection and Configuration Information
A4 DS0 O Driven Shield signal; used as guard track between X/Y signals and Leave open
ground
A9 GND P Ground –
B3 GND P Ground –
D3 GND P Ground –
D4 GND P Ground –
E4 GND P Ground –
E5 GND P Ground –
...
F3 GND P Ground –
F4 GND P Ground –
J9 GND P Ground –
Key:
I Input only O Output only I/O Input or output
OD Open drain output P Ground or power S Sense pin
3. Schematic
VDD
22nF
AVDD
VDDIO GND
22nF
2.2uF
GND
1uF
See Notes GND
VDDIO XVDD
GND
2.2uF
Y70
Y69
Y68
Y67
Y66
Y65
Y64
Y63
Y62
Y61
Y60
Y59
Y58
Y57
Y56
Y55
Y54
Y53
Y52
Y51
Y50
Y49
Y48
Y47
Y46
Y45
Y44
Y43
Y42
Y41
Y40
Y39
Y38
Y37
Y36
10k
D14
H14
A13
A10
D10
A11
D11
A12
D12
D13
B14
B10
C10
B11
C11
B12
C12
B13
C13
F14
J13
A8
H3
A3
G3
A5
D5
A6
D6
A7
D7
D8
D9
C3
B4
C4
B5
C5
B6
C6
B7
C7
B8
C8
B9
C9
E3
J8
J3
GND XVDD
XVDD
XVDD
AVDD
AVDD
AVDD
AVDD
AVDD
AVDD
VDDIN
VDDIO
VDDIO
VDDCORE
VDDCORE
Y70
Y69
Y68
Y67
Y66
Y65
Y64
Y63
Y62
Y61
Y60
Y59
Y58
Y57
Y56
Y55
Y54
Y53
Y52
Y51
Y50
Y49
Y48
Y47
Y46
Y45
Y44
Y43
Y42
Y41
Y40
Y39
Y38
Y37
Y36
J2
TEST
GPIO0/DBG_SS E2 J16 X0
GPIO0/DBG_SS X0
J17 X1
X1
J18 X2
X2
VDDIO J19 X3
X3
GPIO1 F1 H15 X4
GPIO1 X4
H16 X5
X5
GPIO2 F2 H17 X6
3.3k 3.3k 3.3k GPIO2 X6
H18 X7
X7
H19 X8
X8
G15 X9
X9
SCL A1 G16 X10
SCL X10
G17 X11
X11
SDA B1 G18 X12
SDA X12
G19 X13
X13
CHG E1 F15 X14
CHG X14
F16 X15
X15
F17 X16
X16
F18 X17
X17
GPIO5 H1 F19 X18
GPIO5 X18
E16 X19
X19
See Notes ADDSEL C1 E17 X20
ADDSEL/USBDP X20
E18 X21
X21
B2
USBDM mXT1664T2-C2U X22
E19
D15
X22
X23
X23
GPIO3 G1 D16 X24
GPIO3 X24
D17 X25
X25
D18 X26
X26
D19 X27
X27
COMMSEL C2 C15 X28
COMMSEL X28
C16 X29
X29
I2CMODE D1 C17 X30
I2CMODE X30
GND C18 X31
X31
NOISE_IN D2 C19 X32
NOISE_IN X32
B15 X33
X33
VDDIO GPIO4 G2 B16 X34
GPIO4 X34
B17 X35
X35
B18 X36
X36
B19 X37
X37
10k DBG_CLK H2
DBG_CLK/XIN X38
A15 X38
A16 X39
X39
DBG_DATA J1 A17 X40
DBG_DATA/XOUT X40
RESET A2
RESET
A4 DRIVEN_SHIELD
DS0
VREGBOOST
Creset A18
RSVD
10nF RSVD
A19
See Notes
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
Y35
Y34
Y33
Y32
Y31
Y30
Y29
Y28
Y27
Y26
Y25
Y24
Y23
Y22
Y21
Y20
Y19
Y18
Y17
Y16
Y15
Y14
Y13
Y12
Y11
Y10
Y9
Y8
Y7
Y6
Y5
Y4
Y3
Y2
Y1
Y0
GND
VREGBOOST J15
D4
E4
E5
A9
A14
B3
C14
D3
E15
F3
F4
G14
J9
J14
J4
H4
G4
J5
H5
G5
F5
J6
H6
G6
F6
J7
H7
G7
F7
H8
G8
F8
H9
G9
F9
J10
H10
G10
F10
J11
H11
G11
F11
J12
H12
G12
F12
H13
G13
F13
Y35
Y34
Y33
Y32
Y31
Y30
Y29
Y28
Y27
Y26
Y25
Y24
Y23
Y22
Y21
Y20
Y19
Y18
Y17
Y16
Y15
Y14
Y13
Y12
Y11
Y10
Y9
Y8
Y7
Y6
Y5
Y4
Y3
Y2
Y1
Y0
GND
See Notes
22nF
AVDD
GND
VDDIO 22nF
2.2uF
1uF GND
XVDD GND
GND
2.2uF
Y70
Y69
Y68
Y67
Y66
Y65
Y64
Y63
Y62
Y61
Y60
Y59
Y58
Y57
Y56
Y55
Y54
Y53
Y52
Y51
Y50
Y49
Y48
Y47
Y46
Y45
Y44
Y43
Y42
Y41
Y40
Y39
Y38
Y37
Y36
D14
H14
A13
A10
D10
A11
D11
A12
D12
D13
B14
B10
C10
B11
C11
B12
C12
B13
C13
F14
J13
A8
H3
A3
G3
A5
D5
A6
D6
A7
D7
D8
D9
C3
B4
C4
B5
C5
B6
C6
B7
C7
B8
C8
B9
C9
E3
J8
J3
GND
XVDD
XVDD
XVDD
AVDD
AVDD
AVDD
AVDD
AVDD
AVDD
VDDIN
VDDIO
VDDIO
VDDCORE
VDDCORE
Y70
Y69
Y68
Y67
Y66
Y65
Y64
Y63
Y62
Y61
Y60
Y59
Y58
Y57
Y56
Y55
Y54
Y53
Y52
Y51
Y50
Y49
Y48
Y47
Y46
Y45
Y44
Y43
Y42
Y41
Y40
Y39
Y38
Y37
Y36
J2
TEST
GPIO0 E2 J16 X0
GPIO0/DBG_SS X0
J17 X1
X1
J18 X2
VDDIO X2
J19 X3
X3
GPIO1 F1 H15 X4
GPIO1 X4
H16 X5
X5
3.3k 3.3k 3.3k GPIO2 F2
GPIO2 X6
H17 X6
H18 X7
X7
H19 X8
X8
G15 X9
X9
SCL A1 G16 X10
SCL X10
G17 X11
X11
SDA B1 G18 X12
SDA X12
G19 X13
X13
CHG E1 F15 X14
CHG X14
F16 X15
X15
GPIO4 G2 F17 X16
GPIO4 X16
F18 X17
X17
GPIO5 H1 F19 X18
GPIO5 X18
E16 X19
X19
USBDP C1 E17 X20
ADDSEL/USBDP X20
E18 X21
X21
USBDM B2
USBDM
mXT1664T2-C2U X22
E19 X22
D15 X23
X23
NOISE_IN D2 D16 X24
NOISE_IN X24
D17 X25
X25
GPIO3 G1 D18 X26
GPIO3 X26
D19 X27
VDDIO X27
C15 X28
C2 X28
COMMSEL C16 X29
X29
D1 C17 X30
I2CMODE X30
C18 X31
X31
C19 X32
X32
B15 X33
X33
GND B16 X34
X34
B17 X35
X35
H2 B18 X36
DBG_CLK/XIN X36
B19 X37
X37
15pF X38
A15 X38
1
10k J1
DBG_DATA/XOUT DS0
A4 DRIVEN SHIELD
15pF RSVD
A18
A19
GND RSVD
RESET A2
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
RESET
Y35
Y34
Y33
Y32
Y31
Y30
Y29
Y28
Y27
Y26
Y25
Y24
Y23
Y22
Y21
Y20
Y19
Y18
Y17
Y16
Y15
Y14
Y13
Y12
Y11
Y10
Y9
Y8
Y7
Y6
Y5
Y4
Y3
Y2
Y1
Y0
Creset
10nF
VREGBOOST J15
D4
E4
E5
A9
A14
B3
C14
D3
E15
F3
F4
G14
J9
J14
J4
H4
G4
J5
H5
G5
F5
J6
H6
G6
F6
J7
H7
G7
F7
H8
G8
F8
H9
G9
F9
J10
H10
G10
F10
J11
H11
G11
F11
J12
H12
G12
F12
H13
G13
F13
See Notes
GND
Y35
Y34
Y33
Y32
Y31
Y30
Y29
Y28
Y27
Y26
Y25
Y24
Y23
Y22
Y21
Y20
Y19
Y18
Y17
Y16
Y15
Y14
Y13
Y12
Y11
Y10
Y9
Y8
Y7
Y6
Y5
Y4
Y3
Y2
Y1
Y0
GND
See Notes
3.3.2 VDDCORE
VddCore is internally generated from the Vdd 3.3 V power supply. To guarantee stability of the internal voltage regulator,
a minimum value of 1 µF must be used for decoupling on VDDCORE.
22 nF 2.2 µF
GND GND
VDDIO
22 nF
AVDD GND
2.2 µF 1 µF
22 nF 22 nF
GND GND
XVDD
XVDD
XVDD
VDD
VDDCORE
VDDIO
VDDIO
number and location
of balls for each
supply.
NOTES: 1. Additional base capacitors may be required if balls are widely separated.
2. Recommended additional decoupling capacitors are shown in blue
AVDD/VDD/VDDIO/VDDHV
4
BYP
3
6
7
Where poor or inadequate tracking or decoupling leads to high noise levels on the supply rails, Atmel recommends that a
separate low drop-out voltage regulator supply is used for the AVdd supply.
See Section 4.5 on page 20 for further details. A list of approved regulators is given in Table 4-1 on page 21.
VDDHV L1 D1 XVDD
1 3
10 R 10uH
2.2uF 22nF 10uF 50V
3
GND
GND
Q1
1
Cboost 47 R
33pF 50V 33pF
2
DNF - See note below
GND
GND GND
Notes: 1. Do not fit capacitor Cboost but make provision for it next to the VREGBOOST
ball. This capacitor may be required to minimize RF noise issues.
2. See Section 3.3.7.1 for suggested suppliers for L1 and Q1.
Manufacturer Device
Various BAT54M3TG5
Various 1N4148WX
L1 is a 10 µH inductor in a 1812 case. Possible suppliers are shown in Table 3-2 on page 18.
:
Manufacturer Device
Panasonic ELJFB100JF
TDK MLZ1608M100WT
TDK MLZ2012M100WT000
Q1 is an N-channel 20 V, 700 mA, MOSFET. Possible suppliers are shown in Table 3-3.
:
Manufacturer Device
ON Semiconductor NTA4153NT1G
Toshiba SSM3K56FS
NXP PMR290UNE
(Note: NXP do not recommend use in new designs)
4. Circuit Components
4.4 Oscillator
A 16 MHz crystal oscillator must be connected to the device when the device is operating in USB mode. A crystal
oscillator with a minimum accuracy of 100 ppm must be used.
An external oscillator is not needed in I2C mode.
5. Touchscreen Basics
5.4.1 Adjustment
Sensitivity of touchscreens can vary across the extents of the electrode pattern due to natural differences in the parasitic
capacitance of the interconnections, control chip, and so on. An important factor in the uniformity of sensitivity is the
electrode design itself. It is a natural consequence of a touchscreen pattern that the edges form a discontinuity and
hence tend to have a different sensitivity. The electrodes at the far edges do not have a neighboring electrode on one
side and this affects the electric field distribution in that region.
A sensitivity adjustment is available for the whole touchscreen. This adjustment is a basic algorithmic threshold that
defines when a node is considered to have enough signal change to qualify as being in detect.
Front panel dielectric material has a direct bearing on sensitivity. Plastic front panels are usually suitable up to about
1.2 mm, and glass up to about 2.5 mm (dependent upon the screen size and layout). The thicker the front panel, the
lower the signal-to-noise ratio of the measured capacitive changes and hence the lower the resolution of the
touchscreen. In general, glass front panels are near optimal because they conduct electric fields almost twice as easily
as plastic panels.
Note: Care should be taken using ultra-thin glass panels as retransmission effects can occur, which can significantly
degrade performance.
6. Sensor Layout
AVdd
XVdd
> 0 ns
Vdd
VddIO
(VddIO)
RESET
> 90 ns
CAUTION: XVdd must not be grounded when Vdd is active as damage to the device may result.
Vdd must be applied to the device before the external XVdd supply to ensure that the different power domains in the
device are initialized correctly. Typically this can be done by connecting the enable pin of the Switched-Mode Power
Supply (SMPS) supplying XVdd to a 10 k pull-up resistor connected to the Vdd, but the XVdd can be controlled
separately by the host, if required.
After power-up, the device takes 100 ms before it is ready to start communications.
If the RESET line is released before the AVdd or external XVDD supply has reached its nominal voltage (see Figure 7-2
on page 26), then some additional operations need to be carried out by the host. There are two options open to the host
controller:
Start the part in deep sleep mode and then send the command sequence to set the cycle time to wake the part and
allow it to run normally. Note that in this case a calibration command is also needed.
Send a reset command.
Figure 7-2. Power Sequencing on the mXT1664T2-C2U – Late rise on AVDD or XVdd
(Nom)
AVdd or
XVdd
(Nom)
Vdd/VddIO
(VddIO)
RESET
The RESET pin can be used to reset the device whenever necessary. The RESET pin must be asserted low for at least
90 ns to cause a reset. After releasing the RESET pin the device takes 100 ms before it is ready to start communications.
It is recommended to connect the RESET pin to a host controller to allow it to initiate a full hardware reset without
requiring a power-down.
Make sure that any lines connected to the device are below or equal to Vdd during power-up. For example, if RESET is
supplied from a different power domain to the VDDIO pin, make sure that it is held low when Vdd is off. If this is not done,
the RESET signal could parasitically couple power via the RESET pin into the Vdd supply.
Note that the voltage level on the RESET pin of the device must never exceed VddIO (digital supply voltage).
A software reset command can be used to reset the chip (refer to the Command Processor T6 object in the mXT1664T2-
C2U 1.1 Protocol Guide. A software reset takes a maximum of 101 ms. After the chip has finished it asserts the CHG line
to signal to the host that a message is available. The reset flag is set in the Message Processor object to indicate to the
host that it has just completed a reset cycle. This bit can be used by the host to detect any unexpected brownout events.
This allows the host to take any necessary corrective actions, such as reconfiguration.
A checksum check is performed on the configuration settings held in the nonvolatile memory. If the checksum does not
match a stored copy of the last checksum, then this indicates that the settings have become corrupted. This is signaled to
the host by setting the configuration error bit in the message data for the Command Processor T6 object (refer to the
mXT1664T2-C2U 1.1 Protocol Guide for more information).
Note that the CHG line is briefly set as an input during power-up or reset. It is therefore particularly important that the line
should be allowed to float high via the CHG line pull-up resistor during this period. It should not be driven by the host (see
Table 16.8.3 on page 80).
At power-on, the device performs a self-test routine to check for shorts that might cause damage to the device. Refer to
the Self Test T25 object in the mXT1664T2-C2U 1.1 Protocol Guide for more details about this process.
Vdd
VddIO
CHG
> 90 ms
7.1.1 Summary
The Power-up and RESET requirements for the maXTouch devices are summarised in the table below.
VddIO Delay
Condition External RESET (After Vdd) AVdd Power-Up Comments
8. Detailed Operation
8.5 Calibration
Calibration is the process by which a sensor chip assesses the background capacitance on each node. Nodes are only
calibrated on reset and when:
The node is enabled (that is, activated).
or
The node is already enabled and one of the following applies:
The node is held in detect for longer than the Touch Automatic Calibration setting (refer to the mXT1664T2-
C2U 1.1 Protocol Guide for more information on TCHAUTOCAL setting in the Acquisition Configuration
object).
The signal delta on a node is at least the touch threshold (TCHTHR) in the anti-touch direction, while it
meets the criteria in the Touch Recovery Processes that results in a recalibration. (Refer to the mXT1664T2-
C2U 1.1 Protocol Guide for objects Acquisition Configuration T8 and Self Capacitance Configuration T111).
The host issues a recalibrate command.
Certain configuration settings are changed.
A status message is generated on the start and completion of a calibration.
Note that the device performs a global calibration; that is, all the nodes are calibrated together.
9. Host Communications
Read Address
(LSB, MSB)
Read Data
Read Data
1. The STOP condition at the end of the read resets the address pointer to its initial location, so it may already be pointing at the Message Count
T44 object following a previous message read.
2. The host should have already read the size of the Message Processor T5 object in its initialization code.
5. Note that the size of the Message Processor T5 object as recorded in the Object Table includes a checksum byte.
If a checksum has not been requested, one byte should be deducted from the size of the object. That is: number of
bytes = count × (size – 1).
6. The host reads the calculated number of message bytes. It is important that the host does not send a STOP
condition during the message reads, as this will terminate the continuous read operation and reset the address
pointer. No START and STOP conditions must be sent between the messages.
7. The host sends a STOP condition at the end of the read operation after the last message has been read. The
NACK condition immediately before the STOP condition resets the address pointer to the start of Message Count
T44 object.
Figure 10-4 shows an example of using a continuous read operation to read three messages from the device without a
checksum. Figure 10-5 on page 37 shows the same example with a checksum.
Start Address of
Message Count Object
MSB |
START SLA+W LSB Checksum STOP
0x80
Start Address of
Message Count Object
There are no checksums added on any other I2C reads. An 8-bit CRC can be added, however, to all I2C writes, as
described in Section 10.3 on page 34.
An alternative method of reading messages using the CHG line is given in Section 10.6.
CHG Line …
Mode 1
I2C Interface ACK
START SLA-R B0 B1 … Bn B0 B1 … Bn … B0 B1 … Bn STOP
Message #1 Message #2 Message #m
CHG Line
…
CHG line high or low; see text
In Mode 0:
1. The CHG line goes low to indicate that a message is present.
2. The CHG line goes high when the first byte of the first message (that is, its report ID) has been sent and
acknowledged (ACK sent) and the next byte has been prepared in the buffer.
3. The STOP condition at the end of an I2C transfer causes the CHG line to stay high if there are no more messages.
Otherwise the CHG line goes low to indicate a further message.
Mode 0 allows the host to continually read messages. Messaging reading ends when a report ID of 255 (“invalid
message”) is received. Alternatively the host ends the transfer by sending a NACK after receiving the last byte of a
message, followed by a STOP condition. If and when there is another message present, the CHG line goes low, as in
step 1. In this mode the state of the CHG line does not need to be checked during the I2C read.
In Mode 1:
1. The CHG line goes low to indicate that a message is present.
2. The CHG line remains low while there are further messages to be sent after the current message.
3. The CHG line goes high again only once the first byte of the last message (that is, its report ID) has been sent and
acknowledged (ACK sent) and the next byte has been prepared in the output buffer.
Mode 1 allows the host to continually read the messages until the CHG line goes high, and the state of the CHG line
determines whether or not the host should continue receiving messages from the device.
Note: The state of the CHG line should be checked only between messages and not between the bytes of a message.
The precise point at which the CHG line changes state cannot be predicted and so the state of the CHG line
cannot be guaranteed between bytes.
The Communications Configuration T18 object can be used to configure the behavior of the CHG line. In addition to the
CHG line operation modes described above, this object allows the use of edge-based interrupts, as well as direct control
over the state of the CHG line. Refer to the mXT1664T2-C2U 1.1 Protocol Guide for more information.
11.2 Device
The device is compliant with HID-I2C specification V1.0. It has the following specification:
Vendor ID: 0x03EB (Atmel)
Product ID: 0x214F (mXT1664T2-C2U)
Version: 16-bit Version & Build Identifier in the form 0xVVBB, where:
VV = Version Major (Upper 4 bits) / Minor (Lower 4 bits)
BB = Build number in BCD format
HID descriptor address: 0x0000
11.5.1.1 Introduction
This command is used to carry out a write/read operation on the memory map of the device.
The command packet has the generic format given in Figure 11-1. The following sections give examples on using the
command to write to the memory map and to read from the memory map.
In Figure 11-1:
Rpt ID is the HID-I2C Report ID used for Object Protocol commands and responses (see Table 11-1 on page 40).
NumWx is the number of data bytes to write to the memory map (may be zero). If the address pointer is being
sent, this must include the size of the address pointer.
NumRx is the number of data bytes to read from the memory map (may be zero).
Addr 0 and Addr 1 form the address pointer to the memory map (where necessary; may be zero if not needed).
Data 0 to Data 11 are the bytes of data to be written (in the case of a write). Note that data locations beyond the
number specified by NumWx will be ignored.
The response packet has the generic format given in Figure 11-2.
In Figure 11-2:
Rpt ID is the HID-I2C Report ID used for Object Protocol commands and responses (see Table 11-1 on page 40).
Status indicates the result of the command:
0x00 = read and write completed; read data returned
0x04 = write completed; no read data requested
NumRx is the number of bytes following that have been read from the memory map (in the case of a read). This
will be the same value as NumRx in the command packet.
Data 0 to Data 14 are the data bytes read from the memory map.
0x06ID
Rpt 0x51 0x06 0x00 0x34 0x12 0x96 0x9B 0xA0 0xA5
In Figure 11-3:
Rpt ID is the HID-I2C Report ID used for Object Protocol commands and responses (see Table 11-1 on page 40).
The number of bytes to read is set to zero as this is a write-only operation.
The number of bytes to write is six: that is, four data bytes plus the two address pointer bytes.
Figure 11-4 shows the response to this command. Note that the result status returned is 0x04 (that is, the write operation
was completed but no read data was requested). Note also that the Report ID is the same one used in the command
packet.
0x06 0x04
Report ID Result
for OBP
It is not necessary to set the address pointer before every read. The address pointer is updated automatically after every
read operation, so the address pointer will be correct if the reads occur in order.
Figure 11-6 shows the response to this command. The result status returned is 0x00 (that is the write operation was
completed and the data was returned). The number of bytes returned will be the same as the number requested (4 in this
case).
Response Packet
The HID-I2C Report ID used is that for Object Protocol commands and responses; see Table 11-1 on page 40 for the
value.
The command packet has the format given in Figure 11-8.
In Figure 11-8:
Rpt ID is the HID-I2C Report ID used for Object Protocol commands and responses (see Table 11-1 on page 40).
Res 0 to Res 5 are reserved bytes with a value of 0x00.
The response packet has the format given in Figure 11-9. Note that with this command, the command packet does not
include an address pointer as the device already knows the address of the Message Processor T5 object.
Command
Received
Once the device has responded to the command, it starts sending message data. Each time a message is generated in
the Message Processor T5 object, the device automatically sends a message packet to the host with the data. The
message packets have the format given in Figure 11-10.
In Figure 11-10:
Rpt ID is the HID-I2C Report ID used for Object Protocol commands and responses (see Table 11-1 on page 40).
ID Bytes identify the packet as an auto-return message packet.
Msg ID is the Report ID (1) returned by the Message Processor T5 object.
Message Data bytes are the bytes of data returned by the Message Processor T5 object. The size of the data
depends on the source object for which this is the message data. Refer to the mXT1664T2-C2U 1.1 Protocol
Guide for more information.
To stop the sending of the messages, the host can send a null command packet. This consists of two bytes: a HID-I2C
report ID and a command byte of 0x00 (see Figure 11-11).
Rpt ID 0x00
Null
Command
ID
Note that any read or write will also terminate any currently enabled auto-return mode (see Section 11.5.1.2 on page 42).
1. This is the Report ID used in the Object Protocol and should not be confused with the HID-I2C Report ID. Refer to the mXT1664T2-C2U 1.1
Protocol Guide for more information on the use of Report IDs in the Object Protocol.
0x06
Rpt ID 0x88 0x00 0x00 0x00 0x00 0x00
Rpt
0x06ID 0x88 0x00 0x00 0x00 0x00 0x00
0x06
Rpt ID 0xFA 0x00 0x02 0xC0 0x1C 0x1A 0x1E 0x06 0x4F 0x10
0x06
Rpt ID 0xFA 0x00 0x11 0x03 0x1C 0x1A 0x1C 0x00 0x00
Rpt
0x06ID 0x00
Report ID Null
for OBP
The HID-I2C Report ID used is that for Touch reports; see Table 11-1 on page 40 for the value.
Touch
Status
Data
In Figure 11.6.2:
Rpt ID is the HID-I2C Report ID used for Touch reports (see Table 11-1 on page 40).
Touch is the data for the touch.
Scan Time is the Timestamp for the report packet
Count is used to identify the report packets for current active touches that are to be reported as a single package.
The Count in the first packet for the first touch is set to the number of active touches to be sent in one package.
Subsequent packets for subsequent active touches have a Count of 0.
An example of the Touch report packets for 3 active touches is shown in Figure 11-13.
Each input report consists of a HID-I2C report ID followed by 17 bytes of that describe the status of one active touch. The
input report format depends on the geometry calculation control (TCHGEOMEN) of the Digitizer HID Configuration T43
object. Table 11-2 on page 47 and Table 11-3 on page 47 give the detailed format of a touch report packet.
1 Reserved Status
2 Touch ID
3–4 X Position
5–6 X’ Position
7–8 Y Position
9 – 10 Y’ Position
11 Touch Width
12 Reserved
13 Touch Height
14 Reserved
15 – 16 Scan Time
17 Count
1 Reserved Status
2 Touch ID
3–4 X Position
5–6 X’ Position
7–8 Y Position
9 – 10 Y’ Position
11 Reserved
12 Reserved
13 Reserved
14 Reserved
15 – 16 Scan Time
17 Count
Byte 0:
The HID-I2C Report ID (see Table 11-1 on page 40 for Touch reports).
Byte 1:
Status: Status of the touch detection. This bit is set to 1 if touch is detected, and set to 0, if no touches are
detected.
Byte 2:
Touch ID: Identifies the touch for which this is a status report (starting from 0).
Bytes 3 to 10:
X and Y positions: These are scaled to 12-bit resolution. This means that the upper four bits of the MSByte will
always be zero.
Byte 11:
Touch Width: Reports the width of the detected touch when TCHGEOMEN is set to 1.
Reserved when TCHGEOMEN is set to 0
Byte 13:
Touch Height: Reports the height of the detected touch when TCHGEOMEN is set to 1.
Reserved when TCHGEOMEN is set to 0
Byte 15 to 16:
Scan Time: Timestamp associated with the current report packet with a 10 kHz resolution.
Byte 17:
Count: For the first touch, the number of active touches to be sent in one package. Subsequent packets for
subsequent active touches have a Count of 0.
Max
Rpt ID Touches
(1 byte)
Maximum
Number of
Touches
Reported
In Figure 11-14:
Rpt ID is the HID-I2C Report ID used for Maximum Touches reports (see Table 11-1 on page 40).
Max Touches is the maximum number of touches that can be reported by the device.
Read this report to receive the maximum number of touches that can currently be reported.
Write this report to set the maximum number of touches to be reported. Note that the number of touches cannot be set to
more than the maximum number of touches defined by Multiple Touch Touchscreen T100 NUMTCH.
Latency
Rpt ID Mode
(1 byte)
The CHG line is an active-low, open-drain output that is used to alert the host that a new message is available in the
Input Buffer. This provides the host with an interrupt-style interface with the potential for fast response times. It reduces
the need for wasteful I2C communications.
Further information on the CHG line is given in Section 10.6 on page 37.
Interface 0 Interface 1
“Atmel maXTouch Control” “Atmel maXTouch Digitizer”
(Generic HID) (Digitizer HID)
Endpoint 1 In 0x81
Endpoint 3 In 0x83
Commands are sent by the application software over the Interrupt-out endpoint, Endpoint 2. The command is sent as the
first data byte of the packet data (data byte 0), followed by conditions and/or data.
The supported commands are as follows:
Read/write Memory Map
Send Auto-return messages
Start debug monitoring
End debug monitoring
Responses from the device are sent via the interrupt-In endpoint, Endpoint 1.
12.3.1.1 Introduction
This command is used to carry out a write/read operation on the memory map of the device.
The USB Report ID is 0x01.The command packet has the generic format given in Figure 12-3. The following sections
give examples on using the command to write to the memory map and to read from the memory map.
1. This is an implementation of the Microsoft USB HID specification for multi-touch digitizers.
In Figure 12-3:
NumWx is the number of data bytes to write to the memory map (may be zero). If the address pointer is being
sent, this must include the size of the address pointer.
NumRx is the number of data bytes to read from the memory map (may be zero).
Addr 0 and Addr 1 form the address pointer to the memory map (where necessary; may be zero if not needed).
Data 0 to Data 57 are the bytes of data to be written (in the case of a write). Note that data locations beyond the
number specified by NumWx will be ignored.
The response packet has the generic format given in Figure 12-4.
In Figure 12-4:
Status indicates the result of the command:
0x00 = read and write completed; read data returned
0x04 = write completed; no read data requested
NumRx is the number of bytes following that have been read from the memory map (in the case of a read). This
will be the same value as NumRx in the command packet.
Data 0 to Data 60 are the data bytes read from the memory map.
0x01 0x51 0x06 0x00 0x34 0x12 0x96 0x9B 0xA0 0xA5
In Figure 12-5:
The number of bytes to read is set to zero as this is a write-only operation.
The number of bytes to write is six: that is, four data bytes plus the two address pointer bytes.
Figure 12-6 shows the response to this command. Note that the result status returned is 0x04 (that is, the write operation
was completed but no read data was requested).
0x01 0x04
USB Result
Report ID
The address pointer returns to its starting value when the READ cycle STOP condition is detected.
It is not necessary to set the address pointer before every read. The address pointer is updated automatically after every
read operation, so the address pointer will be correct if the reads occur in order.
Figure 12-8 shows the response to this command. The result status returned is 0x00 (that is the write operation was
completed and the data was returned). The number of bytes returned will be the same as the number requested (4 in this
case).
12.3.2.1 Introduction
With this command the device can be configured to return new messages from the Message Processor T5 object
autonomously. The packet sequence to do this is shown in Figure 12-9.
Response Packet
In Figure 12-10:
Res 0 to Res 5 are reserved bytes with a value of 0x00.
The response packet has the format given in Figure 12-11. Note that with this command, the command packet does not
include an address pointer as the device already knows the address of the Message Processor T5 object.
USB Command
Report ID Received
Once the device has responded to the command, it starts sending message data. Each time a message is generated in
the Message Processor T5 object, the device automatically sends a message packet to the host with the data. The
message packets have the format given in Figure 12-12.
In Figure 12-12:
ID Bytes identify the packet as an auto-return message packet.
Message Report ID is the Report ID returned by the Message Processor T5 object. (1)
Message Data bytes are the bytes of data returned by the Message Processor. The size of the data depends on
the source object for which this is the message data. Refer to the mXT1664T2-C2U 1.1 Protocol Guide for more
information.
To stop the sending of the messages, the host can send a null command packet. This consists of two bytes: a report ID
of 0x01 and a command byte of 0x00 (see Figure 12-13).
0x01 0x00
USB Null
Report Command
ID ID
Note that the Start Debug Monitoring command may also terminate any currently enabled auto-return mode (see
Section 12.3.2.2).
1. This is the Message Report ID used in the Object Protocol and should not be confused with the USB Report ID. Refer to the mXT1664T2-
C2U 1.1 Protocol Guide for more information on the use of Report IDs in the Object Protocol.
Command
Received
0x01 0xFA 0x00 0x02 0xC0 0x1C 0x1A 0x1E 0x06 0x4F 0x10
0x01 0xFA 0x00 0x11 0x03 0x1C 0x1A 0x1C 0x00 0x00
0x01 0x00
Null
USB Command
Report ID
ID
The response packet has the format given in Figure 12-16. Note that the USB Report ID will be the same as that used in
the command packet.
USB Command
Report Received
ID
The debug data packet has the format given in Figure 12-17.
In Figure 12-17:
PacketNum is the number of this USB packet in the debug data frame (full set of debug data). Refer to
QTAN0050, Using the maXTouch Debug Port, for more information on the format of the debug data.
NumPackets is the total number of USB packets that make up a debug data frame.
FrameNum is the ID number of this frame.
Data 0 to Data 59 are 59 bytes of debug data.
USB Command
Report ID
ID
USB Command
Report Received
ID
Any unused touch data bytes are set to zero (for example, the data for one active touch would be followed by 56 zeroed
bytes). If there are more than five active touches to be reported, a further input report is sent with the remaining touch
data. In this case, the count (for all touches) is sent in the last count byte and the count byte in the first report is zero. An
example of the input report packets for 7 active touches is shown in Figure 12-21 on page 58.
The input report format depends on the geometry calculation field (TCHGEOMEN) of the Digitizer HID Configuration T43
object. Table 12-2 and Table 12-3 gives the detailed format of an input report packet.
In Table 12-3:
Byte 1:
Status: 1 = In detect, 0 = Not in detect.
Touch ID: Identifies the touch for which this is a status report (starting from 1).
Bytes 2 to 9:
X and Y positions: These are scaled to 12-bit resolution. This means that the upper four bits of the MSByte will
always be zero.
Bytes 4, 5, 8, 9, 10 and 11 are Reserved when TCHGEOMEN field is set to 0.
Byte 10:
Touch Width: Reports the width of the detected touch.
Byte 11:
Touch Height: Reports the height of the detected touch.
Byte 56 to 57:
Scan Time: Timestamp associated with the current report frame with a 10 kHz resolution.
Note that the scan time for each report packet of a single frame is same.
Byte 58:
Contact Count: Non-zero value in the first report packet of a frame indicating the total number of report packets in
the frame. Zeros in the subsequent report packets within the frame.
Maximum
0x02 Touches
(1 byte)
USB Maximum
Report ID Number of
Touches
Supported
Read this report to receive the current maximum number of touches that can be reported.
13.1 Introduction
The following sections give the design considerations that should be adhered to when designing a PCB layout for use
with the mXT1664T2-C2U. Of these, power supply and ground tracking considerations are the most critical.
By observing the following design rules, and with careful preparation for the PCB layout exercise, designers will be
assured of a far better chance of success and a correctly functioning product.
CAUTION: If a PCB is reworked to correct soldering faults relating to any of the device devices, or to
any associated traces or components, be sure that you fully understand the nature of the flux used
during the rework process. Leakage currents from hygroscopic ionic residues can stop capacitive
sensors from functioning. If you have any doubts, a thorough cleaning after rework may be the only
safe option.
Surface mounting capacitors are preferred to wire leaded types due to their lower ESR and ESL. It is often possible to fit
these decoupling capacitors underneath and on the opposite side of the PCB to the digital ICs. This will provide the
shortest tracking, and most effective decoupling possible.
Refer to the application note Selecting Decoupling Capacitors for Atmel PLDs (doc0484.pdf; available on the Atmel
website) for further general information on decoupling capacitors.
Ensure that the on-board regulators have sufficient tracking around and underneath the devices to act as a
heatsink. This heatsink will normally be connected to the 0 V or ground supply pin. Increasing the width of the
copper tracking to any of the device pins will aid in removing heat. There should be no solder mask over the
copper track underneath the body of the regulators.
Ensure that the decoupling capacitors, especially high capacity ceramic type, have the requisite low ESR, ESL and
good stability/temperature properties. Refer to the regulator manufacturer’s datasheet for more information.
Note that the host should always wait to be notified of messages. The host should not poll the device for messages.
15. Debugging
The device provides a mechanism for obtaining raw data for development and testing purposes by reading data from the
Diagnostic Debug T37 object. Refer to the mXT1664T2-C2U 1.1 Protocol Guide for more information on this object.
A second mechanism is provided that allows the host to read the real-time raw data using the low-level debug port. This
can be accessed via the SPI interface or the USB interface. Note that if both the I2C-compatible and USB interfaces are
used for normal communications, the debug data is output on the USB interface. Refer to QTAN0050, Using the
maXTouch Debug Port, for more information on the debug port.
There is also a Self Test T25 object that runs self-test routines in the device to find hardware faults on the sense lines
and the electrodes. This object also performs an initial pin fault test on power-up to ensure that there is no X-to-Y short
before the high-voltage supply is enabled inside the chip. A high-voltage short into the analog circuitry would break the
device.
Refer to the mXT1664T2-C2U 1.1 Protocol Guide and QTAN0059, Using the maXTouch Self Test Feature, for more
information on the Self Test T25 object.
16. Specifications
Vdd 3.6 V
VddIO 3.6 V
AVdd 3.6 V
XVdd 10.5 V
CAUTION: Stresses beyond those listed under Absolute Maximum Specifications may cause permanent damage to the
device. This is a stress rating only and functional operation of the device at these or other conditions beyond those
indicated in the operational sections of this specification is not implied. Exposure to absolute maximum specification
conditions for extended periods may affect device reliability.
VddIO
Vdd
Object/Parameter Description/Setting
IDLESYNCSPERX 8
ACTVSYNCSPERX 16
XSIZE 32
YSIZE 52
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 13.64 15.03 21.40 17.61 15.06
10 4.04 5.24 13.72 15.40 13.70
16 2.55 3.64 9.49 11.00 12.76
32 1.27 2.30 8.99 4.89 4.35
64 0.58 1.33 3.84 2.65 2.40
128 0.19 0.60 1.64 1.47 1.73
254 0.21 0.44 1.96 0.53 0.68
25.00
20.00
Current Consumption (mA)
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
16.4.2.1 Vdd
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 15.13 16.52 20.53 21.54 20.89
10 4.94 6.03 13.20 18.48 20.15
16 3.19 4.11 9.88 13.14 14.37
32 1.74 2.43 8.71 6.02 7.83
64 1.07 1.62 7.07 3.43 4.44
128 0.61 0.83 1.04 3.23 3.58
254 0.48 0.65 1.55 1.90 1.53
25.00
20.00
Current Consumption (mA)
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
16.4.2.2 VddIO
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 1.22 1.11 1.08 1.08 1.33
10 1.26 1.25 1.02 1.21 1.33
16 1.21 1.07 1.15 1.15 1.33
32 1.20 1.20 1.23 1.31 1.23
64 1.15 1.36 1.13 1.20 1.22
128 1.25 1.27 1.28 1.30 1.21
254 1.24 1.21 1.28 1.21 1.21
1.40
1.20
Current Consumption (mA)
1.00
0.20
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 0.64 0.64 0.89 0.84 0.80
10 0.21 0.23 0.68 0.73 0.78
16 0.13 0.17 0.48 0.52 0.76
32 0.07 0.10 0.42 0.23 0.26
64 0.03 0.06 0.19 0.25 0.14
128 0.02 0.03 0.04 0.10 0.10
254 0.01 0.02 0.07 0.08 0.05
0.90
0.80
0.70
Current Consumption (mA)
0.60
0 Touches (mA)
0.50
1 Touch (mA)
0.40 5 Touches (mA)
0.10
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 13.52 14.98 21.30 17.98 14.91
10 4.71 5.69 13.40 13.40 14.36
16 3.36 4.46 14.05 13.80 11.79
32 2.22 3.22 5.07 6.81 6.77
64 1.65 2.64 4.59 4.53 3.47
128 1.43 1.88 2.17 2.97 2.00
254 1.27 1.53 1.50 2.20 1.99
25.00
20.00
Current Consumption (mA)
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
16.5.2.1 Vdd
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 16.13 17.48 21.46 22.99 22.03
10 11.09 11.89 17.29 19.57 21.39
16 10.25 10.83 16.57 19.59 18.93
32 9.52 10.00 11.35 15.29 14.57
64 9.15 9.57 11.17 11.75 11.10
128 9.04 9.25 9.55 10.62 11.19
254 8.93 9.02 10.15 10.42 9.55
25.00
20.00
Current Consumption (mA)
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
16.5.2.2 VddIO
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 1.86 1.86 1.86 1.86 1.86
10 1.85 1.85 1.85 1.86 1.86
16 1.85 1.85 1.85 1.86 1.86
32 1.85 1.85 1.85 1.85 1.85
64 1.85 1.85 1.85 1.85 1.85
128 1.85 1.85 1.85 1.85 1.85
254 1.85 1.85 1.85 1.85 1.85
1.80
1.60
Current Consumption (mA)
1.40
1.20
0 Touches (mA)
1.00 1 Touch (mA)
0.80 5 Touches (mA)
10 Touches (mA)
0.60
15 Touches (mA)
0.40
0.20
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
Acquisition Rate (ms) 0 Touches (mA) 1 Touch (mA) 5 Touches (mA) 10 Touches (mA) 15 Touches (mA)
Free-run 0.64 0.65 0.89 0.84 0.80
10 0.62 0.63 0.77 0.76 0.79
16 0.62 0.63 0.78 0.79 0.76
32 0.61 0.63 0.67 0.70 0.68
64 0.61 0.63 0.67 0.65 0.64
128 0.61 0.62 0.62 0.63 0.63
254 0.61 0.62 0.62 0.63 0.62
0.90
0.80
0.70
Current Consumption (mA)
0.60
0 Touches (mA)
0.50
1 Touch (mA)
0.40 5 Touches (mA)
0.10
0.00
Free-run 10 16 32 64 128 254
Acquisition Rate (ms)
100 Hz – 23.7 – ms
16.8.2 Speed
400
350
300
250
ReportRate(Hz)
200
150
100
50
0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
NumberofTouches
Vil Low input logic level –0.3 – 0.3 × VddIO V VddIO = 1.8 V to Vdd
Vih High input logic level 0.7 × VddIO – VddIO V VddIO = 1.8 V to Vdd
Vol Low output voltage 0 – 0.2 × VddIO V VDDIO = 1.8 V to VDD. Iol = -2mA
Voh High output voltage 0.8 × VddIO – VddIO V VDDIO = 1.8 V to VDD. Ioh = 2mA
Parameter Value
Required pull-up resistance for fast+ mode (1 MHz) 0.7 k (max) (1)
Required pull-up resistance for high-speed mode (3.4 MHz) 0.5 k to 0.75 k (1)
Notes: 1. The values of pull-up resistors should be chosen to ensure SCL and SDA rise and fall times meet the I2C specification. The value
required will depend on the amount of stray capacitance on the line.
Parameter Value
Parameter Value
Accuracy – ±1 – mm
Accuracy at edge – ±2 – mm
Junction to ambient thermal resistance 46.2 C/W Still air UFBGA 162, 10 × 5 mm
T J = T A + P D JA
T J = T A + P D HEATSINK + JC
where:
JA= package thermal resistance, Junction to ambient (C/W).
JC = package thermal resistance, Junction to case thermal resistance (C/W).
HEATSINK = cooling device thermal resistance (C/W), provided in the cooling device datasheet.
PD = device power consumption (W).
TA is the ambient temperature (C).
A1 Ball ID
Date Code
ATMXT1664T2-C2U
(variable text)
YYWW# ##
Lot Code
(variable text)
LOTCODE Country Code
Notes: 1. Refer to Application Note MXTAN0205: Reading the Revision ID on T2 Devices for information on the Silicon Die Revision
1. A common problem with other types of capacitive acquisition technique when used for touchscreens, is that this isolation is not so pronounced.
This means that when touching one region of the screen, the capacitive signals also tend to change slightly in nearby nodes too, causing
small but often significant errors in the reported touch position.
2. To a first approximation.
3. Air gaps in front of QMatrix sensors massively reduce this field propagation and kill sensitivity. Normal optically clear adhesives work well to
attach QMatrix touchscreens to their dielectric front panel.
SDA
SCL
SDA
SCL
SDA
SCL
START STOP
SDA
SCL
1 2 7 8 9
START
Aggregate
SDA
SDA from
Transmitter
SDA from
Receiver
SCL from
Master
1 2 7 8 9
Addr MSB Addr LSB R/W ACK Data MSB Data LSB ACK
SDA
SCL
1 2 7 8 9
1 2 7 8 9
START SLA+RW Data Byte STOP
Associated Documents
Note: The documents listed below are available under NDA only. In addition, some documents may have further
restrictions placed upon them.
For information on using and configuring the device, see the following:
mXT1664T2-C2U 1.1 Protocol Guide (distributed with Atmel approval only)
The following documents may also be useful (available by contacting Atmel Touch Technology Division):
Touchscreen design and PCB/FPCB layout guidelines:
Application Note: QTAN0054 – Getting Started with maXTouch Touchscreen Designs
Application Note: MXTAN0208 – Design Guide for PCB Layouts for Atmel Touch Controllers
Application Note: QTAN0080 – Touchscreens Sensor Design Guide
Configuring the device:
Application Note: QTAN0078 – maXTouch Stylus Tuning
Application Note: QTAN0059 – Using the maXTouch Self Test Feature
Application Note: QTAN0070 – Recovering from Palm Touches During Calibration with maXTouch
Touchscreen Controllers
Miscellaneous:
Application Note: QTAN0050 – Using the maXTouch Debug Port
Application Note: QTAN0058 – Rejecting Unintentional Touches with the maXTouch Touchscreen
Controllers
Application Note: QTAN0061 – maXTouch Sensitivity Effects for Mobile Devices
Application Note: QTAN0083 – Power and Speed Considerations
Application Note: QTAN0051 – Bootloading Procedure for Atmel Touch Sensors Based on the Object
Protocol
Tools:
QTAN0101 – Object Server User Guide
Revision History
Revision AX – May 2014 Initial edition for firmware revision 1.1 – Preliminary