Matter seems to be broken on my server

I’m running
HAOS 17.1
Core 2026.3.3
Supervisor 2026.03.2
Frontend 20260312.0

No part of Matter seems to be working

From companion app Dashboard > Add to Home Assistant > Add Device > Add Matter Device repeatedly gives me the Matter is not set up prompt

Settings > Matter gives me a blank screen from companion app or site on desktop

The Matter Server sidebar item does load, but I don’t know what to do from there

I don’t have a Matter integration item in the Integrations section

I’ve uninstalled with the option to delete app data and rebooted after

IPv6 is enabled on my network and HASS shows an IPv6 address but no DNS server on IPv6 (does on IPv4). I have a Unifi setup with VLANs and all my devices are on a separate vlan from HASS VM, but I have firewall rules allowing traffic between them, don’t see how that would cause an issue at this stage but figured I’d mention it

Another point to add that may be related, I have an Apple TV and I configured it as a thread border router but I don’t see the device I added through the IOS Home app.

This is my Matter app config, I haven’t touched anything here other than increasing the log level which still produces nothing in the logs (I’m dumb and forgot apps have their individual logs)

Logs

s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service fix-attrs successfully stopped
2026-03-21 02:33:24.504 (MainThread) INFO [matter_server.server.stack] Shutting down the Matter stack...
2026-03-21 02:33:24.506 (MainThread) CHIP_ERROR [chip.native.CTL] Shutting down the stack...
2026-03-21 02:33:24.531 (MainThread) CHIP_ERROR [chip.native.-] src/messaging/ExchangeMgr.cpp:185: CHIP Error 0x00000007: No unsolicited message handler at src/protocols/bdx/BdxTransferServer.cpp:55
2026-03-21 02:33:24.538 (MainThread) INFO [aiorun] Waiting for executor shutdown.
2026-03-21 02:33:24.539 (MainThread) INFO [aiorun] Shutting down async generators
2026-03-21 02:33:24.539 (MainThread) INFO [aiorun] Closing the loop.
2026-03-21 02:33:24.540 (MainThread) INFO [aiorun] Leaving. Bye!
[06:33:25] INFO: matter-server service exited with code 0 (by signal 0).
s6-rc: info: service matter-server successfully stopped
s6-rc: info: service banner: stopping
s6-rc: info: service banner successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service banner: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started

-----------------------------------------------------------
 Add-on: Matter Server
 Matter WebSocket Server for Home Assistant Matter support.
-----------------------------------------------------------
 Add-on version: 8.3.0
 You are running the latest version of this add-on.
 System: Home Assistant OS 17.1  (amd64 / qemux86-64)
 Home Assistant Core: 2026.3.3
 Home Assistant Supervisor: 2026.03.2
-----------------------------------------------------------
 Please, share the above information when looking for help
 or support in, e.g., GitHub, forums or the Discord chat.
-----------------------------------------------------------
s6-rc: info: service banner successfully started
s6-rc: info: service matter-server: starting
s6-rc: info: service matter-server successfully started
s6-rc: info: service legacy-services: starting
[02:33:30] INFO: Starting Matter Server...
s6-rc: info: service legacy-services successfully started
[02:33:31] INFO: Using Python Matter Server
[02:33:31] INFO: Using 'enp1s0' as primary network interface.
[02:33:32] INFO: Successfully send discovery information to Home Assistant.
2026-03-21 02:33:38.122 (MainThread) INFO [matter_server.server.stack] Initializing CHIP/Matter Logging...
2026-03-21 02:33:38.124 (MainThread) INFO [matter_server.server.stack] Initializing CHIP/Matter Controller Stack...
[1774074818.191620][117:117] CHIP:CTL: Setting attestation nonce to random value
[1774074818.192658][117:117] CHIP:CTL: Setting CSR nonce to random value
[1774074818.195435][117:117] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /tmp/chip_kvs
[1774074818.201374][117:117] CHIP:DL: Wrote settings to /tmp/chip_kvs
[1774074818.202160][117:117] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /data/chip_factory.ini
[1774074818.203118][117:117] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /data/chip_config.ini
[1774074818.203457][117:117] CHIP:DL: ChipLinuxStorage::Init: Using KVS config file: /data/chip_counters.ini
[1774074818.207442][117:117] CHIP:DL: Wrote settings to /data/chip_counters.ini
[1774074818.207643][117:117] CHIP:DL: NVS set: chip-counters/reboot-count = 2 (0x2)
[1774074818.208726][117:117] CHIP:DL: Got Ethernet interface: enp1s0
[1774074818.209174][117:117] CHIP:DL: Found the primary Ethernet interface:enp1s0
[1774074818.210199][117:117] CHIP:DL: Failed to get WiFi interface
[1774074818.210367][117:117] CHIP:DL: Failed to reset WiFi statistic counts
[1774074818.210445][117:117] CHIP:PAF: WiFiPAF: WiFiPAFLayer::Init()
2026-03-21 02:33:38.211 (MainThread) INFO [chip.storage] Initializing persistent storage from file: /data/chip.json
2026-03-21 02:33:38.212 (MainThread) INFO [chip.storage] Loading configuration from /data/chip.json...
2026-03-21 02:33:38.213 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/icdfl, Value = 0x56074a561030 (512)
2026-03-21 02:33:38.214 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 4

