Projects
Custom embedded firmware for production Zigbee devices, deployed and operating in a live smart home environment.
Both projects target ESP32-H2 (pure Zigbee mesh router) and ESP32-C6 (Zigbee end device with WiFi, web UI, and Wi-Fi OTA). They integrate with Home Assistant via Zigbee2MQTT and share a common platform architecture. Each started as a focused problem — native Zigbee on a specific sensor or lighting hardware — and evolved into production-grade firmware with OTA update pipelines, automated releases, and modular codebases designed for long-term maintainability.
Shared infrastructure across both projects:
- Shared C++ components:
BoardLed(status LED state machine) andButtonHandler(factory reset timing) viaesp32-zigbee-common - Shared OTA component:
esp32-zigbee-otafor Zigbee Over-The-Air update handling with rollback protection - Automated GitHub Actions release pipelines building H2 and C6 binaries, packaged as Zigbee OTA images
- Aggregated OTA index served via GitHub Pages for Zigbee2MQTT integration