What it exposes
| Feature | Property | Values | Control |
|---|---|---|---|
| Light | state, brightness, color_temp, color_hs | on / off, brightness, colour temperature, colour (hue/sat) | settable |
| Scene | scene | ice_land_blue, glacier_express, sea_of_clouds, fireworks_at_sea, firefly_night, grass_land, northern_lights, late_autumn … | settable |
| Music mode | music_mode | rock, jazz, classic, rolling, energy, spectrum | settable |
| Music sensitivity | music_sensitivity | 1…100 | settable |
| Countdown timer | countdown | s · 0…43200 | settable |
| Do not disturb | do_not_disturb | — | settable |
| Light bead sequence | light_bead_sequence | RGB, RBG, GRB, GBR, BRG, BGR, RGBW, RBGW … | settable |
| Chip type | chip_type | WS2801, LPD6803, LPD8803, WS2811, TM1814B, TM1934A, SK6812, SK9822 … | settable |
| Lightpixel number set | lightpixel_number_set | 10…1000 | settable |
| Work mode | work_mode | white, colour, scene, music | settable |
MQTT: state and commands
Zigbee2MQTT publishes the device state to zigbee2mqtt/my_device (my_device is the name you give the device). An example message:
{
"state": "ON",
"brightness": 180,
"color_temp": 370,
"scene": "ice_land_blue",
"music_mode": "rock",
"music_sensitivity": 51,
"countdown": 21600,
"do_not_disturb": false,
"light_bead_sequence": "RGB",
"chip_type": "WS2801",
"lightpixel_number_set": 505,
"work_mode": "white",
"linkquality": 120
}
Send commands to zigbee2mqtt/my_device/set:
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"state":"ON","brightness":180,"color_temp":370}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"color":{"hex":"#ff8800"}}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"state":"OFF","transition":2}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"scene":"glacier_express"}'
mosquitto_pub -t zigbee2mqtt/my_device/set -m '{"music_mode":"jazz"}'
Watch the topics live from the browser: MQTT client.
Home Assistant automation example
Zigbee2MQTT creates Home Assistant entities from the device name. If it is called my_device, an automation in automations.yaml can look like this:
- alias: "Light at sunset"
mode: single
triggers:
- trigger: sun
event: sunset
offset: "-00:15:00"
actions:
- action: light.turn_on
target:
entity_id: light.my_device
data:
brightness_pct: 70
color_temp_kelvin: 2700
Check the YAML: YAML checker.
How to pair it
- In Zigbee2MQTT click Permit join.
- Put the device in pairing mode: usually a long press of the reset button (5–10 s) until the LED blinks; bulbs: switch the power off and on 5–6 times.
- Keep the device close to the coordinator or a router while pairing.
- Give it a clear name: MQTT topics and Home Assistant entities are built from it.
Exact procedure and model notes: the device page in the Zigbee2MQTT docs. No coordinator yet: coordinator picker.