2026-03-21 02:33:38.216 (MainThread) CHIP_DETAIL [chip.native.IN] UDP::Init bind&listen port=0
2026-03-21 02:33:38.216 (MainThread) CHIP_DETAIL [chip.native.IN] UDP::Init bound to port=41406
2026-03-21 02:33:38.217 (MainThread) CHIP_DETAIL [chip.native.IN] UDP::Init bind&listen port=0
2026-03-21 02:33:38.218 (MainThread) CHIP_DETAIL [chip.native.IN] UDP::Init bound to port=47676
2026-03-21 02:33:38.218 (MainThread) CHIP_DETAIL [chip.native.IN] BLEBase::Init - setting/overriding transport
2026-03-21 02:33:38.219 (MainThread) CHIP_DETAIL [chip.native.IN] WiFiPAFBase::Init - setting/overriding transport
2026-03-21 02:33:38.219 (MainThread) CHIP_DETAIL [chip.native.IN] TransportMgr initialized
2026-03-21 02:33:38.220 (MainThread) CHIP_DETAIL [chip.native.FP] Initializing FabricTable from persistent storage
2026-03-21 02:33:38.220 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/lkgt, Value = 0x7ffc21a4a3a0 (18)
2026-03-21 02:33:38.223 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 8

2026-03-21 02:33:38.224 (MainThread) CHIP_PROGRESS [chip.native.TS] Last Known Good Time: 2023-10-14T01:16:48
2026-03-21 02:33:38.224 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/fidx, Value = 0x7ffc21a4a620 (44)
2026-03-21 02:33:38.224 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 10

2026-03-21 02:33:38.224 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/n, Value = 0x7ffc21a4a080 (400)
2026-03-21 02:33:38.225 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 244

2026-03-21 02:33:38.225 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/r, Value = 0x7ffc21a49ee0 (400)
2026-03-21 02:33:38.226 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 231

2026-03-21 02:33:38.227 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/m, Value = 0x7ffc21a49bf0 (44)
2026-03-21 02:33:38.228 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 9

2026-03-21 02:33:38.229 (MainThread) CHIP_PROGRESS [chip.native.FP] Fabric index 0x1 was retrieved from storage. Compressed FabricId 0x25A09142642D8614, FabricId 0x0000000000000002, NodeId 0x000000000001B669, VendorId 0x134B
2026-03-21 02:33:38.230 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/fs/c, Value = 0x7ffc21a4a4d0 (36)
2026-03-21 02:33:38.230 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Not Found

2026-03-21 02:33:38.233 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/gcc, Value = 0x7ffc21a4a578 (4)
2026-03-21 02:33:38.233 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 4

2026-03-21 02:33:38.234 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/gdc, Value = 0x7ffc21a4a578 (4)
2026-03-21 02:33:38.236 (MainThread) CHIP_DETAIL [chip.native.CTL] Key Found 4

