Can you release the jar file for people to start testing?
Hi, everyone.
This is just a personal reflection and an invitation to those âdeeply concernedâ that openHAB doesnât âfullyâ support Matter yet, or that it is getting too late to jump on the bandwagon, to realize that itâs not the end of the world (or the platform for that matter).
Long story short, the protocol is still not universal and is far from there. Besides, donât expect Apple Home (for example) to be able to manage all the functions of all your Matter-connected devices just because they are connected through Matter. Those platforms might only be able to offer the lowest common denominator.
I just read the whole thread and found this prediction rather interesting:
I bet this was mentioned by most bloggers/journalists during the hype of the protocol launch. Yet we are approaching the end of 2024 and the protocol is still (I believe) in a disappointing state, keeping as a reference all the promises made at the beginning.
It seems that for lots of people, hope and excitement has prevailed over experience. It is always a long and winding road to replace one, even more, a set of well-established standards or protocols.
It will still take longer until the protocol is mature enough for most companies to focus their development efforts on it. Apart from that, I believe it will never be the Utopia that it was painted to be. Companies such as Apple have understood that it takes a deep integration between software and hardware to do great things. The dedicated apps will always be able to do lots more things.
e.g., the Grovee app might always manage the Grovee lights and their scenes better than any other software through Matter, unless that other software has been deeply integrated with the Grovee technology. Without that, it will only be able to manage the standard use cases of most light vendors.
I believe, thatâs one of the strengths of openHAB and the bindings. They are deeply integrated with each vendor and can do for each specific vendor more than just (following the example of the lights) turning the lights on/off and changing the colors.
Finally, I congratulate @digitaldan and everyone else working on the integration.
No pun intended?
Hi,
Do we have jar available for testing? This might help for even more device integration in openhab.
Thanks
Here is the latest build of the matter binding:
Couple of things to note:
- This only supports IP based matter devices. Thread support through Thread boarder routers is planned.
- Only switches (on/off), Dimmers and Color Lights are supported. I have tested with HUE (
currently broken, will fix this week) and Leviton V2 Wifi Switches and Dimmers - There is a known disconnect issue with devices who loose connectivity, this is being fixed in the upstream matter library (matter.js)
Device are added through a matter âPairing Codeâ, this is found in the manufacturerâs app or through a matter QR code like so:
where 3497-011-2332 is the pairing code.
There are two ways to enter a pairing code. First is through a channel on the controller thing, bind this channel to an item, then use the API or a text box in the UI to enter the code to pair. A code can be entered with dashes, or all as one number. When successful the device will show up in the inbox. If not, enable DEBUG logging and see whats up.
The second way if you are on the nightly build of openHAB is to enter it in the configuration in the MainUI of the matter controller. Unfortunately there was a bug in the MainUI that prevented this from working until just recently.
Also note that matter is an ipv6 based protocol, so if you have any fancy vlans or other network topology configurations that would prevent ipv6 traffic, matter in general is not going to be your friend.
I currently have ~20 physical Matter switches, dimmers and color lamps (Hue) that iâm running on my main openHAB system. Except for the disconnect issue mentioned above, its been pretty great.
For the curious, the binding runs a local node process with a small custom built matter.js based websocket server, which the binding uses to send messages and get updates about the matter fabric. While i have not tested this on windows, it should work in a cross platform way on most standard systems.
All the code, README and the embedded node matter.js app can be found at openhab-addons/bundles/org.openhab.binding.matter at matter · digitaldan/openhab-addons · GitHub
Whats next?
- More device support (sensors and thermostats are probably top of list)
- Thread Border gateway support (open thread, google and apple)
- Mobile provisioning using BLE for matter devices in our IOS and Android Apps
- Ability to expose openHAB devices as matter devices (alternative to Homekit binding and Hue Emulation)
- lots and lots of cleanup
Is this part of the Matter spec? Iâve written a Java websocket server at my job
This is absurdly good. How can I support you?
No, the matter specification is a monster of a spec designed by Google, Apple, Amazon, Signify and others (so you know its over engineered) , it uses IPV6 and UDP for communication, custom handshaking, encryption, session resumption, etc⊠There are only 2 viable libraries for communication, the official CHIP SDK, which is really designed for embedded devices and mobile ( POSIX only, so no windows support ) and the matter.js library, which is written in typescript.
The websocket portion is how my custom matter.js based node app and the binding communicate to each other.
Not at the moment. I have work to do over the coming months to clean this up, but i have enough devices to test with in the real world to cover most of the basic use cases. But thanks
Hi @digitaldan ,
I was able to connect new Sonoff M5 matter 3 gang switch. I m able to turn on it from openhab but off command is not working.
When I trun off there is no message in the log. I dont see any error in the logs.
Also, when I turn try to turn on or off from panel nothing happens in openhab item. But I can see matter messages in the log as below
2024-09-14 18:02:37.453 [DEBUG] [nternal.client.MatterWebsocketClient] - onWebSocketText {"type":"event","message":{"type":"attributeChanged","data":{"path":{"nodeId":"8147085112058837835","endpointId":1,"clusterId":6,"attributeId":0,"attributeName":"onOff"},"version":117621767,"value":true}}}
2024-09-14 18:02:37.456 [DEBUG] [nternal.client.MatterWebsocketClient] - attributeChanged message {"path":{"nodeId":"8147085112058837835","endpointId":1,"clusterId":6,"attributeId":0,"attributeName":"onOff"},"version":117621767,"value":true}
2024-09-14 18:02:37.457 [DEBUG] [er.internal.converter.OnOffConverter] - OnEvent: onOff
But when I try to send on off message from node red as beow, it works fine.
Openhab Thing Config
UID: matter:endpoint:a31082d000:8147085112058837835_1
label: Matter Device 37835-1 SONOFF SONOFF SwitchMan Wall Switch
thingTypeUID: matter:endpoint
configuration:
nodeId: "8147085112058837835"
endpointId: 1
bridgeUID: matter:controller:a31082d000
channels:
- id: OnOff_dimmer
channelTypeUID: matter:switch_level
label: Level Control
description: null
configuration: {}
Thanks @tizen for the feedback. I think i know what the issue is, but will check later today. Matter treats Dimmers and Switches somewhat differently then other devices. The spec mandates that Switches advertise they are also dimmers as a convenience for users so if they are part of a group of dimmers, they still will turn on and off if the command to the group is >0 or ==0 . I get it, but i find it strange its part of the spec for devices and not something clients are suppose to take care of. Anyways, I know my handling of this was going to need a little work, so iâll take a look at fixing it. Thanks for testing!
Very cool, thanks!
So, this
would mean we could also get rid of myopenhab to expose our devices to google assistant (and instead expose them to google locally), right?
@digitaldan thank you for putting this together! I have about 175 Insteon devices to replace between home and cabin. While I have a stable and working Insteon setup, itâs getting time to replace the switches and keypadlincs. I have tried lots of different switches zWave based and nothing seems to have the feel of the switchlincs and no one has a keypad like Insteon. For instance, I have 6 keypadlincs in the house that the bottom right button is red and color and is on whenever a door is open in the house. A quick look as I am going to bed and I know all the doors are closed. We also have automatic door locking in the house which I can turn on/off with a keypadlinc. I havenât seen anyone with a device that matches the versatility of the keypadlinc. How has your experience been with the early devices?
Yes, Google, Apple, Alexa and any other Matter client would control the devices locally and would not require a proxy back to your openHAB, which would look like a Matter bridge device to them. I have some of the scaffolding started for this, its a little bit lower priority, but something iâm working on.
Youâre not going to find much yet in the Matter ecosystem, its pretty sparse. I do expect that to change, its just taking a little bit more time to get some of the larger hardware guys like Lutron on board. That being said, Inovelli has a Matter/Thread dimmer / switch that looks very interesting, one of the features is a multi-color notification light on every switch, so you could say have it glow red if a door is open. I actually have a z-wave version of this switch, but have not installed it yet (in my pile of tester stuff).
Looks like they are only doing small batches of it right now, and its thread, so will required a boarder gateway, which i plan on supporting soon (i have one setup, but its not for the faint of heart, there is going to need some work in our mobile clients to make it useable out of the box) .
@digitaldan thank you for the work on this. I think this is a very important binding for openhab, as it enables the connection of devices that donât have a binding, yet support matter.
Tried it today but I am getting an error when I scan for new matter devices. I do have a lot of devices on my network that support matter if that makes any difference.
2024-09-17 09:31:37.468 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'matter:controller:f9c7054ce9' changed from OFFLINE (COMMUNICATION_ERROR): Text message size [136843] exceeds maximum size [65536] to OFFLINE (COMMUNICATION_ERROR): Exit code 143
I can send more of the log if required.
HI @g_g_rich , thanks, i would need to know a whole lot more about your setup, like OH version, what you are running openHAB on, what devices you have that support matter, and yes debug or better, trace logs for the binding.
Keep in mind that myopenhab would still be needed for the openHAB Android/iOS apps and to receive OH notifications (which are getting powered up with actions). You probably know this, so Iâm just adding it for the benefit of other readers who might take âget rid ofâ too literally.
Hi Dan, do you know if this is already fixed in 4.3 milestone 1?
I will try very soon with my Tapo P110M just to give you a feedback. It is my unique Matter device.
Hi Dan.
Running openHAB 4.3.0.M1 Milestone, but did try the latest snapshot as well. Running on a Synology DS920+ using the official docker container. 45 devices, various Ikea lights and blinds.
Attached is the relevant portion of the trace log.
openhab.txt (136.3 KB)
Are you trying to add IKEA Zigbee devices using the DIRIGERA hub? That doesnât work yet.