ZigNode — a modular ESP32 Zigbee/Wi-Fi node. One ESP-IDF component with a board-selectable module registry; its flagship module is a safety-gated watering pump (max-runtime watchdog, min-off cooldown, dry-run gate, 3-way relay/MOSFET drive) with soil-moisture auto-watering, plus status LED, button gestures, a wear-safe persistent event log, optional OLED / buzzer / RTC / microSD, a Wi-Fi web panel, and Zigbee Router endpoints with an OTA client. Boards: M5Stack NanoH2 (ESP32-H2) and Seeed Studio XIAO ESP32-C6 (bare or on the Expansion Base).
iotta Opus voice codec — libopus (xiph/opus pinned by commit sha) plus the shared iotta make_opus_encoder/decoder factories. Optional: only needed by firmwares that enable the voice path (CONFIG_IOTTA_ENABLE_VOICE).
iotta device SDK — ESP-IDF binding. Runs the portable iotta core (session/protocol state machine, provisioning, MCP, audio pipeline, OTA) on ESP32-S3 by implementing the PAL with ESP-IDF APIs: control plane, voice over I2S, and A/B OTA. Add this component and wire it from your app's app_main (see example/ and sdk/docs/PORTING_NEW_CHIPSET.md).
Drive an external monitor from an ESP32-S2/S3/P4 through a USB display adapter, with no PC or OS required. DisplayLink DL-1xx on S2/S3/P4; MCT Trigger 6 / MacroSilicon MS91xx on the P4 (USB High-Speed).