Matter
Connects Athena to an already-running matter-server instance
(matterjs-server, or its archived predecessor python-matter-server) to
read and control devices already commissioned onto your Matter fabric - the same "bridge to a
companion process" architecture Athena's own Z-Wave integration already uses, since no
production-ready native Matter controller exists to embed directly.
Athena doesn't commission new devices onto your Matter network itself - add a device to your fabric first via matter-server's own tooling or another Matter controller, then pick it from the live list Athena shows once connected.
Running matter-server
Not bundled with Athena's own compose files - run it as its own container, anywhere on your LAN
(needs real network visibility for Matter's own device commissioning/discovery, so
network_mode: host, not a bridge network). Save this as its own
docker-compose.yml in a new folder:
# docker-compose.yml - matterjs-server, standalone services: matter-server: container_name: matter-server image: ghcr.io/matter-js/matterjs-server:stable restart: unless-stopped network_mode: host # required - Matter commissioning/discovery needs real mDNS visibility volumes: - matter-data:/data volumes: matter-data:
Run docker compose up -d. Its WebSocket API listens on port 5580 by
default - that's the address/port Athena's own "Add gateway" form needs.
python-matter-server (the project this replaces) works the same way if that's what you're already running - same default port, same "Add gateway" fields.
Adding a gateway
Devices & Services > Matter > "Add gateway" takes your matter-server instance's address
and port (default 5580). Once connected, "Add device" shows every node already
commissioned onto that server's fabric, picked from the list rather than typed in - the same
flow Z-Wave's own device picker already uses.
What's supported
- Switches - on/off, from the
OnOffcluster. - Dimmers - the
LevelControlcluster's 0-254 range, shown and set as a 0-100% slider, matching every other dimmable light in Athena. - Temperature & humidity sensors -
TemperatureMeasurementandRelativeHumidityMeasurement. - Occupancy & boolean sensors -
OccupancySensing(motion/ presence) andBooleanState(contact, water leak, or a generic boolean, depending on the device).
Every supported entity works with Dashboard cards, History, and Automations exactly like any other integration. Color control and illuminance sensors aren't supported yet - illuminance in particular uses a log-encoded value Matter devices report, which needs real hardware to verify the decode against.
This integration is unverified against a live matter-server instance - the WebSocket message shapes are taken from matter-server's own published API, not smoke-tested during development. If something doesn't match once tested against a real server, it's a small, self-contained fix.