Advanced tab [all gen]
The
Advanced
tab provides advanced configuration parameters. In
SMARTSENSE
mode, most of the advanced parameters are tuned automatically. Select Manual tuning to control and configure the CAPSENSE™ middleware parameters.
The parameters in the Advanced tab are systematically arranged in the following subtabs.
General subtab [various gen]
1)– Contains the parameters common for all widgets irrespective of the sensing method used for the widgets.
CSD Settings subtab [various gen]
– Contains the parameters common for widgets that use the CSD sensing method. This subtab is relevant only if at least one widget uses the CSD sensing method.
CSX Settings subtab [various gen]
– Contains the parameters common for widgets that use the CSX sensing method. This subtab is relevant only if at least one widget uses the CSX sensing method.
ISX Settings subtab [5th gen LP]
– Contains the parameters common for widgets that use the ISX sensing method. This subtab is relevant only if at least one widget uses the ISX sensing method.
Widget Details subtab [various gen]
– Contains the parameters specific to widgets and/or sensors.
Note:
Hover over the parameter value to display its description.
General subtab[various gen]
The
General
subtab contains the parameters common for all widgets irrespective of
Widget Sensing Method [all gen]
used for a widget.
5thgeneration LP CAPSENSE™

5 th generation CAPSENSE™

4 thgeneration CAPSENSE™

The
General
subtab contains the following sections:
Scan settings[5 thgenLP],[5thgen]
Parameter/Group name | Description | CAPSENSE™ generation | |
---|---|---|---|
5 th LP | 5 th | ||
Scan mode | Selects a sensor sequencing method. INT driven (default) – In Interrupt driven mode, the CPU extracts the results and programs the MSC HW for the next scan in the scope of the End of Scan interrupt servicing routine. CS-DMA – In Chained Scan DMA mode, the DMA functionality extracts the results and programs the MSC HW for the next scan. The CPU does not need to intervene between scans | √ | |
Sensor connection method | Selects the method how to connect a sensor to the CAPSENSE™ HW block. AMUXBUS – In this mode, the CSD sensors, shield electrodes, and Rx electrodes are connected to the MSC HW using the analog bus and can be assigned to any GPIO which supports a connection with the analog bus for the particular device. CTRLMUX (default)– In this mode, the CSD sensors, shield electrodes, and Rx electrodes are connected to the MSC HW using the direct connection and can be assigned to the dedicated pads only. | √ | |
CAPSENSE™ IMO clock frequency (MHz) | The frequency of the CAPSENSE™ IMO clock. | √ | |
Modulator clock divider | Selects the Modulator clock divider used for the CSD, CSX, and ISX sensing methods ( Widget Sensing Method [all gen] ). This divider defines the operating frequency of the MSC block. | √ | √ |
Actual modulator clock frequency (kHz) | This field shows the real ModClk, which depends on the PeriClk and selected Modulator clock divider . | √ | √ |
Number of init sub-conversions | Selects the number of initialization sub-conversions at the start of the scan. This part of scan is intended to ensure proper initialization of CAPSENSE™ hardware and does not perform the raw count measurement. | √ | √ |
Enable CIC2 hardware filter | The cascaded integrator-comb 2 (CIC2) filter is a second-order digital low-pass (decimation) filter for delta-sigma converters. It provides a higher resolution result for the equivalent scan time. MSCLP has a built-in CIC2, which improves the effective resolution and thereby the SNR for a given scan period. | √ | √ |
Wake-on-Touch settings [5th gen LP]
Parameter/Group name | Description |
---|---|
Wake-on-Touch scan interval (us) | The desired scan interval in Wake-on-Touch mode. The real interval depends on ILO frequency which have a big tolerance (above +/- 50%), see device datasheets. |
Number of frames in Wake-on-Touch | The maximum number of frames in Wake-on-Touch mode under no touch. The valid range is [1..65535]. |
Miscellaneous [various gen]
The miscellaneous settings are applicable to the whole CAPSENSE™ middleware behavior.
Parameter/Group name | Description | CAPSENSE™ generation | ||
---|---|---|---|---|
5 th LP | 5 th | 4 th | ||
Enable sensor auto-reset | When enabled, the baseline is always updated and when disabled, the baseline is updated only when the difference between the baseline and raw count is less than the noise threshold. When enabled, the feature prevents the sensors from permanently turning on when the raw count accidentally rises due to a large power supply voltage fluctuation or other spurious conditions. | √ | √ | √ |
Enable self-test library | The CAPSENSE™ middleware provides the B uilt- I n S elf- T est (BIST) library to support the design compliant with the safety-integrity level of Class B (IEC-60730) white goods and automotive, and design for manufacturing testing. The library includes a set of tests for board validation, middleware configuration, and operation. The feature includes safety functions to reduce the risk, validate boards at manufacturing, and verify the middleware operation at run-time. The BIST tests are classified into two categories: Hardware tests – To confirm the CAPSENSE™ HW block and sensor hardware (external to chip) function correctly: Chip analog-routing verification Pin faults checking PCB-trace opens/shorts checking Integration capacitors and sensors capacitance measurement VDDA measurement. FW tests – To confirm the integrity of data used for decision-making on the sensor status: Global and widget specific configuration verification Sensor baseline duplication Sensor raw count and baseline are in the specified range. The application layer is responsible for running BIST tests. | √ | √ | √ |
Enable multi-frequency scan | The MFS provides superior immunity against external noises and is suitable for applications subjected to harsh environments. MFS implementation for the 4th
generation CAPSENSE™ When the MFS is enabled, each sensor is scanned three times with three different sensor frequencies. The base frequency F0 (zero channel) is the nominal sensor frequency. The second F1 and the third F2 frequencies are obtained by increasing the sense clock-divider by 1 and by 2 correspondingly. and the multi-frequency features are mutually exclusive. If SMARTSENSE is enabled, MFS cannot be enabled. Note: Enabling the MFS increases RAM usage by three times approximately. Enabling the MFS increases the sensor scan duration by three times. MFS implementation for the 5th
generation and 5th generation LP CAPSENSE™ When MFS is enabled for a particular widget, the Configurator creates two supplementary widgets with the same properties but different CSD Sense clock divider or CSX Tx clock divider. The supplementary widgets have “_F1” and “_F2” suffixes in their names. Their sensors are ganged with the main widget sensors. The slot assignment should be performed manually on the Scan Configuration tab [5th gen LP], [5th gen] . The Enable multi-frequency scan check box displays as checked when the MFS is enabled for all widgets, and partially checked when the MFS is enabled only for some widgets. You can enable or disable the MFS for a particular widget on the Widget Details subtab [various gen] . SMARTSENSE
Note:
| √ | √ | √ |
Enable external frame start | Enables the external frame scan only under the rising edge of the signal on the dedicated pin (see Scan Configuration tab [5th gen LP], [5th gen] ). The constraints for the external frame signal are as follows:
| √ |
Regular widget – raw count filter parameters [various gen]
The regular widget raw count filter applies to raw counts of sensors belonging to non-proximity widgets. These parameters can be enabled only when one or more non-proximity widgets are added to the
Basic tab [all gen]
. The filter algorithm is executed when any processing function is called by the application layer. When enabled, each filter consumes RAM to store a previous raw count (filter history). If multiple filters are enabled, the total filter history correspondingly increases so that the size of the total filter history is equal to a sum of all enabled filter histories.
Software filter [all gen]
Parameter/Group name | Description |
---|---|
Enable IIR filter (First order) | Enables the IIR filter (See equation below) with a step response similar to an RC low-pass filter, thereby passing the low-frequency signals (finger touch responses). where: K is always 256. N is the IIR filter raw count coefficient selectable from 1 to 128 in the Configurator. A lower N (set in the IIR filter raw count coefficient parameter) results in lower noise, but slows down the response. This filter eliminates high-frequency noise. Consumes 2 bytes of RAM per each sensor to store a previous raw count (filter history). |
IIR filter raw count coefficient | The coefficient (N) of IIR filter for raw counts is explained in the Enable IIR filter (First order) parameter. The range of valid values: 1-128. |
Enable median filter (3-sample) | Enables a non-linear filter that takes three of most recent samples and computes the median value. This filter eliminates spike noise typically caused by motors and switching power supplies. Consumes 4 bytes of RAM per each sensor to store a previous raw count (filter history). |
Enable average filter (4-sample) | The finite-impulse response filter (no feedback) with equally weighted coefficients. It takes four of most recent samples and computes their average. Eliminates periodic noise (e.g. noise from AC mains). Consumes 6 bytes of RAM per each sensor to store a previous raw count (filter history). |
Note: If multiple filters are enabled, the execution order is as follows:
|
Hardware filter [5thgen LP]
Parameter/Group name | Description |
---|---|
Enable IIR filter (First order) | Enables the hardware IIR filter for Low Power widgets. The design of these parameters is different from the regular widget raw count filter parameters. These dedicated parameters allow for setting Low Power filter configuration and behavior differently compared to the other widgets. where, iirRCcoef – IIR filter raw count coefficient; valid range: 1 to 8. A low coefficient means lower filtering; a higher coefficient means a higher response time. Note: There is no filtering for coefficient value “0”. |
IIR filter raw count coefficient |
Proximity widget – raw count filter parameters [various gen]
The proximity widget raw count filter applies to raw counts of sensors belonging to the proximity widgets, these parameters can be enabled only when one or more proximity widgets are added on the
Basic tab [all gen]
.
Software filter
[all gen]
Parameter/Group name | Description |
---|---|
Enable IIR filter (First order) | The design of these parameters is the same as the Regular widget – raw count filter parameters. The Proximity ( Widget Type [all gen] ) sensors require high-noise reduction. These dedicated parameters allow for setting the proximity filter configuration and behavior differently compared to other widgets. |
IIR filter raw count coefficient | |
Enable median filter (3-sample) | |
Enable average filter (4-sample) |
Hardware filter
[5th gen LP]
Parameter/Group name | Description |
---|---|
Enable IIR filter (First order) | Enables the hardware IIR filter for Proximity widgets. The equation is the same as for hardware IIR filter for regular widgets. |
IIR filter raw count coefficient |
Low power widget – raw count filter parameters [5 thgen LP]
The Low Power widget raw count filter applies to raw counts of sensors belonging to Low Power widgets, these parameters can be enabled only when one or more Low Power widgets are added on the
Basic tab [all gen]
.
Parameter/Group name | Description |
---|---|
Enable IIR filter (First order) | Enables the hardware IIR filter for Low Power widgets. The design of these parameters is different from the regular widget raw count filter parameters. These dedicated parameters allow for setting Low Power filter configuration and behavior differently compared to the other widgets. where, iirRCcoef – IIR filter raw count coefficient; the valid range: 1 to 8. A low coefficient means lower filtering, a higher coefficient – a higher response time. |
IIR filter raw count coefficient | |
Baseline coefficient (fast) | Baseline IIR filter coefficient (fast) selection for sensors in Low Power widgets only. The range of valid values: 1-15. |
Baseline coefficient (slow) | Baseline IIR filter coefficient (slow) selection for sensors in Low Power widgets only. The range of valid values: 1-15. |
Baseline filter settings / Active widget baseline filter settings [various gen]
The baseline filter settings are applied to all sensors’ baselines. But, filter coefficients for the proximity, regular, and Low Power widgets can be controlled independently from each other.
The design baseline IIR filter is the same as the
Enable IIR filter (First order)
parameter. But, filter coefficients can be separate for both baseline and raw count filters to produce a different roll-off. The baseline filter is applied to a filtered raw count (if the widget raw count filters are enabled).
Parameter/Group name | Description | CAPSENSE™ generation | ||
---|---|---|---|---|
5 th LP | 5 th | 4 th | ||
Regular widget baseline coefficient | Select the Baseline IIR filter coefficient for sensors in non-proximity widgets. The range of valid values: 1-255. | √ | √ | √ |
Proximity widget baseline coefficient | The design of these parameters is the same as the Regular widget baseline coefficient , but with a dedicated parameter allows controlling the baseline update-rate of the proximity sensors differently compared to other widgets. | √ | √ | √ |
CSD Settings subtab[various gen]
Contains the parameters common for widgets that use the CSD sensing method (
Widget Sensing Method [all gen]
). This subtab is relevant only if at least one widget uses the CSD sensing method.
5thgeneration LP CAPSENSE™

