Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

matterbridge-zigbee2mqtt

Luligu6.8kApache-2.03.0.4TypeScript support: included

Matterbridge zigbee2mqtt plugin

matterbridge, homebridge, homekit, hap, bridge, matter, matter.js, matter-node.js, matterprotocol, google-home, alexa, homeassistant, iot, smarthome, connectedthings, zigbee, zigbee2mqtt

readme

Matterbridge Logo   Matterbridge zigbee2mqtt plugin

npm version npm downloads Docker Version Docker Pulls Node.js CI CodeQL codecov

powered by powered by powered by powered by


Matterbridge zigbee2mqtt is a matterbridge production-level plugin that expose all zigbee2mqtt devices and groups to Matter. Scenes are supported too.

No hub or dedicated hardware needed.

No cloud: all is local and fast.

The connection to the MQTT broker is possible with mqtt (tcp), mqtts (tls), mqtt+unix (Unix socket), ws (web socket) and wss (secure web socket). Self signed certificates and mutual tls are supported too.

Interested in super fast and autonomous automations for zigbee2mqtt? Try this: https://github.com/Luligu/zigbee2mqtt-automations.

If you like this project and find it useful, please consider giving it a star on GitHub and sponsoring it.

Buy me a coffee

Introduction

Matterbridge enables non-Matter devices (Zigbee devices) to integrate with the Matter communication protocol. Bridges allow platforms that use other protocol standards to interoperate with the Matter ecosystem by integrating a Matter server into, or between, existing smart gateways, controllers, and hubs. Many commercial smart gateways provide a built-in Matter bridge that translates Matter to Zigbee or other protocols, making it possible for other ecosystems to communicate with them.

The Matterbridge zigbee2mqtt plugin acts as a Matter Bridge, exposing all Zigbee devices, groups and scenes from Zigbee2MQTT as Matter devices to third-party Matter controllers like Apple Home, Google Home, Amazon Alexa, and SmartThings, all while remaining local on the user's network. This allows fast, secure, and cloud-free control of Zigbee2MQTT-connected Zigbee devices from all major voice assistants as well as other third-party Matter clients.

Prerequisites

Matterbridge

See the guidelines on Matterbridge for more information.

Zigbee2mqtt

See the guidelines on zigbee2mqtt for more information.

How to install the plugin

With the frontend (preferred method)

Just open the frontend, select the matterbridge-zigbee2mqtt plugin and click on install. If you are using Matterbridge with Docker (I suggest you do it), all plugins are already loaded in the container so you just need to select and add it.

Without the frontend

On windows:

cd $HOME\Matterbridge
npm install -g matterbridge-zigbee2mqtt --omit=dev
matterbridge -add matterbridge-zigbee2mqtt

On linux and macOS:

cd ~/Matterbridge
sudo npm install -g matterbridge-zigbee2mqtt --omit=dev
matterbridge -add matterbridge-zigbee2mqtt

Then start Matterbridge

matterbridge

If you want to contribute to the plugin

Clone the plugin

cd ~/Matterbridge
git clone https://github.com/Luligu/matterbridge-zigbee2mqtt
cd matterbridge-zigbee2mqtt
npm ci
npm run dev:link
npm run build
matterbridge -add .

Then start Matterbridge

matterbridge

Config file

All configurations can (and should) be done with the frontend.

If needed you can configure the mqtt host, port, topic, username and password.

If the whiteList is defined only the devices included are exposed to Matter.

If the blackList is defined the devices included will not be exposed to Matter.

If any device creates issues put it in the blackList.

The switchList, lightList and outletList are used if you want to expose the z2m device like switch, light or outlet.

The featureBlackList allows to globally (for all devices) blacklist a z2m feature if you don't want to expose it (e.g. device_temperature).

The deviceFeatureBlackList allows to blacklist a z2m feature for a single device if you don't want to expose it (e.g. temperature for a motion sensor).

The scenesType enable and set how to expose the scenes.

The scenesPrefix enable the prefix with device/grop name to the scene device.

The debug option allows to set the debug mode only for the plugin.

The unregisterOnShutdown option allows to remove from the bridge all z2m devices when you shut down Matterbridge.

These are the default vules:

