This is me trying to reason it out and decided to write it out here.
CSA has defined, at least in a webinar that reviews Matter’s Network Topology, a Matter controller as:
A Matter Controller is an entity that administers and controls other Matter devices
A Matter Controller can be built into many types of products: embedded in a smart speaker, a security panel, a smart home hub / display, or mobile operating systems & apps
A Matter Controller can belong to a smart home ecosystem, it can be a stand-alone app. It is really flexible for your 1st or 100th device.
Matter Bridges can be built into a number of devices, like Matter Controllers or smart home hubs
Example: a Matter Controller connects to a Wi-Fi router
Assuming Wi-Fi & Thread for the moment:
In terms I think I understand: any device or software with 1) access to a bit of compute power and storage + 2) access to Matter-compatible wireless radios + 3) accepts user input can, after local BLE commissioning, become a Matter Controller and start transmitting commands to Matter devices (that have already been commissioned on the local Matter-compatible Wi-Fi and Thread networks).
Matter piggybacks on our existing Wi-Fi and Thread networks. Thus, existing Wi-Fi routers and / or Thread border routers become the hubs of the local Matter network, re-transmitting IP messages from, say, one Matter Controller to all the other Matter Controllers. Matter devices are then just any connected Wi-Fi or Thread device that can understand IP messages from Matter Controllers or Matter devices.
In practice, Matter controllers are anything that can accept user input; they turn that user input into a command that travels on a Matter IP-compatible network, e.g., Wi-Fi or Thread.
So BLE commissioning adds new devices to the authoritative, authenticated list of Matter devices on This Local Matter Network. So each Matter controller needs to store this list? But where? Is there enough memory to store all our Matter devices configurations on every Matter controller?
I assume this duplication of the authoritative list does improve resiliency + faster commands.
It would tie into Matter’s key development goal of being “federated”:
Federated: No single entity serves as a throttle or a single-point-of-failure for root of trust
Will there be classes of Matter Controllers? Powered vs not? Or perhaps an upper limit per network? I’m curious how the overhead is managed of always keeping all information federated between many Matter controllers, including some that will be battery powered.
For the whole “mostly anything can be a Matter controller” bit to work, that’s presumably where multi-admin was necessary.
//
I’m trying to think of a good analogy: kind of like how you can broadcast a short audio recording from a Google Home speaker to all the other speakers? Any speaker can send an audio broadcast and every speaker is aware of every other speaker it must broadcast to.