5thgeneration CAPSENSE™

4thgeneration CAPSENSE™

CSD Settings subtab parameters [various gen]
The
CSD Settings subtab
contains the following parameters:
Parameter name | Description | CAPSENSE™ generation | ||
---|---|---|---|---|
5 th LP | 5 th | 4 th | ||
Modulator clock divider | Selects the modulator clock divider used for the CSD sensing method (see Widget Sensing Method [all gen] ). Defines the operating frequency of the CSD block. | √ | ||
Actual modulator clock frequency (kHz) | This field shows the real ModClk, which depends on the CSD peripheral clock and selected Modulator clock divider . | √ | ||
Inactive sensor connection | Selects the state of the sensor when it is not scanned. Ground (default) – Inactive sensors are connected to the ground. High-Z – Inactive sensors are floating (not connected to GND or Shield). Shield – Inactive sensors are connected to Shield. Ground is the recommended selection for this parameter when water tolerance is not required for the design. Select Shield when the design needs water tolerance or to reduce the sensor parasitic capacitance in the design. | √ | √ | √ |
IDAC sensing configuration | Selects the type of IDAC switching: IDAC Sourcing (default ) – Sources current into the modulator capacitor (Cmod). The analog switches are configured to alternate between the Cmod and GND. IDAC Sourcing is recommended for most designs because of the better SNR. IDAC sinking – Sinks current from the modulator capacitor (Cmod). The analog switches are configured to alternate between V DD and Cmod. | √ | ||
Enable IDAC auto-calibration | When enabled, values of the CSD widget IDACs are automatically set by the middleware. Select this parameter for robust operation and to enable SMARTSENSE . | √ | ||
Enable compensation IDAC | Used to compensate for sensor parasitic capacitance to improve performance. Enable it unless one IDAC is required for general purpose (other than CAPSENSE™) in the application. | √ | ||
Enable CDAC auto-calibration | When enabled, the values of the CSD widget CDACs are automatically set by the middleware. Select this parameter for robust operation. | √ | ||
Enable compensation CDAC | Used to compensate for sensor parasitic capacitance to improve the system performance. | √ | ||
Raw count calibration level | The raw count calibration level. | √ | √ | √ |
Enable shield electrode | Used to reduce the sensor parasitic capacitance, enable water-tolerant CAPSENSE™ designs, and enhance the detection range for the Proximity ( Widget Type [all gen] ). When the shield electrode is disabled, configurable parameters associated with the shield electrode are hidden. | √ | ||
Enable shield tank (Csh) electrode | The shield tank capacitor is used to increase the drive capacity of the shield electrode driver. Enable it when the shield electrode capacitance is higher than 100 pF. The recommended value for a shield tank capacitor is 10nF/5V/X7R or an NP0 capacitor. The shield tank capacitor is not supported in configuration that includes both CSD and CSX sensing-based widgets. | √ | ||
Shield SW resistance | Select the resistance of switches to drive the shield electrode. The four options: Low; Medium (default); High; Low EMI. | √ | ||
Total shield count | Selects the number of shield electrodes required in the design. Most designs work with one dedicated shield electrode but, some designs require multiple dedicated shield electrodes to ease the PCB layout routing or to minimize the PCB area used for the shield layer. The minimum value is 0 (for example, shield signal could be routed to sensors using the Inactive sensor connection parameter) and the maximum value is equal to the total number of CAPSENSE™-enabled port pins available for the selected device. | √ | √ | √ |
Shield mode | Selects the shield drive. The options: Disabled (default) – No shield. In this mode the configurable parameters associated with it are not applicable. Active – A shield circuit drives the shield electrode with a replica of the sensor signal. The internal buffer operational amplifier (opamp) is used to drive the VDDA/2 voltage onto the shield pin during the corresponding phases. The Active shielding provides better capabilities in comparison to the Passive shielding. For high-performance applications, recommended the shield electrode capacitance less than 1.2nF. ![]() Passive – In this mode the buffer is not used, instead the shield is switched between VDDA and GND. The Passive shielding provides worse shielding capabilities in comparison to the Active shielding since it does not replicate the sensor signal. The Passive shielding is preferred for low power applications if high shielding performance is not critical. ![]() | √ | √ |
Commands:
Restore Defaults
– Restores parameters values on the current tab to their default values.
CSX Settings subtab [various gen]
Contains the parameters common for widgets that use the CSX sensing method (see
Widget Sensing Method [all gen]
). This subtab is relevant only if at least one widget uses the CSX sensing method.
5th generation LP CAPSENSE™

