Touch Peripheral

Initialize ESP32 touchpad peripheral and retrieve information from the touch sensors.

Application Example

Implementation of this API is demonstrated in get-started/play_mp3_control example.

API Reference

Header File

Functions

esp_periph_handle_t periph_touch_init(periph_touch_cfg_t *config)

Create the touch peripheral handle for esp_peripherals.

Note

The handle was created by this function automatically destroy when esp_periph_destroy is called

Return

The esp peripheral handle

Parameters
  • config: The configuration

Structures

struct periph_touch_cfg_t

The Touch peripheral configuration.

Public Members

int touch_mask

Touch pad mask using for this Touch peripheral, ex: TOUCH_PAD_SEL0 | TOUCH_PAD_SEL1

int tap_threshold_percent

Tap threshold percent, Tap event will be determined if the percentage value is less than the non-touch value

int long_tap_time_ms

Long tap duration in milliseconds, default is 2000ms, PERIPH_TOUCH_LONG_TAP will be occurred if TAP and time hold longer than this value

Enumerations

enum esp_touch_pad_sel_t

Touch pad selection.

Values:

TOUCH_PAD_SEL0 = BIT(0)
TOUCH_PAD_SEL1 = BIT(1)
TOUCH_PAD_SEL2 = BIT(2)
TOUCH_PAD_SEL3 = BIT(3)
TOUCH_PAD_SEL4 = BIT(4)
TOUCH_PAD_SEL5 = BIT(5)
TOUCH_PAD_SEL6 = BIT(6)
TOUCH_PAD_SEL7 = BIT(7)
TOUCH_PAD_SEL8 = BIT(8)
TOUCH_PAD_SEL9 = BIT(9)
enum periph_touch_event_id_t

Peripheral touch event id.

Values:

PERIPH_TOUCH_UNCHANGE = 0

No event

PERIPH_TOUCH_TAP

When touch pad is tapped

PERIPH_TOUCH_RELEASE

When touch pad is released after tap

PERIPH_TOUCH_LONG_TAP

When touch pad is tapped and held after long_tap_time_ms time

PERIPH_TOUCH_LONG_RELEASE

When touch pad is released after long tap