Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
11.55k stars 1.63k forks source link

Support/Contributors wanted: Matter.js Library to add Matter support #17167

Open Apollon77 opened 1 year ago

Apollon77 commented 1 year ago

Is your feature request related to a problem? Please describe

Hello,

I'm one of the developers that currently work on a JavaScript/Typescript implementation of the Matter protocol with the goal to have this as basis to offer to expose devices and also controller functionality. The project is also located under the roof of the official Matter organization: https://github.com/project-chip/matter.js As I hear this is highly interesting for this project to to expose the zigbee devices maybe as a bridge too or such :-)

We are in the process to finalize anything and are also searching for contributors. There are several things, as easiest implementing the "Clusters" (Matter calls "device features" like onoff/color(level-control that way) or even other topics and functionality.

So if you like to support there to also support zigbee2mqtt I would be happy to see you over there :-)

Ingo

sjorge commented 1 year ago

I think at some point Koen at least briefly looked at this https://github.com/Koenkk/zigbee2mqtt/tree/matter

Something like this would probably be something that can be approached similarly to the homeassistent integration currently.

Apollon77 commented 1 year ago

:-) Yes and we want to "prepare the future " to do it better and more easy.

Koenkk commented 1 year ago

I've pinned this issue for more exposure. It would be great if Matter.js allowed Zigbee2MQTT to acts as a bridge between Matters <-> Zigbee! 😄

epower53 commented 1 year ago

What I'd love is a Matter <-> MQTT bridge. I don't have the coding chops to help with something like this, but it sure would integrate nicely with many setups. Choose your automation engine from there (HA, Node-Red, etc)... all would still use MQTT for device communication, allowing mixed z-wave/zigbee/Matter environments with little effort from the perspective of the casual user (like me).

Apollon77 commented 1 year ago

The challenge there might be that Matter works very much with "commands" and not with directly changing properties. there are easy command like on/off/toggle where you can directly tmap the outcome to properties, but also commands like "dim the ligth within X seconds and Effect Y to level Z" ... so yes you could simply send this command to MQTT ... also fine ... Other commands might need to return data ... then it could become more interesting.

So yes, can all be possible ... the devil is in the details (like always) ;-)

epower53 commented 1 year ago

Other commands might need to return data ... then it could become more interesting.

Interesting - I was unaware of this difference. So, devices are not required to send an update with their final state after they complete command execution? This would be surprising...

Apollon77 commented 1 year ago

These are separated things. You can subscribe to attribute changes and there are also events that could be sent out by the device. So yes ideally a command end in 1-n "attribute changes" and potentially events

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

Apollon77 commented 1 year ago

no stale

sjorge commented 1 year ago

The newly created https://github.com/Koenkk/zigbee2mqtt-user-extensions is probably a good home to house a WIP matter extension.

Hedda commented 1 month ago

Adding links to feature request/suggestion discussion and related matterbridge-zigbee2mqtt project by Luligu for reference:

The newly created https://github.com/Koenkk/zigbee2mqtt-user-extensions is probably a good home to house a WIP matter extension.

@Luligu does your plugin work as a Zigbee2MQTT user extensions and if so should it maybe be linked from that repo too?

Luligu commented 1 month ago

Hi, I already developed a matterbridge internal extension fully working and tested, as I have been requested by Koenkk. It has not been merged cause z2m requires 100 coverage test in a dev! So I let it go... If there is new interest we can speak about it... the matterbridge internal code is marked as deprecated but still present. Somewhere I also saved the internal extension code.