{
  "name": "matterbridge-zigbee2mqtt",
  "type": "DynamicPlatform",
  "version": "3.0.0",
  "host": "mqtt://localhost",
  "port": 1883,
  "protocolVersion": 5,
  "topic": "zigbee2mqtt",
  "username": "",
  "password": "",
  "clientId": "",
  "ca": "",
  "cert": "",
  "key": "",
  "rejectUnauthorized": true,
  "whiteList": [],
  "blackList": [],
  "switchList": [],
  "lightList": [],
  "outletList": [],
  "featureBlackList": [],
  "deviceFeatureBlackList": {},
  "scenesType": "outlet",
  "scenesPrefix": true,
  "postfix": "",
  "debug": false,
  "unregisterOnShutdown": false
}

If you want to exclude "device_temperature" for all the devices, add to the config

{
  ...
  "featureBlackList": ["device_temperature"]
  ...
}

If you want to exclude "temperature" and "humidity" for the device "My motion sensor" and "device_temperature" only for the device "My climate sensor", add to the config

{
  ...
  "deviceFeatureBlackList": {
    "My motion sensor": ["temperature", "humidity"],
    "My climate sensor": ["device_temperature"]
  }
  ...
}

From the release 1.2.14 of Matterbridge you can edit the config file directly in the frontend. I strongly suggest you use the integrated config editor.

You can edit the config file manually if you prefer:

  • shutdown Matterbridge before: if you use docker send docker stop matterbridge;
  • edit and save the config;
  • start Matterbridge: if you use docker send docker start matterbridge.

On windows:

cd $HOME\.matterbridge
notepad matterbridge-zigbee2mqtt.config.json

On linux:

cd ~/.matterbridge
nano matterbridge-zigbee2mqtt.config.json

Frequently Asked Questions

What is supported?

Out of the box, this plugin supports all possible conversion from zigbee2mqtt to Matter 1.4.

It also supports all clusters in the multi endpoints devices (e.g. DIY devices or the double channel switches/dimmers).

Since the Matter support in the available ecosystems (controllers) is sometimes limited and, when available, only covers Matter 1.2 specifications, some z2m devices cannot be exposed properly or cannot be exposed at all.

Scenes in groups and devices

With release 2.5.0 has been added support for scenes in groups and devices.

In the config select what device type you want to use to expose the command that runs the scene: 'light' | 'outlet' | 'switch' | 'mounted_switch'.

Switch is not supported by Alexa. Mounted Switch is not supported by Apple Home.

The virtual device takes the name of the group or device it belongs to, with added the name of scene. If scenesPrefix is disabled, it takes only the name of the scene. Consider that in Matter the node name is 32 characters long. Consider also that each scene name must by unique if scenesPrefix is disabled.

The state of the virtual device is always reverted to off in a few seconds.

It is possibile to disable the feature globally with featureBlackList (add "scenes" to the list) and on a per device/group base with deviceFeatureBlackList (add "scenes" to the list).

Availability

If the availability is enabled in zigbee2mqtt settings, it is used to set the corresponding device/group reachable or not.

Screenshot

Retain

If the retain option is enabled in zigbee2mqtt settings or device setting, at restart all retained states are updated. I suggest to use this option expecially for battery powered devices.

To enable retain globally, stop zigbee2mqtt, add retain: true to device_options and restart zigbee2mqtt.

device_options:
  retain: true

To enable retain for a single device set it in the device settings.

Screenshot

Unsupported devices

If one of your devices is not supported out of the box, open an issue and we will try to support it if possible.

Conversion strategies between zigbee2MQTT and Matter ecosystems

  • The Coordinator and the dedicated routers (Texas.Instruments and SMLIGHT) are exposed like DoorLock. They change state when permitJoin is changed from z2m and turn on or off permitJoin when they are opened or closed from the controller. If you don't want to see them in the controller app just add them to the blackList.

  • Scene buttons are now fully exposed (all actions). The actions are mapped in groups of 3, with each group on a sub endpoint. This is because the controllers expose event in group of single, double, long press. In the log you will find the mapping schema like this one:

