#ESP-based Assist Satellite not sending stt to whisper?

1 messages · Page 1 of 1 (latest)

bold imp
#

Super confused here. My ESP32 based satellite recognizes wake word, listens, but doesnt detect that I am done speaking. (I guess?) It just sits there.

Note: I do not have a speaker configured. (I dont want audio feedback, just visual [light]) I wouldn't think it's required as thee browser-based assist works the same way.

I could use some help.

#

relevant ESP config

switch:
  - platform: template
    id: mute
    name: mute
    optimistic: true
    on_turn_on: 
      - micro_wake_word.stop:
      - voice_assistant.stop:
      - light.turn_on:
          id: led_ww           
          red: 100%
          green: 0%
          blue: 0%
          brightness: 60%
          effect: fast pulse 
      - delay: 2s
      - light.turn_off:
          id: led_ww
      - light.turn_on:
          id: led_ww           
          red: 100%
          green: 0%
          blue: 0%
          brightness: 30%
    on_turn_off:
      - micro_wake_word.start:
      - light.turn_on:
          id: led_ww           
          red: 0%
          green: 100%
          blue: 0%
          brightness: 60%
          effect: fast pulse 
      - delay: 2s
      - light.turn_off:
          id: led_ww 
   
light:
  - platform: esp32_rmt_led_strip
    id: led_ww
    rgb_order: GRB
    pin: GPIO21
    num_leds: 1
    chipset: ws2812
    name: "on board light"
    effects:
      - pulse:
      - pulse:
          name: "Fast Pulse"
          transition_length: 0.5s
          update_interval: 0.5s
          min_brightness: 0%
          max_brightness: 100%
          
          
 # Audio and Voice Assistant Config          
i2s_audio:
  - id: i2s_in
    i2s_lrclk_pin: GPIO2  #WS 
    i2s_bclk_pin: GPIO3 #SCK

microphone:
  - platform: i2s_audio
    id: va_mic
    adc_type: external
    i2s_din_pin: GPIO4 #SD pin on the INMP441
    channel: left
    pdm: false
    i2s_audio_id: i2s_in
    bits_per_sample: 32 bit
#
  on_wake_word_detected:
    # then:
    - logger.log: "🎤 Wake word triggered!"
    - voice_assistant.start:
        wake_word: !lambda return wake_word;
    - light.turn_on:
        id: led_ww           
        red: 30%
        green: 30%
        blue: 70%
        brightness: 60%
        effect: fast pulse 
  models:
    - model: github://esphome/micro-wake-word-models/models/v2/hey_jarvis.json@main
  vad:
    model: github://esphome/micro-wake-word-models/models/v2/vad.json@main
    
voice_assistant:
  id: va
  microphone: va_mic
  noise_suppression_level: 4.0
  volume_multiplier: 4.0
  on_stt_end:
       then: 
         - light.turn_off: led_ww
  on_error:
          - micro_wake_word.start:  
  on_end:
        then:
          - light.turn_off: led_ww
          - wait_until:
              not:
                voice_assistant.is_running:
          - micro_wake_word.start:
#

As you can see, it successfully hear's the wake word, streams the mic, but never determines that it's time to stop.

bold imp
#

update:
I have now added a speaker and media_player components to the ESPHome config, with no change. wake word is detected, HA kinda sees that the pipeline was opened, but no events are recorded.