Espressif ESP32-S31 Function-CoreBoard
About $25
- Zigbee radio built into the chip
- Ethernet on the board
- Flashes from the browser in about two minutes
ZHAC turns an Espressif ESP32 board into a complete Zigbee hub. The radio, the device library, your automations and the web interface all run on the board. No Raspberry Pi, no Docker, no cloud account.
No server in a cupboard, no container to keep updated. Power and a network cable, and the hub runs.
The Zigbee radio sits on the chip and the board has Ethernet. Plug in power and a network cable — that is the whole setup.
Definitions are ported from zigbee2mqtt's converter library and kept in step with its releases. Look up your exact model before you buy.
Search devicesRules and Lua scripts run on the hub, so the lights still switch when the internet — or your server — is down.
MQTT discovery adds your devices to Home Assistant automatically, with the right controls and units.
Install new releases from the hub's own page. Devices and rules stay, and an update that does not start properly rolls back by itself.
The firmware and device library are open source under AGPL-3.0. Read it, change it, build it yourself.
The web interface lives on the hub. Open http://zhac.local from any browser on your network.
Both boards run the same ZHAC firmware and connect to your router with an Ethernet cable.
About $25
About $25
Five steps with the ESP32-S31 board. No toolchain to install.
A USB-C cable that carries data (charge-only cables will not work) and an Ethernet cable to your router.
Open zhac.org/flash in Chrome or Edge, pick your board and click Install. It takes about two minutes.
Go to http://zhac.local. Within ten minutes of switching it on, set the admin password — that keeps strangers on your network out.
Click Add a device, then put the sensor, plug or bulb in pairing mode. It appears in the list with its controls.
Create a rule from a recipe, such as light on with motion. From then on it runs on the hub by itself.
Everything happens in the browser. Nothing to install except, on Windows, sometimes a USB driver.
Open the hub's OTA page and install the newest release over the network. Devices, rules and settings stay. If the new version does not start properly, the hub goes back to the previous one by itself.
Re-flashing over USB? Leave Erase the whole flash first unticked to keep your data.
Stuck? Read Troubleshooting or ask in Discussions.
The hub firmware and the device library are open source (AGPL-3.0) and work 100% on your own network. Nothing about your home leaves it unless you decide so.
A separate ZHAC Cloud — web console, phone app and remote access — is in private testing. The hub never needs it.
Flash your board in about two minutes, then pair your first device.