forked from espressif/esp-gmf
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdev_button.yaml
More file actions
118 lines (105 loc) · 7.54 KB
/
Copy pathdev_button.yaml
File metadata and controls
118 lines (105 loc) · 7.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# Example board_devices.yaml configuration for Button device
# This shows how to integrate the Button device into a board configuration
# All values shown are the actual default values from the device parser
# The following configuration applies to the espressif/button component for versions 4.1.4 and its compatible versions.
# Check out the link for more information
# https://components.espressif.com/components/espressif/button/versions/4.1.4/readme
# Example GPIO Button device configuration
- name: gpio_button_0 # The name of the device, must be unique
type: button # The type of the device
sub_type: gpio # Button sub type: "gpio", "adc_single", or "adc_multi"
config:
# GPIO Configuration
active_level: 0 # [TO_BE_CONFIRMED] Active level (0-low, 1-high) when button is pressed
enable_power_save: false # Enable power save mode (default: false)
disable_pull: false # Disable internal pull-up/pull-down (default: false)
# Button Timing Configuration
long_press_time: 2000 # Long press time in milliseconds (default: 2000)
short_press_time: 100 # Short press time in milliseconds (default: 100)
# Event Configuration (NEW - Easy button features)
events_cfg:
press_down: true # Enable press down event (default: true)
press_up: true # Enable press up event (default: true)
single_click: true # Enable single click event (default: true)
double_click: true # Enable double click event (default: true)
multi_click: false # Enable multi click event (default: false)
click_counts: [] # Multi click counts configuration (default: [])
# eg: Set to [3, 4] means enable multi_click event with 3 and 4 counts
long_press_start: true # Enable long press start event (default: true)
long_press_start_time: [] # Long press start time configuration in ms (default: [])
# eg: Set to [3000, 4000] means enable long_press_start event with 3 and 4 seconds
long_press_hold: false # Enable long press hold event (default: false)
long_press_up: true # Enable long press up event (default: true)
long_press_up_time: [] # Long press up time configuration in ms (default: [])
press_repeat: false # Enable press repeat event (default: false)
press_repeat_done: false # Enable press repeat done event (default: false)
press_end: false # Enable press end event (default: false)
peripherals:
- name: gpio # [TO_BE_CONFIRMED] GPIO peripheral name
# Example ADC Button device configuration (Single button)
- name: adc_button_0 # The name of the device, must be unique
type: button # The type of the device
sub_type: adc_single # Button sub type: "gpio", "adc_single", or "adc_multi"
config:
# ADC Configuration
button_index: 0 # [TO_BE_CONFIRMED] Button index on the channel
min_voltage: 0 # [TO_BE_CONFIRMED] Minimum voltage in mV for button press
max_voltage: 500 # [TO_BE_CONFIRMED] Maximum voltage in mV for button press
# Button Timing Configuration
long_press_time: 2000 # Long press time in milliseconds (default: 2000)
short_press_time: 100 # Short press time in milliseconds (default: 100)
# Event Configuration (NEW - Easy button features)
events_cfg:
press_down: true # Enable press down event (default: true)
press_up: true # Enable press up event (default: true)
single_click: true # Enable single click event (default: true)
double_click: true # Enable double click event (default: true)
multi_click: false # Enable multi click event (default: false)
click_counts: [] # Multi click counts configuration (default: [])
# eg: Set to [3, 4] means enable multi_click event with 3 and 4 counts
long_press_start: true # Enable long press start event (default: true)
long_press_start_time: [] # Long press start time configuration in ms (default: [])
# eg: Set to [3000, 4000] means enable long_press_start event with 3 and 4 seconds
long_press_hold: false # Enable long press hold event (default: false)
long_press_up: true # Enable long press up event (default: true)
long_press_up_time: [] # Long press up time configuration in ms (default: [])
press_repeat: false # Enable press repeat event (default: false)
press_repeat_done: false # Enable press repeat done event (default: false)
press_end: false # Enable press end event (default: false)
peripherals:
- name: adc_oneshot # [TO_BE_CONFIRMED] ADC peripheral name
# Example ADC Button device configuration (Multi buttons)
- name: adc_button_group # The name of the device, must be unique
type: button # The type of the device
sub_type: adc_multi # Button sub type: "gpio", "adc_single", or "adc_multi"
config:
# ADC Configuration
button_num: 6 # [TO_BE_CONFIRMED] Number of buttons in the group, must not be greater than CONFIG_ADC_BUTTON_MAX_BUTTON_PER_CHANNEL (default: 8)
voltage_range: [380, 820, 1110, 1650, 1980, 2410] # [TO_BE_CONFIRMED] Voltage ranges for each button in mV
# This voltage_range configuration is only applicable to the Korvo2 V3 development board.
# Please refer to the schematic of your development board to determine the correct configuration.
button_labels: ["VOLUME_UP", "VOLUME_DOWN", "SET", "PLAY", "MUTE", "REC"] # Labels for each button
max_voltage: 3000 # [TO_BE_CONFIRMED] Maximum voltage in mV for this ADC channel (default: 3000)
# Button Timing Configuration
long_press_time: 2000 # Long press time in milliseconds (default: 2000)
short_press_time: 100 # Short press time in milliseconds (default: 100)
# Event Configuration (NEW - Easy button features)
events_cfg:
press_down: true # Enable press down event (default: true)
press_up: true # Enable press up event (default: true)
single_click: true # Enable single click event (default: true)
double_click: true # Enable double click event (default: true)
multi_click: false # Enable multi click event (default: false)
click_counts: [] # Multi click counts configuration (default: [])
# eg: Set to [3, 4] means enable multi_click event with 3 and 4 counts
long_press_start: true # Enable long press start event (default: true)
long_press_start_time: [] # Long press start time configuration in ms (default: [])
# eg: Set to [3000, 4000] means enable long_press_start event with 3 and 4 seconds
long_press_hold: false # Enable long press hold event (default: false)
long_press_up: true # Enable long press up event (default: true)
long_press_up_time: [] # Long press up time configuration in ms (default: [])
press_repeat: false # Enable press repeat event (default: false)
press_repeat_done: false # Enable press repeat done event (default: false)
press_end: false # Enable press end event (default: false)
peripherals:
- name: adc_oneshot # [TO_BE_CONFIRMED] ADC peripheral name