2026-03-21 02:33:38.236 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = g/gcc, Value = 0x7ffc21a4a578 (4)
2026-03-21 02:33:38.238 (MainThread) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = g/gdc, Value = 0x7ffc21a4a578 (4)
2026-03-21 02:33:38.241 (MainThread) CHIP_PROGRESS [chip.native.DMG] Ember attribute persistence requires setting up
2026-03-21 02:33:38.241 (MainThread) CHIP_PROGRESS [chip.native.ZCL] Using ZAP configuration...
2026-03-21 02:33:38.245 (MainThread) CHIP_PROGRESS [chip.native.IN] CASE Server enabling CASE session setups
2026-03-21 02:33:38.246 (MainThread) CHIP_DETAIL [chip.native.IN] SecureSession[0x56074a213300]: Allocated Type:2 LSID:46549
2026-03-21 02:33:38.247 (MainThread) CHIP_DETAIL [chip.native.SC] Allocated SecureSession (0x56074a213300) - waiting for Sigma1 msg
2026-03-21 02:33:38.248 (MainThread) CHIP_DETAIL [chip.native.CTL] System State Initialized...
2026-03-21 02:33:38.254 (Dummy-2) CHIP_DETAIL [chip.native.DL] CHIP task running
2026-03-21 02:33:38.266 (Dummy-2) CHIP_DETAIL [chip.native.DL] HandlePlatformSpecificBLEEvent 32786
2026-03-21 02:33:38.723 (MainThread) INFO [chip.CertificateAuthority] Loading certificate authorities from storage...
2026-03-21 02:33:38.723 (MainThread) INFO [chip.CertificateAuthority] New CertificateAuthority at index 1
2026-03-21 02:33:38.729 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = ExampleOpCredsCAKey1, Value = 0x7f211fffdf40 (97)
2026-03-21 02:33:38.731 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 97

2026-03-21 02:33:38.738 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = ExampleOpCredsICAKey1, Value = 0x7f211fffdf40 (97)
2026-03-21 02:33:38.738 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 97

2026-03-21 02:33:38.755 (MainThread) INFO [chip.CertificateAuthority] Loading fabric admins from storage...
2026-03-21 02:33:38.755 (MainThread) INFO [chip.FabricAdmin] New FabricAdmin: FabricId: 0x0000000000000002, VendorId = 0x134B
2026-03-21 02:33:38.756 (MainThread) INFO [matter_server.server.stack] CHIP Controller Stack initialized.
2026-03-21 02:33:38.769 (MainThread) INFO [matter_server.server.server] Matter Server initialized
2026-03-21 02:33:38.771 (MainThread) INFO [matter_server.server.server] Using 'enp1s0' as primary interface (for link-local addresses)
2026-03-21 02:33:38.775 (MainThread) INFO [matter_server.server.server] Starting the Matter Server...
2026-03-21 02:33:38.809 (MainThread) INFO [matter_server.server.helpers.paa_certificates] Skip fetching certificates (already fetched within the last 24h).
2026-03-21 02:33:38.810 (MainThread) INFO [chip.FabricAdmin] Allocating new controller with CaIndex: 1, FabricId: 0x0000000000000002, NodeId: 0x000000000001B669, CatTags: []
2026-03-21 02:33:38.820 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Creating New Device Controller
2026-03-21 02:33:38.821 (Dummy-2) CHIP_PROGRESS [chip.native.CTL] Setting attestation nonce to random value
2026-03-21 02:33:38.822 (Dummy-2) CHIP_PROGRESS [chip.native.CTL] Setting CSR nonce to random value
2026-03-21 02:33:38.830 (Dummy-2) CHIP_PROGRESS [chip.native.SPT] Using device attestation PAA trust store path /data/credentials.
2026-03-21 02:33:39.033 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = ExampleCARootCert1, Value = 0x7f2114015860 (600)
2026-03-21 02:33:39.037 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 411

2026-03-21 02:33:39.039 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = ExampleCAIntermediateCert1, Value = 0x7f2114015600 (600)
2026-03-21 02:33:39.041 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 410

2026-03-21 02:33:39.042 (Dummy-2) CHIP_PROGRESS [chip.native.CTL] Generating NOC
2026-03-21 02:33:39.049 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/vvsc, Value = 0x7f211fffca30 (400)
2026-03-21 02:33:39.050 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Not Found

2026-03-21 02:33:39.051 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/r, Value = 0x7f211fffca80 (400)
2026-03-21 02:33:39.052 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 231

2026-03-21 02:33:39.052 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/n, Value = 0x7f211fffca80 (400)
2026-03-21 02:33:39.052 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 244

2026-03-21 02:33:39.052 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/r, Value = 0x7f2114004b60 (400)
2026-03-21 02:33:39.053 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 231

