TouchPad 2 Click Board
TouchPad 2 Click Board
Overview
The TouchPad 2 Click Board™ is a compact add-on board that easily integrates projected capacitive touch into their applications. This board features the IQS525, a projected capacitive touch and proximity trackpad/touchscreen controller from Azoteq. It features best-in-class sensitivity, signal-to-noise ratio, and automatic tuning of electrodes, in addition to the multi-touch and multi-hover features. This Click Board™ is characterized by embedded gesture engine recognition for simple gestures (tap, swipes, hold) and built-in noise detection and filtering. This Click Board™ is suitable for human-machine interfaces, keypad or scrolling functions, single-finger gesture-based interfaces, and more.
The TouchPad 2 Click Board™ is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click Board™ comes as a thoroughly tested product, ready to be used on a system equipped with the mikroBUS™ socket.
How Does The Touchpad 2 Click Board™ Work?
The Touchpad 2 Click Board™ as its foundation uses the IQS525, a capacitive sensing controller designed for multitouch application using projected capacitance touch panel from Azoteq. It offers high sensitivity proximity/hover detection and contact (touch) detection. The device has an internal voltage regulator and Internal Capacitor Implementation (ICI) to reduce external components, which can be noticed on the Click board™ (very few additional components required by this IC). Advanced integrated signal processing capabilities yield a stable, high-performance capacitive controller with high sensitivity.
On the front side of the Touchpad 2 Click, there is a clearly defined field that represents a touchpad area. This area is a matrix of conductive electrodes on the PCB, electrically isolated from each other, arranged as rows and columns of X and Y. An electrode consists of multiple diamond-shaped elements, each connected to the next with a conductive neck.
The controller uses the principle of projected capacitance charge transfer on the touchpad area. When a conductive object such as a human finger approaches the sense plate, it will decrease the detected capacitance. Observing the measured results at various sensing points on the touchpad area enables the controller to determine proximity/hover detection and contact (touch) detection on all channels and accurately determine the coordinates on the touch area.
Due to the advanced sensitivity of the IQS525, multiple non-contact (proximity hover) coordinates also can be obtained. These hover coordinates can predict the touch coordinate of an approaching user before the touch is made, allowing innovative user interface options. Multiple filters are implemented to suppress, detect noise, and track slow varying environmental conditions and avoid effects of possible drift.
The Touchpad 2 Click Board™ communicates with MCU using a standard I2C 2-Wire interface, with a clock frequency up to 100kHz in the Standard and 400kHz in the Fast Mode. An additional ready signal, routed on the INT pin of the mikroBUS™ socket, is added, which indicates when the communication window is available. Thus, it is optimal for the response rate to use the INT pin as a communication trigger, but polling is also a less attractive option.
ThTouchpad 2 Click Board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before use with MCUs with different logic levels. However, the Click board™ comes equipped with a library containing functions and an example code that can be used, as a reference, for further development.
SPECIFICATIONS
Type | Capacitive |
Applications | Can be used for human-machine interfaces, keypad or scrolling functions, single-finger gesture-based interfaces, and more. |
On-board modules | IQS525 - capacitive sensing controller designed for multitouch application using projected capacitance touch panel from Azoteq |
Key Features | Multi-touch and multi-hover support, automatic drift compensation, embedded gesture engine recognition for simple gestures (tap, swipes, hold), and more. |
Interface | I2C |
Compatibility | mikroBUS |
Click board size | L (57.15 x 25.4 mm) |
Input Voltage | 3.3V |
PINOUT DIAGRAM
This table shows how the pinout of the Touchpad 2 Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | NC | ||
NC | 2 | RST | INT | 15 | INT | Interrupt | |
NC | 3 | CS | RX | 14 | NC | ||
NC | 4 | SCK | TX | 13 | NC | ||
NC | 5 | MISO | SCL | 12 | SCL | I2C Clock | |
NC | 6 | MOSI | SDA | 11 | SDA | I2C Data | |
Power Supply | 3.3V | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
TOUCHPAD 2 CLICK ELECTRICAL SPECIFICATIONS
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Receiver inputs voltage range | - | 3.3 | - | V |
Receiver inputs voltage range | - | 16 | - | bit |
Receiver inputs voltage range | -40 | +25 | +85 | °C |
Software Support
We provide a library for the Touchpad 2 Click Board™ as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
The package can be downloaded/installed directly from NECTO Studio The package Manager (recommended way), downloaded from our LibStock™ or found on mikroE Github account.
Library Description
This library contains API for the Touchpad 2 Click Board™driver.
Key Functions
touchpad2_cfg_setup
- Config Object Initialization function.touchpad2_init
- Initialization function.touchpad2_default_cfg
- Click Default Configuration function.
Example Description
This library contains API for the Touchpad 2 Click Board™ driver. The library contains drivers to get touch details, the number of touches, X and Y coordinates and touch strength.
void application_task ( void ) { touchpad2_wait_ready( &touchpad2 ); touchpad2_get_touch ( &touchpad2, &touch_data ); Delay_ms( 100 ); if ( ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_1 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_2 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_3 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_4 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_5 ) ) { log_printf( &logger, " Number of touches : %d rn", ( uint16_t ) touch_data.no_of_fingers ); log_printf( &logger, "- - - - - - - - - - - - -rn" ); log_printf( &logger, " Coordinate X = %d rn", touch_data.x_pos ); log_printf( &logger, " Coordinate Y = %d rn", touch_data.y_pos ); log_printf( &logger, "- - - - - - - - - - - - -rn" ); log_printf( &logger, " Touch Strength : %u rn", ( uint16_t ) touch_data.touch_str ); log_printf( &logger, "------------------------ rn" ); Delay_ms( 500 ); } }
The full application code, and ready to use projects can be installed directly from NECTO Studio The package Manager (recommended), downloaded from our LibStock™ or found on mikroE Github account.
Other mikroE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.TouchPad2
Additional Notes and Information
Depending on the development board you are using, you may need USB UART Click Board™, USB UART 2 Click Board™ or RS232 Click Board™ to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The Touchpad 2 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Software Support
We provide a library for the Touchpad 2 Click Board™ as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
The package can be downloaded/installed directly from NECTO Studio The package Manager (recommended way), downloaded from our LibStock™ or found on mikroE Github account.
Library Description
This library contains API for the Touchpad 2 Click Board™driver.
Key Functions
touchpad2_cfg_setup
- Config Object Initialization function.touchpad2_init
- Initialization function.touchpad2_default_cfg
- Click Default Configuration function.
Example Description
This library contains API for the Touchpad 2 Click Board™ driver. The library contains drivers to get touch details, the number of touches, X and Y coordinates and touch strength.
void application_task ( void ) { touchpad2_wait_ready( &touchpad2 ); touchpad2_get_touch ( &touchpad2, &touch_data ); Delay_ms( 100 ); if ( ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_1 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_2 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_3 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_4 ) || ( touch_data.id_tag == TOUCHPAD2_ID_TAG_TOUCH_5 ) ) { log_printf( &logger, " Number of touches : %d rn", ( uint16_t ) touch_data.no_of_fingers ); log_printf( &logger, "- - - - - - - - - - - - -rn" ); log_printf( &logger, " Coordinate X = %d rn", touch_data.x_pos ); log_printf( &logger, " Coordinate Y = %d rn", touch_data.y_pos ); log_printf( &logger, "- - - - - - - - - - - - -rn" ); log_printf( &logger, " Touch Strength : %u rn", ( uint16_t ) touch_data.touch_str ); log_printf( &logger, "------------------------ rn" ); Delay_ms( 500 ); } }
The full application code, and ready to use projects can be installed directly from NECTO Studio The package Manager (recommended), downloaded from our LibStock™ or found on mikroE Github account.
Other mikroE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.TouchPad2
Additional Notes and Information
Depending on the development board you are using, you may need USB UART Click Board™, USB UART 2 Click Board™ or RS232 Click Board™ to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The Touchpad 2 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.