blob: 7fe6a01d0c76dfde9ca2cb0fd3cdc109bd296e2e [file] [log] [blame]
# Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd.
# SPDX-License-Identifier: Apache-2.0
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>;
};
};
compatible: "espressif,esp32-touch"
include: base.yaml
properties:
debounce-interval-ms:
type: int
default: 30
description: Debouncing interval time in milliseconds.
href-microvolt:
type: int
enum:
- 2400000
- 2500000
- 2500000
- 2700000
default: 2700000
description: Touch sensor high reference voltage.
lref-microvolt:
type: int
enum:
- 500000
- 600000
- 700000
- 800000
default: 500000
description: Touch sensor low reference voltage.
href-atten-microvolt:
type: int
enum:
- 1500000
- 1000000
- 500000
- 0
default: 1000000
description: Touch sensor high reference attenuation voltage.
filter-mode:
type: int
default: 2
description: |
Touch sensor IIR filter coefficient.
If not specified defaults to ESP32_TOUCH_FILTER_MODE_IIR_16.
filter-debounce-cnt:
type: int
default: 1
description: |
Touch sensor debounce count.
If not specified defaults to 1.
filter-noise-thr:
type: int
default: 0
description: |
Touch sensor noise threshold coefficient.
If not specified defaults to ESP32_TOUCH_FILTER_NOISE_THR_4_8TH.
filter-jitter-step:
type: int
default: 4
description: |
Touch sensor jitter filter step size.
If not specified defaults to 4.
filter-smooth-level:
type: int
default: 1
description: |
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.
child-binding:
description: Touch sensor child node
properties:
channel-num:
type: int
required: true
description: Touch sensor channel number
channel-sens:
type: int
default: 20
description: |
Touch sensor channel sensibility in 100th.
If not specified defaults to 20.
zephyr,code:
type: int
required: true
description: Key code to emit.