5 thgeneration CAPSENSE™

4 thgeneration CAPSENSE™

CSX Settings subtab parameters [various gen]
The
CSX Settings
subtab contains the following parameters:
Parameter name | Description | CAPSENSE™ generation | ||
---|---|---|---|---|
5 th LP | 5 th | 4 th | ||
Modulator clock divider | Selects the modulator clock divider used for the CSX sensing method (see Widget Sensing Method [all gen] ). Defines the operating frequency of the CSX block. A higher modulator clock frequency reduces the sensor scan time, results in lower power, and reduces the noise in raw counts, so use the highest possible frequency. | √ | ||
Actual modulator clock frequency (kHz) | This field shows the real ModClk, which depends on the CSX peripheral clock and selected Modulator clock divider . | √ | ||
Inactive sensor connection | Selects the state of the sensor when it is not scanned. Ground (default) – Inactive sensors are connected to the ground. High-Z – Inactive sensors are floating (not connected to GND or Shield). VDDA/2 – Inactive sensors are connected to the VDDA/2 voltage level source. | √ | √ | √ |
√ | √ | |||
Number of reported fingers for Touchpad | Sets the number of reported fingers for CSX Touchpad widgets only. The available options are from 1 to 3. | √ | √ | √ |
Enable IDAC auto-calibration | When enabled, IDAC values are automatically set by the middleware. Recommended to select the Enable IDAC auto-calibration for robust operation. | √ | ||
Enable CDAC auto-calibration | When enabled, the values of the CSX widget CDACs are automatically set by the middleware. Select this parameter for robust operation. | √ | ||
Enable compensation CDAC | Used to compensate for sensor parasitic capacitance to improve the system performance. | √ | ||
Raw count calibration level | The raw count calibration level in percentage for CSX widgets. | √ | √ | √ |
Commands:
Restore Defaults
– Restores parameters values on the current tab to their default values.
ISX Settings subtab[5th gen LP]
Contains the parameters common for widgets that use the ISX sensing method (see
Widget Sensing Method [all gen]
).This subtab is relevant only if at least one widget uses the ISX sensing method.
ISX Settings subtab parameters[5th gen LP]
The
ISX Settings
subtab contains the following parameters:
Parameter | Description | |
---|---|---|
Raw count calibration level (%) | The raw count calibration level in percent. |
Commands:
Restore Defaults
– Restores parameters values on the current tab to their default values.
Widget Details subtab[various gen]
Contains parameters specific to each widget and sensor. These parameters are set manually when
SMARTSENSE
is not enabled. The parameters are unique for each widget type. When a parameter is selected, its description displays on the panel below the parameters list.

