[MAJOR UPDATE] @sammachin/node-red-matter-bridge

It the previous version - 21.3 Cinnamon

1 Like

No this is on an Rpi 4, Debian GNU/Linux 11 (bullseye)

Rpi 4 can run Windows... but I assume you are using Linux?

But it sounds like its not worth the effort :wink:

I have the same issue that Alexa (and Apple Home) cannot detect your Matter devices.

I already installed the node node-red-contrib-homekit-bridged to manage devices directly via HomeBridge (as well Matter) which works really well. Other services like Sonos, who are using this protocol are working on this system

Therefore I'm sure the Bonjour protocol is working on my machine.

Again, your matter devices are not detected via Alexa nor on Apple Home. I'm able to scan the QR code (or manually add the connect code) .. but it will not detect the new device and fails after some time

My Environment:

  • Debian Linux with Docker running
  • NR (4.0.5) running in container
  • port 5540 TCP & UDP opened

Running in a container likely won't work at the moment, I've not had the time to properly test and debug it.
But I don't think just port forwarding 5540 will work as the mDNS broadcast from the matter server will contain the internal IPv6 address of the container which won't be accessible on the LAN with the controlllers.

You could try is with a bridged interface perhaps..

@cymplecy
Just a thought, do you have a firewall running on your main machine?

Not as far as I know -I've never installed one and I don't think Linux Mint defaults to having one

Is this not related to the ipv6 issue that folks have encountered on Pi's in the past ?
ie. disabling ipv6

1 Like

Yippee :slight_smile:

Turning off ipv6 on my network interface and it's found it :slight_smile:

thats very strange, Matter uses IPv6 as standard (I think it may use IPv4 too but thats not within the spec)
What commands did you run to turn off IPv6? Matter should create its own IPv6 addresses so I wonder if there's something conflicting with the Linux drivers.

@bakman2 have you got a link to that?

I just went into my network settings and turned it off then disabled/re-enabled the adaptor again

but......
I've just noticed that it is still showing some ipv6 addresses !!!!!

Apparently Alexa will work with IPv4 but Google won't

ah so did you have static IPv6 addresses set?
That could have been causing Matter to fail to allocate itself ones

Not set any static IPv6 - I just have a few reserved IPv4s in my router

I've been using it for real today and I've a couple of observations

  1. It's been a bit flaky :frowning: When adding nodes or changing them - about 25% of the time - NR crashes and I have to restart it :frowning:

  2. I'm using virtual lights and using alexa to switch them on/off. But if a light is on and I tell it to turn on again - the node remembers its on and doesn't repeat the message.

WHich would be OK in a perfect world but lots of times I need to repeat the on command as the real device I'm trying to control didn't respond correctly

Is this built-into matter or have you built it into your light switch nodes?

For compassion @hardillb Alexa nodes don't exhibit this behaviour and I was hoping to replace them with yours as Ben might be stopping support for his nodes in the future

Yes this is something Iā€™m aiming to improve in the next release, at the moment making any changes to any of the matter nodes really needs a full deploy rather than just changed nodes/flows as it needs the server to restart which is part of the bridge config node.

Trying to update just a device node will cause the server to crash.

Yes this is one of the tricky bits with matter.js, basically the device node holds state and so any controller eg Alexa just updates that state and if that changes it results in a message from the node with the new state.
What you need to do with a bridge is to ensure that your actual light state and the matter device remain in sync. The key thing Iā€™ve found is to have any non matter ways of controlling the light also go through the device node and then output to the light.

This is also what the pass through option controls although thatā€™s been refactored in 0.11 to be improved too. Hopefully Iā€™ll get 0.11 out over the weekend, but new day job this week is taking a lot of my brain capacity

Yeah itā€™s the way matter works.

I was using Benā€™s Alexa nodes too but Iā€™ve now switched over fully to this, it did require a bit of redesigning some of the flows (see above) but itā€™s now working nicely for me.

What are the lights you are controlling from node-red?

1 Like

A mixture of generic smart bulbs but with other devices like 433 Mhz switches which sometimes need several attempts to switch on or off

Usually impossible to determine their actual state

Thatā€™s going to be tricky then especially if you need to resend the command,

There is a ā€˜hiddenā€™ feature on all the nodes, if you send in a message with just msg.topic as state it will output the nodes state with all the matter clusters and their attributes, for example msg.payload.onOff.onOff will have the current on/off state.

You might be able to set something up to poll that and send to the devices repeatedly

There's always a way to get around obstacles :slight_smile: