Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
how to use AS ESP32-S3 voice assistant in home assistant
#4
I'm really loving this product and trying things with Yaml to get the features I want. I need some help if anyone can

I am adding options to always show the light and change colors and pulse and I want a way to control volume from Home assistant interface.  I am close but its all not working.

I also have a bug that if I want to set colors in home assistant interface, they do not align with the colors showing on device.

the attached image you can see I have purple selected but the device shows blue


Oh 1 more thing I wanted to add a ding.wav but could not see how to add a file any help would be great there was well

This is my Yaml

Code:
esphome:
  name: sarah
  friendly_name: SARAH
  platformio_options:
    board_build.flash_mode: dio
  on_boot:
    - light.turn_on:
        id: led_ww
        blue: 100%
        brightness: 60%
        effect: fast pulse

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: esp-idf

    sdkconfig_options:
      CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: "y"
      CONFIG_ESP32S3_DATA_CACHE_64KB: "y"
      CONFIG_ESP32S3_DATA_CACHE_LINE_64B: "y"
      CONFIG_AUDIO_BOARD_CUSTOM: "y"
 
psram:
  mode: octal  # quad for N8R2 and octal for N16R8
  speed: 80MHz


# Enable logging
logger:
  hardware_uart: USB_SERIAL_JTAG

# Enable Home Assistant API
api:
  encryption:
    key: "************************************"
  on_client_connected:
        then:
          - delay: 50ms
          - light.turn_off: led_ww
          - micro_wake_word.start:
  on_client_disconnected:
        then:
          - voice_assistant.stop:



ota:
  - platform: esphome
    password: "*******************************"

wifi:
  ssid: "My-SSID"
  password: "***********************"

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esp32-S3-Wake-Word"
    password: "********************"

captive_portal:


button:
  - platform: restart
    name: "Restart"
    id: but_rest

globals:
  - id: current_volume
    type: float
    initial_value: '4.0'

number:
  - platform: template
    name: "Speaker Volume"
    id: speaker_volume
    optimistic: true
    min_value: 0.5
    max_value: 10.0
    step: 0.5
    restore_value: true
    initial_value: 4.0
    mode: slider
    set_action:
      - lambda: |-
          id(va).set_volume_multiplier(x);
    update_interval: 60s

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: GPIO16
    num_leds: 1
    rmt_channel: 0
    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: GPIO3  #WS
    i2s_bclk_pin: GPIO2 #SCK
  - id: i2s_speaker
    i2s_lrclk_pin: GPIO6  #LRC
    i2s_bclk_pin: GPIO7 #BLCK

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
   
speaker:
    platform: i2s_audio
    id: va_speaker
    i2s_audio_id: i2s_speaker
    dac_type: external
    i2s_dout_pin: GPIO8  #  DIN Pin of the MAX98357A Audio Amplifier
    channel: mono

micro_wake_word:
  on_wake_word_detected:
    # then:
    - 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: hey_jarvis
   
voice_assistant:
  id: va
  microphone: va_mic
  noise_suppression_level: 2.0
  volume_multiplier: 4.0
  speaker: va_speaker
  on_stt_end:
      then:
        - light.turn_on:
            id: led_ww         
            red: 30%
            green: 30%
            blue: 70%
            brightness: 60%
            effect: none
  on_error:
          - micro_wake_word.start: 
  on_end:
        then:
          - light.turn_on:
              id: led_ww         
              red: 30%
              green: 30%
              blue: 70%
              brightness: 60%
              effect: none
          - wait_until:
              not:
                voice_assistant.is_running:
          - micro_wake_word.start: 


Attached Files Image(s)
   
Reply


Messages In This Thread
RE: how to use AS ESP32-S3 voice assistant in home assistant - by biofects - 12-06-2024, 07:51 PM

Forum Jump:


Users browsing this thread:
1 Guest(s)