Commands:
Restore Defaults
– Restores parameters values on the current tab to their default values.
The
Widget Details
subtab contains the following parameters:
Widget general parameters [various gen]
Parameter name | Description | CAPSENSE™ generation | ||
---|---|---|---|---|
5 th LP | 5 th | 4 th | ||
Diplexing | Enabling Diplexing allows doubling the linear slider physical touch sensing area by using the specific duplexing sensor pattern and without using additional port pins and sensors. Applicable for linear sliders only. | √ | √ | √ |
Maximum position | Represents the maximum Centroid position for the slider. A touch on the slider would produce a position value from 0 to the maximum position-value set. No Touch would produce 0x0000. | √ | √ | √ |
Maximum X-axis position | Represents the maximum column (X-axis) Centroid position and row (Y-axis) Centroid positions for a touchpad. A touch on the touchpad would produce a position value from 0 to the maximum position set. No Touch would produce 0x0000. | √ | √ | √ |
Enable multi-frequency scan | Enables the multi-frequency scan for the current widget. Refer to Enable multi-frequency scan for details. | √ | √ | |
Enable foam rejection | Set this parameter to true to create the Liquid Level Foam Rejection (FR) sub-widget, which calculates a liquid level excluding foam. Liquid Level FR sensors are ganged with the Liquid Level widget’s sensors. Assign slots manually on the tab. Scan Configuration tab [5th gen LP], [5th gen] | √ | ||
Maximum level | Represents the maximum measurable capacity of the sensor. The sensor produces the measured liquid level starting from value 0 to the maximum level set. The value range is 1-16384. | √ | ||
Foam correction coefficient | Set this parameter to true to create the Liquid Level Foam Rejection (FR) sub-widget, which calculates a liquid level excluding foam. Liquid Level FR sensors are ganged with the Liquid Level widget’s sensors. Assign slots manually on the Scan Configuration tab [5th gen LP], [5th gen] tab. Sets the foam correction (rejection) coefficient. Displays when the Liquid level foam rejection widget is enabled. The foam rejection coefficient: is the level reported by the Liquid Level foam rejection widget – to obtain the correct result, set the foam rejection coefficient to "0". is the level reported by the Liquid Level widget. is the real liquid level in the tank without foam. Note: To obtain better results, fill the tank with some liquid and create maximum foam. The value range is 0-4095. | √ |
Widget hardware parameters[various gen]
Note:
All the Widget hardware parameters are set automatically when
SMARTSENSE
is enabled on
Basic tab [all gen]
.
Parameter/Group name | Description | CAPSENSE™ generation | ||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
5 th LP | 5 th | 4 th | ||||||||||||||||||||||||||||||||||||||||||||||
Touch sensitivity (pF/µH) | See Touch Sensitivity [all gen] for the description. | √ | √ | √ | ||||||||||||||||||||||||||||||||||||||||||||
Sense clock divider | Sets the CSD Sense clock divider. For the 5 th generation CAPSENSE™, the value will be a multiple of 4. When SMARTSENSE is selected in Basic tab [all gen] , the Sense Clock divider is automatically set by the middleware to an optimal value by following the 25R*C rule for the 4 th generation CAPSENSE™ and 45RC for the 5 generation CAPSENSE™ (refer to CAPSENSE™ design guide for more information on this rule) and this control is not editable. | √ | √ | √ | ||||||||||||||||||||||||||||||||||||||||||||
Row sense clock divider | Sets the CSD Sense clock divider for row and column sensors of the Matrix Buttons and Touchpad ( Widget Type [all gen] ). For the 5 th generation CAPSENSE™, the value will be a multiple of 4. | √ | √ | √ | ||||||||||||||||||||||||||||||||||||||||||||
Column sense clock divider | ||||||||||||||||||||||||||||||||||||||||||||||||
Tx Clock divider | Sets the Tx Clock divider for the CSX widgets. For the 5 th generation CAPSENSE™, the value will be a multiple of 2. | √ | √ | √ | ||||||||||||||||||||||||||||||||||||||||||||
Sense clock source | The Sense clock frequency is derived from the Modulator clock frequency using a clock-divider and is used to sample the sensor. Both the clock source and clock divider are configurable. The Spread Spectrum Clock (SSC) provides a dithering clock source with a center frequency equal to the Sense clock frequency. The Pseudo-Random Sequencer (PRS) clock source spreads the clock using the pseudo-random sequence and the Direct source disables both SSC and PRS sources and uses a fixed-frequency clock. Both PRS and SSC reduce the radiated noise by spreading the clock and improve the immunity against external noise. Using a higher number of bits of SSC and PRS lowers the radiation and increases the immunity against external noise. The following sources are available:
The rules and recommendations for the SSC selection:
where SnsClkDiv is Sense clock divider. Recommended that at least one full-spread spectrum polynomial complete during the scan time: where N is the Scan resolution , SSCN is the number of bits used for SSC (6, 7, 9 and 10), and SnsClkDiv is Sense clock divider. Recommended that the number of sub-conversions for the widget be an integer multiple of the SSC polynomial selected. For example, if SSC6 is selected, the number of the sub-conversion should be multiple of (2^SSC6-1) = 63. The recommendation for the PRS selection: At least one full PRS polynomial completes during the scan time: where N is the Scan resolution , PRSN is the number of bits used for PRS (8 and 12), ModClk is the Modulator clock frequency and SnsClk is the average Sense clock frequency. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Tx clock source | The Tx clock frequency derives from the Modulator clock frequency using a clock-divider and is used to sample the sensor. Both the clock source and clock divider are configurable. The Spread Spectrum Clock (SSC) provides a dithering clock source with a center frequency equal to the Tx clock frequency and the Direct source disables the SSC source and uses a fixed frequency clock. The SSC reduces the radiated noise by spreading the clock and improves the immunity against external noise. Using a higher number of bits of SSC lowers the radiation and increases the immunity against external noise. The following clock sources are available:
The rules and recommendations for the SSC selection:
where TxClkDiv is Tx clock divider. Recommended that at least one full-spread spectrum polynomial complete during the scan time. where N_Sub is the Number of sub-conversions, SSCN is the number of bits used for SSC (6, 7, 9 and 10). Recommended that the Number of sub-conversions for the widget be an integer multiple of the SSC polynomial selected. For example, if SSC6 is selected, the number of sub-conversions should be multiple of (2SSC6-1) = 63. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Clock source | The clock frequency is used to sample the sensor. It is derived from the modulator clock frequency using a clock divider. Both the clock source and clock divider are configurable. The Spread Spectrum Clock (SSC) provides a dithering clock source with a center frequency equal to the Sense clock frequency. The PRS clock source spreads the clock using the pseudo-random sequencer and the Direct source disables both SSC and PRS sources and uses a fixed-frequency clock. Both PRS and SSC reduce the radiated noise by spreading the clock and improve the immunity against external noise. Using a higher number of bits of SSC and PRS lowers the radiation and increases the immunity against external noise. The sources:
| √ | √ | |||||||||||||||||||||||||||||||||||||||||||||
LFSR range | The linear-feedback shift register (LFSR). For CSD widgets, sets the Sense Clock Divider deviation range. For CSX widgets, sets the TX Clock Divider deviation range. For example, if the clock divider is set to 16 and the LFSR range is set to [-2; 1], the MSC HW block will vary the clock divider in the range from 14(16 – 2) to 17 (16 + 1) during a scan. This parameter is editable when the Clock Source is SSC or SSC Auto. | √ | √ | |||||||||||||||||||||||||||||||||||||||||||||
Decimation rate mode | Decimation rate mode is set automatically by the middleware or manually depending on the mode. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Decimation rate | Sets the configurable decimation rate when Enable CIC2 hardware filter is enabled. The minimum recommended value considering two valid CIC2 samples (valid samples = Total CIC2 samples - 1): | √ | √ | |||||||||||||||||||||||||||||||||||||||||||||
CIC2 accumulator shift | The CIC2 and Row CIC2 accumulator shifts set the right shift value applied to the CIC2 accumulator to form raw counts when the Enable CIC2 hardware filter is enabled. Both parameters are configurable. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Row CIC2 accumulator shift | ||||||||||||||||||||||||||||||||||||||||||||||||
Scan resolution | Selects the scan resolution of the CSD widgets (the resolution of the capacitance-to-digital conversion). Acceptable values are from 6 to 16 bits. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Reference CDAC value | Sets the reference CDAC value for the Button, Slider or Proximity (under Widget Type [all gen] ). This parameter's value is set automatically when Reference CDAC mode is set to the AUTO value or Enable CDAC auto-calibration is selected in the CSD Settings subtab ) is selected. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Row reference CDAC value | These parameters set separate CDAC values for the row and column sensors of the Matrix Buttons and Touchpad (under Widget Type [all gen] ). These parameters' values are set automatically when Reference CDAC mode is set to the AUTO value or Enable CDAC auto-calibration is selected in the CSD Settings subtab ) is selected. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Column reference CDAC value | ||||||||||||||||||||||||||||||||||||||||||||||||
CDAC dither mode | Select CDAC dither mode used to reduce Flat-spots (or dead zones). | √ | ||||||||||||||||||||||||||||||||||||||||||||||
CDAC dither scale | CDAC dither value in bits. The parameter's value is set automatically when the parameter is set to the AUTO value. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Compensation CDAC divider | The ratio between the Modulator clock frequency and Compensation CDAC switching frequency. The ratio between the Sense clock divider and Compensation CDAC divider shows the number of times the Compensation CDAC switches in the sense clock period. The value range is [3 .. 4095]. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Number of sub-conversions | Selects the number of sub-conversions. For the CSD block, applicable to the CSX and ISX sensing methods ( ) . | √ | √ | √ | ||||||||||||||||||||||||||||||||||||||||||||
Modulator IDAC | Sets the modulator IDAC value for the CSD Button, Slider, or Proximity (under Widget Type [all gen] ). The value of this parameter is automatically set when Enable IDAC auto-calibration is selected in the ( CSD Settings subtab ). | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Row modulator IDAC | Sets a separate modulator IDAC value for the row and column sensors of the CSD Matrix Buttons and Touchpad (under Widget Type [all gen] ). These parameters values are automatically set when Enable IDAC auto-calibration is selected in the ( CSD Settings subtab [various gen] ). | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Column modulator IDAC | ||||||||||||||||||||||||||||||||||||||||||||||||
IDAC gain index | Sets the IDAC gain index. Options include:
The value of this parameter is automatically set when Enable IDAC auto-calibration is selected. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Enable coarse initialization bypass | Enables skipping the coarse initialization and thus, the scan refresh rate increases. | √ | ||||||||||||||||||||||||||||||||||||||||||||||
Multi-phase Tx order | The Multi-phase Tx technic is used for mutual capacitance sensing. The Tx driver is modulated with different patterns by the firmware and then the result is de-convoluted. The advantage is a higher SNR because MPTX performs spatial filtering of the result with sqrt(N) improvement in noise, where N is the number of driven lines and the scan is performed by N times longer than a single sensor scan. The parameter becomes visible if the Tx electrodes number is greater than 3. | √ | √ |
Capacitive DAC parameters[5th gen LP]
These parameters belong to the Widget hardware parameters group for the 5th generation CAPSENSE™.
Parameter name | Description |
---|---|
Reference CDAC mode | Selects the Reference CDAC mode. |
Reference CDAC value | Set the reference CDAC value for the Button, Slider or Proximity widget. These parameter's value is set automatically when Reference CDAC mode is set to the AUTO value or Enable CDAC auto-calibration ( CSD Settings subtab [various gen] ) is selected. |
Row reference CDAC value | These parameters set separate CDAC values for the row and column sensors of the Matrix Buttons and Touchpad (under Widget Type [all gen] ). These parameter's value is set automatically when Reference CDAC mode is set to the AUTO value or Enable CDAC auto-calibration ( CSD Settings subtab [various gen] ) is selected. |
Column reference CDAC value | |
Reference CDAC boost | Increases the sensitivity by 2x, 3x, and 4x. Achieved by dividing the actual Reference CDAC values by the factors of 2,3, and 4 for auto-calibration. |
Fine CDAC mode | Select Fine CDAC mode. The Fine CDAC is a programmable CDAC used to achieve finer resolution for the Reference CDAC. |
Fine CDAC value | These parameters are available when Fine CDAC mode is set to the MANUAL value. Sets Fine CDAC values separately for the row and column sensors of the Matrix Buttons and Touchpad (under Widget Type [all gen] ). These parameters values are set automatically when Fine CDAC mode is set to the AUTO value. |
Row fine CDAC value | |
Compensation CDAC mode | Select Compensation CDAC mode used to compensate for sensor mutual capacitance in order to improve the system performance. |
Compensation CDAC divider mode | Select Compensation CDAC divider mode. This parameter depends on Compensation CDAC mode. |
Compensation CDAC divider | The ratio between the Modulator clock frequency and Compensation CDAC switching frequency. The ratio between the Sense clock divider and Compensation CDAC divider shows the number of times the Compensation CDAC switches in the sense clock period. The value range is [3..4095]. |
CDAC dither mode | Select CDAC dither mode used to reduce Flat-spots (or dead zones). |
CDAC dither scale | CDAC dither value in bits. The parameter's value is set automatically when CDAC dither mode is set to the AUTO value. |
Widget threshold parameters [all gen]
Note:
All threshold parameters for the CSD widgets are set automatically when
SMARTSENSE
is selected in
Basic tab [all gen]
.
Parameter name | Description |
---|---|
Finger threshold | The finger threshold parameter is used along with the hysteresis parameter to determine the sensor state as follows:
Note that "Signal" in the above equations refers to: Signal = Raw Count – Baseline. Recommended to set the Finger threshold parameter value equal to the 80% of the touch signal. The Finger Threshold parameter is not available for the Proximity widget (under Widget Type [all gen] ). Instead, Proximity has two thresholds: |
Noise threshold | Sets a signal limit, below which a signal is considered as noise. When a signal is above the Noise Threshold, a difference count is produced and the baseline is updated only if Enable sensor auto-reset is selected. If it is not selected, the baseline remains constant as long as the raw count is above the baseline + noise threshold. This prevents the baseline from following the raw counts during a finger touch detection event. Recommended to set the noise threshold parameter value equal to 2x noise in the raw count or the 40% of the signal. |
Negative noise threshold | Sets an absolute signal value limit below which the baseline is not updated for the number of samples specified by the Low baseline reset parameter. The negative noise threshold ensures that the baseline does not fall low because of any high-amplitude repeated negative-noise spikes on a raw count caused by different noise sources such as ESD events. Recommended to set the negative noise threshold parameter value equal to the Noise threshold parameter value. |
Low baseline reset | This parameter is used along with the Negative noise threshold parameter. It counts the number of abnormally low raw counts required to reset the baseline. If a finger is placed on the sensor during a device startup, the baseline gets initialized to a high raw count value at startup. When the finger is removed, the raw count falls to a lower value. In this case, the baseline should track low raw counts. The Low baseline reset parameter helps handle this event. It resets the baseline to a low raw count value when the number of low samples reaches the low-baseline reset number. Note: After a finger is removed from the sensor, the sensor will not respond to finger touches for low baseline-reset time. The recommended value is 30, which works for most designs. |
Hysteresis | The hysteresis parameter is used along with the Finger threshold parameter ( Proximity touch threshold and Proximity threshold for Proximity sensor) to determine the sensor state. Hysteresis provides immunity against noisy transitions of the sensor state. See the description of the Finger threshold parameter for details. The recommend value for the hysteresis is the 10% the Finger threshold . Hysteresis is not available for Low Power widgets. |
ON debounce | Selects a number of consecutive CAPSENSE™ scans during which a sensor must be active to generate an ON state from the middleware. Debounce ensures that high-frequency, high-amplitude noise does not cause false detection.
The recommended value for the Debounce parameter is 3 for reliable sensor-status detection. |
Proximity touch threshold | The design of the Proximity touch threshold and Proximity threshold parameters is the same as for the Finger threshold parameter. The proximity sensor requires a higher noise reduction, and supports two levels of detection: The proximity level to detect an approaching hand or finger. The touch level to detect a finger touch on the sensor similarly to other Widget Type [all gen] sensors. Note that for valid operation, the Proximity touch threshold must be higher than the Finger threshold . The threshold parameters such as Hysteresis and ON debounce are applicable to both detection levels. |
Proximity threshold | |
Velocity | Defines the maximum speed of a finger movement in terms of the squared distance of the touchpad resolution. The parameter is applicable for the touchpad (CSX Touchpad) only. If the detected position of the next scan is further than the defined squared distance, then this touch is considered as a separate touch with a new touch ID. |
Raw count filter parameters [all gen]
Common mode filter is a software filter that can be applied to all scanning methods (CSD, CSX, ISX). It is applicable to widgets with multiple identical sensor elements, such as matrix buttons, touchpads, and sliders). The larger the number of sensor elements, the better the performance. Common mode filter method minimizes common mode noises up to 75% of signal.
Parameter | Description |
---|---|
Common mode filter | Supported by all widgets except Proximity, Low Power, and Liquid Level. Available with the minimum sensor count 2 for the widget. Not supported with enabled: |
Common mode filter threshold | Sets a threshold value. Sensors with smaller signals are used to calculate common mode noise. The recommended value is 75% of the touch. Calculated noise is applied to all sensors by correcting their raw counts. The value range is 0-65535. |
Position / Level filter parameters[all gen]
These parameters enable firmware filters on a centroid position to reduce noise. These filters are available for Slider and Touchpad widgets only. If multiple filters are enabled, the execution order corresponds to the listed below and the total RAM consumption increases so that the size of the total filter history is equal to a sum of all enabled filter histories.
Parameter name | Description |
---|---|
IIR filter | Enables the IIR filter (see equation below) with a step response. Output = N/K × input + (K-N)/K × previousOutput where:
A lower N (set in the IIR filter coefficient parameter) results in lower noise, but slows down the response. This filter eliminates high-frequency noise. Consumes 2 bytes of RAM per each position (filter history). |
IIR filter coefficient | The coefficient (N) of the IIR filter for a position as explained in the IIR filter parameter. The range of valid values: 1-255. |
Median filter | Enables a non-linear filter that takes three of most recent samples and computes the median value. This filter eliminates the spikes noise typically caused by motors and switching power supplies. Consumes 4 bytes of RAM per each position (filter history). |
Average filter | Enables the finite-impulse response filter (no feedback) with equally weighted coefficients. It takes two of most recent samples and computes their average. Eliminates periodic noise (e.g. noise from AC mains). Consumes 2 bytes of RAM per each position (filter history). |
Jitter filter | This filter eliminates the noise in the position data that toggles between the two most recent values. If the most recent position value is greater than the previous one, the current position is decremented by 1; if it is less, the current position is incremented by 1. The filter is most effective at low noise. Consumes 2 bytes of RAM per each position (filter history). |
Adaptive IIR filter parameters [all gen]
The
Adaptive IIR filter
group parameters can be applied for the following widgets: Linear slider (CSD and CSX), Radial slider (CSD), Touchpad (CSD and CSX).

