This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use the drop-down menu on the left and select the desired version.

espressif,esp32-touch

Vendor: Espressif Systems

Description

Zephyr input touch sensor parent node

This defines a group of touch sensors that can generate input events. Each touch
sensor is defined in a child node of the touch-sensor node and defines a specific key
code.

For example:

#include <zephyr/dt-bindings/input/input-event-codes.h>
#include <zephyr/dt-bindings/input/esp32-touch-sensor-input.h>

&touch {
       compatible = "espressif,esp32-touch";
       status = "okay";

       debounce-interval-ms = <30>;
       href-microvolt = <27000000>;
       lref-microvolt = <500000>;
       href-atten-microvolt = <1000000>;
       filter-mode = <ESP32_TOUCH_FILTER_MODE_IIR_16>;
       filter-debounce-cnt = <1>;
       filter-noise-thr = <ESP32_TOUCH_FILTER_NOISE_THR_4_8TH>;
       filter-jitter-step = <4>;
       filter-smooth-level = <ESP32_TOUCH_FILTER_SMOOTH_MODE_IIR_2>;

       touch_sensor_0 {
               channel-num = <1>;
               channel-sens = <20>;
               zephyr,code = <INPUT_KEY_0>;
       };
};

Properties

Top level properties

These property descriptions apply to “espressif,esp32-touch” nodes themselves. This page also describes child node properties in the following sections.

Properties not inherited from the base binding file.

Name

Type

Details

debounce-interval-ms

int

Debouncing interval time in milliseconds.

Default value: 30

href-microvolt

int

Touch sensor high reference voltage.

Default value: 2700000

Legal values: 2400000, 2500000, 2500000, 2700000

lref-microvolt

int

Touch sensor low reference voltage.

Default value: 500000

Legal values: 500000, 600000, 700000, 800000

href-atten-microvolt

int

Touch sensor high reference attenuation voltage.

Default value: 1000000

Legal values: 1500000, 1000000, 500000, 0

filter-mode

int

Touch sensor IIR filter coefficient.
If not specified defaults to ESP32_TOUCH_FILTER_MODE_IIR_16.

Default value: 2

filter-debounce-cnt

int

Touch sensor debounce count.
If not specified defaults to 1.

Default value: 1

filter-noise-thr

int

Touch sensor noise threshold coefficient.
If not specified defaults to ESP32_TOUCH_FILTER_NOISE_THR_4_8TH.

filter-jitter-step

int

Touch sensor jitter filter step size.
If not specified defaults to 4.

Default value: 4

filter-smooth-level

int

Touch sensor level of filter applied on the original data against large noise interference.
If not specified defaults to ESP32_TOUCH_FILTER_SMOOTH_MODE_IIR_2.

Default value: 1

Child node properties

Name

Type

Details

channel-num

int

Touch sensor channel number

This property is required.

channel-sens

int

Touch sensor channel sensibility in 100th.
If not specified defaults to 20.

Default value: 20

zephyr,code

int

Key code to emit.

This property is required.