🐝 Zigbee каркасы
🗺️ Карта каркасов
8 проектов 4 устройства × C6/H2 esp-zigbee-lib 1.6.3| Устройство | C6 (Router) | H2 (End Device) | ESPHome-аналог |
|---|---|---|---|
| 💧 Humidifier | esp32c6-humidifier | esp32h2-humidifier | 💧 Humidifier |
| 🪟 Smart Curtains | esp32c6-curtains | esp32h2-curtains | 🪟 Smart Curtains |
| ⚡ Relay 2ch | esp32c6-relay | esp32h2-relay | ⚡ Relay 2ch |
| 📡 Radar | esp32c6-radar | esp32h2-radar | 📡 Radar + Light |
SmartStation в Zigbee варианте не делается — Assist требует Wi-Fi.
📁 Структура каркаса
Директорияfirmwares/zigbee/esp32c6-relay/ (пример)
- CMakeLists.txt project name
- idf_component.yml esp-zigbee-lib + esp-zboss-lib
- sdkconfig.defaults ZB_ENABLED + ZB_ZCZR (C6) или ZB_ZED (H2) + FLASHSIZE
Директорияmain/
- CMakeLists.txt
- main.c app_main() с TODO для бизнес-логики
- README.md роль, быстрый старт, дорожная карта
🛠️ Сборка
cd firmwares/zigbee/esp32c6-relayeim run "idf.py set-target esp32c6; idf.py build" v5.2.2eim run "idf.py -p COM5 flash monitor" v5.2.2cd firmwares/zigbee/esp32h2-relayeim run "idf.py set-target esp32h2; idf.py build" v5.2.2eim run "idf.py -p COM5 flash monitor" v5.2.2📦 Установка ESP-IDF (Windows, один раз)
winget install --id Espressif.EIM-CLI --exact --accept-package-agreements --accept-source-agreements
# Для C6:eim install --non-interactive true --idf-versions v5.2.2 --target esp32c6 --path "C:\Espressif" --install-all-prerequisites true --create-bat-activation-script true --cleanup true
# Для H2:eim install --non-interactive true --idf-versions v5.2.2 --target esp32h2 --path "C:\Espressif" --install-all-prerequisites true --create-bat-activation-script true --cleanup true🗺️ Дорожная карта (общая)
- Базовая инициализация Zigbee —
esp_zb_platform_config,esp_zb_init,esp_zb_start. - Кластеры под устройство:
- 💧 Humidifier: On/Off × 3 + Relative Humidity Measurement.
- 🪟 Curtains: Window Covering + Level Control.
- ⚡ Relay: On/Off Output × 2.
- 📡 Radar: Occupancy Sensing + Illuminance Measurement.
- Commissioning —
BDB_COMMISSIONING_NETWORK_FORMATION(Router) или_NETWORK_STEERING(End Device). - NVS-persist (
zb_nvramдля networking + отдельный namespace для бизнес-конфига). - HAL —
gpio_set_level/ ADC / I2C под конкретное железо. Пины берите из Wi-Fi варианта (hardware.yaml).
📚 Дальше
C6 vs H2 — какой выбрать Сравнение чипов, страппинг, USB-JTAG, типичные роли в mesh.
Каталог Wi-Fi прошивок Wi-Fi и Zigbee — две ветки одной продуктовой линии. Пины и логика общие.