-
Notifications
You must be signed in to change notification settings - Fork 1
/
mcu-echo-1.yaml
149 lines (132 loc) · 2.95 KB
/
mcu-echo-1.yaml
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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
substitutions:
device: echo-1
name: Echo 1
name_short: Echo 1
comment: "DEV"
esphome:
name: mcu-${device}
comment: ${comment}
esp32:
board: m5stack-atom
framework:
type: arduino
version: 2.0.14
platform_version: 6.5.0
# type: esp-idf
# version: 5.1.2
# platform_version: 6.5.0
external_components:
- source: components
# - source:
# type: git
# url: https://github.com/nielsnl68/esphome
# ref: nvds-RTTTL_I2S
# components: [ speaker, rtttl ]
# refresh: 0s
- source: github://pr#5177
components: [ rtttl ]
refresh: 0s
packages:
common: !include common/common.yaml
api:
services:
# https://github.com/granadaxronos/120-SONG_NOKIA_RTTTL_RINGTONE_PLAYER_FOR_ARDUINO_UNO/blob/master/RTTTL_PLAYER/songs.h
- service: play_rtttl
variables:
song: string
then:
- rtttl.play:
rtttl: !lambda 'return song;'
# i2c:
# sda: 32
# scl: 26
# scan: true #false
# frequency: 100kHz
# uart:
# id: particle_uart
# tx_pin: 21
# rx_pin: 22
# baud_rate: 9600
binary_sensor:
- platform: gpio
name: ${name} Button
pin:
number: 39
inverted: true
# on_press:
# - voice_assistant.start:
# on_release:
# - voice_assistant.stop:
on_double_click:
- logger.log: Button Pressed
- rtttl.play: "scale_up:d=32,o=5,b=100:c,c#,d#,e,f#,g#,a#,b"
light:
# - platform: status_led
# id: status_led_id
# output: status_led_output
- platform: esp32_rmt_led_strip
name: "${name} LED"
id: neo_buildin
rgb_order: GRB
pin: 27
num_leds: 1
rmt_channel: 0
chipset: ws2812
# output:
# - platform: template
# id: status_led_output
# type: binary
# write_action:
# - if:
# condition:
# lambda: return state > 0;
# then:
# - light.turn_on:
# id: neo_buildin
# red: 1.0
# green: 0.0
# blue: 0.0
# brightness: 100%
# else:
# - light.turn_off:
# id: neo_buildin
# # green: 0.0
# # red: 0.0
# # blue: 0.0
# # brightness: 30%
i2s_audio:
i2s_lrclk_pin: 33
i2s_bclk_pin: 19
media_player:
- platform: i2s_audio
id: media_out
name: ${name} Player
dac_type: external
i2s_dout_pin:
number: 22
allow_other_uses: true
mode: mono
speaker:
- platform: i2s_audio
id: echo_speaker
dac_type: external
i2s_dout_pin:
number: 22
allow_other_uses: true
mode: mono
rtttl:
id: my_rtttl
speaker: echo_speaker
microphone:
- platform: i2s_audio
id: echo_microphone
i2s_din_pin: 23
adc_type: external
pdm: true
# voice_assistant:
# microphone: echo_microphone
# on_tts_end:
# - media_player.play_media:
# id: media_out
# media_url: !lambda |-
# return x;