Zigbee Tunes is a small Home Assistant app that sits between Zigbee2MQTT and Home Assistant on the MQTT Discovery channel. It intercepts the discovery payloads Z2M publishes, applies transformations you define — clamp color-temperature ranges, cap brightness, rename devices, assign areas — and republishes them. Home Assistant ends up with a consistent, harmonized view of a mixed-brand fleet, while your physical Zigbee devices are never touched.
Why
Z2M advertises each device with its native capabilities. When your fleet mixes brands with different ranges (Innr 2200–5000 K, IKEA 2200–4000 K, generic WW/CW 2000–6500 K…), HA shows inconsistent color-temperature sliders and grouped control gets painful. Zigbee Tunes shapes the discovery-level view HA receives — per device or in bulk, from a web UI. It's a one-way normalizer: it rewrites what HA sees, it does not control your devices and is not an automation engine.
Features
- Four transformers — color-temp range, brightness cap, suggested area, safe device rename (entity_ids stay intact)
- Bulk editing with a live "safe intersection" hint for color temperature
- Customizations ledger with one-click undo
- Dashboard — MQTT / Z2M / HA status, uptime, fleet breakdown
- English / French, dark / light, responsive, keyboard-accessible
More screenshots (bulk editing, dashboard) are in the repo.
Install (HA OS / Supervised)
Add this repository in Settings → Apps → ⋮ → Repositories — paste https://github.com/Noodlex/zigbee-tunes — then install Zigbee Tunes. Point Z2M at a separate discovery topic (homeassistant.discovery_topic: z2m_discovery), restart Z2M, and start Zigbee Tunes.
Source, docs and MIT license on GitHub.
I built this as a personal project — I couldn't find anything that did it, so it fills that gap in Home Assistant. Independent community project, not affiliated with Zigbee, Zigbee2MQTT, or Home Assistant. Built collaboratively with Claude. Feedback very welcome! ![]()
