Дорогі покупці, магазин працює, склад та ціни актуальні. Всі замовлення обробляються та надсилаються протягом 1-3 днів.
Популярні Статті
Умный дом Xiaomi ZigBee на Raspberry Pi + Home Assistant
В этой статье пойдет речь о датчиках, розетках, выключателях Xiaomi Aqara/Mijia. Я расскажу к ...»
Home Assistant + база SQL MariaDB оптимизация
Все чаще у многих пользователей Home Assistant возникает вопрос о выросшем файле базы данных. П ...»
Открытая система управления “умным домом” MajorDoMo - Часть 1
В этой статье я расскажу об одном проекте, которым занимаюсь уже довольно продолжительное время и ко ...»

Home Assistant - Звук по Wi-Fi на ESP32


В одной из предыдущих статей, я рассказывал, как подключить к умному дому Home Assistant на Raspberry Pi активный усилитель, для воспроизведения уведомлений. Я до сих пор использую данную связку, но она не лишена недостатков.
Во первых физическое размещение, только возле сервера, во вторых фоновый шум от усилителя. От наводок удалось избавится добавив гальваническую развязку по питанию.

Предлагаю устройство оповещения по Wi-Fi каналу с использованием усилителя работающего по шине I2S. Преимущества налицо, нет фонового шума, теперь могу размещать звуковые оповещатели в любом удобном месте домовладения, где есть покрытие Wi-Fi, в гараже, оранжерее, беседке. Данное устройство позволяет выводить любые звуковые файлы а так же TTS уведомления.

Для проекта нам понадобится любой модуль на базе чипа ESP32, я использовал ESP32 Lolin, подключим усилитель к портам GPIO, при использовании других модулей, необходимо будет подправить файл конфигурации. И усилитель на базе MAX98357, это цифровой усилитель на 3 ватта, работающий по шине I2S и любой динамик 4-8 ом с выходной мощностью 1-3 ватта.

Собираем по данной схеме
esp32 notifier and MAX98357


Для работы в Home Assistant необходимо установить аддон ESPHome из магазина аддонов.

esphome addon

Создаем новую ноду и копируем следующую конфигурацию.
new device
 
esphome:
  name: esp32-notifier
  friendly_name: ESP32-Notifier

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "7n33PCPQIK6H7h9JHnjxwHBSD2I2J3tZjVKykTvxJ0w="

ota:


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "ESP32-Notifier"
    password: "qhTY2HdLC8uB"

captive_portal:

i2s_audio:
  i2s_lrclk_pin: GPIO33
  i2s_bclk_pin: GPIO22

media_player:
  - platform: i2s_audio
    name: ESPHome I2S Media Player
    dac_type: external
    i2s_dout_pin: GPIO19
    mode: mono
   
Обратите внимание, выделенное красным заменить на свои данные, имя сети и пароль, если не используете файл secret.

Подключаем модуль к компьютеру, проверяем Validate и прошиваем любым удобным способом, в последних версиях ESPHome прошить модуль можно прямо из браузера.
После прошивки видим такой лог:

log esphome esp32

Теперь в системе будет доступен медиа плейер, логика работы такая же как с аддоном MPD, доступны различные команды, изменения громкости и пр.

Добавляем карточку на панель

add home assistant card

esp32 media player card home assistant

Теперь можем использовать в любых автоматизациях.

media source for esp32 i2s amplifier

К примеру используя команду:
media_player.play_media Action
 
on_...:
  # Simple
  - media_player.play_media: 'http://media-url/media.mp3'

  # Full
  - media_player.play_media:
      id: media_player_id
      media_url: 'http://media-url/media.mp3'

  # Simple with lambda
  - media_player.play_media: !lambda 'return "http://media-url/media.mp3";'

Воспроизводим файлы с удаленного или локального сервера.

Для именения громкости:
media_player.volume_set Action

on_...:
  # Simple
  - media_player.volume_set: 50%

  # Full
  - media_player.volume_set:
      id: media_player_id
      volume: 50%

  # Simple with lambda
  - media_player.volume_set: !lambda "return 0.5;"​

Полный список команд можно посмотреть на сайте ESPHome - media player
 
  Відгуків: 0
Ваше І’мя:


Ваш відгук: Увага: HTML не підтримується! Використовуйте звичайний текст.

Оцінка: Погано           Добре

Введіть код, вказаний на зображенні:



Останні статті
Відстеження людей з mmWave сенсором LD2450
Датчик Hi-Link LD-2450 дозволяє відстежувати присутність, швидкість руху та координати до трьох ос ...»
27.11.2023 в 12:41    Переглядів: 1254
Голосовий асистент з Home Assistant та ESPHome
Відео версія статті: Голосовий асистент з Home Assistant та ESPHome Як ви можете знати 2023 ...»
24.10.2023 в 15:54    Переглядів: 1846
Таблиця перекладу ємностей та позначень конденсаторів
​​  μF микрофарады nF нанофарады pF пикофарады Co ...»
03.10.2023 в 17:09    Переглядів: 604
Останні відгуки
Голосовий асистент з Home Assistant та ESPHome
Добрий день. Дуже гарна iдея) Колись я скопiюю увесь проэкт, але на данний момент менi потрiбно тiльки iнформування i2s_audio: - i2s_lrclk_pin: 13 i2s_bclk_pin: 14 id: audio_bus me ...»
15.12.2023 в 00:20    Переглядів: 1846
Антон
Замок по отпечатку пальца Wi-Fi для Home Assistant
Благодарю за очень полезный материал, даже не знал что ESPHome уже со сканерами работает. Спасибо, удачи в проектах, пишите еще!!! ...»
16.06.2021 в 13:13    Переглядів: 4558
Анатолий
Умный дом Xiaomi ZigBee на Raspberry Pi + Home Assistant
Отличная статья но есть ошибки, а именно отсутствует в основном конфиге sensor: - platform: mqtt name: Bridge state state_topic: "zigbee2mqtt/bridge/state" icon: mdi:rout ...»
10.02.2020 в 20:25    Переглядів: 24277
Kolyk