In the previous post, we paired a prototype gateway with Apple Home using a computer and a phone. This time, let's look at the Rust code behind the Matter side. The project uses rs-matter. Real Bluetooth Mesh interoperability, the Linux board and large deployments remain untested.
A gateway is not one big light
The gateway appears as a Matter node. Endpoint 0 provides its root functions, endpoint 1 is the aggregator, and each bridged light gets its own endpoint. The device types and clusters tell the controller what each device is and can do: Descriptor, On/Off, Bridged Device Basic Information and Groups are included in this prototype.
Mapping endpoints to devices
A small device table holds the endpoint ID, device address, name, on/off state and reachability. When Apple Home asks to turn on endpoint 2, the gateway finds the matching device address and sends a command downstream.…