HomeTechOps

Smart Home

Share a Matter device across ecosystems

Use Matter multi-admin correctly — share from the first controller (don't re-scan the QR), and understand the SupportedFabrics ceiling that makes the 4th ecosystem fail.

Problem summary

Multi-admin means adding one Matter device to several ecosystems (Apple, Google, Alexa, SmartThings) at once — each ecosystem is a separate fabric. You share by opening a commissioning window from the controller that already has the device (Turn On Pairing Mode → copy the new code), not by factory-resetting and re-scanning the original QR. The thing that breaks it is the per-device fabric ceiling: the Matter spec only guarantees a minimum of 5 fabrics, so on budget hardware the next ecosystem can silently fail once it's full.

Operator snapshotEvidence first
First proof

Confirm you're sharing FROM the first controller, not re-scanning the QR.

Screen to open

Home app > accessory > Settings > Turn On Pairing Mode > Copy Code

Expected signal

You opened a pairing window in the owning app and got a new code.

Stop boundary

Don't keep pushing past the device's fabric capacity.

Layer path

1Multi-admin adds one Matter device to several ecosystems at once; each ecosystem is a separate fabric on the device, with its own root of trust and fabric ID.
2You share by opening a commissioning window from the controller that already owns the device (e.g. Apple Home → Turn On Pairing Mode → Copy Code), then pasting that new code into the second app — you do not factory-reset or re-scan the original QR.
3The hard limit is the device's SupportedFabrics attribute: the Matter spec only guarantees a minimum of 5, and budget hardware often supports exactly 5 — so the next ecosystem fails or evicts once it's full.
4Matter 1.4 added Enhanced Multi-Admin (consent-based batch sharing) but it's optional for vendors, so 'share everything at once' only works where the maker implemented it.
Runbook

Step-by-step runbook

Start here. Do each check in order, compare it to the expected result, and stop when the evidence explains the failure or the safe stop point applies.

1

Share from the owning controller

Check: In the app that already has the device, open pairing mode and copy the new code.

Expected result: You have a fresh share code (not the original QR).

If not: If no share option exists, try a different owning ecosystem.

2

Add it in the second app promptly

Check: Enter the shared code in the second ecosystem before the window expires.

Expected result: The device joins the second fabric and appears in that app.

If not: On timeout, re-open the window and retry.

3

Mind the fabric budget

Check: Track how many ecosystems the device is in vs its SupportedFabrics (min 5).

Expected result: You stay within the device's capacity.

If not: If full, free a fabric by removing an unused ecosystem first.

4

Verify control from each ecosystem

Check: Toggle the device from each app to confirm all fabrics work.

Expected result: Every added ecosystem can command the device.

If not: If one drops, you're likely over the ceiling or on flaky hardware.

5

Settle on 2–3 ecosystems

Check: Keep only the ecosystems you actually use day to day.

Expected result: The device stays reliable across its fabrics.

If not: Re-add any dropped ecosystem after trimming the list.

Decision tree

Decision tree

If: Second app won't accept the device at all.

Then: You're re-scanning the QR instead of sharing from the owner.

Action: Open a pairing window in the owning app and use the new code.

If: Sharing worked for 2–3 ecosystems but the next one fails.

Then: The fabric ceiling (SupportedFabrics, min 5) is reached.

Action: Remove an unused ecosystem to free a fabric, then add the new one.

If: Device falls off one ecosystem after adding another.

Then: A full device evicted a fabric, or it's flaky under many controllers.

Action: Reduce to the ecosystems you actually use; re-add the one that dropped.

Safe stop: Don't keep pushing past the device's fabric capacity.

If: 'Share all at once' isn't offered.

Then: Enhanced Multi-Admin isn't implemented by that vendor.

Action: Share devices one at a time from the owning controller.

Evidence

Evidence table

SymptomEvidence to collectLikely layerNext action
Second app rejects the device.Whether you used a shared code vs the original QR.Wrong share methodMint a new code from the owning app's pairing-mode flow.
4th ecosystem fails to pair.Device SupportedFabrics vs CommissionedFabrics count.Fabric ceiling (min 5)Free a fabric by removing an unused ecosystem first.
Device drops from an ecosystem after sharing.Total ecosystems added; device flakiness under load.Over-shared / budget hardwareReduce to 2–3 ecosystems; re-add the dropped one.
Pasting the code times out.Time between opening the window and entering the code.Expired commissioning windowRe-open the window and paste promptly.
Reference

Commands and settings paths

Open a pairing window (Apple example)

Home app > accessory > Settings > Turn On Pairing Mode > Copy Code

Where: On the phone signed into the owning ecosystem.

Expected: A new setup code/QR is generated for the second app.

Failure means: If there's no such option, the controller may not support sharing it.

Safe next step: Use whichever owning ecosystem can mint a share code.

Add using the shared code (second app)

Google Home / Alexa / SmartThings > Add device > Matter > enter the shared code

Where: On the phone for the second ecosystem.

Expected: The device commissions into the second fabric and appears.

Failure means: Rejection usually means the wrong code (QR vs shared) or a full device.

Safe next step: Use the shared code; free a fabric if the device is at capacity.

Inspect fabric usage (where exposed)

Controller diagnostics / chip-tool: read NodeOperationalCredentials CommissionedFabrics & SupportedFabrics

Where: From a Matter controller/developer tool.

Expected: CommissionedFabrics is below SupportedFabrics.

Failure means: Equal counts mean the device is full — the ceiling, not a defect.

Safe next step: Remove an unused ecosystem to free a fabric before adding more.

Hardware boundary

Hardware and platform boundary

Change only when

  • When you genuinely need a device in many ecosystems, choose hardware that advertises a higher SupportedFabrics count and Matter 1.4 Enhanced Multi-Admin rather than budget devices stuck at the 5-fabric minimum.

Evidence that matters

  • A high SupportedFabrics count, Enhanced Multi-Admin support, and a maker with a track record of stable multi-controller behavior.

Evidence that does not matter

  • The marketing claim of '16 fabrics' — it's not a guaranteed ceiling; read the device's actual SupportedFabrics attribute.

Avoid

  • Adding a device to 4+ ecosystems on budget hardware (fabric exhaustion) or re-scanning the QR instead of sharing from the owner.

Related tool

Use the linked tool to turn this runbook into a guided check for your exact setup.

Device setup troubleshooter

Related problems

Last reviewed

2026-06-03 · Reviewed by HomeTechOps. Built from 2026-06 research verified against Google Home Developers' Fabric primer and CSA Matter releases; the operator differentiator is the SupportedFabrics ceiling (spec minimum 5, not the commonly-asserted 16) and sharing-from-the-owner instead of re-scanning the QR.

Sources/assumptions

  • Assumes a Matter device already commissioned into one ecosystem that you want to also control from another (Apple/Google/Alexa/SmartThings).
  • The fabric ceiling is stated from the spec: SupportedFabrics has a guaranteed minimum of 5, exposed per device — it is NOT a universal '16 fabrics' as commonly claimed.
  • Enhanced Multi-Admin (Matter 1.4) batch sharing is optional for vendors, so 'share everything at once' only works where the vendor implemented it.

Source-backed checks

HomeTechOps turns official docs and conservative safety rules into a shorter runbook. These links are the source trail for the page direction.