initial commit
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
# ===== Wake Word Sensitivity =====
|
||||
select:
|
||||
- platform: template
|
||||
name: "Wake Word Sensitivity"
|
||||
optimistic: true
|
||||
initial_option: "Slightly sensitive"
|
||||
restore_value: true
|
||||
entity_category: config
|
||||
icon: mdi:ear-hearing
|
||||
options:
|
||||
- Slightly sensitive
|
||||
- Moderately sensitive
|
||||
- Very sensitive
|
||||
on_value:
|
||||
lambda: |-
|
||||
if (x == "Slightly sensitive") {
|
||||
id(wake_word_model).set_probability_cutoff(247); // 0.97
|
||||
} else if (x == "Moderately sensitive") {
|
||||
id(wake_word_model).set_probability_cutoff(235); // 0.92
|
||||
} else if (x == "Very sensitive") {
|
||||
id(wake_word_model).set_probability_cutoff(212); // 0.83
|
||||
}
|
||||
|
||||
# ===== Voice Assistant =====
|
||||
voice_assistant:
|
||||
id: va
|
||||
microphone: mic
|
||||
speaker: spk
|
||||
micro_wake_word: mww
|
||||
noise_suppression_level: ${mic_noise_suppression_level}
|
||||
auto_gain: ${mic_auto_gain}
|
||||
volume_multiplier: ${mic_volume_multiplier}
|
||||
on_listening:
|
||||
- logger.log: "[VA] on_listening — mic open, sending audio to HA"
|
||||
- light.turn_on:
|
||||
id: led_bar
|
||||
effect: "Listening Pulse"
|
||||
on_stt_vad_end:
|
||||
- logger.log: "[VA] on_stt_vad_end — speech detected, processing"
|
||||
- light.turn_on:
|
||||
id: led_bar
|
||||
effect: "Processing"
|
||||
on_stt_end:
|
||||
- lambda: |-
|
||||
ESP_LOGI("va", "STT result: %s", x.c_str());
|
||||
- light.turn_off:
|
||||
id: led_bar
|
||||
on_tts_start:
|
||||
- lambda: |-
|
||||
ESP_LOGI("va", "TTS start: %s", x.c_str());
|
||||
- light.turn_on:
|
||||
id: led_bar
|
||||
effect: "Speaking"
|
||||
on_tts_end:
|
||||
- logger.log: "[VA] on_tts_end"
|
||||
on_tts_stream_end:
|
||||
- logger.log: "[VA] on_tts_stream_end"
|
||||
on_error:
|
||||
- lambda: |-
|
||||
ESP_LOGE("va", "VA error: code=%s, message=%s", code.c_str(), message.c_str());
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return code != "duplicate_wake_up_detected";'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: led_bar
|
||||
effect: "Error Flash"
|
||||
- delay: 2s
|
||||
- micro_wake_word.start:
|
||||
on_end:
|
||||
- logger.log: "[VA] on_end"
|
||||
- wait_until:
|
||||
not:
|
||||
voice_assistant.is_running:
|
||||
- light.turn_off:
|
||||
id: led_bar
|
||||
- if:
|
||||
condition:
|
||||
and:
|
||||
- voice_assistant.connected:
|
||||
- not:
|
||||
micro_wake_word.is_running:
|
||||
then:
|
||||
- micro_wake_word.start:
|
||||
on_idle:
|
||||
- logger.log: "[VA] on_idle"
|
||||
- light.turn_on:
|
||||
id: led_bar
|
||||
effect: "Idle Breathe"
|
||||
- if:
|
||||
condition:
|
||||
and:
|
||||
- voice_assistant.connected:
|
||||
- not:
|
||||
micro_wake_word.is_running:
|
||||
then:
|
||||
- micro_wake_word.start:
|
||||
Reference in New Issue
Block a user