ProxSense® IQS550/572/525-B000 – Capacitive Trackpad/Touchscreen Controller Projected capacitive controller with proximity, touch, snap, trackpad outputs and gestures The IQS5xx-B000 is a projected capacitive touch and proximity trackpad/touchscreen controller implementation on the IQS550, IQS572 and IQS525 platforms. The IQS5xxB000 features best in class sensitivity, signal-to-noise ratio and automatic tuning of electrodes. Low power proximity detection allows extreme low power operation. Main Features Proximity, touch and snap* on each channel Multi-touch support up to 5 fingers Single and multi-finger gestures 3584 x 2304 max resolution (IQS550) Scale, orientation and electrode layout selection I2C communication interface ATI: automatic tuning for optimum sensitivity Supply Voltage 1.65V to 3.6V Proximity low power operation (<10uA) 3 Active and 2 low power modes Event and streaming modes Internal voltage regulator and reference capacitor On-chip noise detection and suppression IQS550 IQS572 IQS525 Maximum channels 150 72 25 Typical report rate (with single touch / all channels active) 100Hz 135Hz 190Hz Maximum resolution (for shown Tx Rx configurations) 3584 x 2304 2048 x 1792 1280 x 768 (15 x 10) (9 x 8) (6 x 4) Applications Compact Capacitive Keyboards Remote Control Trackpads Appliances Navigation devices Kiosks and POS terminals E-readers TA -40°C to 85°C QFN(7x7)-48 IQS550 QFN(4x4)-28 IQS572 QFN(4x4)-28 IQS525 *patented Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 1 of 79 November 2016 IQ Switch® ProxSense® Series Contents 1 Overview ............................................................................................................................................................ 7 2 Packaging and Pin-out ........................................................................................................................................ 8 3 2.1 IQS550 - QFN48 ................................................................................................................................................. 8 2.2 IQS572 - QFN28 ............................................................................................................................................... 10 2.3 IQS525 - QFN28 ............................................................................................................................................... 12 ® ProxSense Module ...........................................................................................................................................14 3.1 Channel Definition ........................................................................................................................................... 14 3.2 Alternate Low-Power Channel (ALP) .............................................................................................................. 14 3.3 Count Value ..................................................................................................................................................... 14 3.3.1 Trackpad Count Values ............................................................................................................................... 14 3.3.2 ALP Count Values ........................................................................................................................................ 14 3.3.3 Max Count ................................................................................................................................................... 15 3.3.4 Delta Value .................................................................................................................................................. 15 3.4 Reference Value............................................................................................................................................... 15 3.4.1 Reference Update Time .............................................................................................................................. 15 3.4.2 ALP Long-Term Average .............................................................................................................................. 15 3.4.3 Reseed......................................................................................................................................................... 15 3.5 Channel Outputs .............................................................................................................................................. 15 3.5.1 Proximity ..................................................................................................................................................... 15 3.5.2 Touch .......................................................................................................................................................... 16 3.5.3 Snap ............................................................................................................................................................ 16 3.5.4 Output Debounce ....................................................................................................................................... 16 3.5.5 Maximum Touch ......................................................................................................................................... 16 3.6 Auto Tuning (ATI) ............................................................................................................................................ 17 3.6.1 ATI C Multiplier ........................................................................................................................................... 17 3.6.2 ATI Compensation & Auto ATI .................................................................................................................... 17 3.7 Automatic Re-ATI ............................................................................................................................................ 17 3.7.1 Description .................................................................................................................................................. 17 3.7.2 Conditions for Re-ATI to activate ................................................................................................................ 17 3.7.3 ATI Error ...................................................................................................................................................... 18 3.7.4 Design requirements ................................................................................................................................... 18 3.8 4 Sensing Hardware Settings.............................................................................................................................. 18 Sensing Modes ..................................................................................................................................................19 4.1 Report Rate ..................................................................................................................................................... 19 4.1.1 Previous Cycle Time .................................................................................................................................... 20 5 4.2 Mode Timeout ................................................................................................................................................. 20 4.3 Manual Control ............................................................................................................................................... 20 Trackpad ...........................................................................................................................................................20 5.1 Configuration................................................................................................................................................... 20 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 2 of 79 November 2016 IQ Switch® ProxSense® Series 5.1.1 5.1.2 5.1.3 5.1.4 Size Selection .............................................................................................................................................. 20 Individual Channel Disabling ....................................................................................................................... 20 Rx / Tx Mapping .......................................................................................................................................... 20 Rx / Tx Selections ........................................................................................................................................ 21 5.2 Trackpad Outputs ............................................................................................................................................ 21 5.2.1 Number of Fingers ...................................................................................................................................... 21 5.2.2 Relative XY .................................................................................................................................................. 21 5.2.3 Absolute XY ................................................................................................................................................. 21 5.2.4 Touch Strength ............................................................................................................................................ 21 5.2.5 Area ............................................................................................................................................................. 21 5.2.6 Tracking / Identification .............................................................................................................................. 21 5.3 Max Number of Multi-touches ........................................................................................................................ 21 5.4 XY Resolution ................................................................................................................................................... 21 5.5 Palm Rejection ................................................................................................................................................. 21 5.6 Stationary Touch ............................................................................................................................................. 22 5.7 Multi-touch Finger Split ................................................................................................................................... 22 5.8 XY Output Flip & Switch ................................................................................................................................... 22 5.9 XY Position Filtering ......................................................................................................................................... 22 5.9.1 MAV Filter ................................................................................................................................................... 22 5.9.2 IIR Filter ....................................................................................................................................................... 22 6 7 Gestures ............................................................................................................................................................23 6.1 Single Tap ........................................................................................................................................................ 23 6.2 Press and Hold ................................................................................................................................................. 23 6.3 Swipe (X-, X+, Y-, Y+) ........................................................................................................................................ 24 6.4 2 Finger Tap ..................................................................................................................................................... 24 6.5 Scroll ................................................................................................................................................................ 24 6.6 Zoom................................................................................................................................................................ 25 6.7 Switching Between Gestures ........................................................................................................................... 25 Additional Features ...........................................................................................................................................25 7.1 Non-volatile Defaults....................................................................................................................................... 25 7.2 Automated Start-up ........................................................................................................................................ 25 7.3 Suspend ........................................................................................................................................................... 26 2 7.3.1 I C Wake ...................................................................................................................................................... 26 7.3.2 Switch Input Pin Wake ................................................................................................................................ 26 7.4 Reset ................................................................................................................................................................ 26 7.4.1 Reset Indication .......................................................................................................................................... 26 7.4.2 Software Reset ............................................................................................................................................ 26 7.4.3 Hardware Reset .......................................................................................................................................... 26 7.5 Watchdog Timer (WDT)................................................................................................................................... 26 7.6 RF Immunity .................................................................................................................................................... 26 7.7 Additional Non-Trackpad Channels ................................................................................................................ 26 7.8 Bootloader ....................................................................................................................................................... 26 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 3 of 79 November 2016 IQ Switch® ProxSense® Series 7.8.1 Bootloader Status ....................................................................................................................................... 26 7.9 Version Information ........................................................................................................................................ 27 7.9.1 Product Number ......................................................................................................................................... 27 7.9.2 Project Number ........................................................................................................................................... 27 7.9.3 Major and Minor Versions .......................................................................................................................... 27 8 7.10 Unique ID ......................................................................................................................................................... 27 7.11 Switch Input ..................................................................................................................................................... 27 2 I C .....................................................................................................................................................................27 8.1 Data Ready (RDY) ............................................................................................................................................ 27 8.2 Slave Address................................................................................................................................................... 27 8.3 16-bit Addressing ............................................................................................................................................ 27 2 8.4 I C Read ........................................................................................................................................................... 27 8.4.1 Default Read Address.................................................................................................................................. 28 2 8.5 I C Write .......................................................................................................................................................... 28 8.6 I C Timeout ...................................................................................................................................................... 28 8.7 End of Communication Session / Window ...................................................................................................... 28 2 8.8 Event Mode Communication ........................................................................................................................... 28 8.8.1 Events.......................................................................................................................................................... 28 8.8.2 Force Communication ................................................................................................................................. 28 8.9 Memory Map Registers ................................................................................................................................... 29 8.10 Memory Map Bit / Register Definitions ........................................................................................................... 36 8.10.1 Gesture Events 0 ..................................................................................................................................... 37 8.10.2 Gesture Events 1 ..................................................................................................................................... 37 8.10.3 System Info 0 .......................................................................................................................................... 38 8.10.4 System Info 1 .......................................................................................................................................... 39 8.10.5 Individual Channel Status / Config Bit Definitions .................................................................................. 39 8.10.6 Count / Delta / Reference Data .............................................................................................................. 40 8.10.7 System Control 0 .................................................................................................................................... 41 8.10.8 System Control 1 .................................................................................................................................... 42 8.10.9 System Config 0 ...................................................................................................................................... 42 8.10.10 System Config 1 ...................................................................................................................................... 43 8.10.11 Alternate Channel Setup ........................................................................................................................ 44 8.10.12 ALP Rx select ........................................................................................................................................... 45 8.10.13 ALP Tx select ........................................................................................................................................... 45 8.10.14 RxToTx .................................................................................................................................................... 45 8.10.15 Hardware Settings A ............................................................................................................................... 46 8.10.16 Hardware Settings B ............................................................................................................................... 46 8.10.17 Hardware Settings C ............................................................................................................................... 47 8.10.18 Hardware Settings D ............................................................................................................................... 47 8.10.19 XY Config 0 .............................................................................................................................................. 48 8.10.20 Single Finger Gestures ............................................................................................................................ 48 8.10.21 Multi-finger Gestures ............................................................................................................................. 49 9 Circuit Diagram .................................................................................................................................................50 10 Electrical Characteristics ....................................................................................................................................55 10.1 Absolute Maximum Ratings ............................................................................................................................ 55 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 4 of 79 November 2016 IQ Switch® ProxSense® Series 10.2 Operating Conditions ...................................................................................................................................... 56 10.2.1 General Operating Conditions ................................................................................................................ 56 10.2.2 Power-up / Power-down Operating Conditions ..................................................................................... 56 10.2.3 Supply Current Characteristic ................................................................................................................. 57 ® 10.2.4 ProxSense Current Consumption .......................................................................................................... 57 10.2.5 Expected Total Current Consumption Scenarios .................................................................................... 57 10.2.6 I/O Port Pin Characteristics .................................................................................................................... 59 10.2.7 Output Driving Current ........................................................................................................................... 60 10.2.8 NRST Pin ................................................................................................................................................. 60 2 10.2.9 I C Characteristics ................................................................................................................................... 61 10.2.10 Package Moisture Sensitivity .................................................................................................................. 63 10.2.11 Electrostatic Discharge (ESD) .................................................................................................................. 63 10.2.12 Thermal Characteristics .......................................................................................................................... 63 10.2.13 ProxSense Electrical Characteristics ....................................................................................................... 64 11 12 Mechanical Dimensions ....................................................................................................................................65 11.1 IQS550 QFN(7x7)-48 Mechanical Dimensions ................................................................................................. 65 11.2 IQS550 Landing Pad Layout............................................................................................................................. 66 11.3 IQS572/IQS525 QFN(4x4)-28 Mechanical Dimensions .................................................................................... 67 11.4 IQS572/IQS525 Landing Pad Layout ................................................................................................................ 68 Packaging Information ......................................................................................................................................69 12.1 Tape Specification ........................................................................................................................................... 69 12.1.1 IQS550 Tape Description ........................................................................................................................ 70 12.1.2 IQS572 and IQS525 Tape Description ..................................................................................................... 70 12.2 Reel Specification ............................................................................................................................................ 71 12.2.1 Dry Packing ............................................................................................................................................. 72 12.2.2 Baking ..................................................................................................................................................... 72 13 14 12.3 Handling of the IQS5xx .................................................................................................................................... 73 12.4 Reflow for IQS5xx ............................................................................................................................................ 74 Device Marking .................................................................................................................................................75 13.1 IQS550 Marking ............................................................................................................................................... 75 13.2 IQS572/IQS525 Marking .................................................................................................................................. 76 Ordering Information ........................................................................................................................................76 14.1 IQS550 Ordering .............................................................................................................................................. 76 14.2 IQS572 Ordering .............................................................................................................................................. 77 14.3 IQS525 Ordering .............................................................................................................................................. 77 Changes: ....................................................................................................................................................................... 78 Release v1.00 ........................................................................................................................................................... 78 Release v1.01 ........................................................................................................................................................... 78 Release v2.00 ........................................................................................................................................................... 78 15 Contact Information ..........................................................................................................................................79 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 5 of 79 November 2016 IQ Switch® ProxSense® Series List of Abbreviations ALP Alternate Low Power ATI Automatic Tuning Implementation EMI Electromagnetic Interference ESD Electrostatic Discharge GND Ground GUI Graphical User Interface IC Integrated Circuit ICI Internal Capacitor Implementation IIR Infinite Impulse Response LP Low Power LTA Long Term Average MAV Moving Average ND Noise Detect THR Threshold TP Trackpad WDT Watchdog Timer Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 6 of 79 November 2016 IQ Switch® ProxSense® Series 1 Overview The IQS550 / IQS572 / IQS525 are capacitive sensing controllers designed for multi-touch applications using projected capacitance touch panels. The device offers high sensitivity proximity wake-up and contact detection (touch) through a selectable number of sensor lines (Rxs and Txs). The device has an internal voltage regulator and Internal Capacitor Implementation (ICI) to reduce external components. Advanced on-chip signal processing capabilities provide stable high performance with high sensitivity. A trackpad consists of an array of sensors that are scanned at regular intervals. The controller uses the principle of projected capacitance charge transfer on the trackpad. When a conductive object such as a human finger approaches the sense plate it will decrease the detected capacitance. Thresholds are applied to the sensor data to identify areas that exhibit proximity and touch deviation. The contours of the touch areas are then translated to Cartesian position coordinates that are continuously monitored to identify gestures. A user has access to all of the data layers – the raw sensor data, the sensor proximity/touch status data, the XY coordinates as well as the gesture outputs. Multiple filters are implemented to detect and suppress noise, track slow varying environmental conditions and avoid effects of possible drift. The Auto Tuning (ATI) allows for the adaptation to a wide range of touch screens without using external components. An innovative addition, known as a snap*, is also available on each channel. another channel output, additional to the proximity and touch. This adds The trackpad application firmware on the IQS5xx is very flexible in design, and can incorporate standard touch sensors, trackpad / touchscreen areas (giving XY output data) and conventional snap-dome type buttons, all providing numerous outputs such as proximity, touch, snap, touch strength, area and actual finger position all in one solution. The IQS550, IQS572 and IQS525 devices ship with the bootloader only, since the designer must program custom IQS5xx-B000 firmware during production testing. The custom firmware is the IQS5xx-B000 trackpad firmware together with customer specific hardware settings exported by the GUI program. This datasheet applies to the following IQS550 version: Product Number 40 / Project Number 15 / Version Number 2 This datasheet applies to the following IQS572 version: Product Number 58 / Project Number 15 / Version Number 2 This datasheet applies to the following IQS525 version: Product Number 52 / Project Number 15 / Version Number 2 *patented Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 7 of 79 November 2016 IQ Switch® ProxSense® Series 2 Packaging and Pin-out 2.1 IQS550 - QFN48 37 VSSIO 38 VDDIO 39 Tx4 40 Tx5 41 Tx6 42 Tx7 43 Tx8 44 Tx9 45 Tx10 46 Tx11 47 Tx12 48 Tx13 The IQS550 is available in a QFN(7x7)-48 package. Tx14 1 36 Tx3 PGM 2 35 Tx2 SW_IN 3 34 Tx1 N/C 4 33 Tx0 IQS550 Xxxxx xx Xxx xxx SDA 5 SCL 6 VDDHI 7 VSS 8 VREG 9 32 Rx9B 31 Rx9A 30 Rx8B 29 Rx8A 28 Rx7B Figure 2.1 Copyright © Azoteq (Pty) Ltd All Rights Reserved. Rx5B 24 Rx5A 23 Rx4B 22 Rx4A 21 Rx3B 20 Rx3A 19 Rx2B 18 25 Rx6A Rx2A 17 N/C 12 Rx1B 16 26 Rx6B Rx1A 15 RDY 11 Rx0B 14 27 Rx7A Rx0A 13 NRST 10 QFN Top View IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 8 of 79 November 2016 IQ Switch® ProxSense® Series Table 2.1 QFN48 Pin-out Pin Name Description 1 Tx14 2 Pin Name Description 25 Rx6A Receiver electrode Transmitter electrode 26 Rx6B Note1 PGM Programming Pin 27 Rx7A Receiver electrode 3 SW_IN Wake-up from suspend and switch input 28 Rx7B Note1 4 n/c ~ 29 Rx8A Receiver electrode SDA I2C Data 30 Rx8B Note1 5 6 SCL I2C Clock 31 Rx9A Receiver electrode 32 Rx9B Note1 33 Tx0 Transmitter electrode 34 Tx1 Transmitter electrode 35 Tx2 Transmitter electrode 7 VDDHI Supply Voltage 8 VSS Ground Reference 9 VREG Internal Regulator Voltage 10 NRST Reset (active LOW) 36 Tx3 Transmitter electrode 11 RDY I2C RDY 37 VSSIO I/O Ground Reference 12 n/c ~ 38 VDDIO I/O Supply Voltage 13 Rx0A Receiver electrode 39 Tx4 Transmitter electrode 14 Rx0B Note1 40 Tx5 Transmitter electrode 15 Rx1A Receiver electrode 41 Tx6 Transmitter electrode 16 Rx1B Note1 42 Tx7 Transmitter electrode 17 Rx2A Receiver electrode 43 Tx8 Transmitter electrode 18 Rx2B Note1 44 Tx9 Transmitter electrode 19 Rx3A Receiver electrode 45 Tx10 Transmitter electrode 20 Rx3B Note1 46 Tx11 Transmitter electrode 21 Rx4A Receiver electrode 47 Tx12 Transmitter electrode 22 Rx4B Note1 48 Tx13 Transmitter electrode 23 Rx5A Receiver electrode 24 Rx5B Note1 Copyright © Azoteq (Pty) Ltd All Rights Reserved. Note1: Any of these can be configured through I2C as the ProxSense® electrode. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 9 of 79 November 2016 IQ Switch® ProxSense® Series 2.2 IQS572 - QFN28 22 TX4 23 TX5 24 TX6 25 TX7 26 TX8 27 PGM 28 SW_IN The IQS572 is available in a QFN(4x4)-28 package. The production version is shown below. n/c 1 21 TX3 SDA 2 20 TX2 IQS572 VSS 5 xx xxx VDDHI 4 xx xxx xxx xx SCL 3 19 TX1 18 TX0 17 RX7 / TX9 Figure 2.2 Copyright © Azoteq (Pty) Ltd All Rights Reserved. RX4 / TX12 14 RX3 / TX13 13 RX2 / TX14 12 RX1 11 15 RX5 / TX11 RX0 10 NRST 7 n/c 9 16 RX6 / TX10 RDY 8 VREG 6 IQS572 QFN Top View IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 10 of 79 November 2016 IQ Switch® ProxSense® Series Table 2.2 IQS572 QFN28 Pin-out 15 Rx5 Receiver electrode Pin Name Description 16 Rx6 Receiver electrode 1 n/c ~ 17 Rx7 Receiver electrode 2 SDA I2C Data 18 Tx0 Transmitter electrode 3 SCL I2C Clock 19 Tx1 Transmitter electrode 4 VDDHI Supply Voltage 20 Tx2 Transmitter electrode 5 VSS Ground Reference 21 Tx3 Transmitter electrode 6 VREG Internal Regulator Voltage 22 Tx4 Transmitter electrode 7 NRST Reset (active LOW) 23 Tx5 Transmitter electrode 8 RDY I2C RDY 24 Tx6 Transmitter electrode 9 n/c ~ 25 Tx7 Transmitter electrode 10 Rx0 Receiver electrode 26 Tx8 Transmitter electrode 11 Rx1 Receiver electrode 27 PGM Programming Pin 12 Rx2 Receiver electrode 28 SW_IN Wake-up from suspend and switch input 13 Rx3 Receiver electrode 14 Rx4 Receiver electrode Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 11 of 79 November 2016 IQ Switch® ProxSense® Series 2.3 IQS525 - QFN28 22 PD4 23 PD5 24 PD6 25 PD7 26 PB0 27 PGM 28 SW_IN The IQS525 is available in a QFN(4x4)-28 package. The production version is shown below. n/c 1 21 PD3 SDA 2 20 PD2 IQS525 VSS 5 xx xxx VDDHI 4 xx xxx xxx xx SCL 3 19 TX0 18 TX1 17 RX7 / TX2 Figure 2.3 Copyright © Azoteq (Pty) Ltd All Rights Reserved. RX4 / TX5 14 RX3 / TX6 13 RX2 / TX7 12 RX1 / TX8 11 15 RX5 / TX4 RX0 / TX9 10 NRST 7 n/c 9 16 RX6 / TX3 RDY 8 VREG 6 IQS525 QFN Top View IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 12 of 79 November 2016 IQ Switch® ProxSense® Series Table 2.3 QFN28 Pin-out Pin Name Description 1 n/c ~ 2 SDA I2C Data 3 SCL I2C Clock 4 VDDHI Supply Voltage 5 VSS Ground Reference VREG Internal Regulator Voltage 6 15 Rx5 / TX4 Receiver / Transmitter electrode 16 Rx6 / TX3 Receiver / Transmitter electrode 17 Rx7 / TX2 Receiver / Transmitter electrode 18 Tx1 Transmitter electrode 19 Tx0 Transmitter electrode 20 PD2 General purpose I/O 21 PD3 General purpose I/O 7 NRST Reset (active LOW) 22 PD4 General purpose I/O 8 RDY I2C RDY 23 PD5 General purpose I/O 9 n/c ~ 24 PD6 General purpose I/O 10 Rx0 Receiver electrode 25 PD7 General purpose I/O 11 Rx1 Receiver electrode 26 PB0 General purpose I/O 12 Rx2 Receiver electrode 27 PGM Programming Pin 13 Rx3 Receiver electrode 28 SW_IN 14 Rx4 Receiver electrode Wake-up from suspend and switch input Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 13 of 79 November 2016 IQ Switch® ProxSense® Series 3 ProxSense® Module Sensing method (CHARGE_TYPE): projected capacitive or self capacitive. The IQS5xx contains a ProxSense® module that uses patented technology to measure and process the capacitive sensor data. The trackpad sensors are scanned one Tx transmitter at a time, until all have completed, with all enabled Rxs charging in each Tx time slot. The channel outputs (proximity, touch and snap) are the primary outputs from the sensors. These are processed further to provide secondary trackpad outputs that include finger position, finger size as well as on-chip gesture recognition. Sensors: which Rxs (RX_GROUP / ALP Rx select) / Txs (ALP Tx select) are active during conversions. Reverse sensing: If enabled, negative deviations can also trigger proximity detection (PROX_REVERSE). Count value filtering: gives reliable proximity detection in noisy environments. Single channel: since the alternate channel is processed as only a single channel, much less processing is done, allowing for lower overall power consumption. The additional snap state is a unique sensor output that utilises capacitive technology to sense the depression of a metal dome snap button onto the customized sensor area. This gives an additional output above the traditional proximity and touch channel outputs. Since all Rxs return a count measurement, it means that the ALP channel can be a combination of numerous measurements. To reduce processing time (and this decrease current consumption) the measurements are For more information on capacitive sensing added together, and processed as a single and charge transfers, please refer to the „channel‟. Azoteq Application Note AZD004. 3.3 Count Value For more information regarding design guidelines refer to the Application Note The capacitive sensing measurement returns a count value for each channel. Count values AZD068. are inversely proportional to capacitance, and 3.1 Channel Definition all outputs are derived from this them. A channel for a projected capacitive sensor 3.3.1 Trackpad Count Values consists of a Tx electrode that is in close The individual trackpad channel count values proximity to an Rx electrode. (Count values) are unfiltered. On a trackpad sensor (typically a diamond shape pattern), each intersection of an Rx and 3.3.2 ALP Count Values Tx row/column forms a capacitive sensing The combined count value (ALP count value) element which is referred to as a channel. used for this channel is a summation of the Each channel has an associated count value, individual count values (ALP individual count reference value, proximity, touch and snap (if values) from each active Rx. enabled) status. The maximum number of Tx and Rx electrodes on the IQS550 device is A count value filter is implemented on this channel to give stable proximity output for 15x10, thus giving 150 channels in total. system wake-up from a low-power mode. It is 3.2 Alternate Low-Power recommended to leave this count filter enabled (ALP_COUNT_FILTER). Channel (ALP) If lower power consumption is required (ALP), LP1 and LP2 can be configured to utilise a single custom channel sensor, instead of sensing the trackpad channels. This channel has a lot of setup flexibility: Copyright © Azoteq (Pty) Ltd All Rights Reserved. The amount of filtering can be modified (ALP count beta) if required. This beta is used as follows to determine the damping factor of the filter: Count damping factor = Beta / 256 IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 14 of 79 November 2016 IQ Switch® ProxSense® Series If the beta is small, the filtering is stronger, 3.4.2 ALP Long-Term Average and if the beta is larger, the filtering is weaker. The ALP channel does not have a snapshot 3.3.3 Max Count reference value as used on the trackpad, but utilises a filtered long-term average value Each channel is limited to having a count (ALP LTA value). The LTA tracks the value smaller than the configurable limit (Max environment closely for accurate comparisons count limit). If the ATI setting or hardware to the measured count value, to allow for small causes measured count values higher than proximity deviations to be sensed. The speed this, the conversion will be stopped, and a of LTA tracking can be adjusted with the ALP value of „0‟ will be read for that relevant count LTA beta. There is an ALP1 and ALP2, which value. Note that a „0‟ is also returned for a are implemented in LP1 and LP2 respectively. disabled channel. This is to allow different settings for different 3.3.4 Delta Value report rates, so that the LTA tracking rate can remain the same. The delta values (Delta values) are simply: 3.4.3 Reseed Delta = Count - Reference 3.4 Reference Value User interaction is detected by comparing count values to reference values. The count value of a sensor represents the instantaneous capacitance of the sensor. The reference value of a sensor is the count value of the sensor that is slowly updated to track changes in the environment, and is not updated during user interaction. The reference value is a two-cycle averaged of the count value, stored during a time of no user activity, and thus is a non-affected reference. The trackpad reference values are only updated from LP1 and LP2 mode when modes are managed automatically. Thus, if the system is controlled manually, the reference must also be managed and updated manually by the host. 3.4.1 Reference Update Time Since the Reference (or LTA for ALP channel) is critical for the device to operate correctly, there could be known events or situations which would call for a manual reseed. A reseed takes the latest measured counts, and seeds the reference/LTA with this value, therefore updating the value to the latest environment. A reseed command can be given by setting the corresponding bit (RESEED or ALP_RESEED). 3.5 Channel Outputs For the trackpad channels, user interaction typically causes the count values to increase. The amount of deviation relative to the reference can be used to determine the output state of the channel, dependent on the sensitivities configured. For a snap actuation, the count values decrease, and a negative deviation cause a snap output. The reference value is updated or refreshed If the measured count value exceeds the according to a configurable interval selected threshold value for consecutive (Reference update time), in seconds. cycles, equal in number to the selectable To ensure that the reference value is not debounce parameter, the output becomes set. updated during user interaction, it only 3.5.1 Proximity executes from the LP1 and LP2 states, where This output (Prox status) is set when a no user interaction is assumed. channels‟ count value deviates from the Setting the Reference update time to „0‟ will reference value by more than the selected disable the updating of the reference values. threshold (Prox threshold). The proximity threshold is the smallest difference between the count value and the Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 15 of 79 November 2016 IQ Switch® ProxSense® Series reference value that would result in a proximity pattern. The design must be configured so output. Small threshold values are thus more that a snap on the metal dome will result in a sensitive than large threshold values. channels‟ count value falling well below the Note: For the trackpad channels (projected reference for that channel. capacitive) the samples will increase with user interaction, thus the actual threshold is the reference value PLUS the threshold parameter. However, if an ALP channel is implemented in self capacitive mode, the samples will decrease during user interaction, thus the actual threshold is the reference value MINUS the threshold parameter. If required, the function must be enabled (Snap enabled channels) for each channel on which snap is designed. Only channels with snap must be marked as such, since channels are handled differently if they are snap channels, compared to non-snap channels. 3.5.2 Touch One global snap threshold (Snap threshold) is implemented as a delta value BELOW the This output (Touch status) is set when a reference. When a snap is performed, a channels‟ count value increases by more than sensor saturation effect causes the deviation the selected threshold. to be negative. The touch threshold for a specific channel is Because it is only necessary to read the calculated as follows: individual snap registers if a state change has Threshold = Reference x (1 + Multiplier / 128) occurred, a status bit (SNAP_TOGGLE) is added to indicate this. This is only set when A smaller fraction will thus be a more sensitive there is a change of status of any snap threshold. channel. A trackpad will have optimal XY data if all of A reseed is executed if a snap is sensed for the channels in the trackpad exhibit similar longer than the Snap timeout time (in deltas under similar user inputs. In such a seconds). A setting of 0 will never reseed. case all of the channels will have identical The timeout is reset if any snap is set or thresholds. In practise, sensor design and cleared. hardware restrictions could cause deltas which are not constant over the entire 3.5.4 Output Debounce trackpad. It could then be required to select All the channel outputs (proximity, touch and individual multiplier values. These (Individual snap) are debounced according to the touch multiplier adjustment) are signed 8-bit selectable debounce values (Prox debounce / values and indicate how much the unsigned 8Touch snap debounce). Note that a debounce bit global value (Global touch multiplier) must value of 1 means that two samples satisfying be adjusted. The threshold used for a specific the condition must be met consecutively channel (set and clear) is as follows: before the output is activated. The default touch debounce is set to 0 / no debouncing. Multiplier = Global + Individual adjust This is due to the fact that with a 15x10 A hysteresis can also be implemented sensor, debouncing adds too much delay, and because there are different touch multiplier fast movements on the touch panel cannot be parameters for setting a touch and clearing a debounced fast enough to provide reliable XY touch. This hysteresis allows the channels to output data. not flicker in and out of touch with noise. 3.5.5 Maximum Touch 3.5.3 Snap An additional output is provided (Max Touch), When adding a metal snap-dome overlay to and indicates the column and row of the the trackpad pattern, an additional snap output channel with the largest touch deviation. This (Snap status) is available. The device is able is usually only utilised when implementing to distinguish between a normal „touch‟ on the discrete buttons, to reject any adjacent keys if overlay and an actual button „snap‟, which they are located in close proximity to each depresses the metal dome onto the Rx/Tx Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 16 of 79 November 2016 IQ Switch® ProxSense® Series other. If the Rxs and Txs are switched (SWITCH_XY_AXIS), the columns are the Txs, and the rows are the Rxs. If no touches are seen, then this will output 0xFF. 3.6 Auto Tuning (ATI) The ATI is a sophisticated technology implemented in the new ProxSense® devices to allow optimal performance of the devices for a wide range of sensing electrode capacitances, without modification to external components. The ATI settings allow tuning of two parameters, ATI C Multiplier and ATI Compensation, to adjust the sample value for an attached sensing electrode. The ATI routine will run for the channels of the current mode, for example, if the system is currently sensing the alternate low-power channel, the auto ATI will apply to it, similarly the algorithm will configure the trackpad channels if they are currently active. The ALP channel has individual compensation values (ALP ATI compensation) for each enabled Rx. The ALP ATI target value applies to each of the individual count values configured for the ALP channel. Note: This routine will only execute after the communication window is terminated, and the 2 For detailed information regarding the on-chip I C communication will only resume again ATI technology, please refer to AZD027 and once the ATI routine has completed. AZD061. 3.7 Automatic Re-ATI The main advantage of the ATI is to balance 3.7.1 Description out small variations between trackpad hardware and IQS5xx variation, to give similar When enabled (REATI or ALP_REATI) the ATI algorithm will be repeated if certain conditions performance across devices. are met. One of the most important features 3.6.1 ATI C Multiplier of the Re-ATI is that it allows easy and fast All trackpad channels can be adjusted globally recovery from an incorrect ATI, such as when by modifying the global parameter (Global ATI performing ATI during user interaction with the C). sensor. This could cause the wrong ATI Compensation to be configured, since the Although it is recommended to keep the same user affects the capacitance of the sensor. A ATI C value for all trackpad channels, if Re-ATI would correct this. different values are required (possibly for different trackpads), individual adjustments When a Re-ATI is performed on the IQS5xx, a can be made. The ATI C value for each status bit will set momentarily to indicate that channel can be adjusted using 8-bit signed this has occurred (REATI_OCCURRED / values (ATI C individual adjust) as follows: ALP_REATI_OCCURRED). ATI C = Global + Individual Adjust 3.7.2 Conditions for Re-ATI to activate The ALP channel has its own global ATI C 1. Reference drift parameter (ALP ATI C). A Re-ATI is performed when the reference of a channel drifts outside of the acceptable 3.6.2 ATI Compensation & Auto ATI range around the ATI Target. The ATI Compensation value for each channel (ATI compensation) is set by means of an The boundaries where Re-ATI occurs for the automated ATI procedure. The algorithm is trackpad channels and for the ALP channels executed after the AUTO_ATI bit is set. The are independently set via the drift threshold ATI Compensation values are chosen so that value (Reference drift limit / ALP LTA drift each count value is close to the selected limit). The Re-ATI boundaries are calculated from the delta value as follows: target value (ATI target / ALP ATI target). The AUTO_ATI bit clears automatically on chip when the algorithm has completed. Copyright © Azoteq (Pty) Ltd All Rights Reserved. Re-ATI Boundary = ATI target ± Drift limit IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 17 of 79 November 2016 IQ Switch® ProxSense® Series For example, assume that the ATI target is Count is already outside the Re-ATI range configured to 800 and that the reference drift upon completion of the ATI algorithm. value is set to 50. If Re-ATI is enabled, the If any of these conditions are met, the ATI algorithm will be repeated under the corresponding error flag will be set following conditions: (ATI_ERROR / ALP_ATI_ERROR). The flag Reference > 850 or status is only updated again when a new ATI algorithm is performed. Reference < 750 The ATI algorithm executes in a short time, so Re-ATI will not be repeated immediately if an ATI Error occurs. A configurable time goes unnoticed by the user. (Re-ATI retry time) will pass where the Re-ATI 2. Very large count values is momentarily suppressed. This is to prevent The configurable Max count limit is used to the Re-ATI repeating indefinitely. An ATI error sense for unexpectedly large count values. A should however not occur under normal Re-ATI is triggered if the max count limit is circumstances. exceeded for 15 consecutive cycles. 3.7.4 Design requirements This limit is configured to be a value higher The Re-ATI can be very useful when ATI than the maximum count possible through parameters are selected for which successful user interaction, plus worst case noise on the Re-ATI operation can be expected. With the count value, plus headroom. The monitoring conditions for Re-ATI mentioned above, it is of this assists in correcting for a Re-ATI which clear that when the designer sets the ATI occurred during a snap press. If this does parameters, it is beneficial to select the ATI C occur, after removing the snap, the counts are and ATI Target so that the resulting ATI typically very high. If this was not monitored a Compensation values are near the centre of stuck touch could occur. the range. This ensures that with changing sensitivity, the ATI Compensation has the 3. Decreased count value ability to increase/decrease in value without it A considerable decrease in the count value of easily becoming 0 or 255. In general, ATI a non-snap channel is abnormal, since user Compensation values between 100 and 150 interaction increases the count value. are desirable as they provide ample room for Therefore if a decrease larger than the adjustment. Note that the range is dependent configurable threshold (Minimum count Re- on the sensitivity requirements, and on the ATI delta) is seen on such a channel, it is capacitance of the sensor. closely monitored. If this is continuously seen for 15 cycles, it will trigger a Re-ATI. If the 3.8 Sensing Hardware Settings channel is a snap channel, this decrease is Settings specific to the ProxSense® Module allowed since snap does cause count values charge transfer characteristics can be to decrease. changed. 3.7.3 ATI Error The charge transfer frequency (fcc) can be After the ATI algorithm is performed, a check calculated as: is done to see if there was any error with the 16.106 𝑓𝑐𝑐 = [Hz] 7−𝐶𝐾_𝐹𝑅𝐸𝑄 algorithm. An ATI error is reported if one of (2 × (2 + 𝑈𝑃 + 𝑃𝐴𝑆𝑆 + 𝐼𝑁𝐶_𝑃𝐻𝐴𝑆𝐸) the following is true for any channel after the where ATI has completed: 𝑈𝑃 = 2(𝑈𝑃𝐿𝐸𝑁 −2) (if UPLEN > 4) ATI Compensation <= ReATI lower 𝑈𝑃 = 𝑈𝑃𝐿𝐸𝑁 (if UPLEN ≤ 4) compensation limit ATI Compensation compensation limit Copyright © Azoteq (Pty) Ltd All Rights Reserved. >= ReATI upper 𝑃𝐴𝑆𝑆 = 2(𝑃𝐴𝑆𝑆𝐿𝐸𝑁 −2) 𝑃𝐴𝑆𝑆 = 𝑃𝐴𝑆𝑆𝐿𝐸𝑁 IQS5xx-B000 Trackpad Datasheet Revision 2.0 (if PASSLEN > 4) (if PASSLEN ≤ 4) Page 18 of 79 November 2016 IQ Switch® ProxSense® Series Note: CK_FREQ, UPLEN and PASSLEN are the numerical values of the settings. 4 Sensing Modes The IQS5xx automatically switches between different charging modes dependent on user 16.106 interaction and other aspects. This is to allow 𝑓𝑐𝑐 = = 1.77𝑀𝐻𝑧 for fast response, and also low power 7−7 (2 × (2 + 4 + 3 + 0) consumption when applicable. The current The other hardware parameters are not mode can be read from the device discussed as they should only be adjusted (CHARGING_MODE). under guidance of Azoteq support engineers. The modes are best illustrated by means of the following state diagram. For example, the default frequency is: Fing dde er a p Sna m d/re adde Mo v e o ve d d/rem o ve d t de me n (th Movement: reset timer tecte d ut Timeo touch) tionary us sta Idle-Touch Mode Sensing: Trackpad Timeout Action: reseed trackpad No touch Touch or snap Active Mode No Touch and no snap Sensing: Trackpad Idle Mode Sensing: Trackpad da up ce en et e ef er m pl lR co na Pr o x Up da te io as O cc Update complete LP2 Occasional Reference update LP1 and LP2: These can be either the trackpad (only prox processing is done) or an alternative LP channel setup (flexible) Prox Timeout Action: reseed LP channel (trackpad / ALP) te These modes are always the trackpad channels sensing. Prox, touch and snap are processed. LP1 Sensing: Trackpad or customisable ALP channel Timeout Figure 4.1 Sensing: Trackpad or customisable ALP channel System Mode State Diagram rate, and the other modes are configured according to the power budget of the design, The report rate for each mode can be adjusted and the expected response time. as required by the design. A faster report rate will have a higher current consumption, but The report rate is configured by selecting the will give faster response to user interaction. cycle time (in milliseconds) for each mode: Active mode typically has the fastest report 4.1 Report Rate Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 19 of 79 November 2016 IQ Switch® ProxSense® Series Report rate Active mode Report rate Idle touch mode Report rate Idle mode Report rate LP1 mode 5 Trackpad Report rate LP2 mode 5.1 Configuration 4.1.1 Previous Cycle Time 5.1.1 Size Selection The achieved report rate can be read (Previous cycle time) from the device each cycle; this is the previous cycles‟ length in milliseconds. If the desired rate is not achievable, that is, if processing and sensing takes longer than the specified time, a status flag (RR_MISSED) indicates that the rate could not be achieved. The total number of Rx and Tx channels used for trackpad purposes must be configured (Total Rx / Total Tx). This gives a rectangular area of channels, formed by rows and columns of Rx and Tx sensors. The default method allows the IQS5xx to automatically switch between modes and update reference values as shown in Figure 4.1. This requires no interaction from the master to manage the IQS5xx. Rx Mapping = {3, 0, 8, 1, 2} reference values by reseeding (RESEED) or manually writing to the reference registers (Reference values). 5.1.2 Individual Channel Disabling If the sensor is not a completed rectangle (this could be due to board cut-outs or trackpad 4.2 Mode Timeout shape), channels not implemented but falling The timeout values can be configured, and within the Total Rx / Total Tx rectangle, must once these times have elapsed, the system be individually disabled (Active channels). will change to the next state according to the 5.1.3 Rx / Tx Mapping state diagram. The Rxs and Txs of the trackpad can be These times are adjusted by selecting a assigned to the trackpad in any order to desired value (in seconds), for the specific simplify PCB layout and design. Rxs and Txs timeout: can however not be interchanged (for example you cannot use both Rxs and Txs for the Timeout - Active mode columns of the trackpad). Timeout - Idle touch mode For both the mapping registers (Rx mapping / Timeout - Idle mode Tx mapping) the first byte relates to the mapping of the first row/column, the next byte Timeout - LP1 mode in the memory map is the next row/column, Note: the timeout for LP1 is set in multiples of and so on. 20s (thus a setting of ‘30’ translates to 600s, Example: If a 5x5 trackpad was to be or 10min). designed with Rx/Tx mapping to columns and A timeout value of 255 will result in a „never‟ rows as shown in Table 5.1, the Rx and Tx timeout condition. mapping registers would need to be set as follows: 4.3 Manual Control Tx Mapping = {0, 1, 13, 12, 11} Each value shown here is a byte in the memory map. The rest of the mapping bytes are „don‟t care‟ since they are not used. The master can manage various states and implement custom power modes when Manual Control is enabled (MANUAL_CONTROL). The master needs to control the mode (MODE_SELECT), and also manage the Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 20 of 79 November 2016 IQ Switch® ProxSense® Series Table 5.1 Mapping Example Column number (mapped Rx) Row number (mapped Tx) 0 (Rx3) 1 (Rx0) 2 (Rx8) 3 (Rx1) 4 (Rx2) For all the multi-touch inputs, the absolute finger position (Absolute X/Y), in the selected resolution (Resolution X/Y) of the trackpad, is available. 5.2.4 Touch Strength This value (Touch strength) indicates the strength of the touch by giving a sum of all the deltas associated with the finger, and therefore varies according to the sensitivity setup of the sensors. 0 (Tx0) 1 (Tx1) 2 (Tx13) 5.2.3 Absolute XY 5x5 Trackpad 5.2.5 Area 3 (Tx12) The number of channels associated with a finger is provided here. This area is usually equal to or smaller than the number of touch channels under the finger. 4 (Tx11) 5.1.4 Rx / Tx Selections On the IQS525 and IQS572, some Rxs can be configured to take on Tx functionality. The preferred option is to keep them as Rxs, but if more Txs are needed in the design, they can be configured as such in the RxToTx register. This allows for elongated trackpads or sliders to be implemented on the two devices. The corresponding Rx or Tx number is then used in the mapping registers to configure the order of the electrodes. 5.2.6 Tracking / Identification The fingers are tracked from one cycle to the next, and the same finger will be located in the same position in the memory map. The memory location thus identifies the finger. 5.3 Max Number of Multi-touches The maximum number of allowed multitouches is configurable (Max multi-touches) up to 5 points. If more than the selected value 5.2 Trackpad Outputs is sensed, a flag is set (TOO_MANY_FINGERS) The channel count variation (deltas) and touch and the XY data is cleared. status outputs are used to calculate finger 5.4 XY Resolution location data. The output resolution for the X and Y 5.2.1 Number of Fingers coordinates are configurable (X/Y Resolution). This gives an indication of the number of The on-chip algorithms use 256 points active finger inputs on the trackpad (Number between each row and column. The of fingers). resolution is defined as the total X and total Y output range across the complete trackpad. 5.2.2 Relative XY If there is only one finger active, a Relative X and Relative Y value is available. This is a signed 2‟s complement 16-bit value. It is a delta of the change in X and Y, in the scale of the selected output resolution. 5.5 Palm Rejection A maximum finger size/area (Palm reject threshold) can be set up to allow for palm rejection or similar input suppression. This feature can be enabled or disabled Note: Gestures also use these registers to (PALM_REJECT), and when a palm reject condition is sensed, a status flag will indicate indicate swipe, scroll and zoom parameters. this result (PALM_DETECT). All XY outputs are also suppressed during palm detection. Palm reject is latched on for the timeout period Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 21 of 79 November 2016 IQ Switch® ProxSense® Series (Palm reject timeout) to prevent erratic 5.9 XY Position Filtering behaviour before and after the palm is seen. Stable XY position data is available from the This timeout sets in increments of 32ms. IQS5xx due to two on-chip filters, namely the 5.6 Stationary Touch Moving Average (MAV) filter, and the Infinite Impulse Response (IIR) filter. The filters are A stationary touch is defined as a point that applied to the raw positional data in the does not move outside of a certain boundary aforementioned order. It is recommended to within a specific time. This movement keep both of the filters enabled for optimal XY boundary or threshold can be configured data. (Stationary touch movement threshold), and is defined as a movement in either X or Y in the 5.9.1 MAV Filter configured resolution. If enabled (MAV_FILTER), raw XY points from The device will switch to Idle-Touch mode the last two cycles are averaged to give the when a stationary point is detected, where a filter output. lower duty cycle can be implemented to save 5.9.2 IIR Filter power in applications where long touches are expected. The IIR filter, if enabled (IIR_FILTER), can be configured to select between a dynamic and a If movement is detected, a status flag static filter (IIR_SELECT). (TP_MOVEMENT) is set. The damping factor is calculated from the 5.7 Multi-touch Finger Split selected Beta as follows: The position algorithm looks at areas Damping factor = Beta / 256 (polygons) of touches, and calculates positional data from this. Two fingers in close 5.9.2.1 Dynamic Filter proximity to each other could have areas Relative to the speed of movement of a cotouching, which would merge them incorrectly ordinate, the filter dynamically adjusts the into a single point. A finger split algorithm is amount of filtering (damping factor) performed. implemented to separate these merged When fast movement is detected, and quick polygons into multiple fingers. There is a response is required, less filtering is done. finger split aggression factor which can be Similarly when a co-ordinate is stationary or adjusted to determine how aggressive this moving at a slower speed, more filtering can finger splitting must be implemented. A value be applied. of „0‟ will not split polygons, and thus merge any fingers with touch channels adjacent The damping factor is adjusted depending on the speed of movement. Three of these (diagonally also) to each other. parameters are adjustable to fine-tune the 5.8 XY Output Flip & Switch dynamic filter if required (XY dynamic bottom By default, X positions are calculated from the beta / XY dynamic lower speed / XY dynamic first column (usually Rx0) to the last column. upper speed). Y positions are by default calculated from the The speed is defined as the distance (in the first row (usually Tx0) to the last row. The X selected resolution) travelled in one cycle and/or Y output can be flipped (FLIP_X / (pixels/cycle). FLIP_Y), to allow the [0, 0] co-ordinate to be defined as desired. The X and Y axes can also be switched (SWITCH_XY_AXIS) allowing X to be the Txs, and Y to be along the Rxs. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 22 of 79 November 2016 IQ Switch® ProxSense® Series All gestures are calculated relative to their starting coordinates, i.e., the first coordinate at which the touch was detected. Furthermore, if at any time during a gesture, more than the required number of touches is detected, the gesture will be invalidated. No filtering Filter damping factor (beta) Lower Beta (more filtering) 6.1 Single Tap Top Speed Bottom Speed Speed of movement Figure 5.1 Dynamic Filter Parameters 5.9.2.2 Static Filter The single tap gesture requires that a touch is made and released in the same location and within a short period of time. Some small amount of movement from the initial coordinate must be allowed to compensate for shift in the finger coordinate during the release. This bound is defined in register Tap distance, which specifies the maximum deviation in pixels the touch is allowed to move before a single tap gesture is no longer valid. Co-ordinates filtered with a fixed but configurable damping factor (XY static beta) are obtained when using the static filter. It is recommended that the dynamic filter is used due to the advantages of a dynamically Similarly, the Tap time register defines the changing damping value. maximum duration in ms that will result in a valid gesture. That is, the touch should be 6 Gestures released before the time period in Tap time is The IQS5xx has an on-chip gesture reached. recognition feature. The list of recognisable A valid single tap gesture will be reported gestures includes: (SINGLE_TAP) in the same processing cycle 1 finger gestures (GESTURE_EVENTS_0): as the touch release was detected, and will be cleared on the next cycle. No movement will o A single tap be reported in the relative XY registers (Relative X and Relative Y) during this o A press and hold gesture. o Swipe X+ Since the gesture reports after the finger is o Swipe Xremoved, the location of the tap gesture is placed in the Absolute X/Y registers of finger 1 o Swipe Y+ at this time. With Number of fingers set to 0, o Swipe Ythis will not look like an active finger, and is 2 finger gestures (GESTURE_EVENTS_1): just a repetition of the location of the tap that has occurred for the main controller to utilise. o 2 simultaneous taps o Scroll 6.2 Press and Hold The same register that defines the bounds for the single tap gesture (Tap distance) is used Each single finger gesture can individually be for the press and hold gesture. If the touch enabled and disabled by setting or clearing deviates more than the specified distance, the the corresponding bits in the register gesture is no longer valid. SINGLE_FINGER_GESTURES. The multi finger gestures can be enabled and disabled via the However, if the touch remains within the given bound for longer that the period in ms, defined register MULTI_FINGER_GESTURES. as the sum of the register values in Tap time and Hold time, a press and hold gesture will o Zoom Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 23 of 79 November 2016 IQ Switch® ProxSense® Series be reported (PRESS_AND_HOLD). The gesture will continue to be reported until the touch is released or if a second touch is registered. No data will be reported in Relative X and Relative Y before the defined maximum hold period is reached, however, the relative data will be reported thereafter. This allows for features such as drag-n-drop. 6.3 Swipe (X-, X+, Y-, Y+) All four swipe gestures work in the same manner, and are only differentiated in their direction. The direction is defined with respect to the origin (0, 0) of the trackpad, typically at Rx0, Tx0 (Channel 0). If the touch is moving away from the origin, it is considered a positive swipe (+) and if it is moving towards the origin, it is a negative swipe (-). Whether the swipe is of the type X or Y is defined by which axis the touch is moving approximately parallel to. [pixels] and Swipe consecutive time [ms]. Once the initial swipe gesture conditions are met as defined above, the parameters of Swipe initial distance [pixels] and Swipe initial time [ms] will be replaced with these. Also, the gesture engine will reset its properties, thus evaluating the current touch‟s movement as if its initial coordinate was at the point at which the previous swipe gesture was recognised and as if it first occurred at that point in time. The consecutive events allow for the continuous stream of swipe events for a single action by the user. However, once the initial conditions are satisfied, the direction of the swipe gesture is fixed. For example, if a swipe X+ gesture is recognised by the engine, the consecutive swipe gestures will also be of type X+. And the 3rd condition will only be evaluated against the X axis. In the case that only a single event is desired, the settings in Swipe consecutive distance can A swipe gesture event is only reported when a be set to its maximum value and Swipe moving touch meets all three of the following consecutive time set to zero. This would make it impossible to meet these conditions conditions: on a standard trackpad. 1. A minimum distance is travelled from its initial coordinates, as defined in pixels by 6.4 2 Finger Tap the value in register Swipe initial distance. The simultaneous tap gesture simply requires 2. The distance in (1) is covered within the two tap gestures to occur simultaneously. For time specified in Swipe initial time (in ms). this reason the gesture uses the same 3. The angle of the swipe gesture, as parameters (Tap distance and Tap time) as determined by its starting coordinate and that of the tap gesture. It is also confined to the coordinate at which conditions (1) and the same conditions for the output to be (2) were first met, does not exceed the reported (2_FINGER_TAP). threshold in Swipe angle with regards to at 6.5 Scroll least 1 of the axes. The value in register Swipe angle is calculated as 64 tan 𝜃, A scroll gesture is identified by two where 𝜃 is the desired angle (in degrees). simultaneous and parallel moving touches. A scroll gesture will be reported (SCROLL) once The respective swipe gesture will be reported the average distance travelled by the two for 1 cycle (SWIPE_X-, X+, Y- Y+) when all of touches in pixels exceeds the value stored in these conditions are met. The relative register Scroll initial distance. Thereafter, a distance travelled will be reported in registers scroll gesture will continuously be reported Relative X and Relative Y throughout. until one of the touches is released or if a It is also possible to generate consecutive zoom gesture is validated. swipe gesture events during the same swipe Similar to the swipe gestures, the scroll gesture by defining the swipe gesture settings gestures are also bounded by a given angle to in registers Swipe consecutive distance the axis (Scroll angle). The value in this Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 24 of 79 November 2016 IQ Switch® ProxSense® Series register is calculated as 64 tan 𝜃, where 𝜃 is the desired angle (in degrees). This condition is only enforced during the initial validation stage of the scroll gesture. can be made and validated. However, for the scroll and zoom gestures, it is possible to alternate between the gestures and their directions without releasing any touches. The direction of the scroll gesture is defined by the reported relative X (horizontal scroll) and Y (vertical scroll) data. For instance, a positive relative X value will correspond with the direction of a swipe X+ gesture. Unlike the swipe gestures, a scroll gesture may alternate between a positive and negative direction without requiring the validation of the initial conditions. However, switching between the axes will require the validation. A switch includes At any given stage during a scroll gesture, only the axis applicable to the gesture will have a non-zero value in its relative data register. For example, a scroll parallel to the X-axis will have a non-zero Relative X value and a zero Relative Y value. This value relates to the movement of the scroll gesture. 6.6 Zoom Zoom gestures require two touches moving toward (zoom out) or away (zoom in) from each other. Similar to the scroll and swipe gestures, the zoom requires that an initial distance threshold in the register Zoom initial distance [pixels] is exceeded before a zoom gesture is reported (ZOOM). Thereafter, the register Zoom Consecutive Distance defines the distance threshold for each zoom event that follows the initial event. The direction/axis along which the two touches move is not relevant. between multi-touch gestures Alternating between scroll axes Alternating between zoom in and out Going from a scroll to a zoom gesture Going from a zoom to a scroll gesture Releasing any one of the two touches Having more than 2 touches on the trackpad at any given moment. A release of 1 of the touches will require a new touch be generated before any multitouch gesture can be validated. The multitouch gestures require 2, and only 2, touches at all time during the gesture. 7 Additional Features 7.1 Non-volatile Defaults The designer can use the supplied GUI to easily configure the optimal settings for different setups. The design specific firmware is then exported by the GUI, and programmed onto the IQS5xx. These parameters are used as the default values after start-up, without requiring any setup from the master. Two registers (Export file version number) are available so that the designer can label and identify the exported HEX file with the Switching from a zoom in to a zoom out corresponding settings. This allows the gesture, or vice versa, requires that the initial master to verify if the device firmware has the conditions be met in the opposite direction intended configuration as required. before the switch can occur. Alternating between a zoom and a scroll gesture requires 7.2 Automated Start-up the same. The IQS5xx is programmed with the trackpad The size of each zoom event will be reported application firmware, bundled with settings in Relative X, where the negative sign specifically configured for the current indicates a zoom out gesture and a positive hardware as described in Section 7.1. After sign a zoom in gesture. power-up the IQS5xx will automatically use the settings and configure the device 6.7 Switching Between Gestures accordingly. For all single finger gestures it is necessary to release all touches before any new gesture Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 25 of 79 November 2016 IQ Switch® ProxSense® Series 7.3 Suspend 7.5 Watchdog Timer (WDT) The IQS5xx can be placed into a suspended state (SUSPEND). No processing is performed, minimal power is consumed (<1uA), and the device retains existing data. A watchdog timer is implemented to prevent any stuck conditions which could occur from ESD events or similar scenarios. The watchdog timeout is set to about 500ms. The watchdog can be disabled (WDT), however, An automatic reseed of the trackpad is this needs to be programmed into the nontriggered after the IQS5xx is woken from volatile defaults, since this only takes effect suspend, since it cannot be guaranteed that after a reset. the reference values are still relevant. 7.3.1 I2C Wake 7.6 RF Immunity The device can be woken from suspend by addressing it on the I2C bus. It will respond with a not-acknowledge (NACK) on the first addressing attempt and with an acknowledge (ACK) on the second addressing attempt, providing that there was at least a time difference of ~150us between the two addressing attempts. The suspend bit must then be disabled in that communication session to resume operations. The IQS5xx has immunity to high power RF noise. To improve the RF immunity, extra decoupling capacitors are suggested on VREG and VDDHI. 7.3.2 Switch Input Pin Wake The SW_IN input pin can be used to wake the device from suspend (when enabled). The input can be connected to an alternate longrange proximity sensing IC (such as IQS211), or a mechanical switch/button for example. For more details on the input see Section 7.11. 7.4 Reset Place a 100pF in parallel with the 1uF ceramic on VREG. Place a 1uF ceramic on VDDHI. All decoupling capacitors should be placed as close as possible to the VDDHI and VREG pads. PCB ground planes also improve noise immunity. 7.7 Additional Non-Trackpad Channels Unused projected capacitance channels can be used to design additional buttons or sliders. Note that the channels will still provide XY data output, which can be ignored (or utilised) by the master. 7.8 Bootloader 7.4.1 Reset Indication A bootloader is included to allow easy application firmware upgrading via the I2C After a reset, the SHOW_RESET bit will be set bus, without the need to access the PGM and by the system to indicate the reset event NRST pins for reprogramming. occurred. This bit will clear when the master sets the ACK_RESET, if it becomes set again, For more information, refer to the the master will know a reset has occurred, and documentation “IQS5xx I2C Bootloader v2.x Technical User Guide.pdf”. can react appropriately. 7.8.1 Bootloader Status 7.4.2 Software Reset 2 The IQS5xx can be reset by means of an I C The bootloader status register can be used to confirm the availability/presence of the command (RESET). bootloader (Bootloader status). 7.4.3 Hardware Reset The NRST pin (active low) can be used to reset the IQS5xx. For more details see Section 10.2.6. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 26 of 79 November 2016 IQ Switch® ProxSense® Series Table 7.1 Bootloader Status Register value Status 0xA5 Bootloader is available 0xEE No bootloader A change in the state of the SW_IN can also trigger an event, see Section 8.8.1. This input can be used as an additional switch or proximity sensor, and has the ability to wake the IQS5xx from the extreme (<1uA) low power suspend state. 8 I2 C *Note the bootloader is available on the standard IQS5xx-B000 firmware; this could possibly be The IQS5xx communicates via the standard unavailable on custom firmware versions. I2C communication protocol. 7.9 Version Information Clock stretching can occur, thus monitoring the availability of the SCL is required, as per 2 The different IQS5xx devices can be identified standard I C protocol. by their relevant product numbers. 8.1 Data Ready (RDY) 7.9.1 Product Number Table 7.2 Product Number Product Number (decimal) Device 40 IQS550 58 IQS572 52 IQS525 An additional RDY I/O indicates (active HIGH) when the communication window is available with new data for optimal response. Polling can however be used, but is not recommended. RDY should be connected to an interrupt-on-change input for easier implementation and optimal response time. 8.2 Slave Address The default 7-bit device address is „1110100‟. The device address can be modified during 7.9.2 Project Number programming. The full address byte will thus The project number for the generic B000 be 0xE9 (read) or 0xE8 (write). project is 15 (decimal) for all devices. 7.9.3 Major and Minor Versions 8.3 16-bit Addressing 2 These will vary as the B000 is updated, this The I C employs a 16-bit address to access all datasheet relates to the version as indicated individual registers in the memory map. at the bottom of the Overview Section 1. 8.4 I2C Read 7.10 Unique ID The master can read from the device at the A 12-byte unique ID can be read from memory current address if the address is already set map address 0xF000 – 0xF00B. This number up, or when reading from the default address. Current Address Read gives each individual IC a unique identifier. 7.11 Switch Input Start S Control Byte Data n ACK Data n+1 ACK Stop NACK S The SW_IN (switch input) pin, when enabled Figure 8.1 Current Address Read (SW_INPUT), will display the state of the input pin to the master controller (SWITCH_STATE). The master can perform a random read by This state is updated before each I2C session. specifying the address. A WRITE is The input can be configured as active LOW or performed to set up the address, and a active HIGH (SW_INPUT_SELECT). For active repeated start is used to initiate the READ LOW, an internal pull-up resistor (typical value section. of 40kΩ) is connected to the SW_IN pin. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 27 of 79 November 2016 IQ Switch® ProxSense® Series Control Byte S Adr + WRITE ... Address [7..0] Address [15..8] Start ACK ADR - high Start Control Byte S Adr + READ ACK ADR - low Data n Figure 8.2 the communication window, RDY will go low and the IQS5xx will continue with a new sensing and processing cycle. ... Stop NACK ACK ACK 8.8 Event Mode Communication P The device can be set up to bypass the communication window when no activity is sensed (EVENT_MODE). This is usually enabled since the master does not want to be interrupted unnecessarily during every cycle if no activity occurred. The communication will resume (RDY will indicate available data) if an enabled event occurs. It is recommended that the RDY be placed on an interrupt-on-pinchange input on the master. Random Read 8.4.1 Default Read Address When a new communication window begins, the configurable default read address is used if a current address read is performed (no address is specified). If an application will always read from a specific register, the IQS5xx can be configured to point to the required register, negating the need to specify 8.8.1 Events the address at each new communication Numerous events can be individually enabled window, allowing for faster data reading. to trigger communication, they are: 2 8.5 I C Write Trackpad events (TP_EVENT): event triggered if there is a change in X/Y value, or if a finger is added or removed from the trackpad Proximity events (PROX_EVENT): event only triggers if a channel has a change in a proximity state Touch events (TOUCH_EVENT): event only triggers if a channel has a change in a touch state If the communication window is not serviced within the I2C timeout period (in milliseconds), the session is ended (RDY goes LOW), and processing continues as normal. This allows the system to continue and keep reference values up to date even if the master is not responsive. Snap (SNAP_EVENT): event only triggers if a channel has a change in a snap state The master uses a Data Write to write settings to the device. A 16-bit data address is always required, followed by the relevant data bytes to write to the device. Start Control Byte S Adr + WRITE Address [15..8] ACK ADR - high Data n Address [7..0] ACK ADR - low Figure 8.3 ACK Data n+1 ACK Stop ACK P Data Write 8.6 I2C Timeout 8.7 End of Communication Session / Window Unlike the previous A000 implementation, an I2C STOP will not terminate the communication window. When all required I2C transactions have been completed, the communication session must be terminated manually. This is achieved by sending the End Communication Window command, by writing a single byte (any data) to the address 0xEEEE, followed by a STOP. This will end Copyright © Azoteq (Pty) Ltd All Rights Reserved. Re-ATI (REATI_EVENT): one cycle is given to indicate the Re-ATI occurred (REATI_OCCURRED). Proximity on ALP (ALP_PROX_EVENT): event given on state change Switch input (SW_INPUT_EVENT): event triggers if there is a change in the input pin state. The proximity/touch/snap events are therefore mostly aimed at channels that are used for traditional buttons, where you want to know only when a status is changed. 8.8.2 Force Communication The master can initiate communication with the IQS5xx, even while RDY is LOW. The IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 28 of 79 November 2016 IQ Switch® ProxSense® Series IQS5xx will clock stretch until an appropriate before retrying), and the IQS5xx will be ready time to complete the I2C transaction. The and ACK the transaction. master firmware will not be affected (as long Figure 8.4 shows a forced communication as clock stretching is correctly handled). transaction. Communication starts with RDY For optimal program flow, it is suggested that = LOW. The IQS5xx is in a low power state RDY is used to sync on new data from the on the first request, and a NACK is sent. After IQS5xx. The forced method is only the second request the IQS5xx responds with recommended if the master must perform I2C an ACK. The IQS5xx clock stretches until an and Event Mode is active. appropriate time to communicate (to prevent interference with the capacitive NOTE: If the IQS5xx is in a low-power state measurements). When appropriate, the clock when the master forces the communication, is released and the transaction completes as the first addressing will respond with a NACK. normal. RDY is not set during a forced The master must repeat the addressing (wait communication transaction. 2 a minimum of 150us after the I C STOP Figure 8.4 Forced communication 8.9 Memory Map Registers The registers available in the memory map, via I2C, are provided in this section. The memory map starts with a READ-ONLY section, followed by a READ/WRITE section. The read/write permissions are indicated by Copyright © Azoteq (Pty) Ltd All Rights Reserved. the shading in the „R‟ (read) and/or „W‟ (write) columns. Certain registers in the memory map have defaults loaded from non-volatile memory, which can be configured during programming; these are highlighted also in the „E2‟ column. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 29 of 79 November 2016 IQ Switch® ProxSense® Series Table 8.1 Address Bit7 Bit6 Bit5 Bit4 Direct-Addressable Memory Map Bit3 Bit2 0x0000 0x0001 Product number (2 bytes) 0x0002 0x0003 Project number (2 bytes) 0x0004 Major version 0x0005 Minor version 0x0006 Bootloader status 0x0007 0x000A Open (4 bytes) Bit0 R W E2 (See 7.9) Max touch row (See 3.5.5) Previous cycle time [ms] 0x000C Details (See 7.8.1) Max touch column 0x000B Bit1 (See 4.1.1) 0x000D - - SWIPE _Y- SWIPE _Y+ SWIPE _X+ SWIPE _X- PRESS _AND_ HOLD SINGLE _TAP Gesture Events 0 0x000E - - - - - ZOOM SCROLL 2_ FINGER_ TAP Gesture Events 1 0x000F SHOW_ RESET ALP_ REATI_ OCCUR RED ALP_ ATI_ ERROR REATI_ OCCUR RED ATI_ ERROR 0x0010 - - SWITCH _STATE SNAP_ TOGGLE RR_ MISSED CHARGING_MODE TOO_ MANY_ FINGERS 0x0011 Number of fingers 0x0012 0x0013 Relative X [pixels] (2 bytes) PALM_ DETECT TP_ MOVEMENT System Info 0 System Info 1 (See 5.2.1) (See 5.2.2) 0x0014 0x0015 Relative Y [pixels] (2 bytes) 0x0016 0x0017 Absolute X position [pixels] (2 bytes) (See 5.2.3) 0x0018 0x0019 Absolute Y position [pixels] (2 bytes) 0x001A 0x001B Touch strength (2 bytes) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 (See 5.2.4) Page 30 of 79 November 2016 IQ Switch® ProxSense® Series Address Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 Touch area / size 0x001C Details R W E2 (See 5.2.5) Repeat: 0x001D Absolute X Absolute Y Touch strength Touch area / size : 0x0038 For fingers 2 - 5 0x0039 0x0058 Prox status (32 bytes) 0x0059 0x0076 Touch status (30 bytes) 0x0077 0x0094 Snap status (30 bytes) 0x0095 0x01C0 Count values (300 bytes) (See 8.10.5) (See 8.10.6) 0x01C1 0x02EC Delta values (300 bytes) 0x02ED 0x02EE ALP count value (2 bytes) (See 3.3.2) 0x02EF 0x0302 ALP individual count values (20 bytes) 0x0303 0x042E Reference values (300 bytes) (See 8.10.6) 0x042F 0x0430 ALP LTA (2 bytes) (See 3.4.2) 0x0431 ACK_ RESET - AUTO_ ATI ALP_ RESEED RESEED 0x0432 - - - - - MODE_SELECT System Control 0 RESET System Control 1 - 0x0433 0x0434 Open (2 bytes) 0x0435 0x043E ALP ATI compensation (10 bytes) SUSPEND (See 3.6.2) 0x043F 0x04D4 Copyright © Azoteq (Pty) Ltd All Rights Reserved. ATI compensation (150 bytes) IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 31 of 79 November 2016 IQ Switch® ProxSense® Series Address Bit7 Bit6 Bit5 0x04D5 0x56A Bit4 Bit3 Bit2 Bit1 Bit0 Details R W E2 ATI C individual adjust (150) 0x056B - - Global ATI C 0x056C - - ALP ATI C 0x056D 0x056E (See 3.6.1) ATI target (2 bytes) (See 3.6.2) 0x056F 0x0570 ALP ATI target (2 bytes) 0x0571 Reference drift limit 0x0572 ALP LTA drift limit 0x0573 Re-ATI lower compensation limit 0x0574 Re-ATI upper compensation limit 0x0575 0x0576 Max count limit (2 bytes) (See 3.3.3 and 3.7.2) 0x0577 Re-ATI retry time [s] (See 3.7.3) 0x0578 0x0579 Open (2 bytes) 0x057A 0x057B Report rate [ms] – Active mode (2 bytes) 0x057C 0x057D Report rate [ms] – Idle touch mode (2 bytes) 0x057E 0x057F Report rate [ms] – Idle mode (2 bytes) 0x0580 0x0581 Report rate [ms] – LP1 mode (2 bytes) 0x0582 0x0583 Report rate [ms] – LP2 mode (2 bytes) 0x0584 Timeout [s] – Active mode 0x0585 Timeout [s] – Idle touch mode (See 3.7.2) (See 3.7.3) (See 4.1) (See 4.2) 0x0586 Timeout [s] – Idle mode 0x0587 Timeout [x 20s] – LP1 mode Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 32 of 79 November 2016 IQ Switch® ProxSense® Series Address Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 Details 0x0588 Reference update time [s] (See 3.4.1) 0x0589 Snap timeout [s] (See 3.5.3) 0x058A I2C timeout [ms] (See 8.6) 0x058B 0x058D Open (3 bytes) 0x058E MANUAL_ CONTROL SETUP_ COMPLETE WDT SW_ INPUT_ EVENT ALP_ REATI REATI SW_ INPUT_ SELECT SW_ INPUT System Config 0 0x058F PROX_ EVENT TOUCH_ EVENT SNAP_ EVENT ALP_ PROX_ EVENT REATI_ EVENT TP_ EVENT GESTURE _EVENT EVENT_ MODE System Config 1 0x0590 – 0x0591 Open (2 bytes) 0x0592 0x0593 Snap threshold (2 bytes) 0x0594 Prox threshold - trackpad 0x0595 Prox threshold - ALP channel 0x0596 Global touch multiplier - set 0x0597 Global touch multiplier - clear 0x0598 0x062D Individual touch multiplier adjustments (150 bytes) 0x062E Minimum count Re-ATI delta 0x062F 0x0631 Open (3 bytes) R W E2 (See 3.5.3) (See 3.5.1) 0x0632 - - - - ALP_ COUNT _FILTER IIR_ SELECT (See 3.5.2) (See 3.7.2) MAV_ FILTER IIR_ FILTER Filter Settings 0 0x0633 XY static beta (See 5.9.2.2) 0x0634 ALP count beta (See 3.3.2) 0x0635 ALP1 LTA beta 0x0636 ALP2 LTA beta 0x0637 XY dynamic filter – bottom beta (See 3.4.2) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 (See 5.9.2.1) Page 33 of 79 November 2016 IQ Switch® ProxSense® Series Address Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 0x0638 XY dynamic filter– lower speed 0x0639 – 0x063A XY dynamic filter– upper speed (2 bytes) 0x063B – 0x063C Open (2 bytes) 0x063D Total Rx 0x063E Total Tx 0x063F 0x0648 Rx mapping (10 bytes) Bit1 Bit0 Details R W E2 (See 5.1.1) (See 5.1.3) 0x0649 0x0657 Tx mapping (15 bytes) 0x0658 CHARGE _TYPE RX_ GROUP PROX_ REVERSE ALP - - - - 0x0659 - - - - - - ALP_ RX9 ALP_ RX8 ALP Channel Setup 0 ALP Rx Select 0x065A ALP_ RX7 ALP_ RX6 ALP_ RX5 ALP_ RX4 ALP_ RX3 ALP_ RX2 ALP_ RX1 ALP_ RX0 0x065B - ALP_ TX14 ALP_ TX13 ALP_ TX12 ALP_ TX11 ALP_ TX10 ALP_ TX9 ALP_ TX8 ALP_ TX7 ALP_ TX6 ALP_ TX5 ALP_ TX4 ALP_ TX3 ALP_ TX2 ALP_ TX1 ALP_ TX0 Rx7/Tx2 Rx6/Tx3 Rx5/Tx4 Rx4/Tx5 Rx3/Tx6 Rx2/Tx7 Rx1/Tx8 Rx0/Tx9 Rx7/Tx9 Rx6/Tx10 Rx5/Tx11 Rx4/Tx12 Rx3/Tx13 Rx2/Tx14 - - - RX_ FLOAT 0 0 Hardware Settings A 0x065C ALP Tx Select RxToTx 0x065D Open 0x065E 0x065F - 0x0660 - CK_FREQ - - ANA_ DEAD_ TIME INCR_ PHASE Hardware Settings B1 0x0661 - CK_FREQ - - ANA_ DEAD_ TIME INCR_ PHASE Hardware Settings B2 (ALP) 0x0662 - STAB_ TIME Copyright © Azoteq (Pty) Ltd All Rights Reserved. ND - OPAMP_BIAS VTRIP IQS5xx-B000 Trackpad Datasheet Revision 2.0 Hardware Settings C1 Page 34 of 79 November 2016 IQ Switch® ProxSense® Series Address 0x0663 Bit7 Bit6 STAB_ TIME Bit5 Bit4 Bit3 Bit2 OPAMP_BIAS Bit1 Bit0 VTRIP Details Hardware Settings C2 (ALP) 0x0664 - UPLEN - PASSLEN Hardware Settings D1 0x0665 - UPLEN - PASSLEN Hardware Settings D2 (ALP) 0x0666 0x0668 0x0669 R W E2 Open (3 bytes) - - - - SWITCH _XY_ AXIS PALM_ REJECT FLIP_Y FLIP_X XY Config 0 0x066A Max multi-touches (See 5.3) 0x066B Finger split aggression factor (See 5.7) 0x066C Palm reject threshold 0x066D Palm reject timeout [x 32ms] 0x066E 0x066F X Resolution [pixels] (2 bytes) (See 5.5) (See 5.4) 0x0670 0x00671 Y Resolution [pixels] (2 bytes) 0x0672 Stationary touch movement threshold [pixels] 0x0673 0x0674 Open (2 bytes) 0x0675 0x0676 Default read address (2 bytes) (See 8.4.1) 0x0677 0x0678 Export file version number (2 bytes) (See 7.1) 0x0679 0x067A PROX_DB_SET SNAP_DB_ SET 0x067B 0x0698 Copyright © Azoteq (Pty) Ltd All Rights Reserved. TOUCH_DB_ SET PROX_DB_CLEAR SNAP_DB_ CLEAR TOUCH_DB_ CLEAR Active channels (30 bytes) IQS5xx-B000 Trackpad Datasheet Revision 2.0 (See 5.6) Prox debounce Touch snap debounce (See 8.10.5) Page 35 of 79 November 2016 IQ Switch® ProxSense® Series Address Bit7 Bit6 Bit5 0x0699 0x06B6 Bit4 Bit3 Bit2 Bit1 Bit0 Details R W E2 Snap enabled channels (30 bytes) 0x06B7 - - SWIPE _Y- 0x06B8 - - - SWIPE _Y+ SWIPE _X+ SWIPE _Y- TAP_ AND_ HOLD SINGLE _TAP Single Finger Gestures - - ZOOM SCROLL 2_ FINGER_ TAP Multi Finger Gestures 0x06B9 0x06BA Tap time [ms] (2 bytes) 0x06BB 0x06BC Tap distance [pixels] (2 bytes) 0x06BD 0x06BE Hold time [ms] (2 bytes) 0x06BF 0x06C0 Swipe initial time [ms] (2 bytes) 0x06C1 0x06C2 Swipe initial distance [pixels] (2 bytes) 0x06C3 0x06C4 Swipe consecutive time [ms] (2 bytes) 0x06C5 0x06C6 Swipe consecutive distance [pixels] (2 bytes) 0x06C7 Swipe angle [64tan(deg)] 0x06C8 0x06C9 Scroll initial distance [pixels] (2 bytes) 0x06CA Scroll angle [64tan(deg)] 0x06CB 0x06CC Zoom initial distance [pixels] (2 bytes) (see 6.1 and 6.4) (see 6.2) (see 6.3) (see 6.5) (see 6.6) 0x06CD 0x06CE Zoom consecutive distance [pixels] (2 bytes) 0x06CF Open (1 byte) 8.10 Memory Map Bit / Register Definitions The bit definitions for the registers in the memory map are explained in this section. Also certain parameters that have a multiple number of bytes (registers) are also explained here. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 36 of 79 November 2016 IQ Switch® ProxSense® Series 8.10.1 Gesture Events 0 Gesture Events 0 Bit 7 6 5 4 3 2 1 0 - - SWIPE_ Y- SWIPE_ Y+ SWIPE_ X+ SWIPE_ X- PRESS_ AND_ HOLD SINGLE_ TAP 1 0 SCROLL 2_ FINGER_ TAP Name Bit 7-6: Unused Bit 5: SWIPE_Y-: Swipe in negative Y direction status 0 = No gesture 1 = Swipe in negative Y-direction occurred Bit 4: SWIPE_Y+: Swipe in positive Y direction status 0 = No gesture 1 = Swipe in positive Y-direction occurred Bit 3: SWIPE_X+: Swipe in positive X direction status 0 = No gesture 1 = Swipe in positive X-direction occurred Bit 2: SWIPE_X-: Swipe in negative X direction status 0 = No gesture 1 = Swipe in negative X direction occurred Bit 1: PRESS_AND_HOLD: Press and hold gesture status 0 = No gesture 1 = Press and hold occurred Bit 0: SINGLE_TAP: Single tap gesture status 0 = No gesture 1 = Single tap occurred 8.10.2 Gesture Events 1 Gesture Events 1 Bit 7 6 5 4 3 2 Name - - - - Bit 7-3: Unused Bit 2: ZOOM: Zoom gesture status - ZOOM 0 = No gesture Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 37 of 79 November 2016 IQ Switch® ProxSense® Series 1 = Zoom gesture occurred Bit 1: SCROLL: Scroll status 0 = No gesture 1 = Scroll gesture occurred Bit 0: 2_FINGER_TAP: Two finger tap gesture status 0 = No gesture 1 = Two finger tap occurred 8.10.3 System Info 0 System Info 0 Bit 7 6 5 4 3 SHOW_ RESET ALP_ REATI_ OCCURR ED ALP_ ATI_ ERROR REATI_ OCCURR ED ATI_ ERROR Name Bit 7: 2 1 0 CHARGING_MODE SHOW_RESET: Indicates a reset 0 = Reset indication has been cleared by host, writing to „Ack Reset‟ bit 1 = Reset has occurred, and indication has not yet been cleared by host Bit 6: ALP_REATI_OCCURRED: Alternate Low Power channel Re-ATI status 0 = No Re-ATI 1 = Re-ATI has just completed on the alternate LP channel Bit 5: ALP_ATI_ERROR: Alternate Low Power channel ATI error status 0 = Most recent ATI process was successful 1 = Most recent ATI process had errors Bit 4: REATI_OCCURRED: Trackpad Re-ATI status 0 = No Re-ATI 1 = Re-ATI has just completed on the trackpad Bit 3: ATI_ERROR: Error condition seen on latest ATI procedure 0 = Most recent ATI process was successful 1 = Most recent ATI process had errors Bit 2-0: CHARGING_MODE: Indicates current mode 000 = Active mode 001 = Idle-Touch mode 010 = Idle mode 011 = LP1 mode 100 = LP2 mode Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 38 of 79 November 2016 IQ Switch® ProxSense® Series 8.10.4 System Info 1 System Info 1 Bit 7 6 5 4 3 2 1 0 - - SWITCH _STATE SNAP_ TOGGLE RR_ MISSED TOO_ MANY_ FINGERS PALM_ DETECT TP_ MOVEMENT Name Bit 7-6: Unused Bit 5: SWITCH_STATE: Status of input pin SW_IN 0 = SW_IN is LOW 1 = SW_IN is HIGH Bit 4: SNAP_TOGGLE: Change in any snap channel status 0 = No change in any channels‟ snap status 1 = At least one channel has had a change in snap status Bit 3: RR_MISSED: Report rate status 0 = Report rate has been achieved 1 = Report rate was not achieved Bit 2: TOO_MANY_FINGERS: Total finger status 0 = Number of fingers are within the max selected value 1 = Number of fingers are more than the max selected Bit 1: PALM_DETECT: Palm detect status 0 = No palm reject detected 1 = Palm reject has been detected Bit 0: TP_MOVEMENT: Activity or movement on trackpad status 0 = No finger or no movement of fingers on trackpad 1 = Movement of finger(s) seen on trackpad 8.10.5 Individual Channel Status / Config Bit Definitions For all status outputs or configuration parameters where one bit relates to one channel, the structure is defined as shown in the tables below. Each row has a 16-bit value where the status/config of each bit corresponds to the status/config of the corresponding column. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 39 of 79 November 2016 IQ Switch® ProxSense® Series Table 8.2 Status Bytes Address Data X Status/Config [Row0] – High Byte X+1 Status/Config [Row0] – Low Byte X+2 Status/Config [Row1] – High Byte X+3 Status/Config [Row1] – Low Byte : X+28 Status/Config [Row14] – High Byte X+29 Status/Config [Row14] – Low Byte *Note that the proximity status bits have two extra bytes appended to the end to include the proximity status bit of the ALP channel. Its status is located at Bit0. Table 8.3 Status/Config Bit Definitions High byte Row Z Low byte - - - - - - Col9 Col8 Col7 Col6 Col5 Col4 Col3 Col2 Col1 Col0 Bit15 Bit14 Bit13 Bit12 Bit11 Bit10 Bit9 Bit8 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 *Note that if the XY axes are switched, these registers do NOT switch. This means that the bits will always link to Rxs, and the registers will always link to Txs. For the example above the parameter shown in the grey box in the table above is associated with the Zth Tx and the 6th Rx. The bit definitions for these parameters are shown in the table below. Table 8.4 Channel Status/Config Bit Definitions Parameter Bit = 0 Bit = 1 Prox status Channel does not have a proximity Channel does have a prox Touch status Channel does not have a touch Channel does have a touch Snap status Channel does not have a snap Channel does have a snap Active channels Channel disabled Channel enabled Snap enabled channels Snap feature disabled on channel Snap feature enabled on channel 8.10.6 Count / Delta / Reference Data For the count, delta and reference values (2 bytes per channel), the structure is defined as shown in the table below. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 40 of 79 November 2016 IQ Switch® ProxSense® Series Table 8.5 Count / Delta / Reference Value Bytes Byte number Data Description X Count/Delta/Reference value[0][0] – High Byte X+1 Count/Delta/Reference value[0][0] – Low Byte Count, delta or reference @ first Tx, and first Rx (thus top left) X+2 Count/Delta/Reference value[0][1] – High Byte X+3 Count/Delta/Reference value[0][1] – Low Byte : : : X+298 Count/Delta/Reference value[14][9] – High Byte X+299 Count/Delta/Reference value[14][9] – Low Byte Count, delta or reference @ last Tx, and last Rx (thus bottom right) Count, delta or reference @ first Tx, and 2nd Rx 8.10.7 System Control 0 System Control 0 Bit 7 6 5 4 3 Name ACK_ RESET - AUTO_ ATI ALP_ RESEED RESEED Bit 7: 2 1 0 MODE_SELECT ACK_RESET: Acknowledge a reset 0 = nothing 1 = Acknowledge the reset by clearing SHOW_RESET bit Bit 6: unused Bit 5: AUTO_ATI: Run ATI algorithm 0 = nothing 1 = Run ATI algorithm (affected channels depending on current mode) Bit 4: ALP_RESEED: Reseed alternate low power channel 0 = nothing 1 = reseed the LTA of the alternate LP channel Bit 3: RESEED: Reseed trackpad channels 0 = nothing 1 = Reseed reference values of trackpad Bit 2-0: MODE_SELECT: Select mode (only applies in Manual Mode) 000 = Active mode Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 41 of 79 November 2016 IQ Switch® ProxSense® Series 001 = Idle-Touch mode 010 = Idle mode 011 = LP1 mode 100 = LP2 mode 8.10.8 System Control 1 System Control 1 Bit 7 6 5 4 3 2 1 0 Name - - - - - - RESET SUSPEND Bit 7-2: Unused Bit 1: RESET: Reset the IQS5xx 0 = nothing 1 = Reset the device after the communication window terminates Bit 0: SUSPEND: Suspend IQS5xx 0 = nothing 1 = Place IQS5xx into suspend after the communication window terminates 8.10.9 System Config 0 System Config 0 Bit Name Bit 7: 7 6 5 4 3 2 1 0 MANUAL_ CONTROL SETUP_ COMPLETE WDT SW_ INPUT_ EVENT ALP_ REATI REATI SW_ INPUT_ SELECT SW_ INPUT MANUAL_CONTROL: Override automatic mode switching 0 = Modes are automatically controlled by IQS5xx 1 = Manual control of modes are handled by host Bit 6: SETUP_COMPLETE: Device parameters are set up 0 = IQS5xx will remain in I2C setup window (no processing yet) 1 = Setup is complete, run auto-start procedure Bit 5: WDT: Watchdog timer enable/disable 0 = Watchdog is disabled (only disables after a reset) 1 = Watchdog is enabled Bit 4: SW_INPUT_EVENT: Enable switch state change triggering event 0 = Toggle of SW_IN does not trigger an event 1 = Toggle of SW_IN triggers an event Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 42 of 79 November 2016 IQ Switch® ProxSense® Series Bit 3: ALP_REATI: Enable/Disable automatic Re-ATI on alternate LP channel 0 = Re-ATI is disabled for alternate LP channel 1 = Re-ATI is enabled for alternate LP channel Bit 2: REATI: Enable/Disable automatic Re-ATI on trackpad 0 = Re-ATI is disabled for alternate trackpad channels 1 = Re-ATI is enabled for alternate trackpad channels Bit 1: SW_INPUT_SELECT: Select I/O polarity 0 = SW_IN is active LOW 1 = SW_IN is active HIGH Bit 0: SW_INPUT: Enable/disable the input switch function on pin SW_IN 0 = Input disabled 1 = Input enabled 8.10.10 System Config 1 System Config 1 Bit Name Bit 7: 7 6 5 4 3 2 1 0 PROX_ EVENT TOUCH_ EVENT SNAP_ EVENT ALP_ PROX_ EVENT REATI_ EVENT TP_ EVENT GESTURE _EVENT EVENT_ MODE PROX_EVENT: Enable proximity triggering event 0 = Toggle of proximity status does not trigger an event 1 = Toggle of proximity status triggers an event Bit 6: TOUCH_EVENT: Enable touch triggering event 0 = Toggle of touch status does not trigger an event 1 = Toggle of touch status triggers an event Bit 5: SNAP_EVENT: Enable snap triggering event 0 = Toggle of snap status does not trigger an event 1 = Toggle of snap status triggers an event Bit 4: ALP_PROX_EVENT: Enable alternate LP channel proximity triggering event 0 = Toggle of alternate channel proximity status does not trigger an event 1 = Toggle of alternate channel proximity status triggers an event Bit 3: REATI_EVENT: Enable Re-ATI generating an event 0 = Re-ATI occurring does not trigger an event 1 = Re-ATI occurring triggers an event Bit 2: TP_EVENT: Enable trackpad events 0 = Trackpad actions will not trigger event Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 43 of 79 November 2016 IQ Switch® ProxSense® Series 1 = Trackpad actions trigger event Bit 1: GESTURE_EVENT: Enable gesture events 0 = Gestures will not trigger event 1 = Gestures will trigger event Bit 0: EVENT_MODE: Enable event mode communication 0 = I2C is presented each cycle 1 = I2C is only initiated when an enabled event occurs Filter Settings 0 Bit 7 6 5 4 3 2 1 0 - - - - ALP_ COUNT_ FILTER IIR_ SELECT MAV_ FILTER IIR_ FILTER Name Bit 7-4: Unused Bit 3: ALP_COUNT_FILTER: Enable alternate LP channel count filtering 0 = Alternate LP channel counts are unfiltered 1 = Alternate LP channel counts are filtered Bit 2: IIR_SELECT: Select the IIR filtering method for the XY data points 0 = Damping factor for IIR filter is dynamically adjusted relative to XY movement 1 = Damping factor for IIR filter is fixed Bit 1: MAV_FILTER: Enable moving averaging filter 0 = XY MAV filter disabled 1 = XY MAV filter enabled Bit 0: IIR_FILTER: Enable IIR filter 0 = XY IIR filter disabled 1 = XY IIR filter enabled 8.10.11 Alternate Channel Setup ALP Channel Setup 0 Bit 7 6 5 4 3 2 1 0 Name CHARGE _TYPE RX_ GROUP PROX_ REVERSE ALP - - - - Bit 7: CHARGE_TYPE: Charge type selection 0 = Projected capacitive charging 1 = Self capacitive charging Bit 6: RX_GROUP: Select Rx group Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 44 of 79 November 2016 IQ Switch® ProxSense® Series 0 = Rx group A 1 = Rx group B Bit 5: PROX_REVERSE: Enable reverse proximity sensing 0 = Allow proximity to only trigger in conventional direction (positive for projected, negative for self capacitive) 1 = Proximity detects change in counts in both directions Bit 4: ALP: Enable alternate low power channel 0 = LP1 and LP2 use trackpad channels 1 = LP1 and LP2 use alternate channel configuration Bit 3-0: Unused 8.10.12 ALP Rx select Bit Z: ALP_RxZ: Select Rx for alternate low power channel 0 = RxZ is not part of ALP channel 1 = RxZ is part of ALP channel 8.10.13 ALP Tx select Bit Z: ALP_TxZ: Select Tx for alternate low power channel 0 = TxZ is not part of ALP channel 1 = TxZ is part of ALP channel 8.10.14 RxToTx RxToTx(1) Bit 7 6 5 4 3 2 1 0 IQS525 Rx7/Tx2 Rx6/Tx3 Rx5/Tx4 Rx4/Tx5 Rx3/Tx6 Rx2/Tx7 Rx1/Tx8 Rx0/Tx9 IQS572 Rx7/Tx9 Rx6/Tx10 Rx5/Tx11 Rx4/Tx12 Rx3/Tx13 Rx2/Tx14 0 0 Bit 7-0: Rx/Tx: Change an Rx electrode to a Tx electrode 0 = Activate indicated Rx 1 = Activate indicated Tx 1: This register is only available on the IQS572 and IQS525 firmware Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 45 of 79 November 2016 IQ Switch® ProxSense® Series 8.10.15 Hardware Settings A Hardware Settings A Bit Name 7 6 5 4 3 2 1 0 - - ND - - RX_ FLOAT 0 0 3 2 1 0 - - ANA_ DEAD_ TIME INCR_ PHASE Bit 7-6: Unused Bit 5: ND: Enable hardware noise detection 0 = noise detect disabled 1 = noise detect enabled Bit 4-3: Unused Bit 2: RX_FLOAT: Select Rx status when inactive 0 = Rx is grounded when inactive 1 = Rx is floating when inactive Bit 1-0 Internal use, set to 0 8.10.16 Hardware Settings B Hardware Settings B Bit 7 6 5 4 Name - CK_FREQ Bit 7: Unused Bit 6-4: CK_FREQ: Configure Prox module clock source 000 = 125kHz 001 = 250kHz 010 = 500kHz 011 = 1MHz 100 = 2MHz 101 = 4MHz 110 = 8MHz 111 = 16MHz Bit 3-2: Unused Bit 1: ANA_DEAD_TIME: Analog dead time between up and pass phase 0 = Analog dead time disabled (dead time is half a prox clock cycle) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 46 of 79 November 2016 IQ Switch® ProxSense® Series 1 = Analog dead time enabled (dead time is ~10ns, and UP increased by one cycle) Bit 0: INCR_PHASE: Increase the phase length of UP and PASS 0 = Phase (UP / PASS) not incremented 1 = Phase (UP / PASS) increased by one half of a prox clock cycle 8.10.17 Hardware Settings C Hardware Settings C Bit Name 7 6 STAB_ TIME Bit 7-6: 5 4 3 2 OPAMP_BIAS 1 0 VTRIP STAB_TIME: Stabilisation time after module power-on before conversion starts 00 = 1.7ms 01 = 500us 10 = 120us 11 = no not use Bit 6-4: OPAMP_BIAS: Opamp bias strength 00 = 2.5uA 01 = 5uA 10 = 7.5uA 11 = 10uA Bit 3-0: VTRIP: Charge transfer trip voltage Trip voltage = [0.5 + (VTRIP x 0.0267)] x Vreg 8.10.18 Hardware Settings D Hardware Settings D Bit 7 Name - 6 5 4 UPLEN - Bit 7: Unused Bit 6-4: UPLEN: Length of UP phase Bit 3: Unused Bit 2-0: PASSLEN: Length of PASS phase Copyright © Azoteq (Pty) Ltd All Rights Reserved. 3 IQS5xx-B000 Trackpad Datasheet Revision 2.0 2 1 0 PASSLEN Page 47 of 79 November 2016 IQ Switch® ProxSense® Series 8.10.19 XY Config 0 XY Config 0 Bit 7 6 5 4 3 2 1 0 - - - - PALM_ REJECT SWITCH _XY_ AXIS FLIP_Y FLIP_X Name Bit 7-4: Unused Bit 3: PALM_REJECT: Enable palm reject sensing and suppression 0 = Large fingers (palms) are allowed 1 = Large fingers (palms) will block XY outputs. Bit 2: SWITCH_XY_AXIS: Switch X and Y outputs 0 = Columns Rx0-Rx9 gives change in X, rows Tx0-Tx14 gives change in Y 1 = Columns Tx0-Tx14 gives change in X, rows Rx0-Rx9 gives change in Y Bit 1: FLIP_Y: Flip Y output values 0 = Keep default Y values 1 = Invert Y output values Bit 0: FLIP_X: Flip X output values 0 = Keep default X values 1 = Invert X output values 8.10.20 Single Finger Gestures Single Finger Gestures Bit 7 6 5 4 3 2 1 0 - - SWIPE_ Y- SWIPE_ Y+ SWIPE_ X+ SWIPE_ Y- PRESS_ AND_ HOLD SINGLE_ TAP Name Bit 7-6: Unused Bit 5: SWIPE_Y-: Swipe in negative Y direction 0 = Gesture disabled 1 = Gesture enabled Bit 4: SWIPE_Y+: Swipe in positive Y direction 0 = Gesture disabled 1 = Gesture enabled Bit 3: SWIPE_X+: Swipe in positive X direction 0 = Gesture disabled Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 48 of 79 November 2016 IQ Switch® ProxSense® Series 1 = Gesture enabled Bit 2: SWIPE_X-: Swipe in negative X direction 0 = Gesture disabled 1 = Gesture enabled Bit 1: PRESS_AND_HOLD: Press and hold gesture 0 = Gesture disabled 1 = Gesture enabled Bit 0: SINGLE_TAP: Single tap gesture 0 = Gesture disabled 1 = Gesture enabled 8.10.21 Multi-finger Gestures Multi-finger Gestures Bit Name 7 6 5 4 3 2 1 0 - - - - - ZOOM SCROLL 2F_ TAP Bit 7-3: Unused Bit 2: ZOOM: Zoom gestures 0 = Gestures disabled 1 = Gestures enabled Bit 1: SCROLL: Scroll gestures 0 = Gestures disabled 1 = Gestures enabled Bit 0: 2F_TAP: Two finger tap gesture 0 = Gesture disabled 1 = Gesture enabled Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 49 of 79 November 2016 IQ Switch® ProxSense® Series 37 VSSIO 39 Tx4 38 VDDIO 40 Tx5 41 Tx6 42 Tx7 43 Tx8 44 Tx9 36 Tx3 PGM 2 35 Tx2 SW_IN 3 34 Tx1 N/C 4 33 Tx0 VDDHI 7 VSS 8 32 Rx9B IQS550 Xxxxx xx Xxx xxx SCL 6 31 Rx9A 30 Rx8B Rx5B 24 Rx5A 23 Rx4B 22 Rx4A 21 Rx3B 20 Rx3A 19 Rx2B 18 25 Rx6A Rx2A 17 26 Rx6B N/C 12 Rx1B 16 27 Rx7A RDY 11 Rx1A 15 NRST 10 Rx0B 14 28 Rx7B Rx0A 13 Transmitters and receivers to touchscreen 29 Rx8A VREG 9 Figure 9.1 Copyright © Azoteq (Pty) Ltd All Rights Reserved. 45 Tx10 Tx14 1 SDA 5 Digital Interface (i2c) 46 Tx11 48 Tx13 Supply Voltage 47 Tx12 9 Circuit Diagram IQS550 Overview Diagram IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 50 of 79 November 2016 22 TX4 23 TX5 SDA 2 20 TX2 IQS572 xx xxx xx xxx xxx xx VSS 5 19 TX1 18 TX0 17 RX7 / TX9 RX4 / TX12 14 RX3 / TX13 13 RX2 / TX14 12 22 PD4 23 PD5 24 PD6 25 PD7 26 PB0 27 PGM N/C 1 21 PD3 SDA 2 20 PD2 IQS525 VSS 5 xx xxx VDDHI 4 xx xxx xxx xx SCL 3 19 TX0 18 TX1 17 RX7 / TX2 Transmitters and receivers to trackpad / touchscreen RX4 / Tx5 14 RX3 / Tx6 13 RX2 / Tx7 12 RX1 / Tx8 11 15 RX5 / TX4 RX0 / Tx9 10 NRST 7 N/C 9 16 RX6 / TX3 RDY 8 VREG 6 Figure 9.3 Transmitters and receivers to trackpad / touchscreen IQS572 Overview Diagram 28 SW_IN Supply Voltage RX1 11 15 RX5 / TX11 RX0 10 NRST 7 N/C 9 16 RX6 / TX10 RDY 8 VREG 6 Figure 9.2 Copyright © Azoteq (Pty) Ltd All Rights Reserved. 24 TX6 21 TX3 VDDHI 4 Digital Interface (i2c) 25 TX7 N/C 1 SCL 3 Digital Interface (i2c) 26 TX8 Supply Voltage 27 PGM 28 SW_IN IQ Switch® ProxSense® Series IQS525 Overview Diagram IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 51 of 79 November 2016 IQ Switch® ProxSense® Series Figure 9.4 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS550 Application Circuit IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 52 of 79 November 2016 IQ Switch® ProxSense® Series Figure 9.5 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS572 Application Circuit IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 53 of 79 November 2016 IQ Switch® ProxSense® Series Figure 9.6 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS525 Application Circuit IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 54 of 79 November 2016 IQ Switch® ProxSense® Series 10 Electrical Characteristics 10.1 Absolute Maximum Ratings Exceeding these maximum ratings may cause permanent damage to the device. Table 10.1 Voltage Characteristics Symbol Rating Min Max VDDHI VSS External supply voltage -0.3 4.0 Receiver channel pins (Rx0A...Rx9B) VSS–0.3 VREG (-1.55) PXS off VSS–0.3 4.0 PXS on(1) VSS–0.3 VREG (-1.55) VSS–0.3 4.0 Input voltage on transmit pins (Tx0...Tx14)) VIN Input voltage on any pin(2) Unit V ® 1. If the ProxSense peripheral is on, no injection must be performed on any pin having the transmit function (Tx) as an alternate function, even if this alternate function is not specified 2. IINJ(PIN) must never be exceeded. This is implicitly insured if V IN maximum is respected. If VIN maximum cannot be respected, the injection current must be limited externally to the I INJ(PIN) value. A positive injection is induced by VIN>VDDHI while a negative is induced by VIN<VSS. Table 10.2 Current Characteristics Symbol Rating Max. IVDDHI Total current into VDDHI power line (source) 80 IVSS Total current out of VSS ground line (sink) 80 Output current sunk by any other I/O and control pin 25 Output current source by any I/Os and control pin -25 Injected current on any pin(2) ±5 Total injected current (sum of all I/O and control pins)(2) ±25 IIO Unit mA IINJ(PIN)(1) (1) ∑ IINJ(PIN) 1. IINJ(PIN) must never be exceeded. This is implicitly insured if V IN maximum is respected. If VIN maximum cannot be respected, the injection current must be limited externally to the IINJ(PIN) value. A positive injection is induced by VIN>VDDHI while a negative injection is induced by VIN<VSS. For true open-drain pads, there is no positive injection current, and the corresponding V IN maximum must always be respected. 2. When several inputs are submitted to a current injection, the maximum ΣI INJ(PIN) is the absolute sum of the positive and negative injected currents (instantaneous values). These results are based on characterization with ΣIINJ(PIN) maximum current injection on four I/O port pins of the device. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 55 of 79 November 2016 IQ Switch® ProxSense® Series Table 10.3 Thermal Characteristics Symbol Rating Max. TSTG Storage temperature range -65 to +150 TJ Maximum junction temperature 150 Unit °C 10.2 Operating Conditions 10.2.1 General Operating Conditions Table 10.4 General Operating Conditions Symbol Parameter Conditions Min fMASTER(1) Master clock frequency 1.65V ≤ VDDHI ≤3.6V - VDDHI Standard operating voltage - 1.65 PD(2) Power dissipation at TA = 85°C - - TA Temperature range 1.65V ≤ VDDHI ≤3.6V -40 TJ Junction temperature range -40°C ≤ VDDHI ≤ 85°C -40 Typ 16 - - Max Unit - MHz 3.6 V 625 mW 85 °C 105 °C 1. fMASTER = fCPU 2. To calculate PDmax(TA) use the formula given in thermal characteristics PDmax=(TJmax −TA)/θJA with TJmax in this table and θJA in Table 10.15. 10.2.2 Power-up / Power-down Operating Conditions Table 10.5 Symbol Parameter tVDDHI VDDHI rise time rate tTEMP Reset release decay VPOR VPDR Operating Conditions at Power Up / Down Conditions Min Typ Max Unit 20 - 1300 µs/V - 1 - Ms Power on reset threshold 1.44 - 1.65(1) V Power down reset threshold 1.30 - 1.60(2) V VDDHI rising 1. Tested in production 2. Data based on characterisation results, not tested in production. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 56 of 79 November 2016 IQ Switch® ProxSense® Series 10.2.3 Supply Current Characteristic Table 10.6 Current Consumption(1) Symbol Parameter Conditions Typ Max IDD(CORE) Run current for processor core 16MHz master frequency 2.8 3.5 (TA = -40 °C to 85 °C) IDD(LP STATE) IDD(SUSPEND) Unit mA Supply current in low-power sleep state (which is added to cycle time to obtain desired report rate) TA = -40 °C to 25 °C 1 2 uA TA = 85 °C 1.4 3.2 uA Supply current in suspend state TA = -40 °C to 25 °C 0.4 1.2 uA TA = 85 °C 1 2.5 uA 1. Data based on characterisation results, unless otherwise specified. 10.2.4 ProxSense® Current Consumption The break-down of the consumption from the ProxSense peripheral is shown below. Table 10.7 ProxSense® Current Consumption(1) Symbol ProxSense transmitter (Tx) ProxSense receiver (Rx) Typ Unit IDD(PXS) 1 1 0.6 mA 1 4 1.1 mA 1 10 2.3 mA 1. Data based on characterisation results, unless otherwise specified. 10.2.5 Expected Total Current Consumption Scenarios The specific parameters configured on varying designs have a great impact on the obtained current consumption. Due to this, the following table is purely illustrative of the expected consumption for similar configurations. The device configurations used below are examples of practical setups expected in applications. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 57 of 79 November 2016 IQ Switch® ProxSense® Series Table 10.8 Total Current Consumption(1) Current (Typ) Symbol IDD(Total) Sensors Report Rate Unit IQS550 IQS572 IQS525 Trackpad(2) 10ms 3.75 2.73 1.46 mA Trackpad(2) 15ms 2.52 1.85 0.99 mA Trackpad(2) 20ms 1.9 1.38 0.74 mA Trackpad(2) 40ms 975 690 370 uA Trackpad(2) 80ms 483 346 185 uA Trackpad(2) 160ms 243 174 96 uA Trackpad(2) 320ms 121 89 48 uA Trackpad(2) 640ms 67 55 26 uA ALP(3) 80ms 48 uA ALP(3) 160ms 25 uA ALP(3) 320ms 13 uA ALP(3) 640ms 7 uA ALP(4) 80ms 43 uA ALP(4) 160ms 22 uA ALP(4) 320ms 12 uA ALP(4) 640ms 7 uA ALP(5) 80ms 41 uA ALP(5) 160ms 21 uA ALP(5) 320ms 12 uA ALP(5) 640ms 6 uA 1. Based on bench measurements, not characterised 2. Tested with maximum number of sensors active (IQS550 – 15x10 / IQS572 – 9x8 / IQS525 – 5x5); ATI Target of 500 counts; Max number of multi-touches = 2 / default hardware (conversion) settings / 2 1 finger touch (8mm diameter) active / streaming 27 bytes (XY data and gestures) / I C pull-ups of 4.7kΩ / VDDHI = 3.3V 3. Tested with ALP channel configured in projected capacitive mode; ATI Target of 500; Alternating Txs enabled, all Rxs enabled; Event-Mode enabled Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 58 of 79 November 2016 IQ Switch® ProxSense® Series 4. Tested with ALP channel configured in projected capacitive mode; ATI Target of 500; All Txs enabled, single Rxs around trackpad enabled; Event-Mode enabled 5. Tested with ALP channel configured in self capacitive mode; ATI Target of 800; single Rx enabled; Event-Mode enabled 10.2.6 I/O Port Pin Characteristics General characteristics Subject to general operating conditions for VDDHI and TA unless otherwise specified. All unused pins must be kept at a fixed voltage: using the output mode of the I/O for example or an external pull-up or pull-down resistor. Table 10.9 Standard I/O Static Characteristic (1) (2) Symbol Parameter Conditions Min. Typ. Max. Unit VIL Input low level voltage(3) Standard I/Os VSS-0.3 - 0.3VDDHI V VIH Input high level voltage(3) Standard I/Os 0.7 VDDHI - VDDHI +0.3 Vhys Schmitt trigger voltage hysteresis(4) Standard I/Os - 200 - mV IIkg Input leakage current(5) VSS ≤ VIN ≤ VDDHI Standard I/Os -1 - 1 uA VSS ≤ Vin ≤ VREG(6) Rx, Tx I/Os -1 - 1 VIN = VSS 30 45 60 kΩ - 5 - pF RPU Weak pull-up equivalent resistor(7) CIO(8) I/O pin capacitance 1. 2. 3. 4. 5. 6. 7. 8. VDDHI = 3.0 V, TA = -40 to 85°C unless otherwise specified. Not applicable to Rx and Tx pins. Data based on characterisation results, not tested in production. Hysteresis voltage between Schmitt trigger switching levels. Based on characterization results, not tested. The maximum value may be exceeded if negative current is injected on adjacent pins. ® VIN must not exceed VREG value if ProxSense is enabled, even on port B and D (Tx), VREG = 1.55V. RPU pull-up equivalent resistor based on a resistive transistor (corresponding I PU current characteristics) Data guaranteed by design, not tested in production Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 59 of 79 November 2016 IQ Switch® ProxSense® Series 10.2.7 Output Driving Current Subject to general operating conditions for VDDHI and TA unless otherwise specified. Table 10.10 Output Driving Current (high sink ports) I/O type Symbol VOL(1) Parameter Conditions Output low level voltage for an I/O pin Conditions Min. Max. IIO = +2mA, VDDHI = 1.8V - 0.45 IIO = +2mA, VDDHI = 3.0V - 0.45 IIO = +10mA, VDDHI = 3.0V - 0.7 IIO = -1mA, VDDHI = 1.8V VDDHI -0.45 - IIO = -1mA, VDDHI = 3.0V VDDHI -0.45 - IIO = -10mA, VDDHI = 3.0V VDDHI -0.7 - Unit Standard VOH(2) ProxSense I/O Output high level voltage for an I/O pin VOL Output low level voltage for Tx and Rx ProxSense I/Os IRX = TBD - TBD VOH Output high level voltage for Tx ProxSense I/O ITX = 1mA 1.45 - VOH Output high level voltage for Rx ProxSense I/O IPXS_RX = 0.5mA 1.35 - 1. The IIO current sunk must always respect the absolute maximum rating and the sum of I IO (I/O ports and control pins) must not exceed IVSS. 2. The IIO current sourced must always respect the absolute maximum rating and the sum of IIO (I/O ports and control pins) must not exceed IVDDHI. 10.2.8 NRST Pin The NRST pin input driver is CMOS. A permanent pull-up is present, thus an external component is not needed if NRST is unconnected in the design. Subject to general operating conditions for VDDHI and TA unless otherwise specified. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 60 of 79 November 2016 V IQ Switch® ProxSense® Series Table 10.11 NRST Pin Characteristics Symbol Parameter VIL(NRST) Conditions Min. Typ. Max. NRST Input low level voltage(1) VSS - 0.8 VIH(NRST) NRST Input high level voltage(1) 1.4 - VDDHI VOL(NRST) NRST Output low level voltage - - VDDHI 0.8 RPU(NRST) NRST pull-up equivalent resistor(2) 30 45 60 VF(NRST) NRST input filtered pulse(3) - - 50 tOP(NRST) NRST output pulse width 20 - - VNF(NRST) NRST input not filtered pulse(3) 300 - - IOL = 2mA Unit V kΩ ns 1. Data based on characterization results, not tested in production. 2. The RPU pull-up equivalent resistor is based on a resistive transistor. 3. Data guaranteed by design, not tested in production. The reset network shown in Figure 10.1 protects the device against parasitic resets. The user must ensure that the level on the NRST pin can go below the V IL max. level specified in Table 10.11. Otherwise the reset is not taken into account internally. Figure 10.1 Recommended NRST Pin Configuration 10.2.9 I2C Characteristics Subject to general operating conditions for VDDHI, fMASTER, and TA unless otherwise specified. The IQS5xx I2C interface meets the requirements of the Standard I2C communication protocol described in the following table with the restrictions mentioned below. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 61 of 79 November 2016 IQ Switch® ProxSense® Series Table 10.12 I2C Characteristics Symbol Standard I2C (100kHz) Parameter (1) Min (1) Max Fast I2C (400kHz) (1) Min Unit (1) Max tw(SCLL) SCL clock low time 4.7 - 1.3 - µs tw(SCLH) SCL clock high time 4.0 - 0.6 - µs tsu(SDA) SDA setup time 250 - 100 - ns th(SDA) SDA data hold time 0(2) - 0 900(2) ns tr(SDA) SDA rise time - 1000 - 300 ns tr(SCL) SCL rise time - 1000 - 300 ns tf(SDA) SDA fall time - 300 - 300 ns tf(SCL) SCL fall time - 300 - 300 ns th(STA) START condition hold time 4.0 - 0.6 - µs tsu(STA) Repeated START condition setup time 4.7 - 0.6 - µs tsu(STO) STOP condition setup time 4.0 - 0.6 - µs Cb Capacitive load for each bus line - 400 - 400 pF 1. Data based on protocol requirement, not tested in production Figure 10.2 Typical Bus Application and Timing Diagram Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 62 of 79 November 2016 IQ Switch® ProxSense® Series 10.2.10 Package Moisture Sensitivity Table 10.13 Moisture Sensitivity Level (MSL) Parameter IQS550 IQS572 IQS525 Package Moisture Sensitivity Level (MSL) 3 3 3 10.2.11 Electrostatic Discharge (ESD) Electrostatic discharges (a positive then a negative pulse separated by 1 second) are applied to the pins of each sample according to each pin combination. The sample size depends on the number of supply pins in the device (3 parts*(n+1) supply pin). Two models can be simulated: human body model and charge device model. This test conforms to the JESD22A114A/A115A standard. Table 10.14 ESD Absolute Maximum Ratings Symbol Ratings Conditions VESD(HBM) Electrostatic discharge voltage (human body model) VESD(CDM) Electrostatic discharge voltage (charge device model) Max Value Unit 2000(2) TA = +25 °C V 1000 1. Data based on characterisation results, not tested in production. 2. Device sustained up to 3000 V during ESD trials. 10.2.12 Thermal Characteristics The maximum chip junction temperature (TJmax) must never exceed the values given in Table 10.4. The maximum chip-junction temperature, TJmax, in degrees Celsius, may be calculated using the following equation: TJmax = TAmax + (PDmax x θJA) Where: ● TAmax is the maximum ambient temperature in °C ● θJA is the package junction-to-ambient thermal resistance in °C/W ● PDmax is the sum of PINTmax and PI/Omax (PDmax = PINTmax + PI/Omax) ● PINTmax is the product of IDD and VDDHI, expressed in watts. This is the maximum chip internal power. ● PI/Omax represents the maximum power dissipation on output pins where: PI/Omax = Σ (VOL*IOL) + Σ((VDDHI −VOH)*IOH), taking into account the actual VOL/IOL and VOH/IOH of the I/Os at low and high level in the application. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 63 of 79 November 2016 IQ Switch® ProxSense® Series Table 10.15 Thermal Characteristics(1) Symbol Parameter Value Unit ΘJA Thermal resistance junction ambient 32 °C/W 1. Thermal resistances are based on JEDEC JESD51-2 with 4-layer PCB in a natural convection environment. 10.2.13 ProxSense Electrical Characteristics Table 10.16 Rx / Tx Characteristics Symbol Parameter CRG Rx capacitance to ground CTG Tx capacitance to ground CM Mutual capacitance between Rx and Tx Rrx Rtx Conditions IQS550 IQS572 IQS525 60 60 60 Unit pF 40 pF 4 pF 16MHz Prox Clock 2 kΩ 4MHz Prox Clock 20 kΩ 16MHz Prox Clock 2 kΩ 4MHz Prox Clock 20 kΩ Total Rx resistance Total Tx resistance Data based on characterisation results, not tested in production. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 64 of 79 November 2016 IQ Switch® ProxSense® Series 11 Mechanical Dimensions 11.1 IQS550 QFN(7x7)-48 Mechanical Dimensions P 1 48 B Tt Z W Wt Area „Z‟ H 1 A Tp 48 r Pin 1 corner C 0.5 x 45° T Figure 11.1 QFN(7x7)-48 Package Table 11.1 Dimensions from Figure 11.1 Dimension (mm) Dimension (mm) Label Label Min P Typical Max 0.500 Min Typical Max H 0.500 0.550 0.600 6.900 7.00 7.100 T 0.300 0.400 0.500 A/B W 0.200 0.250 0.300 Tp 0.152 Tt 5.500 5.600 5.700 r 0.125 Wt 5.400 5.500 5.600 Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 65 of 79 November 2016 IQ Switch® ProxSense® Series 11.2 IQS550 Landing Pad Layout H 48 47 46 45 44 43 42 41 40 39 38 37 36 1 35 2 3 W 34 4 33 5 32 6 31 7 30 8 29 9 g X Y2 28 Y 49 (*Note1) Y1 10 27 11 26 12 25 13 14 15 16 17 18 19 20 21 22 23 24 P X3 X1 X2 Figure 11.2 QFN(7x7)-48 Footprint Table 11.2 Dimensions from Figure 11.2 Label Dimension (mm) Label Dimension (mm) X 5.60 Y2 7.30 X1 6.20 H 0.55 X2 7.30 W 0.30 X3 5.80 g 0.20 Y 5.60 P 0.50 Y1 6.20 *Note1: It is recommended to connect and solder this back-side pad to PCB ground. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 66 of 79 November 2016 IQ Switch® ProxSense® Series 11.3 IQS572/IQS525 QFN(4x4)-28 Mechanical Dimensions Figure 11.3 QFN(4x4)-28 Package Table 11.3 Dimensions from Figure 11.3 Dimension (mm) Dimension (mm) Label Label Min Typical Max Min Typical Max A 0.5 0.55 0.6 L 0.3 0.4 0.5 A1 -0.05 0 0.05 L1 0.25 0.35 0.45 D 3.9 4.0 4.1 T D1 2.9 3.0 3.1 b E 3.9 4.0 4.1 e E1 2.9 3.0 3.1 Copyright © Azoteq (Pty) Ltd All Rights Reserved. 0.152 0.2 IQS5xx-B000 Trackpad Datasheet Revision 2.0 0.25 0.3 0.5 Page 67 of 79 November 2016 IQ Switch® ProxSense® Series 11.4 IQS572/IQS525 Landing Pad Layout Figure 11.4 QFN(4x4)-48 Footprint (dimensions in millimetres) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 68 of 79 November 2016 IQ Switch® ProxSense® Series 12 Packaging Information 12.1 Tape Specification The IQS5xx products come packaged in a carrier tape on a reel. The carrier tape has a leader and trailer section where no products are populated. A 400mm (min) section at the start of the carrier tape is empty (leader part). The cover tape starts in this leader part and covers a 100mm (min) of carrier tape that has no products. From there the products are consecutively populated in the carrier tape. The trailer of 160mm (min) has no products. Figure 12.1 Representation of Leader and Trailer for the Carrier Tape Table 12.1 Tape Dimensions Measurement (mm) Description IQS550 IQS572 IQS525 Tape width 16 12 12 Part pitch 12 8 8 Sprocket hole diameter 1.5 2 2 Sprocket hole pitch 4 4 4 Cavity length 7.2 5.3 5.3 Cavity width 7.2 5.3 5.3 Cavity depth 1.2 1.1 1.1 Cover tape width 13 9.5 9.5 Please note: Cover tape does not cover the sprocket holes. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 69 of 79 November 2016 IQ Switch® ProxSense® Series 12.1.1 IQS550 Tape Description Azoteq logo and name IQS550 chip name Pin 1 corner indicator Sprocket holes Figure 12.2 IQS550 QFN48-7x7 Package in Carrier Tape Example The IQS550 is packed in a carrier tape as shown above and placed on the reel. It fits in a long carrier tape that is moulded specifically for this product and a removable see-through cover tape is placed over. This cover can be peeled off and the product taken out of the tape with a pick-and-place machine. The Pin 1 corner indicator is closest to a side facing the sprocket holes in the carrier tape as illustrated. 12.1.2 IQS572 and IQS525 Tape Description The IQS525 & IQS572 share the same tape and reel details, with an example of the IQS525 tape provided here. Pin 1 corner indicator IQS525 chip name Sprocket holes Figure 12.3 IQS525 QFN28-4x4 Package in Carrier Tape Example Again the Pin 1 corner indicator is closest the side facing the sprocket holes in the carrier tape as illustrated. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 70 of 79 November 2016 IQ Switch® ProxSense® Series 12.2 Reel Specification The reel is made from a high impact PS material. The physical dimensions are illustrated in the table and figure below. Figure 12.4 Reel Dimensions: Front and Side View Table 12.2 Reel Dimensions Value (in mm) Dimension IQS550 IQS572 IQS525 A 330 (max) 330 (max) 330 (max) B 1.5 (min) 1.5 (min) 1.5 (min) C 13 ±0.2 13 ±0.2 13 ±0.2 D 20.2 (min) 20.2 (min) 20.2 (min) N 60 60 60 G 16.4 + 2/-0 12.4 + 2/-0mm 12.4 + 2/-0mm T 22.4 (max) 18.4mm (max) 18.4mm (max) Note: The reel could also have additional cut-outs not illustrated in the figure Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 71 of 79 November 2016 IQ Switch® ProxSense® Series 12.2.1 Dry Packing The IQS5xx is specifically dry packed to protect them from moisture absorption while shipping/storing which has a large effect on the quality and reliability of the IQS5xx after soldering. To improve the quality and reliability of soldering joints, it is advised to bake the IQS5xx before reflow soldering. Below is a flow diagram which shows how Azoteq aims to minimise moisture absorption during shipping and storage. On the right side is a flow diagram specific for the customer to consult whether baking is needed. Figure 12.5 Moisture Absorption Control Method / Guide The flow diagram above informs the customer whether the baking process is needed. When opening the dry pack consult the humidity indicator (gel) inside the pack. If it turned pink, the product must be baked. If the gel is not pink, within the specified period there is no need for baking, as long as the humidity and temperature conditions are met. 12.2.2 Baking The IQS5xx is packed in a tape and reel and can thus not be baked. It must first be transferred to a non-metal tube or tray, for example a glass tray. This is placed in an oven and baked according to the IPC/JEDEC J-STD-033C MSL specification. A picture of this baking method is shown below. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 72 of 79 November 2016 IQ Switch® ProxSense® Series Figure 12.6 IQS550 Baking Example Take the IQS5xx out of the carrier tape and place on for example a glass sheet. Ensure all the IQS5xx‟s are turned top side up and not lying on top of each other. Bake the product for 24 hours at 125 0C. Remove from oven and let cool for about 1 hour before handling. 12.3 Handling of the IQS5xx When handling the IQS5xx product, ESD (Electrostatic discharge) must be avoided as far as possible. Make sure all equipment and personnel are grounded to avoid static build-up. Machines should be grounded and personnel should wear grounding straps. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 73 of 79 November 2016 IQ Switch® ProxSense® Series 12.4 Reflow for IQS5xx When soldering the IQS5xx to a board, the correct temperature curve must be followed to ensure good soldering joints and to avoid damaging the chip due to high temperatures. Figure 12.7 Reflow Temperature Curve for the IQS5xx The figure above shows the temperature profile to be used when soldering the IQS5xx onto a board. This is according to the JEDEC (J-STD-020D.1) standard lead-free reflow profile. Table 12.3 JEDEC Standard Lead-Free Reflow Profile Symbol Description Value TSmax to TP Average ramp-up rate 3 0C/second max TSmin Temperature min 150 0C TSmax Temperature max 200 0C ts Preheat time 60 – 120 seconds TL Temperature 217 0C tL Time maintained above temperature TL 60 – 150 seconds TP Peak/classification temperature 260 0C tP Time within 5 0C of actual peak temperature (TP) 30 seconds Ramp-down rate 6 0C/second max Time: 25 0C to peak temperature 8 minutes max t25C to tP All temperatures refer to topside of the package, measured on the body surface. Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 74 of 79 November 2016 IQ Switch® ProxSense® Series 13 Device Marking 13.1 IQS550 Marking Copyright © Azoteq (Pty) Ltd All Rights Reserved. A = IC Name B = Assembly Plant C = Internal use D = Internal use E = Country of Origin F = Assembly Year G = Assembly Week H = Dot – Pin1 reference I = Internal use J = Design Revision IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 75 of 79 November 2016 IQ Switch® ProxSense® Series 13.2 IQS572/IQS525 Marking A B C D E F G H A = IC Name B = Assembly Plant C = Internal use D = Internal use E = Country of Origin F = Assembly Date G = Additional Information including Design Revision Code H = Dot – Pin1 reference 14 Ordering Information Order quantities will be subject to multiples of full reels. For large orders, Azoteq can provide custom configured devices. 14.1 IQS550 Ordering IQS550 zz QN R IC NAME BULK PACKAGING CONFIGURATION CODE PACKAGE TYPE IC NAME IQS550 = IQS550 CONFIGURATION CODE BL = Bootloader (ready for application firmware programming, B000 firmware NOT pre-loaded) PACKAGE TYPE QN = QFN(7x7)-48 BULK PACKAGING R = Reel (2500pcs/reel) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 76 of 79 November 2016 IQ Switch® ProxSense® Series 14.2 IQS572 Ordering IQS572 zz QN R IC NAME BULK PACKAGING CONFIGURATION CODE PACKAGE TYPE IC NAME IQS572 = IQS572 CONFIGURATION CODE BL = Bootloader (ready for application firmware programming, B000 firmware NOT pre-loaded) PACKAGE TYPE QN = QFN(4x4)-28 BULK PACKAGING R = Reel (3000pcs/reel) 14.3 IQS525 Ordering IQS525 zz QN R IC NAME BULK PACKAGING CONFIGURATION CODE PACKAGE TYPE IC NAME IQS525 = IQS525 CONFIGURATION CODE BL = Bootloader (ready for application firmware programming, B000 firmware NOT pre-loaded) PACKAGE TYPE QN = QFN(4x4)-28 BULK PACKAGING R = Reel (3000pcs/reel) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 77 of 79 November 2016 IQ Switch® ProxSense® Series Changes: Release v1.00 IQS5xx-B000 datasheet released Release v1.01 Added ‘Minimum count Re-ATI delta„ to memory map, and updated Section 3.7.2. Updated links (Sections 4.3 and 8.8.2) Release v2.00 Updated wake pin functionality and changed terminology from wake to switch input: Updated section 7.3.2 and 8.8.1, added SWITCH_STATE bit, added SW_INPUT_EVENT bit, Added section 7.11 Added export file version: Updated Section 7.1 and memory map Updated Note 2 in Table 10.8 (525 setup added and ATI target fixed) Fixed heading of Table 2.3 Updated Figure 11.4 Updated RxToTx register to include IQS572 (memory map also updated), and updated Section 5.1.4 Added Section 7.9 and 7.10 Updated Section 8.8.1 with updated trackpad event definition Added tap location details to Section 6.1 Removed manual device setup description and startup flow diagram from Section 7.2 Updated overview diagrams and circuit diagrams (removed program interface on PGM and NRST, and updated SW_IN pin) Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 78 of 79 November 2016 IQ Switch® ProxSense® Series 15 Contact Information USA Asia South Africa Physical 6507 Jester Blvd Address Bldg 5, suite 510G Austin TX 78750 USA Rm2125, Glittery City Shennan Rd Futian District Shenzhen, 518033 China 109 Main Street Paarl 7646 South Africa Postal Address 6507 Jester Blvd Bldg 5, suite 510G Austin TX 78750 USA Rm2125, Glittery City Shennan Rd Futian District Shenzhen, 518033 China PO Box 3534 Paarl 7620 South Africa Tel +1 512 538 1995 +86 755 8303 5294 ext 808 +27 21 863 0033 Fax +1 512 672 8442 Email [email protected] +27 21 863 1512 [email protected] [email protected] Please visit www.azoteq.com for a list of distributors and worldwide representation. The following patents relate to the device or usage of the device: US 6,249,089; US 6,952,084; US 6,984,900; US 7,084,526; US 7,084,531; US 8,395,395; US 8,531,120; US 8,659,306; US 8,823,273; US 9,209,803; US 9,360,510; EP 2,351,220; EP 2,559,164; EP 2,656,189; HK 1,156,120; HK 1,157,080; SA 2001/2151; SA 2006/05363; SA 2014/01541; SA 2015/023634 ® ® TM IQ Switch , SwipeSwitch™, ProxSense , LightSense™, AirButton , ProxFusion™, Crystal Driver™ and the logo are trademarks of Azoteq. The information in this Datasheet is believed to be accurate at the time of publication. Azoteq uses reasonable effort to maintain the i nformation up-to-date and accurate, but does not warrant the accuracy, completeness or reliability of the information contained herein. All content and information are provided on an “as is” basis only, without any representations or warranties, express or implied, of any kind, including representations about the suitability of these products or information for any purpose. Values in the datasheet is subject to change without notice, please ensure to always use the latest version of this document. Application specific operating conditions should be taken into account during design and verified before mass production. Azoteq disclaims all warranties and conditions with regard to these products and information, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property rights. Azoteq assumes no liability for any damages or injury arising from any use of the information or the product or caused by, without limitation, failure of performance, error, omission, interruption, defect, delay in operation or transmission, even if Azoteq has been advised of the possibility of such damages. The applications mentioned herein are used solely for the purpose of illustration and Azoteq makes no warranty or representation that such applications will be suitable without further modification, nor recommends the use of its products for application that may present a risk to human life due to malfunction or otherwise. Azoteq products are not authorized for use as critical components in life support devices or systems. No licenses to patents are granted, implicitly, express or implied, by estoppel or otherwise, under any intellectual property rights. In the event that any of the abovementioned limitations or exclusions does not apply, it is agreed that Azoteq‟s total liability for all losses, damages and causes of action (in contract, tort (including without limitation, negligence) or otherwise) will not exceed the amount already paid by the customer for the products. Azoteq reserves the right to alter its products, to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and information, its products, programs and services at any time o r to move or discontinue any contents, products, programs or services without prior notification. For the most up-to-date information and binding Terms and Conditions please refer to www.azoteq.com www.azoteq.com/ip [email protected] Copyright © Azoteq (Pty) Ltd All Rights Reserved. IQS5xx-B000 Trackpad Datasheet Revision 2.0 Page 79 of 79 November 2016