Skip to content

Zigbee2MQTT

Web control panel for your Zigbee network — pair, rename, map, and update devices · https://z2m.fmm.house

What it's for

Zigbee2MQTT bridges your Zigbee devices (sensors, bulbs, switches, buttons) to MQTT, and this web UI is where you manage them. Use it to pair new devices, rename or remove them, see how the mesh is wired together, poke devices to test them, and push OTA firmware updates. Anything that speaks Zigbee in the house shows up here.

Getting in

  • Open: https://z2m.fmm.house — on the home Wi-Fi/LAN, or from anywhere with Tailscale connected.
  • Sign in: admin tool. If a frontend auth token is configured you'll be prompted for it; otherwise the UI opens straight to the device list.

How to use it

Pair a new device

  1. Click Permit join (All) in the top bar — this opens the network to new devices for a countdown window.
  2. Put the device into pairing mode (usually hold its button, or power-cycle it a few times — check the device's own instructions).
  3. Watch it appear in Devices; the log at the bottom shows the interview progress.
  4. Turn Permit join back off once it's added so nothing else joins by accident.

Tip

Pair devices roughly where they'll live, or near a mains-powered router device — a weak first join makes for a flaky device later.

Rename and remove

  • Rename: open the device, use the pencil/rename control, and give it a clear friendly name. That name is what Home Assistant and MQTT topics use, so pick something stable.
  • Remove: open the device, then Remove device. Use Force remove only if the device is already gone/unreachable — a normal remove tries to tell the device to leave the network cleanly.

The network map

Open Map to see the mesh: coordinator, routers (mains-powered), and end devices, with link lines showing who routes through whom. It's the fastest way to spot a device on a weak link or an area with no nearby router. The map can take a moment to build — let it finish drawing.

Bind and group (briefly)

  • Groups let you address several devices at once (e.g. one command to a room of bulbs). Create a group, add members, then control the group.
  • Binding links devices directly (e.g. a remote bound to a bulb) so they talk without round-tripping through the hub — handy for instant, hub-independent control. Both live on a device's Bind / Groups tabs.

View and control device state

Open any device and use the Exposes tab to see live state (on/off, brightness, temperature, battery, etc.) and to control it directly — toggle a switch, set a level. The State / dev-console views show the raw values if you need to debug.

OTA firmware updates

The OTA tab lists devices with available firmware. Update one at a time and leave it undisturbed until it finishes.

Warning

OTA updates are slow and battery-hungry. Only update a device you can leave alone, and don't yank power mid-update — an interrupted flash can brick the device.

Tips

  • Permit join off when you're done. Leaving the network open invites accidental or unwanted joins.
  • Friendly names are contracts. Renaming a device changes its MQTT topic, which can break automations that reference the old name — rename early, before you build on it.
  • A device showing "unavailable" is often a routing problem, not a dead device — check the Map for a nearby router before replacing batteries or re-pairing.