Information:
This tool flashes the latest factory firmware (version shown above) directly via your browser onto your ESP32-C6.
The process automatically verifies that the connected device is an ESP32-C6.
Release notes
loading…
loading…
1. Connect your device via USB
Click the button below, select your serial port (e.g., USB JTAG/serial debug unit) and start the flash process.
Supported browsers: Chrome, Edge, Opera. (Safari/Firefox do not fully support WebSerial yet).
2. Zigbee2MQTT (Z2M) Setup
Once flashing is complete, the coordinator can be integrated into Zigbee2MQTT.
Adjust your configuration.yaml (located at `zigbee2mqtt/data/`) as follows:
serial:
# Replace this path with your actual USB path
port: /dev/serial/by-id/usb-Espressif_USB_JTAG_serial_debug_unit_...
# Mandatory for the ESP32 ZBOSS firmware:
adapter: zboss
advanced:
# Transmit Power - Optional
transmit_power: 20
Optional: matching Docker image. For seamless coordinator backup/restore (the same NVRAM image used by the Backup/Restore buttons in section 3 below), there is a community-maintained Z2M image that ships the ZBOSS-NCP extensions pre-applied:
image: ghcr.io/tostmann/zigbee2mqtt-esp32:latest
The standard koenkk/zigbee2mqtt image works perfectly fine too — you just won't get the raw-NVRAM blob captured into coordinator_backup.json. See ZIGBEE2MQTT.md for details.
Important Notes:
• The firmware is optimized for maximum stability using the ZBOSS protocol.
• If Z2M reports "Port is busy" during startup, ensure no other services (like ModemManager) are blocking the port.
• Zigbee2MQTT is the recommended host stack. Home Assistant ZHA is experimental — see the GitHub README for current status.
For a stick that already has the firmware: connect via USB and click Identify to read the live network state, firmware version, IEEE address and paired-device count. Below, you can then back up the network as a Z2M-compatible coordinator_backup.json, restore from one, or — if the firmware is outdated or the chip is factory-fresh — flash the latest firmware.
Firmware
—
NCP
—
Stack / Protocol
—
IEEE
—
Role
—
Network
—
PAN ID
—
Ext PAN ID
—
Channel
—
Paired devices
—
Frame counter
—
⚠️ Stale snapshots can trigger replay-protection rejection on individual end-devices if their on-air frame counter has advanced past the captured value. Take a fresh backup before any hardware migration.
Chip is rebooting…
Waiting for the ESP32-C6 to re-enumerate over USB.