Incorporating Matter

As we are making progress with running thing actions (core part is finished and in review, remains Main UI part), that would be great if you could plan adding a thing action to generate a new pairing code for pairing with external matter controllers. This action has no parameter and returns a string (the pairing code). I am not sure if it should be added to the controller thing or the device (endpoint) thing ? All this should make this feature more intuitive in Main UI.

PS: until the UI stuff is enhanced and released, we could test your new thing action using API explorer

Dan, regarding the pairing code that is available as config parameter and as channel on the controller thing, I would suggest to update the parameter/channel description to mention them as deprecated starting with 4.3 milestone 2, in case of course you don’t want to simply remove them now due to users running OH 4.2.x or 4.3 milestone 1.
All users with 4.3 milestone 2 should now directly use the discovery scan with the new available field to fill the pairing code.

1 Like

Interesting article about Thread issues. The conclusion is that we should at least wait for the middle of 2025 (or end of 2025) for improvements in TBR (better interoperability to share the same network).

And note that the new Google TV Streamer is also a TBR.

Edit my last message as I can’t create a new message: Dan, after upgrading to Milestone 2, I discovered that my switch is now OFFLINE. My way to upgrade is not standard, I am backuping some files, install the new version in an empty folder and restore my saved files. I assume the matter binding is storing some data in non usual folder and I have to backup and restore them. Can you confirm and inform where are these important data ?
Edit2: I find a json file in folder userdata/matter. I also find the folder userdata/cache/org.openhab.binding.matter

1 Like

take a look at userdata/matter there should be a json file with the name of your controller thing. This contains all the matter fabric data and connection information to devices on the matter fabric.

I got it. So I just have to backup and restore this file ?

For this time, I will have to re-pair my device. I will wait for your new version to use and try the new discovery scan feature :wink:

I have a new version of the binding ready, see links at the end of this post for a expanded README which strongly recommend reading. There’s lots in there about matter and thread in general. If all goes well i will move this to the market place soon for more wide spread testing as a step to getting this into an official binding. See below for new features and changes.

Please use this with the latest 4.3 milestone build being released today/tomorrow (Sunday Oct 6th)

IMPORTANT PLEASE READ IF UPGRADING!

Channel names have changed. I would strongly recommend removing existing endpoints things, and adding them again. You will not need to actually pair them, just hit “scan” again when selecting the matter binding from the inbox. The controller does not need to be removed (but if you do, be sure to name it the same thing when adding, so it picks up its old fabric config file)

BE SURE TO DISABLE “Decommission Nodes On Delete” on the controller and save before deleting endpoint things! Otherwise you will need to go through the pairing process when deleting endpoint things.

New additions include updated controller logic, new device type logic, and a pretty good list of supported devices:

Device Type Description Associated Clusters
OnOffLight A simple light device that can be turned on or off On/Off
OnOffLightSwitch A switch to control On/Off lights On/Off
OnOffPlugInUnit A plug-in unit that can be turned on or off On/Off
DimmableLight A light device that supports dimming in addition to on/off On/Off, Level Control
DimmablePlugInUnit A plug-in unit that supports dimming and on/off control On/Off, Level Control
DimmerSwitch A switch to control dimmable lights On/Off, Level Control
ColorDimmerSwitch A switch to control both dimming and color of lights On/Off, Level Control, Color Control
ExtendedColorLight A light that supports extended color control (e.g., RGB) and dimming On/Off, Level Control, Color Control
ColorTemperatureLight A light that supports color temperature control and dimming On/Off, Level Control, Color Control (Temperature)
Thermostat A device that controls temperature in an environment Thermostat, Temperature Measurement
WindowCovering A device that controls window coverings such as blinds or curtains Window Covering

I have also removed the pair node configuration from the controller in favor of our new discovery mechanism (thanks @Lolodomo ! ). I did keep the pair code channel as a backup for now (might be removed in the future).

5 Likes

Yeah, i assumed most things in here (uuid, secret, zwave config, etc…) are persisted on upgrades

In that case, if you delete the thing and “Decommission Nodes on Delete” is true, it will remove it from the fabric, and the existing pairing code on the physical device should work again (as long as its in pairing mode). Or you can hard reset it. This is assuming its on the device and not generated by an app.

I have in fact the JSON in my backup :wink:
The device is operational again.

1 Like

So i just spent my entire Saturday, 10+ hours? Getting an Open Thread Border Router working on my fancy Unifi network. Was not easy, and i get why everyone is delaying support for them (even other open source smart home projects). The use of IPv6 local link addresses and IPv6 route announcements did not work out of the box. The good news is i did get it working, and have a custom IOS app that is able to do the whole process including triggering openHAB to pair the device using the new discovery mechanism.

I don’t regret the time sink however, was a valuable deep dive into IPv6 that i somehow have avoided doing despite my fancy networking setup.

7 Likes

Did not work for me.
With the old version, I first disabled “Decommiission Nodes On Delete” and then I deleted my “device” thing. Then I uninstalled the old version of the binding and finally installed the new version. My controller thing was then ONLINE again but when I clicked on the scan button in Main UI, no thing was discovered.

Wait a second, I have a doubt if the server is really running the new version… I am restarting OH.

No, not working. No problem, I will pair it again.

In my controller thing, I still see the old Pair Matter Device parameter. Probably because it is a managed thing created with the old version ?

For those reading, i had an issue with updating the README, so i would try reading it again as i just pushed an update to it.

Correct, if you delete and add it again, the channel will not be there, but i don’t think is hurting anything for now.

If someone is asking again if IPv6 is required, we will know that he did not read your README :slight_smile: It is even repeated several times :wink:
I like your documentation, it explains simply all the “concepts” of Matter.

2 Likes

Dan, I am asking myself if there is not a little bug in the discovery without filling a pairing code because openHAB controller is still mentioned for this device in Google Home.

Is there a way to check if this device is really still present in the openHAB fabric ?

Trying to pair again the device with the new scan way using a pairing code generated by Google Home works perfectly.

If the device was not decommissioned correctly, that will probably be there forever or until you pair again with openHAB (maybe it will replace itself?). The device keeps track of its associated controllers, not Google Home, its just reading the other pairing certs from the device to display. This is part of the strength of Matter, when you pair, you go directly through the device, once google generates a pairing code its no longer in the mix.

I will try again tomorrow to delete my endpoint thing and then scan again to see if the thing re-appears in the inbox.

The channel ID is now “onoffcontrol_onoff”.
Our convention is to use hyphen:

I see now the item state being updated after linking the channel, very good.

Ah, good point, and i think i was a part of that conversation :grimacing:

Woah that’s some crazy good amount of new stuff… one question?
Can…. Can I nudge you at looking at air purifiers sometime in the coming months?
I might have the opportunity to test one with a matter dongle this year still.
Local air purifiers aren’t easy to find, this would change the available options we have.

Or should I leave a comment in your GitHub?