Skip to content

Add OpenThread Border Router and Matter Server for Farnsworth - #124

Closed
jared-q15 wants to merge 2 commits into
avanderbergh:mainfrom
jared-q15:feature/openthread-matter-farnsworth
Closed

jared-q15 wants to merge 2 commits into
avanderbergh:mainfrom
jared-q15:feature/openthread-matter-farnsworth

Conversation

@jared-q15

Copy link
Copy Markdown
Contributor

Summary

Enable Thread/Matter support on Farnsworth for the SONOFF Zigbee 3.0 USB Dongle Plus MG24 (EFR32MG24) as a Thread border router, to connect the IKEA TIMMERFLOTTE (Matter-over-Thread temperature/humidity sensor) via Home Assistant.

Changes

File Change
modules/nixos/openthread.nix New — enables services.openthread-border-router with web UI and firewall ports. Radio device path and backbone interface are placeholders (see TODOs).
modules/nixos/matter-server.nix New — enables services.matter-server (python-matter-server) for the HA Matter fabric.
modules/nixos/home-assistant.nix Adds matter, otbr, thread to extraComponents for Matter-over-Thread integration.
hosts/farnsworth/features.nix Imports the two new modules.

Architecture

SONOFF MG24 (Thread RCP firmware)
  → otbr-agent (serial) → Thread network
  → matter-server (REST) → Matter fabric
  → Home Assistant (Matter integration)
  → IKEA TIMMERFLOTTE (commissioned via QR code)

Post-merge manual steps

  1. Flash the dongle with Thread RCP firmware using the SONOFF Dongle Flasher web tool. The dongle ships with Zigbee (EZSP) firmware and can only run one protocol at a time.
  2. Plug in the dongle and find its path: ls /dev/serial/by-id/
  3. Update radio.device in modules/nixos/openthread.nix with the actual by-id path.
  4. Find Farnsworth's network interface (ip link) and update backboneInterfaces in modules/nixos/openthread.nix.
  5. Rebuild: nh os switch . --hostname farnsworth
  6. In Home Assistant: add the Thread and Matter integrations — the OTBR and Matter Server should be auto-discovered.
  7. Commission the TIMMERFLOTTE via the HA Matter integration using its QR code.

References

Jared added 2 commits July 1, 2026 23:20
Enable Thread/Matter support on Farnsworth for the SONOFF Zigbee 3.0 USB
Dongle Plus MG24 (EFR32MG24) as a Thread border router, to connect IKEA
TIMMERFLOTTE (Matter-over-Thread temperature/humidity sensor) via Home
Assistant.

Changes:
- modules/nixos/openthread.nix: New module enabling
  services.openthread-border-router with web UI and firewall ports.
  Radio device path and backbone interface are placeholders that must
  be updated after plugging in the dongle (see TODO comments).
- modules/nixos/matter-server.nix: New module enabling
  services.matter-server (python-matter-server) for HA Matter fabric.
- modules/nixos/home-assistant.nix: Add matter, otbr, thread to
  extraComponents for Matter-over-Thread integration.
- hosts/farnsworth/features.nix: Import openthread and matter-server
  modules.

Post-merge manual steps:
1. Flash the SONOFF MG24 with Thread RCP firmware (SONOFF Dongle
   Flasher). The dongle ships with Zigbee EZSP firmware and can only run
   one protocol at a time.
2. Plug in the dongle and find its path: ls /dev/serial/by-id/
3. Update radio.device in openthread.nix with the actual by-id path.
4. Find Farnsworth's network interface (ip link) and update
   backboneInterfaces in openthread.nix.
5. Rebuild and deploy: nh os switch . --hostname farnsworth
6. In Home Assistant, add the Thread and Matter integrations; the
   OTBR and Matter Server should be auto-discovered.
7. Commission the IKEA TIMMERFLOTTE via HA Matter integration using
   its QR code.
@jared-q15
jared-q15 force-pushed the feature/openthread-matter-farnsworth branch from fd5ccc3 to 378fda1 Compare July 1, 2026 21:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants