🎙️ SmartStation (Assist)
🧩 Матрица поддержки плат
2 платы Wi-Fi Zigbee не применим| Плата | Wi-Fi (ESPHome) | Причина ограничения |
|---|---|---|
| ESP32 (classic) | 🚧 | runtime.yaml.j2 hardcoded variant: esp32c6 (требует доработки) |
| ESP32-C3 SuperMini | ✅ | — |
| ESP32-C6 SuperMini (рек.) | ✅ | — |
| ESP32-H2 | ❌ | Нет Wi-Fi |
| ESP8266 | ❌ | Не хватает RAM/Flash для Assist pipeline |
🔌 Подключение I2S
| Сигнал | GPIO |
|---|---|
| I2S BCLK (микрофон + усилитель) | GPIO2 |
| I2S LRCLK | GPIO3 |
| I2S DOUT → DIN MAX98357A | GPIO1 |
| I2S DIN ← DOUT INMP441 | GPIO6 |
| Кнопка действия (Assist) | GPIO9 |
| Сигнал | GPIO |
|---|---|
| I2S BCLK | GPIO2 |
| I2S LRCLK | GPIO3 |
| I2S DOUT | GPIO1 |
| I2S DIN | GPIO6 |
| Кнопка | GPIO9 |
📁 Структура шаблона
Директорияfirmwares/ci-overrides/mihazzzold.espHome-SmartStation/
- espHome_SmartStation.yaml.j2
Директория_includes/
- runtime.yaml.j2 Wi-Fi, API, OTA
- station_logic.yaml.j2 5 фаз Assist (I2S, wake-word, LED, кнопка)
- maintenance.yaml.j2 OTA, SETUP, тест динамика/мика
- diagnostics.yaml.j2 температура чипа, uptime, RSSI, heap
- README.md
- HOME_ASSISTANT.md
- SETUP.md пайка + Home Assistant сценарий
- hardware.yaml
📦 Сборка
py -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome-SmartStation/espHome_SmartStation.yaml.j2 ` --board-profile esp32c6-supermini -a run --port COM5 -ypy -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome-SmartStation/espHome_SmartStation.yaml.j2 ` --board-profile esp32c3-supermini -a run --port COM5 -yOTA-каналы: mihazzzold.espHome-SmartStation.{esp32c3,esp32c6}.
Заводская сборка (для серийного производства)
$env:FLASHER_FACTORY_BUILD='1'py -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome-SmartStation/espHome_SmartStation.yaml.j2 ` --board-profile esp32c6-supermini -a run --port COM5 -y --factory-buildВ этом режиме esphome.name = esphome-smartstation + name_add_mac_suffix (уникальный host по MAC), без Wi-Fi STA из secrets (только AP + Improv + captive portal).
🏠 Home Assistant Assist pipeline
Что нужно в HA:
- ESPHome integration — добавит устройство, появятся сущности.
- Wyoming-сервисы (или встроенный Cloud) для STT / TTS / Wake-Word: Whisper, Piper, openWakeWord.
- Assist pipeline настроенный с этими сервисами.
- Voice satellite — назначить устройство как сателлит.
Подробная пошаговая инструкция (с примерами Wyoming-докер-контейнеров, экспорт сущностей для голосового управления, автоматизации): HOME_ASSISTANT.md на GitHub.