[16:25:14.321] [Smart button] Device Smart button has actions mapped to these switches on sub endpoints:
[16:25:14.321] [Smart button]    controller events      <=> zigbee2mqtt actions
[16:25:14.322] [Smart button] -- Button 1: Single Press <=> single
[16:25:14.323] [Smart button] -- Button 1: Double Press <=> double
[16:25:14.323] [Smart button] -- Button 1: Long Press   <=> hold
[16:25:14.323] [Smart button] -- Button 2: Single Press <=> brightness_move_to_level
[16:25:14.324] [Smart button] -- Button 2: Double Press <=> color_temperature_move
[16:25:14.324] [Smart button] -- Button 2: Long Press   <=> brightness_step_up
[16:25:14.324] [Smart button] -- Button 3: Single Press <=> brightness_step_down
[16:25:14.324] [Smart button] -- Button 3: Double Press <=> on
[16:25:14.325] [Smart button] -- Button 3: Long Press   <=> off

See the screenshot here

Unix socket (Linux only)

Note: Unix domain sockets (mqtt+unix://) are always local and do not support TLS. Security is enforced through filesystem permissions on the socket file.

Create the directory for the Unix socket on the host

# Create the directory for the Unix socket if it doesn't exist
sudo mkdir -p /var/run/mosquitto

# Make sure the mosquitto user can access the socket
sudo chown mosquitto:mosquitto /var/run/mosquitto

# Allow group users (e.g. matterbridge) to access the socket
sudo chmod 750 /var/run/mosquitto

# Add your user to the mosquitto group to access the socket without sudo
sudo usermod -aG mosquitto $USER

# If matterbridge runs like user matterbridge, add the matterbridge user to the mosquitto group to access the socket without sudo
sudo usermod -aG mosquitto matterbridge

Log out and back in after running usermod -aG for the group changes to take effect.

# Check the appropriate permissions for the directory
sudo -u mosquitto ls -ld /var/run/mosquitto
sudo -u mosquitto ls -l /var/run/mosquitto/mqtt.sock

Configure mosquitto to use Unix socket on the host

Add this to your mosquitto.conf

# Unix socket listener
listener 0 /var/run/mosquitto/mqtt.sock
protocol mqtt
allow_anonymous false

Restart mosquitto.

sudo systemctl restart mosquitto

Configure docker to use Unix socket

Create the directory on the host

mkdir -p "$HOME/mosquitto/run"
sudo chown 1883:1883 "$HOME/mosquitto/run"
sudo chmod 770 "$HOME/mosquitto/run"

Add the unix socket volume for each service using it (i.e. mosquitto, zigbee2mqtt and matterbridge).

  volumes:
    - "${HOME}/mosquitto/run:/var/run/mosquitto"

Known issues

For general controller issues check the Matterbridge Known issues section

See the known issues here

changelog

Matterbridge Logo   Matterbridge zigbee2mqtt plugin changelog

All notable changes to this project will be documented in this file.

If you like this project and find it useful, please consider giving it a star on GitHub and sponsoring it.

Buy me a coffee

[3.0.4] - 2026-01-20

Added

  • [matter]: Conformance to Matter 1.4.2 and matterbridge 3.5.x.

Changed

  • [package]: Updated dependencies.
  • [package]: Updated package to automator v. 3.0.0.
  • [package]: Refactored Dev Container to use Matterbridge mDNS reflector.
  • [package]: Requires Matterbridge v.3.5.0.

Buy me a coffee

[3.0.3] - 2025-12-12

Added

  • [mqtt]: Added a guide to setup Unix socket on the host.
  • [mqtt]: Added a guide to setup Unix socket with docker.
  • [mqtt]: Added support for web socket connection: use ws://mqtthost.
  • [mqtt]: Added support for secure web socket connection: use wss://mqtthost.

Changed

Fixed

Buy me a coffee

[3.0.2] - 2025-12-01

Added

Changed

  • [package]: Updated dependencies.
  • [package]: Bumped package to automator v.2.1.0.
  • [package]: Updated to the current Matterbridge signatures.
  • [package]: Requires Matterbridge v.3.4.0.
  • [package]: Updated to the Matterbridge Jest module.
  • [tvoc]: Removed voc_index from the converter. (https://github.com/Luligu/matterbridge-zigbee2mqtt/issues/129)

Fixed

  • [cover]: Fixed wrong update with motor reversed. Zigbee2MQTT cover: 0 = fully closed, 100 = fully open (with invert_cover = false). Use invert_cover configuration on zigbee2mqtt if your cover has inverted position.

Buy me a coffee

[3.0.1] - 2025-11-14

Changed

  • [package]: Updated dependencies.
  • [package]: Bumped package to automator v.2.0.12.
  • [package]: Updated to the current Matterbridge signatures.
  • [jest]: Updated jestHelpers to v.1.0.12.

Buy me a coffee

[3.0.0] - 2025-11-08

Added

Changed

  • [package]: Updated dependencies.
  • [package]: Bumped platform to v.3.0.0.
  • [package]: Bumped entity to v.3.3.0.
  • [package]: Bumped zigbee to v.3.0.0.
  • [package]: Bumped package to automator v.2.0.11.
  • [jest]: Bumped jestHelpers to v.1.0.11.
  • [package]: Require matterbridge v.3.3.0.
  • [package]: Added default config.
  • [package]: Added typed ZigbeePlatformConfig.
  • [platform]: Updated to new signature PlatformMatterbridge.
  • [workflows]: Improved speed on Node CI.
  • [workflows]: Use shallow clones and --no-fund --no-audit for faster builds.
  • [devcontainer]: Added the plugin name to the container.
  • [devcontainer]: Improved performance of first build with shallow clone.

Fixed

Buy me a coffee

[2.8.1] - 2025-10-02

Automations and scenes

The package zigbee2mqtt-automations has been updated to version 3.0.0 that includes also scenes.

Changed

  • [package]: Updated dependencies.
  • [package]: Updated package to Automator v. 2.0.7.
  • [workflows]: Ignore any .md in build.yaml.
  • [workflows]: Ignore any .md in codeql.yaml.
  • [workflows]: Ignore any .md in codecov.yaml.
  • [jest]: Updated jestHelpers to v. 1.0.6.

Fixed

  • [platform]: Fixed command handlers execution when the controllers send scenes.

Buy me a coffee

[2.8.0] - 2025-09-14

Breaking changes

Some color conversion have been optimized to improve performnces.

It is possible that existing scenes on the controllers now render the color in a different nuance.

If this is the case, update the color attributes in the controller scenes.

Automations and scenes

The package zigbee2mqtt-automations has been updated to version 3.0.0 that includes also scenes.

Added

  • [adaptiveLighting]: Added support for Apple Home Adaptive Lighting. See https://github.com/Luligu/matterbridge/discussions/390.
  • [platform]: Optimized command handlers execution and perfomance when the controllers send huge light scenes.
  • [devcontainer]: Added the plugin name to the container.
  • [devcontainer]: Improved performance of first build with shallow clone.
  • [workflows]: The publish workflow now triggers automatically the docker build of matterbridge.
  • [jest]: Added jest helper module v. 1.0.6.

Changed

  • [package]: Updated dependencies.
  • [package]: Updated package to Automator v. 2.0.6.
  • [workflows]: Ignore any .md anywhere.
  • [workflows]: Improved speed on Node CI.

Buy me a coffee

[2.7.0] - 2025-07-14

Added

  • [entity]: Added the ability to cache commands for a single light device or group. They will be executed in once. This helps to execute scenes from the controller in large setups.
  • [composed]: Added the ability to send commands on child enpoint also for ColorControl cluster.
  • [startup]: Changed the timeout for the connection to the mqtt broker to 60 seconds. This resolve the race condition when docker compose (or a host reboot) starts mosquitto, zigbee2mqtt and matterbridge in the same moment.
  • [jest]: Added a few more test. Coverage will improve in the next releases.

Changed

  • [package]: Updated dependencies.
  • [package]: Updated package to Automator v. 2.0.2.
  • [DevContainer]: Added support for the Matterbridge Plugin Dev Container with optimized named volumes for matterbridge and node_modules.
  • [GitHub]: Added GitHub issue templates for bug reports and feature requests.
  • [ESLint]: Refactored the flat config.
  • [ESLint]: Added the plugins eslint-plugin-promise, eslint-plugin-jsdoc, and @vitest/eslint-plugin.
  • [Jest]: Refactored the flat config.
  • [Vitest]: Added Vitest for TypeScript project testing. It will replace Jest, which does not work correctly with ESM module mocks.
  • [JSDoc]: Added missing JSDoc comments, including @param and @returns tags.
  • [CodeQL]: Added CodeQL badge in the readme.
  • [Codecov]: Added Codecov badge in the readme.

Buy me a coffee

[2.6.0] - 2025-06-07

Added

  • [npm]: The dev of matterbridge-zigbee2mqtt is published with tag dev on npm each day at 00:00 UTC if there is a new commit.
  • [mqtt]: Added MQTT SSL/TLS server authentication. Prefix host with mqtts:// and provide the ca certificate for self-signed server certificates.
  • [mqtt]: Added MQTT SSL/TLS client authentication. Prefix host with mqtts:// and provide the client certificate and key. Provide also the ca certificate for self-signed client certificates.

Changed

  • [package]: Updated package.
  • [package]: Updated dependencies.

Fixed

  • [subscribe]: Removed async from handlers.

Buy me a coffee

[2.5.0] - 2025-05-26

Added

  • [scenes]: Added scenes support for groups and devices. See the README.md for explanations.
  • [waterLeak]: Added waterLeakDetector device type for zigbee property "water_leak". Default to false (i.e. no alarm) since is not possible to get the property.
  • [rainSensor]: Added rainSensor device type for zigbee property "rain". Default to false (i.e. no alarm) since is not possible to get the property.
  • [smokeSensor]: Added smokeSensor device type for zigbee property "smoke". Default to false (i.e. no alarm) since is not possible to get the property.
  • [colorTemp]: Added conversion from color temperature to rgb for the rgb devices that don't support color_temp.
  • [battery]: Set batChargeLevel to warning if battery is less than 40% and the device doesn't expose battery_low.
  • [battery]: Set batChargeLevel to critical if battery is less than 20% and the device doesn't expose battery_low.
  • [retain]: Send retained mqtt states at startup if z2m has retain enabled. See the README.md for explanations.
  • [logger]: Added onChangeLoggerLevel() to the platform.

Changed

  • [package]: Updated package.
  • [package]: Updated dependencies.
  • [plugin]: Requires Matterbridge 3.0.4.
  • [config]: As anticipated in the previous release, the parameter postfixHostname has been removed. Use postfix if needed.
  • [colorRgb]: Changed the default device type from colorTemperatureLight to extendedColorLight to solve the SmartThings issue with colors.
  • [colorTemp]: The min and max mired values for color_temp are now set in the cluster.

Fixed

  • [logger]: Fixed logger not always taking the correct value from the frontend.
  • [issue104]: Solved wrong mode AUTO in system_mode for HEAT only devices.
  • [issue107]: Solved motor_direction reversed.

Buy me a coffee

[2.4.7] - 2025-03-19

Added

  • [select]: Added the possibility to whitelist or blacklist with the device serial (i.e. 0x187a3efffe357548) or the group serial (i.e. group-1).

Changed

  • [package]: Updated package.
  • [package]: Updated dependencies.
  • [plugin]: Requires Matterbridge 2.2.5.
  • [config]: Added parameter postfix (3 characters max) to be consistent with the other plugins. This parameter works with the Devices panel in the home page.
  • [config]: The old postfixHostname will be removed in the next release. If you were using postfixHostname, please change it with postfix, the controllers will likely remove and recreate all the devices so make a backup of configurations (i.e. room assignements) and automations on the controller!

Buy me a coffee

[2.4.6] - 2025-02-20

Changed

  • [package]: Updated package.
  • [package]: Updated dependencies.

Fixed

Buy me a coffee

[2.4.5] - 2025-02-05

Added

Changed

  • [package]: Updated dependencies.

Fixed

Buy me a coffee

[2.4.4] - 2025-02-02

Changed

  • [plugin]: Requires Matterbridge 2.1.0.
  • [package]: Updated package.
  • [package]: Updated dependencies.

Buy me a coffee

[2.4.3] - 2025-01-20

Changed

  • [plugin]: Requires Matterbridge 1.7.3.
  • [package]: Updated dependencies.

Buy me a coffee

[2.4.2] - 2025-01-11

Fixed

  • [endpoint]: Fixed blacklist of child endpoints.

Buy me a coffee

[2.4.1] - 2025-01-11

Added

  • [selectEntity]: Added selectEntity to get the features names from a list in the config editor.
  • [configUrl]: Added zigbeeFrontend in the config to prefix configUrl to get a link to the zigbee2mqtt frontend from the Matterbridge frontend Devices page. This allows to open the device configuration from the frontend.

Changed

  • [plugin]: Requires Matterbridge 1.7.2.
  • [package]: Updated dependencies.

Buy me a coffee

[2.4.0] - 2025-01-08

Added

  • [selectDevice]: Added selectDevice to get the device names from a list in the config editor.

Changed

Buy me a coffee

[2.3.2] - 2024-12-24

Changed

  • [package]: Updated package.
  • [package]: Updated dependencies.
  • [plugin]: Use platform white and black list.
  • [platform]: Use platform endpoint number check.

Buy me a coffee

[2.3.1] - 2024-12-12

Added

  • [colorControl] Update ColorControl cluster
  • [levelControl] Update currentLevel to minLevel

Changed

  • [package]: Updated dependencies.
  • [plugin]: Requires Matterbridge 1.6.6.

Fixed

Buy me a coffee

[2.3.0] - 2024-12-04

Added

  • [matterbridge]: Verified to work with Matterbridge edge (matter.js new API).
  • [covers]: Add position movement updates to the controller.
  • [covers]: Fix group cover at controller.
  • [zigbeeEntity]: Add create async to ZigbeeDevice and ZigbeeGroup.

Changed

  • [package]: Updated dependencies.
  • [plugin]: Requires Matterbridge 1.6.5.

Fixed

Buy me a coffee

[2.2.2] - 2024-11-26

Added

  • [thermostat]: Added min_temperature_limit and max_temperature_limit converter to thermostats.
  • [thermostat]: Added min_heat_setpoint_limit and max_heat_setpoint_limit converter to thermostats.
  • [thermostat]: Added configuration for heat only and cool only thermostats.
  • [matter]: Added tagList to child endpoints.

Changed

  • [mqtt]: Username and password are passed like undefined unless set.
  • [readme]: Updated install script.
  • [readme]: Updated build script.
  • [package]: Updated dependencies.
  • [plugin]: Requires Matterbridge 1.6.2.

Fixed

  • [thermostat]: Fixed the case when instead of current_heating_setpoint the property is occupied_heating_setpoint.
  • [thermostat]: Fixed the case when instead of current_cooling_setpoint the property is occupied_cooling_setpoint.

Buy me a coffee

[2.2.1] - 2024-10-11

Fixed

  • [entity]: Fixed propertyMap.
  • [entity]: Fixed energy kWh.
  • [entity]: Fixed log.

Buy me a coffee

[2.2.0] - 2024-10-10

Added

  • [groups]: Refactor the group to support also covers.

Changed

  • [matterbridge]: Removed EveHistory energy measurement in favor of Matter 1.3 ElectricalPowerMeasurement and ElectricalEnergyMeasurement (supported by Home Assistant from version 2024.10).
  • [matterbridge]: Updated to new child endpoints MatterbridgeDevice methods.
  • [entity]: Code optimization.
  • [package]: Updated dependencies.

Buy me a coffee

[2.1.19] - 2024-10-01

Changed

  • [package]: Upgrade to new workflows.
  • [package]: Updated dependencies.

Buy me a coffee

[2.1.17] - 2024-09-21

Changed

  • [matterbridge]: Removed Matterbridge deprecated method to get the child endpoints.
  • [package]: Updated dependencies.
  • [plugin]: Moved trigger code to matterbridge triggerSwitchEvent.

Added

  • [matterbridge]: Added a check of the current Matterbridge version (required v1.5.5).
  • [plugin]: Added configuration of ColorControl cluster features (HS, XY, CT).
  • [plugin]: Removed the superset device types.

Buy me a coffee

[2.1.16] - 2024-09-04

Changed

  • [package]: Final update to matter.js 0.10.0.
  • [package]: Updated dependencies.

Buy me a coffee

[2.1.15] - 2024-09-03

Changed

  • [package]: Updated Thermostat cluster to matter.js 0.10.0.
  • [package]: Updated dependencies.

Buy me a coffee

[2.1.14] - 2024-08-29

Added

  • [config]: Added parameter postfixHostname (default true). If you change it, the controllers will remove and recreate all the devices! (https://github.com/L2jLiga)

Changed

  • [package]: Updated dependencies.
  • [package]: Updated imports.

Buy me a coffee

[2.1.13] - 2024-08-22

Changed

  • [package]: Updated dependencies.

Fixed

  • [package]: Fixed MQTT protocol.

Buy me a coffee

[2.1.12] - 2024-08-21

Changed

  • [schema]: Changed schema file to add MQTT protocol.
  • [schema]: Changed descriptions in schema for easier setup.
  • [package]: Updated dependencies.

Buy me a coffee

[2.1.11] - 2024-08-20

Changed

  • [package]: Updated dependencies.
  • [package]: Update mqtt to 5.10.0.

Fixed

  • [package]: Fixed dependencies.

Buy me a coffee

[2.1.10] - 2024-08-09

Changed

  • [package]: Updated dependencies.
  • [package]: Update mqtt to 5.9.1.

Fixed

  • [z2m]: Fixed issue: 'Only supported EndpointInterface implementation is Endpoint'.

Buy me a coffee

[2.1.9] - 2024-07-28

Changed

  • [package]: Updated dependencies.
  • [logger]: Update node-ansi-logger to 2.0.6.
  • [storage]: Update node-persist-manager to 1.0.8.

Buy me a coffee

[2.1.8] - 2024-07-23

Changed

  • [z2m]: Updated matterbridge imports.

Buy me a coffee

[2.1.7] - 2024-07-11

Fixed

  • [z2m]: Fixed trigger when the endpoint is undefined.

Buy me a coffee

[2.1.6] - 2024-07-10

Changed

  • [package]: Updated dependencies.
  • [imports]: Updated matterbridge imports.

Fixed

  • [z2m]: Fixed the detection of color_temp only lights.

Buy me a coffee

[2.1.5] - 2024-07-01

Changed

  • [z2m]: Added transition to ColorControl if the zigbee device supports it and the controller sends it. You can disable this globally adding transition to the featureBlackList or only for the single device adding transition to the deviceFeatureBlackList. (Thanks Stefan Schweiger).

Fixed

  • [zigbee]: Fixed WindowCovering.targetPositionLiftPercent100ths update (Thanks Nitay Ben-Zvi).

Buy me a coffee

[2.1.4] - 2024-06-30

Changed

  • [dependencies]: Update dependencies.
  • [dependencies]: Update eslint to 9.6.0.

Buy me a coffee

[2.1.3] - 2024-06-23

Added

  • [zigbee]: Added new properties: co - CarbonMonoxideConcentrationMeasurement, co2 - CarbonDioxideConcentrationMeasurement, formaldehyd - FormaldehydeConcentrationMeasurement, pm1 - Pm1ConcentrationMeasurement, pm25 - Pm25ConcentrationMeasurement, pm10 - Pm10ConcentrationMeasurement

Changed

  • [bridge/info]: Log error when advanced.output is set to 'attribute'.

Fixed

  • [bridge/info]: Fixed the issue when advanced.output is set 'attribute_and_json'. (Thanks copystring).
  • [bridge/info]: Fixed the issue when include_device_information is set to true. (Thanks copystring).

Buy me a coffee

[2.1.2] - 2024-06-21

Added

  • [dependencies]: Update dependencies.
  • [start]: Refactor start sequence.

Buy me a coffee

[2.1.1] - 2024-06-20

Added

  • [dependencies]: Update dependencies (mqtt to 5.7.2).
  • [schema]: Added info log when the plugin starts to register devices and groups. Added empty bridge/config and bridge/definitions handlers.

Buy me a coffee

[2.1.0] - 2024-06-19

Added

  • [dependencies]: Update dependencies.
  • [schema]: Added schema to the root directory of the plugin.
  • [z2m]: Added soil_moisture property as humidity sensor.
  • [z2m]: Added transition if the zigbee device supports it and the controller sends it. You can disable this globally adding transition to the featureBlackList or only for the single device adding transition to the deviceFeatureBlackList. (Thanks Stefan Schweiger).

Changed

  • [matter]: Removed PowerSourceConfiguration cluster that is deprecated in Matter 1.3.

Fixed

  • [schema]: Username and password are no more required fields (Thanks Stefan Schweiger).
  • [LevelControl]: Fixed the commandHandler for LevelControl in child endpoint (Thanks jpadie).
  • [availability]: Fixed the issue that caused the availability event sent before the start to be ignored.

Buy me a coffee

[2.0.17] - 2024-06-16

Fixed

  • [LevelControl]: Fixed the issue that caused LevelControl missing in child endpoint (Thanks jpadie).

Added

  • [dependencies]: Update dependencies

Buy me a coffee

[2.0.16] - 2024-06-06

Added

  • [dependencies]: Update dependencies
  • [matterbridge]: Added bridgeOnline to the start checks.

Buy me a coffee

[2.0.15] - 2024-06-01

Added

  • [dependencies]: Update dependencies
  • [matterbridge]: Adapted the code to the new start mode of Matterbridge.

Buy me a coffee

[2.0.14] - 2024-05-09

Added

  • [mqtt]: Added Keekalive to MQTT.

Buy me a coffee

[2.0.13] - 2024-05-02

Added

  • [groups]: Added ColorControl.

Fixed

  • [payload]: Fixed the case when z2m sends empty action in the payload.

Buy me a coffee

[2.0.12] - 2024-04-30

Added

  • [action]: Added support for devices with more then 3 events/actions. All SwitchCluster actions are mapped in groups of 3 on sub endpoints. The mapping schema is shown in log.
  • [mqtt]: Added handles for group_add, group_remove, group_rename, group_add_member and group_remove_member

Buy me a coffee

[2.0.11] - 2024-04-26

Added

  • [mqtt]: Added handles for device_joined, device_announce, device_leave, device_remove, device_interview, device_rename.
  • [exposes]: Added deviceFeatureBlackList to the config to exclude a feature on a device level (See the config section for guidelines on how to use it).
  • [mqtt]: Incoming messages are filtered by featureBlackList and deviceFeatureBlackList (if only blacklisted features change, the message is not processed). If present, the features included in featureBlackList and deviceFeatureBlackList are also removed from the payload.
  • [routers] Added the SMLIGHT routers (with router firmware) to the router list. They are exposed like DoorLock so it is possible, like for the Coordinator and the Texas instruments router, to ask Siri to turn on/off permit join.

[2.0.10] - 2024-04-22

Added

  • [z2m]: Added a check for not changed mqtt messages.
  • [extension]: Finalized implementation of zigbee2MQTT internal extension v. 1.0.0.

Changed

  • [z2m]: Changed vendorName and productName with the values from device definition if present.

[2.0.9] - 2024-04-19

Added

  • [extension]: Implementation of zigbee2MQTT internal extension.

[2.0.8] - 2024-04-16

Added

  • [extension]: Started implementation of zigbee2MQTT internal extension.
  • [presence]: Added feature presence (https://github.com/nitaybz).
  • [FlowMeasurement]: Added FlowMeasurement cluster.

[2.0.7] - 2024-04-11

Added

  • [config.featureBlackList] z2m features with name in the list will be ignored (e.g. device_temperature) (https://github.com/nitaybz).
  • [config.switchList] Device with friendly name in the list will be exposed like switch.
  • [config.lightList] Device with friendly name in the list will be exposed like light.
  • [config.outletList] Devices with friendly name in the list will be exposed like outlet.

Fixed

[2.0.6] - 2024-04-09

Added

  • [electrical] Added support for voltage current power energy (right now they show up only in Home Assistant)
  • [multiendpoint]: Added the support for electrical measurements and temperature (thanks https://github.com/khaidakin).

Changed

  • [discovery]: Refactored the zigbee2mqtt discovery: now multi endpoints devices (mostly DIY devices) are supported.

[2.0.5] - 2024-04-01

Added

  • [Coordinator and routers]: Coordinator and TexasInstruments pure routers are exposed like DoorLock. They change state when permitJoin is changed and turn on or off the permitJoin when they are opened or closed from the controller.
  • [thermostat]: Added the Thermostat cluster (thanks https://github.com/khaidakin).
  • [multiendpoint]: Added the support for OnOff cluster with child enpoints (thanks https://github.com/khaidakin).