2026-03-21 02:33:39.053 (Dummy-2) CHIP_PROGRESS [chip.native.FP] Validating NOC chain
2026-03-21 02:33:39.068 (Dummy-2) CHIP_PROGRESS [chip.native.FP] NOC chain validation successful
2026-03-21 02:33:39.069 (Dummy-2) CHIP_PROGRESS [chip.native.FP] Updated fabric at index: 0x1, Node ID: 0x000000000001B669
2026-03-21 02:33:39.069 (Dummy-2) CHIP_PROGRESS [chip.native.TS] Last Known Good Time: 2023-10-14T01:16:48
2026-03-21 02:33:39.069 (Dummy-2) CHIP_PROGRESS [chip.native.TS] New proposed Last Known Good Time: 2021-01-01T00:00:00
2026-03-21 02:33:39.070 (Dummy-2) CHIP_PROGRESS [chip.native.TS] Retaining current Last Known Good Time
2026-03-21 02:33:39.070 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/sri, Value = 0x7f211fffc1b0 (966)
2026-03-21 02:33:39.070 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Not Found

2026-03-21 02:33:39.071 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = g/fs/c, Value = 0x7f211fffcc80 (7)
2026-03-21 02:33:39.072 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = f/1/m, Value = 0x7f211fffcb50 (9)
2026-03-21 02:33:39.073 (Dummy-2) CHIP_PROGRESS [chip.native.FP] Metadata for Fabric 0x1 persisted to storage.
2026-03-21 02:33:39.073 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = f/1/n, Value = 0x7f2114017320 (244)
2026-03-21 02:33:39.074 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = f/1/i, Value = 0x7f211400ef80 (231)
2026-03-21 02:33:39.075 (Dummy-2) CHIP_PROGRESS [chip.native.TS] Committing Last Known Good Time to storage: 2023-10-14T01:16:48
2026-03-21 02:33:39.076 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = g/lkgt, Value = 0x7f211fffcc10 (8)
2026-03-21 02:33:39.077 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = g/fs/c, Value = 0x7f211fffcc5f (0)
2026-03-21 02:33:39.077 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Buf not big enough

2026-03-21 02:33:39.077 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::DeleteKeyValue: Key = g/fs/c
2026-03-21 02:33:39.078 (Dummy-2) CHIP_PROGRESS [chip.native.CTL] Joined the fabric at index 1. Fabric ID is 0x0000000000000002 (Compressed Fabric ID: 25A09142642D8614)
2026-03-21 02:33:39.078 (Dummy-2) CHIP_PROGRESS [chip.native.DIS] Updating services using commissioning mode 0
2026-03-21 02:33:39.082 (Dummy-2) CHIP_PROGRESS [chip.native.DIS] CHIP minimal mDNS started advertising.
2026-03-21 02:33:39.084 (Dummy-2) CHIP_DETAIL [chip.native.DL] Using WiFi MAC for hostname
2026-03-21 02:33:39.084 (Dummy-2) CHIP_PROGRESS [chip.native.DIS] Advertise operational node 25A09142642D8614-000000000001B669
2026-03-21 02:33:39.085 (Dummy-2) CHIP_DETAIL [chip.native.DIS] Responding with _matter._tcp.local
2026-03-21 02:33:39.086 (Dummy-2) CHIP_DETAIL [chip.native.DIS] Responding with 25A09142642D8614-000000000001B669._matter._tcp.local
2026-03-21 02:33:39.086 (Dummy-2) CHIP_DETAIL [chip.native.DIS] Responding with 25A09142642D8614-000000000001B669._matter._tcp.local
2026-03-21 02:33:39.087 (Dummy-2) CHIP_DETAIL [chip.native.DIS] Responding with 5254002CDAC1.local
2026-03-21 02:33:39.087 (Dummy-2) CHIP_DETAIL [chip.native.DIS] Responding with _I25A09142642D8614._sub._matter._tcp.local
2026-03-21 02:33:39.088 (Dummy-2) CHIP_PROGRESS [chip.native.DIS] CHIP minimal mDNS configured as 'Operational device'; instance name: 25A09142642D8614-000000000001B669.
2026-03-21 02:33:39.104 (Dummy-2) CHIP_PROGRESS [chip.native.DIS] mDNS service published: _matter._tcp
2026-03-21 02:33:39.107 (Dummy-2) CHIP_PROGRESS [chip.native.SPT] Setting up group data for Fabric Index 1 with Compressed Fabric ID:
2026-03-21 02:33:39.107 (Dummy-2) CHIP_DETAIL [chip.native.SPT] 0x25, 0xa0, 0x91, 0x42, 0x64, 0x2d, 0x86, 0x14, 
2026-03-21 02:33:39.108 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/g, Value = 0x7f211fffd698 (128)
2026-03-21 02:33:39.108 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 23

