MikroElektronika
SwipeSwitch click
SwipeSwitch click
SKU:MIKROE-3202
Couldn't load pickup availability
Share
SwipeSwitch click is capacitive touch, gesture, and proximity sensing Click board™, which is equipped with the IQS266, an integrated trackpad controller circuit which features ProxSense® and IQ Switch® technologies. This IC consists of a 2x3-channel capacitive trackpad controller, and a single self-capacitive proximity sensor, which can be used to wake up the device. This ensures very low power consumption, as the device is able to stay in the Sleep mode when not used. The IQS266 can detect a number of various configurable swipe and tap gestures. An Automatic Tuning Implementation (ATI) feature ensures an optimized performance in various conditions.
SwipeSwitch click is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click board™ comes as a fully tested product, ready to be used on a system equipped with the mikroBUS™ socket.
Built upon years of experience, featuring well-proven touch sensing technologies, the IQS266 is a perfect solution for single-sided capacitive trackpads for various applications. Combined with the low power consumption, a low number of external components required, and a set of advanced options and features, SwipeSwitch click presents an ideal platform for the development of low-power touch sensing applications for wearables, white goods, home appliances, toys, human-machine interface (HMI) applications, etc.
HOW DOES IT WORK?
SwipeSwitch click is based on the IQS266, an integrated trackpad controller circuit, featuring ProxSense® and IQ Switch® technologies, from Azoteq. This integrated touch controller features 2 receivers and 3 transmitters, allowing a 2x3 capacitive touch trackpad to be formed. By using a specific trace pattern on the PCB, the Click board™ is able to sense several different swipe gestures, offering several different configuration parameters. By employing well-proven ProxSense® and IQ Switch® technologies, the IQS266 device is able to provide very reliable touch detection in various environmental conditions. It uses the industry-standard I2C communication interface, with the additional RDY pin for the event signaling and communication protocol handshaking routines.
Besides five capacitive touch sensing electrodes, the IQS266 integrates a single proximity channel. This channel can be used to wake up the device from the standby mode when the user approaches the touch panel, ensuring a low overall power consumption that way. CH0 is a dedicated proximity/touch channel and it is treated as a separate channel group in the IQS266 settings. Both proximity and touch thresholds can be defined for this channel.
Automatic Tuning Implementation (ATI) ensures the optimal sensitivity of the sensing channels, by monitoring the sampling values. The developer can set up the ATI targets for two groups of channels (channel 0, and channels 1-6). Once these targets are set, the ATI algorithm will try to match them, ensuring consistent behavior when used in various operating conditions. The ATI functionality can also be disabled/forced by the user, allowing to retune the sensor electrodes on demand. Else, the IQS266 will automatically retune the electrodes every time the counts drift outside a predefined ATI band in an attempt to ensure an optimal sensitivity.
The RDY pin has two functions. It can be used as an interrupt event pin, signaling either an event occurrence (when operated in the Event mode) or a "Data Ready" event. In this case, the RDY pin will be driven to a LOW logic level to signal an event, allowing it to generate an interrupt on the host MCU. However, the host MCU can pull the RDY pin down to initiate a communication window (communication protocol handshaking), requesting data from the device. The RDY pin is routed to the mikroBUS™ INT pin.
The IQS266 can be set to operate in the Streaming mode or in the Event mode. When operated in the Event mode, the RDY pin will indicate a communication window only after the selected event has occurred. There are several different events to choose from: low power, swipe, tap, ATI, trackpad, touch, and proximity event. Each event is signalized by the RDY pin driven to a LOW logic level. More details about the RDY pin driving pattern for each event can be found in the IQS266 datasheet.
The IQS266 is very flexible, allowing many parameters to be tuned according to needs. These parameters include timeout periods for various modes (Zoom mode timeout, Low Power mode timeout, RDY timeout, etc.) thresholds for various events and channels, some special sensing parameters, and so on. The developer can set up these parameters by writing appropriate values to the registers of the IQS266 IC over the I2C interface. For a more detailed description of each register, please refer to the included datasheet. However, the Click board™ is supported by a library of mikroSDK compatible functions that simplify and speed up the development. It also comes with the example application, which demonstrates their use.
SPECIFICATIONS
Type | Capacitive |
Applications | SwipeSwitch click presents an ideal platform for the development of low-power touch sensing applications for wearables, white goods, home appliances, toys, human-machine interface (HMI) applications, etc. |
On-board modules | IQS266, an integrated trackpad controller circuit, featuring ProxSense® and IQ Switch® technologies, from Azoteq. |
Key Features | Reliable and well-proven capacitive touch and swipe detection technologies, noise filtering, automatic tuning implementation, a lot of programmable parameters and options, single dedicated proximity detection channel for low power consumption, etc. |
Interface | I2C |
Click board size | L (57.15 x 25.4 mm) |
Input Voltage | 3.3V |
PINOUT DIAGRAM
This table shows how the pinout on SwipeSwitch click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
SOFTWARE SUPPORT
We provide a library for the SwipeSwitch click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
This library contains all the functions required to work with SwipeSwitch click.
Key functions:
-
void swipeswitch_init()
- Function for initialization chip. -
void swipeswitch_goToEventMode()
- Function for go to Event mode. -
uint8_t swipeswitch_waitForReady()
- Function for checking RDY pins.
Examples description
The application is composed of the three sections :
- System Initialization - Initialization I2C module and sets INT pin as INPUT.
- Application Initialization - Initialization and configuration of the chip for measurement.
- Application Task - (code snippet) : In the first test mode, it checks whether or not a new event ocurred (TAP or SWIPE). If it did, it writes out data regarding that event via UART. In the second test mode, X and Y coordinates are being read and logged via UART.
Note: After reading data or status registers, there is a certain time which must pass until the device is ready again. The device is ready for a new conversion and reading after the Ready pin is LOW.
void applicationTask() { if(displayMode == 0) { while(swipeswitch_waitForReady() != 0); events = swipeswitch_readEvents(); while(swipeswitch_waitForReady() != 0); gestures = swipeswitch_readGestures(); if((events & (_SWIPESWITCH_EVENT_SWIPE)) != 0 ) { if((gestures & _SWIPESWITCH_GESTURE_SWIPE_UP) != 0) { mikrobus_logWrite("SWIPE UP", _LOG_LINE); } if((gestures & _SWIPESWITCH_GESTURE_SWIPE_DOWN) != 0) { mikrobus_logWrite("SWIPE DOWN", _LOG_LINE); } if((gestures & _SWIPESWITCH_GESTURE_SWIPE_LEFT) != 0) { mikrobus_logWrite("SWIPE LEFT", _LOG_LINE); } if((gestures & _SWIPESWITCH_GESTURE_SWIPE_RIGHT) != 0) { mikrobus_logWrite("SWIPE RIGHT", _LOG_LINE); } } else if ((events & (_SWIPESWITCH_EVENT_TAP)) != 0) { mikrobus_logWrite("TAP", _LOG_LINE); } } else { while(swipeswitch_waitForReady() != 0); xCoordinate = swipeswitch_readXCoordinate(); while(swipeswitch_waitForReady() != 0); yCoordinate = swipeswitch_readYCoordinate(); if((xCoordinate != oldXCoordinate) || (yCoordinate != oldYCoordinate)) { mikrobus_logWrite("Coordinate : (", _LOG_TEXT); IntToStr(xCoordinate, demoText); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(",", _LOG_TEXT); IntToStr(yCoordinate, demoText); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(")", _LOG_LINE); oldXCoordinate = xCoordinate; oldYCoordinate = yCoordinate; } } Delay_ms( 300 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
I2C
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click 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
This 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.
For more information about mikroSDK, visit the official page.




New Products
-
Sold out
OAK-FFC IMX577 M12
Vendor:POLOLURegular price Rs. 8,499.00Regular priceUnit price / perSold out -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 20A
Vendor:POLOLURegular price Rs. 329.00Regular priceUnit price / perSold out -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 25A
Vendor:POLOLURegular price Rs. 439.00Regular priceUnit price / perSold out -
Pololu I²C Isolator, ISO1640
Vendor:POLOLURegular price Rs. 449.00Regular priceUnit price / per -
3pi+ 32U4 OLED Robot Kit with 30:1 MP Motors (Standard Edition Kit)
Vendor:POLOLURegular price Rs. 15,549.00Regular priceUnit price / per -
Conductivity Calibration K 1.0 Set (4 pouches)
Vendor:Atlas ScientificRegular price Rs. 1,599.00Regular priceUnit price / perSold out -
Analog Discovery 3 Pro Bundle
Vendor:DigilentRegular price Rs. 42,569.00Regular priceUnit price / per -
Lighthouse swarm bundle - Crazyflie 2.1+ (250mAh batteries)
Vendor:BitcrazeRegular price Rs. 474,999.00Regular priceUnit price / perSold out -
Loco Swarm bundle - Crazyflie 2.1+ (250mAh batteries)
Vendor:BitcrazeRegular price Rs. 544,999.00Regular priceUnit price / perSold out -
Kopis X8 Cinelifter 5" Kit - Caged (Frame Kit)
Vendor:HolybroRegular price Rs. 28,199.00Regular priceUnit price / per -
Atlas Scientific i3 InterLink
Vendor:Atlas ScientificRegular price Rs. 6,349.00Regular priceUnit price / per -
Sold out
PoE Injector
Vendor:LuxonisRegular price Rs. 2,099.00Regular priceUnit price / perSold out -
Sold out
1-Port VINT Hub Phidget
Vendor:PhidgetsRegular price Rs. 2,699.00Regular priceUnit price / perSold out -
Holybro 1045 Propeller 2 Pair CW+CCW-Black
Vendor:HolybroRegular price Rs. 1,549.00Regular priceUnit price / per -
ACS37220LEZATR-100B3 Current Sensor Large Carrier -100A to +100A, 3.3V
Vendor:POLOLURegular price Rs. 829.00Regular priceUnit price / per -
CT433-HSWF50MR TMR Current Sensor Compact Carrier -50A to +50A, 3.3V
Vendor:POLOLURegular price Rs. 1,039.00Regular priceUnit price / per -
A5984 Stepper Motor Driver Carrier, Adjustable Current, Blue Edition
Vendor:POLOLURegular price Rs. 409.00Regular priceUnit price / per -
A5984 Stepper Motor Driver Carrier, Fixed 1A@5V / 660mA@3.3V, Blue Edition (Soldered Header Pins)
Vendor:POLOLURegular price Rs. 489.00Regular priceUnit price / per -
A5984 Stepper Motor Driver Carrier, Fixed 500mA@5V / 330mA@3.3V (Soldered Header Pins)
Vendor:POLOLURegular price Rs. 469.00Regular priceUnit price / per -
T Connector Male-Female Pair
Vendor:POLOLURegular price Rs. 169.00Regular priceUnit price / per -
Pololu Reverse Voltage Protector, 4-60V, 10A
Vendor:POLOLURegular price Rs. 159.00Regular priceUnit price / per -
Pololu Reverse Voltage Protector, 4-60V, 12A
Vendor:POLOLURegular price Rs. 199.00Regular priceUnit price / per -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 10A
Vendor:POLOLURegular price Rs. 179.00Regular priceUnit price / perSold out -
Pololu Ideal Diode Reverse Voltage Protector, 4-60V, 12A
Vendor:POLOLURegular price Rs. 229.00Regular priceUnit price / perSold out -
Pololu Mini Plastic Gearmotor Bracket Pair - Tall
Vendor:POLOLURegular price Rs. 599.00Regular priceUnit price / per