Parameter name | Description |
---|---|
Adaptive IIR filter | Enables the Adaptive IIR filter – an IIR filter that changes its own IIR coefficient according to the speed of the finger movement. This is done to smooth the fast movement of the finger and at the same time control properly the position movement. The filter coefficients are automatically adjusted by the adaptive algorithm with the speed of the finger movement. If the finger moves slowly, the IIR coefficient decreases; if the finger moves fast, the IIR coefficient increases from the existing value. Consumes 3 bytes of RAM per each position (filter history). |
Position movement threshold | Defines the position threshold below, whose position displacement is ignored or considered as no movement. |
Position slow movement threshold | Defines the position threshold below (and the above Position movement threshold), whose position displacement (the difference between the current and previous position) is considered as a slow movement. If the position displacement is within the threshold limits, the IIR filter coefficient decreases during each new scan. So, the filter impact on the position becomes less intensive. |
Position fast movement threshold | Defines the position threshold above, whose position displacement is considered as a fast movement. If the position displacement is above the threshold limit, the IIR filter impact on the position becomes more intensive during each new scan as the filter coefficient increases. |
IIR coefficient maximum limit | Defines the maximum limit of the IIR coefficient when the finger moves fast. The fast movement event is defined by the position fast movement threshold. |
IIR coefficient minimum limit | Defines the minimum limit of the IIR coefficient when the finger moves slowly. The slow movement event is defined by the position slow movement threshold. |
IIR coefficient divisor | This parameter acts as the scale factor for the filter IIR coefficient. Output = Coeff/Divisor × input +
(Divisor-Coeff)/Divisor × previousOutput where:
|
Centroid parameters [all gen]
These parameters are available for the CSD Touchpad widgets only.
Parameter name | Description |
---|---|
Centroid type | Selects a sensor matrix size for centroid calculation. The 5x5 centroid (also known as Advanced Centroid) provides benefits such as Two-finger detection, Edge correction and improved accuracy. If Advanced Centroid is selected, the below parameters are configured as well. |
Cross-coupling position threshold | Defines the cross-coupling threshold. This value is subtracted from the sensor signal used for centroid position calculation to improve the accuracy. The threshold should be equal to a sensor signal when a finger is near the sensor but is not touching the sensor. This can be determined by slowly dragging the finger across the panel and finding the inflection point of the difference counts at the base of the curve. The difference value at this point is the Cross-coupling threshold. The default value is 5. |
Edge correction | This feature is available if the Centroid Type is configured to 5x5. When enabled, a matrix of centroid calculation is updated with virtual sensors on the edges of a touchpad. It improves the accuracy of the reported position on the edges. When enabled, two more parameters must be configured: Virtual Sensor threshold and Penultimate threshold. |
Virtual sensor threshold | This parameter is applicable only if Edge correction is enabled and used to calculate a signal (difference count) for a virtual sensor used for the edge correction algorithm. A touch position on a slider or touchpad is calculated using a signal from the local-maxima sensor and its neighboring sensors. A touch on the edge sensor of a slider or touchpad does not accurately report a position because the edge sensor lacks signal from one side of neighboring sensors of the local-maxima sensor. ![]() If the Edge correction is enabled, the algorithm adds a virtual neighbor sensor to correct the deviation in the reported position. The Virtual sensor signal is defined by the Virtual sensor threshold: DiffCount virtual =
(Threshold virtual sns0 ) ×
2 where:
The conditions for a virtual sensor (and Edge correction algorithm) to be applied:
|
Penultimate threshold | This parameter is applicable only if the Edge correction is enabled and it works along with the Virtual sensor threshold parameter. This parameter defines the threshold of penultimate sensor signal. If the signal from penultimate sensor is below the Penultimate threshold, the edge correction algorithm is applied to the centroid calculation. The conditions for the edge correction to be applied:
![]() |
Pseudo two-finger detection | Enables the detection of the second finger on a CSD touchpad. In general, a CSD touchpad can detect only one true touch position. A CSD touchpad widget consists of two Linear Sliders and each slider reports the X and Y coordinates of a finger touch. If there are two touches on the touchpad, there are four possible touch positions as shown in the figure below. The two of these touches are real touches and two are known as "ghost" touches. There is no possibility to differentiate between ghost and real touches in a CSD widget (to get true multi-touch performance, use the CSX Touchpad widget). ![]() But, if this feature is enabled, the CSD touchpad can report up to two touches, mainly to be used in conjunction with two-finger gestures where real and ghost touches do not need to be fully differentiated. It is available for the CSD touchpad only when the Centroid type is configured to 5x5. The Advanced centroid (Centroid type is 5x5) uses the 3x3 centroid matrix when detects two touches. |
Ballistic multiplier parameters [all gen]
These parameters are available for the CSD Touchpad widgets only.
Parameter name | Description |
---|---|
Ballistic multiplier | Enables the Ballistic multiplier filter used to provide better user experience of the pointer movement. Fast movement will increase the position more quickly. Consumes 16 bytes of RAM when enabled. The simplified diagram of the Ballistic Multiplier filter operation: ![]() where,
|
Acceleration coefficient | Defines the value at which the position movement needs to be interpolated when the movement is classified as fast movement. The reported position displacement is multiplied by this parameter. |
Speed coefficient | Defines the value at which the position movement is interpolated when the movement is classified as slow movement. The reported position displacement is multiplied by this parameter. |
Divisor value | Defines the divisor value used to create a fraction for the acceleration and speed coefficients. The interpolated position coordinates are divided by the value of this parameter. |
X-axis speed threshold | Defines the threshold to distinguish fast and slow movement on the X axis. If the X-axis position displacement reported between two consecutive scans exceeds this threshold, then it is considered as fast movement, otherwise as slow movement. |
Y-axis speed threshold | Defines the threshold to distinguish fast and slow movement on the Y axis. If the Y-axis position displacement reported between two consecutive scans exceeds this threshold, then it is considered as fast movement, otherwise as slow movement. |
Gesture parameters[all gen]
The
Gesture
group parameters cannot be applied for the following widgets: Proximity (CSD, ISX), Low power (CSD, CSX, ISX), Liquid level (CSD).
Parameter name | Description |
---|---|
Enable gestures | Master enable for gestures feature. A gesture consists of a sequence of Touchdown and Lift Off events. A simple touch on a widget is reported as a Touchdown event. Removal of a finger from a widget is reported as a Lift Off event. If the Lift Off event triggers another higher-level Gesture, then the Lift Off event is not reported. |
Enable one-finger single click gestures | The one-finger single click gesture is a combination of Touchdown and Lift Off events under specific conditions:
![]() |
Enable one-finger long press gestures | The one-finger long press gesture is a Touchdown event with the conditions to be met:
Note: This option is supported by CAPSENSE™ Middleware 4.0 and later. |
Enable one-finger double click gestures | The one-finger double click gesture is a combination of two sequential one-finger single click gestures under specific conditions:
![]() |
Enable one-finger click & drag gestures | This gesture is a one-finger click and then a hold followed by a drag. A typical use case is while moving items on the screen from one point to another. It is triggered when the finger movement follows this sequence: Touchdown → Lift Off → Touchdown → Drag. The gesture triggers under specific conditions: A one-finger click gesture and a subsequent Touchdown were detected within the Minimum click timeout and Maximum click timeout limits and within Maximum second click distance. Then the finger exceeds the Maximum click distance from a drag touchdown. |
Enable two-finger single click gestures | A two-finger single click gesture is a combination of Touchdown and Lift Off events under specific conditions:
![]() |
Enable one-finger scroll gestures | The one-finger scroll gesture is a combination of a Touchdown followed by a displacement in a specific direction under specific conditions: For a slider, the position displacement between two consecutive scans must exceed the Minimum scroll distance (displays as Position threshold N on the image). The scroll debounce number of a scroll gesture in the same direction is already detected. ![]() |
Enable two-finger scroll gestures | The design of the two-finger scroll gesture is the same as of the one-finger scroll under specific conditions:
|
Enable one-finger edge swipe gestures | The edge swipe gesture is a combination of a Touchdown on an edge followed by a displacement towards the center. This gesture works under specific conditions:
![]() |
Enable one-finger flick gestures | A flick gesture is a combination of a Touchdown followed by a high-speed displacement and a Lift Off event. A flick gesture starts at a Touchdown and completes and reported at a Lift Off event. This gesture works under specific conditions:
![]() Note: The flick gesture is detected in 8 directions: Up; Down; Left; Right; Up-Right; Down-Left; Up-Left; Down-Right |
Enable one-finger rotate gestures | A one-finger rotate gesture is reported when a circular displacement is detected. The decoding algorithm uses four directions to identify a circular displacement. A displacement in all four directions must be in the succession order to report a rotate gesture. The rotation direction can be clockwise or counter-clockwise. |
Enable two-finger zoom gestures | A two-finger zoom gesture is reported when two touches move towards each other (Zoom Out) or move away from each other (Zoom In). This gesture works under specific conditions:
|
Enable gesture filtering | Enables filtering of the detected gestures. The gesture priority is defined as follows (starting from the most important): Two-finger zoom; Two-finger scroll; One-finger rotate; One-finger edge swipe; One-finger flick; One-finger scroll; Two-finger single click; One-finger click and drag; One-finger double click; One-finger single click; Touchdown; Liftoff |
Maximum click timeout | Defines the maximum duration between a Touchdown and Lift Off events of a click event. This parameter is used in all click-based gestures. |
Minimum click timeout | Defines the minimum duration between a Touchdown and Lift Off events of a click event. This parameter is used in all click-based gestures. |
Maximum click distance | Defines the maximum displacement between a Touchdown and Lift Off events of a click event. This parameter is used in all click-based gestures. |
Maximum second click interval | Defines the maximum displacement between a Touchdown and Lift Off events of a click event. This parameter is used in all click-based gestures. |
Minimum second click interval | This parameter defines the minimum duration between the first Lift Off and the second Touchdown events. If the second click occurs early this limit, the double-click and click&drag gestures are not reported. |
Maximum second click distance | Defines the maximum distance between the first Lift Off event and the second Touchdown event. If the second click occurs outside this limit, the double-click and click&drag gestures are not reported. |
Minimum long press timeout | Defines the minimum duration after a touchdown event and before a lift off event of a long press event. |
Maximum long press distance | Defines the maximum displacement to be detected for a long press to be valid. |
Scroll debounce | Defines the minimum number sequential scroll steps in the same direction to be detected prior to the scroll is considered valid. A widget must detect scroll steps, at the minimum of Debounce times in the same direction to be considered as a scroll in that direction. |
Minimum scroll distance | Defines the minimum displacement to recognize a single scroll step. A scroll step is calculated between two consecutive scans. |
Rotate debounce | Defines the maximum number of sequential rotate steps in the same direction to deem a rotate gesture invalid. For example, if the Debounce value is set to 5, then the touch cannot continue in the same direction for 5 rotate steps and still have a valid rotate gesture. After this threshold, the reported gesture stops being a rotate gesture. If this parameter is set to 0, then the Debounce is disabled. |
Minimum rotate distance | Defines the minimum displacement to recognize a single rotate step. |
Zoom debounce | Defines the minimum number of zoom steps in a particular direction (in or out) to report a zoom gesture. |
Minimum zoom distance | Defines the minimum displacement to recognize a single zoom step. |
Maximum flick timeout | Defines the maximum duration of how long a flick gesture is searched after a Touchdown event. A position displacement and Lift Off event must happen within the duration defined by this parameter for a flick to be valid. |
Minimum flick distance | Defines the minimum displacement to be detected for a one-finger flick to be valid. |
Edge size | Defines the maximum edge area where a Touchdown must be detected for an edge swipe to be reported. |
Minimum edge distance | Defines the minimum displacement to be detected from an edge to the center for an edge swipe to be reported. |
Maximum edge timeout | Defines the maximum duration, within which an edge swipe must occur to be reported. The displacement must exceed the displacement threshold within the duration defined by this parameter for the edge swipe to be reported. |
Maximum edge angle | To report this gesture, a finger movement starts from an edge and moves in the center direction. This is the ideal line. These parameters define the maximum angle deviation (in degree) from this ideal line for the edge swipe to be valid. Degree 1 means that the user can do gestures only on a single ideal line. |
Sensor parameters[various gen]
Parameter name | Description | CAPSENSE™ generation | ||
---|---|---|---|---|
5 th LP | 5 th | 4 th | ||
Compensation IDAC value(s) | Sets the Compensation IDAC value for each sensor/node when Enable compensation IDAC value is selected on the CSD Settings tab. For CSD sensing method (see Widget Sensing Method [all gen] ), a higher Compensation IDAC value without saturating raw counts provides better sensitivity for sensor/nodes. Select the Enable IDAC auto-calibration for robust operation. | √ | ||
Compensation CDAC value(s) | Sets the Compensation CDAC value for each sensor/node when Enable compensation CDAC is selected on the CSX Settings tabs. For CSX sensing method (see Widget Sensing Method [all gen] ), a higher Compensation CDAC value without saturating raw counts provides better sensitivity for sensor/nodes. Select the Enable CDAC auto-calibration for robust operation. | √ | √ | |
Selected pins | Selects a port pin for the sensor (CSD sensing) and electrode (CSX sensing). The available options use a dedicated pin for a sensor or re-use one or more pins from any other sensor. Re-using the pins of any other sensor from any widgets helps create a ganged sensor. | √ |
Widget/Sensor parameters table[various gen]
The following table shows which Widget/Sensor parameters belong to a given widget type:
B = Button
LS = Linear Slider
RS = Radial Slider
MB = Matrix Buttons
T = Touchpad
P = Proximity
LP = Low Power
LL = Liquid Level
Parameters | 5 th gen LP | 5 th gen | 4 th gen | CSD widget | CSX widget | ISX widget | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
B | LS | RS | MB | T | P | LP | LL | B | LS | MB | T | LP | B | LS | P | LP | ||||
Diplexing | √ | √ | √ | √ | √ | √ | ||||||||||||||
Maximum position | √ | √ | √ | √ | √ | √ | √ | |||||||||||||
Maximum X-axis position | √ | √ | √ | √ | √ | |||||||||||||||
Maximum Y-axis position | √ | √ | √ | √ | √ | |||||||||||||||
Enable multi-frequency scan | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
Enable foam rejection | √ | √ | ||||||||||||||||||
Foam correction coefficient | √ | √ | ||||||||||||||||||
Maximum level | √ | √ | ||||||||||||||||||
Sense clock divider | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||||||
Column sense clock divider | √ | √ | √ | √ | √ | |||||||||||||||
Row sense clock divider | √ | √ | √ | √ | √ | |||||||||||||||
Sense clock source | √ | √ | √ | √ | √ | √ | √ | |||||||||||||
Tx clock divider | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Tx clock source | √ | √ | √ | √ | √ | |||||||||||||||
LX clock divider | √ | √ | √ | √ | ||||||||||||||||
Clock source | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
LFSR range | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
Decimation rate mode | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Decimation rate | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
CIC2 accumulator shift | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Row CIC2 accumulator shift | √ | √ | √ | |||||||||||||||||
Scan resolution | √ | √ | √ | √ | √ | √ | √ | |||||||||||||
Number of sub-conversions | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
Modulator IDAC | √ | √ | √ | √ | √ | |||||||||||||||
Column modulator IDAC | √ | √ | √ | |||||||||||||||||
Row modulator IDAC | √ | √ | √ | |||||||||||||||||
IDAC gain index | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||||
Reference CDAC mode | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Reference CDAC value | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||
Column reference CDAC value | √ | √ | √ | √ | ||||||||||||||||
Row reference CDAC value | √ | √ | √ | √ | ||||||||||||||||
Reference CDAC boost | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Fine CDAC mode | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Fine CDAC value | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||
Column fine CDAC value | √ | √ | √ | |||||||||||||||||
CDAC dither mode | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
CDAC dither scale | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
Enable coarse initialization bypass | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Compensation CDAC mode | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Compensation CDAC divider mode | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Compensation CDAC divider | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
Multi-phase Tx order | √ | √ | √ | |||||||||||||||||
Proximity threshold | √ | √ | √ | √ | √ | |||||||||||||||
Proximity touch threshold | √ | √ | √ | √ | √ | |||||||||||||||
Finger threshold | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||
Noise threshold | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Negative noise threshold | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Low baseline reset | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Hysteresis | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||
ON debounce | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||
Velocity | √ | √ | √ | √ | ||||||||||||||||
Common mode filter | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||
Common mode threshold | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||
Compensation IDAC value(s) | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||||
Compensation CDAC value(s) | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||
Selected pins | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||||
IIR filter | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||
IIR filter coefficient | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||
Median filter | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||
Average filter | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||
Jitter filter | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||
Adaptive IIR filter | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Position movement threshold | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Position slow movement threshold | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Position fast movement threshold | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
IIR coefficient maximum limit | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
IIR coefficient minimum limit | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
IIR coefficient divisor | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Centroid type | √ | √ | √ | √ | ||||||||||||||||
Cross-coupling position threshold | √ | √ | √ | √ | ||||||||||||||||
Edge correction | √ | √ | √ | √ | ||||||||||||||||
Virtual sensor threshold | √ | √ | √ | √ | ||||||||||||||||
Penultimate threshold | √ | √ | √ | √ | ||||||||||||||||
Pseudo two-finger detection | √ | √ | √ | √ | ||||||||||||||||
Ballistic multiplier | √ | √ | √ | √ | ||||||||||||||||
Acceleration coefficient | √ | √ | √ | √ | ||||||||||||||||
Speed coefficient | √ | √ | √ | √ | ||||||||||||||||
Divisor value | √ | √ | √ | √ | ||||||||||||||||
X-axis speed threshold | √ | √ | √ | √ | ||||||||||||||||
Y-axis speed threshold | √ | √ | √ | √ | ||||||||||||||||
Enable gestures | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||
Enable one-finger single click gestures | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||
Enable one-finger long press gestures | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||
Enable one-finger double click gestures | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | ||||||
Enable one-finger click & drag gestures | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Enable two-finger single click gestures | √ | √ | √ | √ | √ | |||||||||||||||
Enable one-finger scroll gestures | √ | √ | √ | √ | √ | √ | √ | |||||||||||||
Enable two-finger scroll gestures | √ | √ | √ | √ | √ | |||||||||||||||
Enable one-finger edge swipe gestures | √ | √ | √ | √ | √ | |||||||||||||||
Enable one-finger flick gestures | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Enable one-finger rotate gestures | √ | √ | √ | √ | √ | |||||||||||||||
Enable two-finger zoom gestures | √ | √ | √ | √ | √ | |||||||||||||||
Enable gesture filtering | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Maximum click timeout | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Minimum click timeout | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Maximum click distance | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Maximum second click interval | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Minimum second click interval | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Maximum second click distance | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Minimum long press timeout | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Maximum long press distance | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |||||||
Scroll debounce | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Minimum scroll distance | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Rotate debounce | √ | √ | √ | √ | √ | |||||||||||||||
Minimum rotate distance | √ | √ | √ | √ | √ | |||||||||||||||
Zoom debounce | √ | √ | √ | √ | √ | |||||||||||||||
Minimum zoom distance | √ | √ | √ | √ | √ | |||||||||||||||
Maximum flick timeout | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Minimum flick distance | √ | √ | √ | √ | √ | √ | √ | √ | ||||||||||||
Edge size | √ | √ | √ | √ | √ | |||||||||||||||
Minimum edge distance | √ | √ | √ | √ | √ | |||||||||||||||
Maximum edge timeout | √ | √ | √ | √ | √ | |||||||||||||||
Maximum edge angle | √ | √ | √ | √ | √ |