Перейти к содержимому

🐝 Zigbee каркасы

🗺️ Карта каркасов

8 проектов 4 устройства × C6/H2 esp-zigbee-lib 1.6.3
УстройствоC6 (Router)H2 (End Device)ESPHome-аналог
💧 Humidifieresp32c6-humidifieresp32h2-humidifier💧 Humidifier
🪟 Smart Curtainsesp32c6-curtainsesp32h2-curtains🪟 Smart Curtains
⚡ Relay 2chesp32c6-relayesp32h2-relay⚡ Relay 2ch
📡 Radaresp32c6-radaresp32h2-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-relay
eim run "idf.py set-target esp32c6; idf.py build" v5.2.2
eim 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

🗺️ Дорожная карта (общая)

  1. Базовая инициализация Zigbeeesp_zb_platform_config, esp_zb_init, esp_zb_start.
  2. Кластеры под устройство:
    • 💧 Humidifier: On/Off × 3 + Relative Humidity Measurement.
    • 🪟 Curtains: Window Covering + Level Control.
    • ⚡ Relay: On/Off Output × 2.
    • 📡 Radar: Occupancy Sensing + Illuminance Measurement.
  3. CommissioningBDB_COMMISSIONING_NETWORK_FORMATION (Router) или _NETWORK_STEERING (End Device).
  4. NVS-persist (zb_nvram для networking + отдельный namespace для бизнес-конфига).
  5. HALgpio_set_level / ADC / I2C под конкретное железо. Пины берите из Wi-Fi варианта (hardware.yaml).

📚 Дальше