ESP32-Audio-Kit (ESP32-A1S) with Squeezelite for Notifications

I made ESP32 Audio Kit (Ai Thinker ESP32-A1S) working with ESPHome I2S Media Player.

Model: ESP32-A1S 2974 (DAC: ES8388)

Here is the ESPHome Yaml: ESP32 Audio Kit (Ai Thinker ESP32-A1S) - ESPHome I2S Media Player - Pastebin.com

See it here: [ESPHome] ESP32-Audio-Kit (ESP32-A1S) - YouTube

esphome:
  name: esp32-audio-kit
 
esp32:
  board: esp-wrover-kit
  framework:
    type: arduino
 
logger:
api:
  password: "api-password-here"
 
ota:
  password: "ota-password-here"
 
wifi:
  ssid: "your-ssid-here"
  password: "your-ssid-password-here"
 
  ap:
    ssid: "esp32-audio-kit Fallback Hotspot"
    password: "fallback-hotspot-password-here"
 
captive_portal:
i2c:
  sda: GPIO33
  scl: GPIO32
 
external_components:
  - source: github://pr#3552
    components: [es8388]
    refresh: 0s
 
es8388:
media_player:
  - platform: i2s_audio
    name: "ESP32 Audio Kit"
    dac_type: external
    i2s_lrclk_pin: GPIO25
    i2s_dout_pin: GPIO26
    i2s_bclk_pin: GPIO27
    mode: stereo
    mute_pin:
      number: GPIO21
      inverted: true
 
switch:
  - platform: gpio
    pin: GPIO21
    name: "AMP Switch"
    restore_mode: ALWAYS_ON
 
binary_sensor:
  - platform: gpio
    pin:
      number: GPIO39
      inverted: true
      mode:
        input: true
    name: "Jack Status"
 
light:
  - platform: binary
    name: "Test LED 1"
    output: light_output_1
  - platform: binary
    name: "Test LED 2"
    output: light_output_2
 
output:
  - id: light_output_1
    platform: gpio
    pin: GPIO22
    inverted: true
  - id: light_output_2
    platform: gpio
    pin: GPIO19
    inverted: true
10 Likes