2026-03-21 02:33:39.108 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::GetKeyValue: Key = f/1/k/0, Value = 0x7f211fffd558 (128)
2026-03-21 02:33:39.108 (Dummy-2) CHIP_DETAIL [chip.native.CTL] Key Found 97

2026-03-21 02:33:39.110 (Dummy-2) CHIP_DETAIL [chip.native.CTL] StorageAdapter::SetKeyValue: Key = f/1/k/0, Value = 0x7f211fffd558 (97)
2026-03-21 02:33:39.113 (Dummy-2) CHIP_ERROR [chip.native.DL] Long dispatch time: 291 ms, for event type 2
2026-03-21 02:33:39.137 (MainThread) INFO [matter_server.server.vendor_info] Loading vendor info from storage.
2026-03-21 02:33:39.152 (MainThread) INFO [matter_server.server.vendor_info] Loaded 407 vendors from storage.
2026-03-21 02:33:39.154 (MainThread) INFO [matter_server.server.vendor_info] Fetching the latest vendor info from DCL.
2026-03-21 02:33:39.837 (MainThread) INFO [matter_server.server.vendor_info] Fetched 406 vendors from DCL.
2026-03-21 02:33:39.838 (MainThread) INFO [matter_server.server.vendor_info] Saving vendor info to storage.
2026-03-21 02:33:39.852 (MainThread) INFO [matter_server.server.device_controller] Loaded 0 nodes from stored configuration
2026-03-21 02:33:39.866 (MainThread) INFO [matter_server.server.server] Matter Server successfully initialized.


Common mistake.
VLANs are not just simple IP routing.
You need to understand the service and the protocols running on the network, which means you need to understand IPv4 and IPv6 and every protocol running on top of those.
That means all the discovery protocols, which is oft n not routable with simple IP routing.

In general if you are not a master of all the networking protocols, then stick to one network or a VLAN dedicated for IoT devices, which include HA.
If you are not a master then stick with just one flat network.

1 Like

You’ve 2 options if you want to keep the networks segmented -

  1. Dual-home your HA on both networks. This is not recommended and there are many people who will advise against this as it raises other security issues and potential complications.
  2. You’ll need an mDNS/AVAHI reflector to bounce the packets between the segmented networks so discovery will work correctly.

Otherwise, Wally gave you good advice. HA is designed to work on a flat network.

Not really an option.
Dual homing requires that you can control service bindings and HA lacks the tools for that.
Some services also need special setup to run multi honed, especially the discovery services.

And what about SSDP, uPNP, ZeroConfig and all the proprietary discovery protocols that might be in use.

Dual-homing is as simple as a second nic on the HA machine. It most certainly is an option for those who can learn to harden their routers from exploitations and employ services that identify and negate intruders and alert the administrator (user).

The OP is asking about Matter, in particular. mDNS is enough for discovery. The other protocols are a hurdle they’ll have to figure out if they experience any issues with them. Some are more forgiving then others.

1 Like

I’m going to move it to the IOT VLAN at some point to troubleshoot, but what I’ve tried in the meantime is adding a Matter WIFI device through the companion app with my phone on the same VLAN as HASS, it did not make a difference, same issues happened.

So while the VLAN setup may be the problem with Thread, I still don’t think it’s the cause of the Matter issue I’m having.

Hmm… if that’s the case, make sure your network interface/s is/are delegating IPv6 prefixes for your Local ULA address. These should be options in your router, hopefully. Delegating the address from the interface will enable downstream delegation of IPv6 prefixes available on the interface and then, also, set the IPv6 prefix filter to use Local ULA.

And then the router runs a mDNS service and announce itself with the same name on both networks.

I checked every device that I know for sure supports IPv6 and all have been given an address.

Which could be a problem when trying to access HA using the local domain/hostname, solved by assigning a hostname variant to one of HA’s IP’s on one of the networks using the router.

eg: home-assistant.lan on LAN and home-assistant-iot.lan on IOT

Couple of things,

  • the WiFi device may only support 2.4GHz, so make sure the phone is also on a 2.4GHz WiFi band for that same VLAN.
  • Matter over WiFi can use IPv6 link locals (FE80), so make sure HA has at least an FE80 address, and so does the phone.
  • If the above checks out and its still failing, then most likely mDNS advertisements are being blocked, say by IGMP snooping being enabled, or the router is filtering these out. See if you can add an App to your phone that can snoop on discovery protocols and see if it sees _matterc._udp when you commission the MoWiFi device.