Matter Device not connection to home assistant

I have some new matter devices that I am trying to connect directly to HA without the Hub. I scan the QR code it connects then it moves to setting up device and then it fails there and says your device might need rebooting.

I have IPv6 enabled across my network and my HA is running inside proxmox VM (which from what I have read can be an issue)

Has anyone else experienced this issue? Do I need a device like SkyConnect and do the USB pass through?

Im new to all of this, so might be a small issue.

Proxmox should not be a problem if you are running your Proxmox network as a bridge.

Is it a Matter over Thread, then you need a Thread Border Router to use it without its hub, which could be achieved with a DkyConnect.

If it is Matter over WiFi, then SkyConnect is not needed, but what else that have to be done, I do not know.

HA needs an IP in the LAN, bridged mode. If not, you’ll need an mDNS reflector properly configured on the VM doing the routing of HA’s TCP/IP traffic.

The HA server cannot sit in a different VLAN? I do have the mDNS configured on all the networks.

Matter use IPv6.
Your IPv4 knowledge can not be used with IPv6.

You need to learn IPv6 to be able to use VLANs.

It can, but you need an mDNS reflector across all VLANs, whether IPv4 or IPv6. I use avahi-daemon for that.

mDNS reflectors with IPv6 is not that simple.
With IPv6 it is possible, and it will occur, that you have the same network ID on multiple interfaces without it being the same network.

In IPv4 this would be equivalent to having several 192.168.0.0/24 networks on multiple interfaces on the router with different devices on and then not being bridges, but having to be routed.

Assuming the router correctly routes, the reflector would just keep a record of all observed mDNS records and respond on both sides to requests for such.

But IPv6 have networks that can’t be routed and those are typically of the type that exist on multiple interfaces.

You can not use IPv4 techniques on the IPv6 protocol.

And besides that how will your routing look for a network with same ID?
Try to make write the rule for your routing table with three NICs with the same network ID connected to each NIC.

Hence why I wrote the caveat “assuming … routes correctly”.

To be frank, what you mentioned is the central reason I have shirked deploying IPv6 at home.

I tried to deploy IPv6 at home, but many devices do not support it, or only support it half.
HA and addons are sadly among those that do not support it fully.

From my experience I would say you have chosen the right decision for now.

1 Like

It needs to do a little more than just route. The mDNS packets, assuming they are re-broadcasted to the HA VLAN, contain data including the IPv6 address(es) and details of the Matter device. In the (likely) event that’s a non-routable link-local fe80:: address, the Linux kernel assumes (because of the IPv6 specification) that the device is on the same subnet as itself. So the “reflecting” router has to be configured to “mirror” those link-local addresses across VLANs and dynamically snoop for any packets sent to those addresses.

A few people have gotten this working, but since the configurations differ on every router there is little chance of finding help here, so the general advice is to use a single VLAN. You may also have luck multi-homing your Matter/HA server so it can have an interface on each, an approach that works for me at least for Matter-over-WiFi devices. I also recommend a mDNS “browser” app like Flame for iOS, Discovery for MacOS, or Service Browser for Android, to verify mDNS is working on the HA subnet.

IPv6 is not scary or difficult, it is just different — the basics are the same, and really the changes are mostly improvements. The issue with Matter isn’t that it’s using IPv6, but that it’s entirely reliant on a broadcast protocol (mDNS) intended for simple, flat networks. Thread border routers prior to [Thread spec] v1.2 couldn’t even support Matter devices due to the mDNS requirement, but they have since been updated to do this reflection trick by default.

1 Like