🪟 Smart Curtains
🧩 Матрица поддержки плат
4 платы Wi-Fi 2 Zigbee каркаса| Плата | Wi-Fi | Zigbee |
|---|---|---|
| ESP32 (classic) | ✅ | ❌ |
| ESP32-C3 SuperMini | ✅ | ❌ |
| ESP32-C6 SuperMini (рек.) | ✅ | 🐝 C6 Router |
| ESP32-H2 | ❌ | 🐝 H2 End Device |
| ESP8266 NodeMCU | ✅ | ❌ |
🔌 Подключение ULN2003
| Сигнал | GPIO |
|---|---|
| IN1 (фаза A) | GPIO18 |
| IN2 (фаза B) | GPIO19 |
| IN3 (фаза C) | GPIO20 |
| IN4 (фаза D) | GPIO21 |
| Сигнал | GPIO |
|---|---|
| IN1 | GPIO10 |
| IN2 | GPIO7 |
| IN3 | GPIO6 |
| IN4 | GPIO5 |
| Сигнал | GPIO |
|---|---|
| IN1 | GPIO25 |
| IN2 | GPIO26 |
| IN3 | GPIO27 |
| IN4 | GPIO14 |
| Сигнал | Метка / GPIO |
|---|---|
| IN1 | D1 / GPIO5 |
| IN2 | D2 / GPIO4 |
| IN3 | D6 / GPIO12 |
| IN4 | D5 / GPIO14 |
🎚️ Калибровка хода
Шаговик без энкодера не знает «открыто / закрыто» — покажите вручную:
- Установите штору в полностью открытое положение.
- Нажмите
SETUP: начать калибровку. - Нажмите
cover: Закрыть— мотор едет до тупика; счётчик шагов сохраняется вg_travel_steps(NVS). - Готово —
0%= закрыто,100%= открыто.
📁 Структура шаблона
Директорияfirmwares/ci-overrides/mihazzzold.espHome_SmartCurtains/
- espHome_SmartCurtains.yaml.j2
Директория_includes/
- runtime.yaml.j2 Wi-Fi, API, OTA
- curtain_logic.yaml.j2 stepper, cover, калибровка, jog
- maintenance.yaml.j2 OTA, SETUP, серийник
- diagnostics.yaml.j2 uptime, RSSI, heap
📦 Сборка
py -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome_SmartCurtains/espHome_SmartCurtains.yaml.j2 ` --board-profile esp32c6-supermini -a run --port COM5 -ypy -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome_SmartCurtains/espHome_SmartCurtains.yaml.j2 ` --board-profile esp32c3-supermini -a run --port COM5 -ypy -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome_SmartCurtains/espHome_SmartCurtains.yaml.j2 ` --board-profile esp32-supermini -a run --port COM5 -ypy -3.13 scripts/flasher.py --local ` -f firmwares-external/mihazzzold.espHome_SmartCurtains/espHome_SmartCurtains.yaml.j2 ` --board-profile esp8266-nodemcu -a run --port COM5 -yOTA-каналы: mihazzzold.espHome_SmartCurtains.{esp32,esp32c3,esp32c6,esp8266}.
🏠 Home Assistant
Сущности: cover.curtain_<suffix> (основная), SETUP: (калибровка), OTA: (обновления), DIAG: / NET: (диагностика).
Подробно: HOME_ASSISTANT.md на GitHub.
🐝 Zigbee-вариант
🐝 esp32c6-curtains (Router) Каркас Z3 на C6. Кластеры Window Covering + Level Control — TODO.
🐝 esp32h2-curtains (End Device) Каркас Z3 на H2 для батарейного варианта.